[go: up one dir, main page]

JPH04333952A - Dma control lsi - Google Patents

Dma control lsi

Info

Publication number
JPH04333952A
JPH04333952A JP10590091A JP10590091A JPH04333952A JP H04333952 A JPH04333952 A JP H04333952A JP 10590091 A JP10590091 A JP 10590091A JP 10590091 A JP10590091 A JP 10590091A JP H04333952 A JPH04333952 A JP H04333952A
Authority
JP
Japan
Prior art keywords
transfer
address
area
register
memory
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
JP10590091A
Other languages
Japanese (ja)
Inventor
Tsutomu Minagawa
勉 皆川
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP10590091A priority Critical patent/JPH04333952A/en
Publication of JPH04333952A publication Critical patent/JPH04333952A/en
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE:To efficiently transfer data even to a two-dimensional memory area by providing an address generation circuit to generate the address of the two-dimensional area according to a prescribed parameter. CONSTITUTION:A DMA control LSI 1 has plural channels for data transfer, and an address generation circuit 13 is provided to generate the address of the two-dimensional area for each channel according to the prescribed parameter. In this case, the circuit 13 constitutes the address of the two-dimensional area based on the parameter composed of a value showing the number of words in the X direction of the transfer area of the two-dimensional area at a transfer memory, a value showing the number of lines in a Y direction orthogonal to the X direction of the transfer area, the memory width of the transfer memory and the start address of data transfer.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】[発明の目的][Object of the invention]

【0002】0002

【産業上の利用分野】メモリ間及びメモリとI/O機器
間で大量のデータを転送するDMAコントロールLSI
に関し、特に、2次元領域を含む2次元データの転送を
効率よく行うことができるDMAコントロールLSIに
関する。
[Industrial Application Field] DMA control LSI that transfers large amounts of data between memories and between memories and I/O devices
In particular, the present invention relates to a DMA control LSI that can efficiently transfer two-dimensional data including a two-dimensional area.

【0003】0003

【従来の技術】まず、従来の1次元データを転送するD
MAコントロールLSIの基本的な機能を述べる。たと
えば、メモリのある領域にあるデータを取り扱うデータ
のブロック転送では、その領域の先頭を指示するアドレ
ス値をレジスタに格納しておき、1バイトの転送が終了
するたびに+1を行えば、次々と連続したアドレスのデ
ータ群の転送を行うことができる。このレジスタをBA
R(byte address register )
やWAR(word address registe
r )などと呼び、一般にはカウンタが使用される。
[Prior Art] First, the conventional method of transferring one-dimensional data is
The basic functions of the MA control LSI will be described. For example, in a block transfer of data that handles data in a certain area of memory, you can store the address value that points to the beginning of that area in a register, and increment it by 1 each time a 1-byte transfer is completed. Data groups of consecutive addresses can be transferred. BA this register
R (byte address register)
and WAR (word address register)
r ), and generally a counter is used.

【0004】メモリの内容を連続して転送するにしても
、その大きさ、つまり範囲は有限であるので、更にもう
一つ、メモリの転送語数を管理するカウンタも必要であ
る。したがって、1ブロックが128バイトとか256
バイトというぐあいに、その計数値をプリセット可能な
カウンタを使用する。このカウンタをBCR(byte
 count register ) やWCR(wo
rd count register)等と呼び、初期
値として所要バイト数を設定しておき、1バイト転送終
了ごとに−1する。そして、その内容が0となったとき
にDMAを終了させれば、先のBARとの機能で1ブロ
ックの転送を完了させることができる。この二つのカウ
ンタを持つことが、DMAコントローラの大きな要素で
ある。
[0004] Even if the contents of the memory are to be transferred continuously, the size, that is, the range thereof, is finite, so another counter is also required to manage the number of transferred words in the memory. Therefore, one block is 128 bytes or 256 bytes.
A counter whose count value can be preset for each byte is used. This counter is defined as BCR (byte
count register) and WCR (wo
The required number of bytes is set as an initial value, and is decremented by 1 each time one byte transfer is completed. If the DMA is terminated when the content becomes 0, the transfer of one block can be completed using the function with the previous BAR. Having these two counters is a major element of the DMA controller.

【0005】[0005]

【発明が解決しようとする課題】そして、上述した従来
のDMAコントローラでは転送対象となるメモリ領域に
対して発生されるアドレスは連続した1次元領域に限ら
れることになる。たとえば、グラフィックシステムでグ
ラフィックコントローラで管理された2次元領域のフレ
ームメモリ(ローカルメモリ)に対し、ホストCPUが
DMAコントローラを用いてデータ処理を行うようなシ
ステムでは、上記ローカルメモリに対して効率のよいデ
ータ転送が出来なかった。
In the conventional DMA controller described above, the addresses generated for the memory area to be transferred are limited to a continuous one-dimensional area. For example, in a system where the host CPU uses a DMA controller to process data for a two-dimensional frame memory (local memory) managed by a graphics controller in a graphics system, it is possible to Data transfer was not possible.

【0006】次に、図8を参照して、従来のDMAコン
トローラを用いて1次元領域のメインメモリから2次元
領域のローカルメモリへデータの転送を行う場合につい
て説明する。
Next, referring to FIG. 8, a case will be described in which a conventional DMA controller is used to transfer data from a one-dimensional area main memory to a two-dimensional area local memory.

【0007】図8に示す様に従来のDMAコントローラ
101を用いて1次元領域のメインメモリ103から2
次元領域のローカルメモリ105へデータ転送を行うよ
うな場合、DMAチャネルをA,Bの2チャネルを用い
て行うことになり、Aチャネルはメインメモリ103の
アドレス管理を、Bチャネルはローカルメモリ105の
アドレス管理を行う。DMAコントローラ101のコマ
ンド/パラメータを管理するホストCPU107は次の
手順でDMAコントローラ101を制御する。
As shown in FIG. 8, using a conventional DMA controller 101, a one-dimensional area of main memory 103 to 2
When data is transferred to the local memory 105 in the dimensional area, two DMA channels, A and B, are used. The A channel manages the address of the main memory 103, and the B channel manages the address of the local memory 105. Perform address management. The host CPU 107, which manages commands/parameters of the DMA controller 101, controls the DMA controller 101 according to the following procedure.

【0008】まず第1に、フレームメモリ105の転送
先アドレスをBチャネルのWARレジスタにセットする
。更に、BチャネルのWCRレジスタには2次元領域の
1ラインに相当するワード数をセットする。次に、メイ
ンメモリの転送元アドレスをAチャネルのWARレジス
タにセットし、AチャネルのWCRレジスタにはBチャ
ネルのWCRレジスタと同じ値をセットをする。
First, the transfer destination address of the frame memory 105 is set in the WAR register of the B channel. Further, the number of words corresponding to one line of the two-dimensional area is set in the B channel WCR register. Next, the transfer source address of the main memory is set in the WAR register of the A channel, and the same value as the WCR register of the B channel is set in the WCR register of the A channel.

【0009】第2に、上記セットの後、ホストCPU1
07はDMAコントローラ101に対して転送開始コマ
ンドをセットする。第3に、転送開始コマンドを受けた
DMAコントローラ101はホストCPU107に対し
てバス権を要求するHRQ信号をアクティブして出力す
る。HRQ信号を受けたホストCPU107はバス権を
与える準備が出来るとDMAコントローラ101に対し
てHLDA信号を出力する。第4に、HLDA信号を受
けたDMAコントローラ101はデータ転送サイクルに
入り、チャネルAで生成されたアドレスでもってメイン
メモリ103の内容を読みだし、DMAコントローラ内
部のレジスタに入れる。次にチャネルBで生成されたア
ドレスでローカルメモリ105へレジスタの内容を書き
込み、両チャネルのWCRレジスタの内容を−1し、両
チャネルのWARレジスタの内容を−1あるいは+1行
う。これらの一連の動作をWCRの内容が0になるまで
繰り返す。第5に転送サイクル終了後DMAコントロー
ラ101はHRQ信号をインアクテブにし、ホストCP
U107に対してバス権を放棄する。
Second, after the above set, the host CPU 1
07 sets a transfer start command to the DMA controller 101. Third, upon receiving the transfer start command, the DMA controller 101 activates and outputs an HRQ signal requesting bus ownership to the host CPU 107. Upon receiving the HRQ signal, the host CPU 107 outputs the HLDA signal to the DMA controller 101 when it is ready to grant bus rights. Fourth, upon receiving the HLDA signal, the DMA controller 101 enters a data transfer cycle, reads out the contents of the main memory 103 using the address generated on channel A, and stores it in a register inside the DMA controller. Next, the contents of the register are written to the local memory 105 using the address generated in channel B, the contents of the WCR registers of both channels are incremented by -1, and the contents of the WAR registers of both channels are incremented by -1 or +1. These series of operations are repeated until the contents of WCR become 0. Fifth, after the transfer cycle ends, the DMA controller 101 makes the HRQ signal inactive, and the host CP
Relinquish bus rights to U107.

【0010】全データの転送のためには、ローカルメモ
リの2次元領域のY方向である全ラインについてWAR
レジスタで転送のスタートアドレスを変えて上記第1〜
第5まで処理を繰り返すことになる。すなわち、DMA
コントローラ101の動作手順がラインごとのためオー
バヘッドが大きくなり、従来のDMAコントローラ10
1による2次元領域を含むデータ転送では効率のよいデ
ータ転送が出来ないものであった。
In order to transfer all data, WAR is required for all lines in the Y direction of the two-dimensional area of the local memory.
Change the transfer start address in the register and repeat the steps 1 to 1 above.
The process will be repeated up to the fifth point. That is, D.M.A.
Since the operation procedure of the controller 101 is performed line by line, the overhead becomes large, and the conventional DMA controller 10
Data transfer including a two-dimensional area according to No. 1 cannot efficiently transfer data.

【0011】この発明は、上述のごとくの従来の課題を
解決するためになされたもので、その目的は、2次元領
域を含む2次元データの転送を効率よく行うことができ
るDMAコントロールLSIを提供することである。
The present invention was made to solve the conventional problems as described above, and its purpose is to provide a DMA control LSI that can efficiently transfer two-dimensional data including a two-dimensional area. It is to be.

【0012】[発明の構成][Configuration of the invention]

【0013】[0013]

【課題を解決するための手段】上記目的を達成するため
に、本発明は2次元のメモリ領域を有するメモリ間のデ
ータ転送を行うDMAコントロールLSIにして、互い
に直交するXおよびY方向で定義される上記2次元メモ
リ領域の転送エリアのX方向の語数の値と、上記転送エ
リアのY方向のライン数の値と、上記X方向に沿ったメ
モリ領域の幅と、データ転送のスタートアドレスとから
成る所定のパラメータに従って2次元メモリ領域の転送
エリアのアドレスを生成するアドレス生成手段と、上記
アドレス生成手段によって生成された2次元領域の転送
エリアのアドレスに従って上記メモリ間のデータ転送を
行う手段とを具備することを特徴とする。
[Means for Solving the Problems] In order to achieve the above object, the present invention is a DMA control LSI that transfers data between memories having two-dimensional memory areas, defined in X and Y directions orthogonal to each other. from the number of words in the X direction of the transfer area of the two-dimensional memory area, the number of lines in the Y direction of the transfer area, the width of the memory area along the X direction, and the start address of data transfer. address generating means for generating an address of a transfer area in a two-dimensional memory area according to predetermined parameters; and means for transferring data between the memories according to the address of the transfer area in the two-dimensional area generated by the address generating means. It is characterized by comprising:

【0014】[0014]

【作用】上述のごとく構成にすれば、各チャンネル毎に
2次元メモリ領域の転送エリアのアドレスを生成するこ
とができるため、少なくとも1方が2次元メモリ領域を
有する2個以上のメモリ間での2次元データの転送を簡
単に行える。
[Operation] With the above configuration, it is possible to generate the address of the transfer area of the two-dimensional memory area for each channel, so that it is possible to generate the address of the transfer area of the two-dimensional memory area for each channel. Two-dimensional data can be transferred easily.

【0015】[0015]

【実施例】以下、本発明に従うDMAコントロールLS
Iの一実施例を図面に基づいて説明する。
[Example] Hereinafter, DMA control LS according to the present invention
An embodiment of I will be described based on the drawings.

【0016】図2は、本発明に従うDMAコントロール
LSIを用いたデータ転送システムの一例の全体構成図
であり、DMAコントロールLSI1は、ホストCPU
3よりの指示に基づいて2次元領域のメインメモリ(フ
レームメモリ)5からの2次元データを、グラフィック
コントローラ7で管理された2次元領域のローカルメモ
リ9へシステムバス11を介して転送するように構成さ
れている。
FIG. 2 is an overall configuration diagram of an example of a data transfer system using a DMA control LSI according to the present invention.
3 to transfer the two-dimensional data from the main memory (frame memory) 5 of the two-dimensional area to the local memory 9 of the two-dimensional area managed by the graphic controller 7 via the system bus 11. It is configured.

【0017】図1は、上記DMAコントロールLSI1
の内部構成を示したブロック図である。
FIG. 1 shows the above DMA control LSI 1.
FIG. 2 is a block diagram showing the internal configuration of the computer.

【0018】上記DMAコントロールLSI1は、本発
明の主な特徴として、データ転送のための複数のチャン
ネル(この実施例では4チャンネル)を有しており、各
チャンネル毎に後述する所定のパラメータにしたがって
2次元領域のアドレスを生成することのできるアドレス
は生成回路13が設けられている。
The main feature of the DMA control LSI 1 of the present invention is that it has a plurality of channels (four channels in this embodiment) for data transfer, and each channel is controlled according to predetermined parameters described later. A generation circuit 13 is provided for an address capable of generating an address in a two-dimensional area.

【0019】さらに、上記DMAコントロールLSI1
は、ホストCPU3よりの指示に従って上記アドレス生
成回路13を制御するアドレス生成制御回路15と、上
記アドレス生成回路13によって生成された2次元領域
のアドレスを対応するフレームメモリ5,9へシステム
バス11のアドレスバス17へ送るためのI/Oバッフ
ァ19およびコマンド制御部21と、上記フレームメモ
リ5,9へ送られたアドレスに従ってシステムバス11
のデータバス23を介して転送されるデータを記憶する
ためのFIFOレジスタ25とを有している。また、上
記DMAコントロールLSI1は、さらに、データ転送
におけるデータバス23の制御を行うためのタイミング
コントローラ27,プライオリティコントローラ29,
コマンドレジスタ31,マスクレジスタ33,リクエス
トレジスタ35,モードレジスタ37,ステータスレジ
スタ39および、I/Oバッファ41を有している。
Furthermore, the DMA control LSI 1
The address generation control circuit 15 controls the address generation circuit 13 according to instructions from the host CPU 3, and transmits the addresses of the two-dimensional area generated by the address generation circuit 13 to the corresponding frame memories 5 and 9 on the system bus 11. An I/O buffer 19 and a command control unit 21 for sending data to the address bus 17, and a system bus 11 according to the addresses sent to the frame memories 5 and 9.
It has a FIFO register 25 for storing data transferred via a data bus 23. Further, the DMA control LSI 1 further includes a timing controller 27, a priority controller 29, and a timing controller 27 for controlling the data bus 23 in data transfer.
It has a command register 31, a mask register 33, a request register 35, a mode register 37, a status register 39, and an I/O buffer 41.

【0020】次に、図1を参照して本発明の要部である
アドレス生成回路13について説明する。
Next, the address generation circuit 13, which is the main part of the present invention, will be explained with reference to FIG.

【0021】上記アドレス生成回路13は、図3に示す
如く、転送メモリにおける2次元領域の転送エリアのX
方向の語数の値X1 と、上記転送エリアのX方向と直
交するY方向のライン数の値Y1 と、上記転送メモリ
のメモリ幅Xo と、データ転送のスタートアドレスと
から成るパラメータに基づいて2次元領域のアドレスを
生成するように構成されている。すなわち、上記アドレ
ス生成回路13は、上記2次元転送エリアのX方向の語
数の値X1 をセットするためのXWCレジスタ51と
、上記転送エリアのY方向のライン数の値Y1 をセッ
トするためのYLCレジスタ53と、上記転送メモリの
メモリ幅Xo をセットするためのMWレジスタ55と
、データ転送のスタートアドレスをセットするためのW
ARレジスタ57と、上記MWレジスタ55にセットさ
れたメモリ幅Xo と上記WARレジスタ57にセット
されたスタートアドレスとから上記転送エリアのY方向
のライン単位のスタートアドレスを計算するための加算
器(あるいは減算器)59とを有している。また、上記
アドレス生成回路13は、さらに、上記WARレジスタ
57にセットされた転送アドレス毎にカウントされるア
ドレスカウンタ61と、上記XWCレジスタ51にセッ
トされた語数の値X1 をカウントするカウンタ63と
を有している。
The address generation circuit 13, as shown in FIG.
Two-dimensional data transfer based on parameters consisting of the number of words in the direction X1, the number of lines in the Y direction perpendicular to the X direction of the transfer area Y1, the memory width Xo of the transfer memory, and the start address of data transfer. Configured to generate an address for the area. That is, the address generation circuit 13 includes an XWC register 51 for setting a value X1 of the number of words in the X direction of the two-dimensional transfer area, and a YLC register 51 for setting a value Y1 of the number of lines in the Y direction of the transfer area. a register 53, a MW register 55 for setting the memory width Xo of the transfer memory, and a W register 55 for setting the start address of data transfer.
An adder (or subtracter) 59. The address generation circuit 13 further includes an address counter 61 that counts for each transfer address set in the WAR register 57, and a counter 63 that counts the number of words X1 set in the XWC register 51. have.

【0022】また、上記XWCレジスタ51とYLCレ
ジスタ53とで上記2次元転送エリアのサイズを管理す
る様になっている。
Further, the size of the two-dimensional transfer area is managed by the XWC register 51 and the YLC register 53.

【0023】次に、上記DMAコントロールLSIの動
作について図1および図4を参照して説明する。
Next, the operation of the DMA control LSI will be explained with reference to FIGS. 1 and 4.

【0024】この場合、メインメモリ5の2次元領域か
らローカルメモリ9の2次元領域へのデータ転送を行う
ものでDMAコントロールLSIの2チャンネルを使用
する。すなわち、チャンネル1のアドレス生成回路13
とチャンネル2のアドレス生成回路13とを使用してア
ドレス生成を行う。ここでは、チャンネル1のアドレス
生成回路13がソース領域(メインメモリ5の2次元領
域)のアドレス生成を行い、チャンネル2のアドレス生
成回路13がディステネーション領域(ローカルメモリ
9の2次元領域)のアドレス生成を行う様になっている
In this case, two channels of the DMA control LSI are used to transfer data from the two-dimensional area of the main memory 5 to the two-dimensional area of the local memory 9. That is, the address generation circuit 13 of channel 1
Address generation is performed using the address generation circuit 13 of channel 2 and the address generation circuit 13 of channel 2. Here, the address generation circuit 13 of channel 1 generates an address for the source area (two-dimensional area of the main memory 5), and the address generation circuit 13 of channel 2 generates an address for the destination area (two-dimensional area of the local memory 9). It is designed to generate addresses.

【0025】まず初めに、ホストCPU3の指示に従い
アドレス生成制御回路15は、上記チャンネル1および
2の各アドレス生成回路13のXWCレジスタ51,Y
LCレジスタ53,MWレジスタ55,WARレジスタ
57に所定のパラメータすなわち上記転送エリアのX方
向の語数X1 ,上記転送エリアのY方向のライン数Y
1 ,上記転送メモリのメモリ幅Xo ,およびデータ
転送のスタートアドレスをセットする。ここで、両チャ
ンネルのXWCレジスタ51のX方向の語数Xo とY
LCレジスタ53のY方向のライン数Y1 の値は通常
同じ値とする(図4参照)。
First, in accordance with instructions from the host CPU 3, the address generation control circuit 15 sets the XWC registers 51, Y
The LC register 53, MW register 55, and WAR register 57 contain predetermined parameters, namely, the number of words in the X direction of the transfer area X1, and the number of lines Y in the Y direction of the transfer area.
1. Set the memory width Xo of the transfer memory and the start address of data transfer. Here, the number of words in the X direction of the XWC register 51 of both channels Xo and Y
The value of the number of lines Y1 in the Y direction of the LC register 53 is usually the same value (see FIG. 4).

【0026】次に、ホストCPU3は、DMAコントロ
ールLSI1のプライオリティコントローラ29へ転送
開始コマンドをセットし、それに対して上記プライオリ
ティコントローラ29は、ホストCPU3に対してバス
権を要求するHRQ信号を出力する。上記HRQ信号を
受けたホストCPU3は、バス権を与える準備が出来た
時点でプライオリティコントローラ29に対してHLD
A信号を出力する。
Next, the host CPU 3 sets a transfer start command to the priority controller 29 of the DMA control LSI 1, and in response, the priority controller 29 outputs an HRQ signal requesting bus ownership to the host CPU 3. Upon receiving the HRQ signal, the host CPU 3 sends the HLD to the priority controller 29 when it is ready to grant the bus right.
Outputs A signal.

【0027】上記HLDA信号を受けたDMAコントロ
ールLSIは、データ転送サイクルに入り、チャンネル
1のアドレス生成回路13のWARレジスタ57にセッ
トされたソース領域のスタートアドレスに従ってソース
領域(転送エリア)よりのデータがデータバス23およ
びI/Oバッファ41を介してFIFOレジスタ25へ
書き込まれる。次に、上記アドレスカウンタ61がカウ
ントアップ(+1)又はカウントダウン(−1)され、
次のスタートアドレスに従って、次のデータがソース領
域より読み出されてFIFOレジスタ25に書き込まれ
る。
Upon receiving the HLDA signal, the DMA control LSI enters a data transfer cycle and transfers data from the source area (transfer area) according to the start address of the source area set in the WAR register 57 of the address generation circuit 13 of channel 1. is written to the FIFO register 25 via the data bus 23 and the I/O buffer 41. Next, the address counter 61 is counted up (+1) or down (-1),
The next data is read from the source area and written to the FIFO register 25 according to the next start address.

【0028】上述のような動作が繰り返され、FIFO
レジスタ25内に第1のラインの複数のデータが順次書
き込まれていく(図4参照)。上記書込みにおいて、チ
ャンネル1のアドレス生成回路13のXWCレジスタ5
1の値(X方向の語数X1 )は、カウンタ63によっ
て上記データの書き込みごとにカウントダウン(−1)
される。
The above operation is repeated, and the FIFO
A plurality of data of the first line are sequentially written into the register 25 (see FIG. 4). In the above write, the XWC register 5 of the address generation circuit 13 of channel 1
The value of 1 (number of words in the X direction X1) is counted down (-1) by the counter 63 every time the above data is written.
be done.

【0029】次に、上記書込みと並行して、DMAコン
トロールLSIは,FIFOレジスタ25内に書き込ま
れたデータをディステネーション領域であるローカルメ
モリ9の転送エリアへ書き移す処理へ移る。まず、チャ
ンネル2のアドレス生成回路13のWARレジスタにセ
ットされたスタートアドレスが読み出され、そのスター
トアドレスに従ってFIFOレジスタ25よりの第1の
ラインのデータがデータバス23およびI/Oバッファ
41を介してローカルメモリ9のディステネーション領
域へ書き移される。上記書き移しの処理ごとにチャンネ
ル2のアドレス生成回路13のWARレジスタ57のア
ドレスカウンタ61がカウントアップ(+1)又はカウ
ントダウン(−1)され、順次書き移し処理が行われる
Next, in parallel with the above writing, the DMA control LSI moves to a process of writing the data written in the FIFO register 25 to the transfer area of the local memory 9, which is the destination area. First, the start address set in the WAR register of the address generation circuit 13 of channel 2 is read, and the first line of data from the FIFO register 25 is transferred via the data bus 23 and I/O buffer 41 according to the start address. The data is then transferred to the destination area of the local memory 9. The address counter 61 of the WAR register 57 of the address generation circuit 13 of channel 2 is counted up (+1) or down (-1) for each write process, and the write process is performed sequentially.

【0030】上記書き込み処理および書き移し処理は、
チャンネル1のアドレス生成回路13のXWCレジスタ
51の値(X方向の語数X1 )がカウンタ63によっ
て0になるまで繰り返される。上記X方向の語数X1 
が0になると、上記ソース領域およびディステネーショ
ン領域の2次元転送エリアの第2のラインのスタートア
ドレスを計算するため、チャンネル1および2の各アド
レス生成回路13の加算器59は、WARレジスタ57
にセットされた前ライン(第1のライン)のスタートア
ドレスと、MWレジスタ55にセットされたメモリ幅と
を加算(あるいは減算)する。上記加算結果は、アドレ
スカウンタ61とWARレジスタ57とにセットされ、
上記第2のラインの書き込みおよび書き移し処理が実行
される。上記加算が行われると、YLCレジスタ53の
値(Y方向ライン数Y1 )がカウントダウン(−1)
され、上記YLCレジスタ53の値が0になるまで(す
なわち最後のラインが終わるまで)上記書き込みおよび
書き移し処理が行われる。上記YLCレジスタ53の値
が0になると、転送サイクルが終了し、DMAコントロ
ールLSIは、前記HRQ信号をインアクティブとし、
ホストCPU3に対してバス権を放棄する。
[0030] The above writing process and transfer process are as follows:
This process is repeated until the value of the XWC register 51 (the number of words in the X direction X1) of the address generation circuit 13 of channel 1 becomes 0 by the counter 63. Number of words in the above X direction X1
When becomes 0, in order to calculate the start address of the second line of the two-dimensional transfer area of the source area and destination area, the adder 59 of each address generation circuit 13 of channels 1 and 2 inputs the WAR register 57.
The start address of the previous line (first line) set in MW register 55 is added (or subtracted) from the memory width set in MW register 55. The above addition result is set in the address counter 61 and the WAR register 57,
The writing and transfer processing of the second line is executed. When the above addition is performed, the value of the YLC register 53 (number of lines in the Y direction Y1) counts down (-1).
The write and transfer processes are performed until the value of the YLC register 53 becomes 0 (that is, until the last line ends). When the value of the YLC register 53 becomes 0, the transfer cycle ends, and the DMA control LSI makes the HRQ signal inactive.
The bus right is relinquished to the host CPU3.

【0031】以上の動作説明の如くに、本発明に従うD
MAコントロールLSIにおいては、従来の装置で2次
元転送を行うのに比べて動作が簡単である。
As described above, D according to the present invention
The operation of the MA control LSI is simpler than that of conventional devices that perform two-dimensional transfer.

【0032】また、本実施例は、2次元領域→2次元領
域の転送の場合について説明したが、図5および図6に
示す如くに、1次元領域→2次元領域の転送および2次
元領域→1次元領域の転送も上記実施例装置の使用方法
を若干変更することによって実行できることはいうまで
もないことである。
Further, in this embodiment, the case of transfer from two-dimensional area to two-dimensional area has been explained, but as shown in FIGS. 5 and 6, transfer from one-dimensional area to two-dimensional area and transfer from two-dimensional area to It goes without saying that transfer of a one-dimensional area can also be carried out by slightly modifying the method of using the apparatus of the above embodiment.

【0033】さらに、本実施例によれば図7に例示する
ごとくに、種々の転送の組合わせを行うことができるこ
とはいうまでもない。
Furthermore, according to this embodiment, it goes without saying that various combinations of transfers can be performed, as illustrated in FIG.

【0034】[0034]

【発明の効果】以上説明したように、本発明では、DM
AコントロールLSIにおいて、所定のパラメータに従
って2次元領域のアドレスを生成するアドレス生成回路
を設けているため、2次元のメモリ領域に対しても効率
良くデータの転送ができる。
[Effects of the Invention] As explained above, in the present invention, DM
Since the A control LSI is provided with an address generation circuit that generates an address for a two-dimensional area according to predetermined parameters, data can be transferred efficiently even to a two-dimensional memory area.

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

【図1】本発明を実施したDMAコントロールLSIの
内部ブロック図である。
FIG. 1 is an internal block diagram of a DMA control LSI embodying the present invention.

【図2】図1に示すDMAコントロールLSIの使用さ
れるシステムの全体ブロック図である。
FIG. 2 is an overall block diagram of a system in which the DMA control LSI shown in FIG. 1 is used.

【図3】2次元領域のアドレス生成のための所定のパラ
メータの説明図である。
FIG. 3 is an explanatory diagram of predetermined parameters for generating addresses in a two-dimensional area.

【図4】図1に示すDMAコントロールLSIの動作を
説明するための図である。
FIG. 4 is a diagram for explaining the operation of the DMA control LSI shown in FIG. 1;

【図5】1次元領域から2次元領域へのデータ転送の説
明図である。
FIG. 5 is an explanatory diagram of data transfer from a one-dimensional area to a two-dimensional area.

【図6】2次元領域から1次元領域へのデータ転送の説
明図である。
FIG. 6 is an explanatory diagram of data transfer from a two-dimensional area to a one-dimensional area.

【図7】種々の転送の組合せ例を示す説明図である。FIG. 7 is an explanatory diagram showing examples of various transfer combinations.

【図8】従来における1次元領域から2次元領域へのデ
ータ転送の説明図である。
FIG. 8 is an explanatory diagram of conventional data transfer from a one-dimensional area to a two-dimensional area.

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

1  DMAコントロールLSI 3  ホストCPU 5  メインメモリ 9  ローカルメモリ 13  アドレス生成回路 25  FIFOレジスタ 1 DMA control LSI 3 Host CPU 5 Main memory 9. Local memory 13 Address generation circuit 25 FIFO register

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】  少なくとも2次元のメモリ領域を有す
るメモリに対してデータの転送を行うDMAコントロー
ルLSIにして、所定のパラメータに従って2次元メモ
リ領域の転送エリアのアドレスを生成するアドレス生成
手段と、上記アドレス生成手段によって生成された2次
元領域の転送エリアのアドレスに従って上記メモリに対
してデータ転送を行う手段とを具備することを特徴とす
るDMAコントロールLSI。
1. Address generation means for generating an address of a transfer area of a two-dimensional memory area according to predetermined parameters in a DMA control LSI that transfers data to a memory having at least a two-dimensional memory area; A DMA control LSI comprising: means for transferring data to the memory according to an address of a transfer area in a two-dimensional area generated by an address generating means.
【請求項2】  前記所定のパラメータが、互いに直交
するXおよびY方向で定義される上記2次元領域の転送
エリアのX方向の語数の値と、上記転送エリアのY方向
のライン数の値と、上記X方向に沿ったメモリ領域の幅
,データ転送のスタートアドレスとからなることを特徴
とする請求項1記載のDMAコントロールLSI。
2. The predetermined parameter is a value of the number of words in the X direction of the transfer area of the two-dimensional area defined by mutually orthogonal X and Y directions, and a value of the number of lines in the Y direction of the transfer area. , the width of the memory area along the X direction, and a data transfer start address.
【請求項3】  前記アドレス生成手段が、上記転送エ
リアのX方向の語数の値をセットするためのXWCレジ
スタと、上記転送エリアのY方向のライン数の値をセッ
トするためのYLCレジスタと、上記X方向に沿ったメ
モリ領域の幅をセットするためのMWレジスタと、デー
タ転送のスタートアドレスをセットするためのWARレ
ジスタと、上記MWレジスタにセットされたメモリ幅と
上記WARレジスタにセットされたスタートアドレスと
から上記転送エリアのY方向のライン単位のスタートア
ドレスを計算するための加算器と、上記WARレジスタ
にセットされたスタートアドレス毎にカウントされるア
ドレスカウンタと、上記XWCレジスタにセットされた
語数の値毎にカウントされるカウンタとから成ることを
特徴とする請求項2記載のDMAコントロールLSI。
3. The address generating means includes an XWC register for setting a value of the number of words in the X direction of the transfer area, and a YLC register for setting a value of the number of lines in the Y direction of the transfer area; A MW register for setting the width of the memory area along the X direction, a WAR register for setting the start address of data transfer, and a memory width set in the MW register and the WAR register. an adder for calculating a line-by-line start address in the Y direction of the transfer area from the start address; an address counter that counts for each start address set in the WAR register; 3. The DMA control LSI according to claim 2, further comprising a counter that counts each value of the number of words.
JP10590091A 1991-05-10 1991-05-10 Dma control lsi Pending JPH04333952A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10590091A JPH04333952A (en) 1991-05-10 1991-05-10 Dma control lsi

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10590091A JPH04333952A (en) 1991-05-10 1991-05-10 Dma control lsi

Publications (1)

Publication Number Publication Date
JPH04333952A true JPH04333952A (en) 1992-11-20

Family

ID=14419762

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10590091A Pending JPH04333952A (en) 1991-05-10 1991-05-10 Dma control lsi

Country Status (1)

Country Link
JP (1) JPH04333952A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096312B2 (en) 2002-03-20 2006-08-22 Seiko Epson Corporation Data transfer device and method for multidimensional memory
US9996500B2 (en) 2011-09-27 2018-06-12 Renesas Electronics Corporation Apparatus and method of a concurrent data transfer of multiple regions of interest (ROI) in an SIMD processor system
JP2023513652A (en) * 2020-02-14 2023-04-03 グーグル エルエルシー Direct memory access architecture with multi-level multi-stride

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096312B2 (en) 2002-03-20 2006-08-22 Seiko Epson Corporation Data transfer device and method for multidimensional memory
US9996500B2 (en) 2011-09-27 2018-06-12 Renesas Electronics Corporation Apparatus and method of a concurrent data transfer of multiple regions of interest (ROI) in an SIMD processor system
JP2023513652A (en) * 2020-02-14 2023-04-03 グーグル エルエルシー Direct memory access architecture with multi-level multi-stride

Similar Documents

Publication Publication Date Title
JP4531223B2 (en) Data processing apparatus having a plurality of processors sharing a collective memory
JPS63159961A (en) Transfer controller for direct memory access
JP2591502B2 (en) Information processing system and its bus arbitration system
JPH04333952A (en) Dma control lsi
JPH04236649A (en) Data transfer device
JPH01296388A (en) Picture generating device
JP2594611B2 (en) DMA transfer control device
JP3765852B2 (en) Data processing apparatus and method
JP2002259326A (en) Dma controller and dma transferring method
JPH0721785B2 (en) Peripheral control device
JPH0310354A (en) Data transfer control system
JPH0387941A (en) Decentralized data base processing system
JPH05250332A (en) Electronic equipment
JPH02181277A (en) Address control circuit for picture memory
JPH06110773A (en) Memory controller
JPH03189802A (en) Host link unit for programmable controller
JPH03144779A (en) Image processing system
JPH0883259A (en) Decentralized information processor
JPS62284547A (en) Communication control equipment
JPH0337227B2 (en)
JPH06195297A (en) Dma circuit
JPH0193855A (en) Memory control method in information processing equipment
JPH03149671A (en) Image processor
JPS6386086A (en) Hatching pattern generating device
JPS6378260A (en) I/O device control method