JPH05151146A - Dma transfer system - Google Patents

Dma transfer system

Info

Publication number
JPH05151146A
JPH05151146A JP3310298A JP31029891A JPH05151146A JP H05151146 A JPH05151146 A JP H05151146A JP 3310298 A JP3310298 A JP 3310298A JP 31029891 A JP31029891 A JP 31029891A JP H05151146 A JPH05151146 A JP H05151146A
Authority
JP
Japan
Prior art keywords
data
chain
transfer
register
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP3310298A
Other languages
Japanese (ja)
Inventor
Koji Niitaka
宏治 新▲高▼
Noriaki Kishino
訓明 岸野
Hitoya Nakamura
人也 中村
Jiro Aso
二郎 麻生
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 JP3310298A priority Critical patent/JPH05151146A/en
Publication of JPH05151146A publication Critical patent/JPH05151146A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/30Hydrogen technology
    • Y02E60/50Fuel cells

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE:To attain the DMA transfer of all data on plural blocks turned into a chain just with a single start operation of a CPU. CONSTITUTION:The chain presence/absence identification bits fetched from each block of a buffer are stored in a chain bit storing register 5. When the presence of a chain is confirmed, the address of the next block is stored in a next-block address register 7. The contents of a data length register 9 showing the data byte length and stored in a data storing part are stored in a word counter register 5 when the chain is present, and the contents of an LI register 10 showing the valid byte length stored in the data storing part are stored in the register 5 respectively in accordance with the contents of the register 3. Then the contents of the register 5 are subtracted in response to the transfer of data. When the contents of the register 5 are equal to 0 and the presence of a chain is confirmed, the transferer is switched to the next block based on the contents of the register 7. Meanwhile the transfer of data is complete when the absence of the chain is confirmed.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、チェーン化された複数
ブロックのデータをダイレクトメモリアクセス転送する
方式に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for direct memory access transfer of a plurality of chained blocks of data.

【0002】[0002]

【従来の技術】従来、ダイレクトメモリアクセス(以
下、DMAという)転送を行うDMAコントローラとし
ては、例えば、「トランジスタ技術」1988年10月
号、P.468〜P.478、CQ出版社発行、に開示
されたものがある。図7はDMA転送システムの構成を
示すブロック図で、51は前記文献に開示されたDMA
コントローラ、52はシステム全体の制御を行うCPU
(中央処理装置)、53は複数ブロック(#0〜#n)
に分かれたチェーン化可能なバッファ、54はメインメ
モリ、55は51〜54を結合するバスである。
2. Description of the Related Art Conventionally, as a DMA controller for performing direct memory access (hereinafter, referred to as DMA) transfer, for example, "Transistor Technology", October 1988, P. 468-P. 478, published by CQ Publisher, Inc. FIG. 7 is a block diagram showing the structure of the DMA transfer system, and 51 is the DMA disclosed in the above document.
Controller, 52 is a CPU that controls the entire system
(Central processing unit), 53 is a plurality of blocks (# 0 to #n)
Is a chainable buffer, 54 is a main memory, and 55 is a bus connecting 51 to 54.

【0003】図7のような構成でバッファ53からメイ
ンメモリ54にデータを転送するには、DMAコントロ
ーラ51のメモリ・アドレス・レジスタ(図示せず)に
転送先アドレスを、デバイス・アドレス・レジスタ(図
示せず)に転送元アドレスを設定し、メモリ・トランス
ファ・カウンタ(図示せず)に転送ワード数を設定す
る。そして、CPU52からチャネル・コントロール・
レジスタ(図示せず)のSTRビットをセットすること
により、DMA転送をスタートさせる。
In order to transfer data from the buffer 53 to the main memory 54 in the configuration as shown in FIG. 7, the transfer destination address is set in the memory address register (not shown) of the DMA controller 51 and the device address register ( The transfer source address is set in (not shown), and the number of transfer words is set in the memory transfer counter (not shown). Then, the channel control from the CPU 52
A DMA transfer is started by setting the STR bit of a register (not shown).

【0004】複数ブロックのデータを転送するために
は、上記の手順を転送ブロック数分繰り返す。また、複
数ブロックのデータ転送を一度に行う方法としては、メ
インメモリ54上にバッファ53の先頭アドレス等を設
定し、デバイス・アドレス・レジスタに転送先アドレス
を設定してDMA転送をスタートさせる方法がある。
To transfer a plurality of blocks of data, the above procedure is repeated for the number of transfer blocks. As a method of transferring data of a plurality of blocks at a time, there is a method of setting the start address of the buffer 53 on the main memory 54 and setting the transfer destination address in the device address register to start the DMA transfer. is there.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、上記従
来のDMAコントローラでは、チェーン化された複数の
ブロックからデータを転送する時に、各ブロックごとに
DMAコントローラを起動しなければならず、CPUの
負担が大きくなってしまうという問題点があった。ま
た、複数ブロックのデータを一度に転送するモードを使
用する場合でもメインメモリ上に各ブロックの先頭アド
レスを設定しなければならないので、CPUがチェーン
化に関与しない場合、CPUがチェーンをたどってバッ
ファの先頭アドレスを設定する必要があり、CPUの負
担が大きくなってしまうという問題点があった。
However, in the above-mentioned conventional DMA controller, when transferring data from a plurality of chained blocks, the DMA controller must be activated for each block, which imposes a burden on the CPU. There was a problem that it would grow. In addition, even when using the mode of transferring data of multiple blocks at one time, the start address of each block must be set in the main memory, so if the CPU does not participate in chaining, the CPU follows the chain and buffers. However, there is a problem in that the load on the CPU becomes heavy.

【0006】本発明は、以上述べたチェーン化された複
数のブロックからデータ転送する時にCPUの負担が大
きくなってしまうという問題点を解決するため、データ
転送時にチェーンの有無を判定し、チェーンをハード的
にたどる手段を設け、一度CPUから起動するだけでチ
ェーン化されたブロックのデータをすべて転送できるD
MA転送方式を提供することを目的とする。
In order to solve the problem that the load of the CPU becomes large when data is transferred from a plurality of chained blocks as described above, the present invention determines the presence or absence of a chain during data transfer, and All the data of the chained blocks can be transferred just by activating it from the CPU once by providing a means to trace it in hardware.
An object is to provide an MA transfer method.

【0007】[0007]

【課題を解決するための手段】前記問題点を解決するた
めに、本発明は、複数の固定長のブロックに分かれたバ
ッファ内のデータをDMAコントローラにより転送する
DMA転送方式において、チェーンの有無を示すビット
と、チェーン有の場合に次ブロックのアドレスを示す領
域と、チェーン無の場合にデータ格納部内の有効バイト
長を示す領域と、転送データの格納部を各ブロック内に
設け、チェーンの有無を示すデータを記憶する第1の記
憶手段と、チェーン有の場合に次ブロックのアドレスを
記憶する第2の記憶手段と、チェーン有の場合にデータ
格納部内のデータバイト長を記憶し、チェーン無の場合
にデータ格納部内の有効バイト長を記憶し、かつ、デー
タの転送に応じて記憶内容が減算される第3の記憶手段
をDMAコントローラに設け、チェーン有の場合はデー
タ格納部内のデータを転送し終わった時に転送元アドレ
スを次ブロックに切り替え、チェーン無の場合はデータ
格納部内の有効バイト長を転送し終わった時にデータの
転送を終了するように構成した。
In order to solve the above problems, the present invention determines whether or not there is a chain in a DMA transfer system in which data in a buffer divided into a plurality of blocks of fixed length is transferred by a DMA controller. The presence / absence of a chain is provided by providing each bit with an indicated bit, an area showing the address of the next block when there is a chain, an area showing the effective byte length in the data storage section when there is no chain, and a storage section for transfer data in each block. For storing the data indicating the number, the second storage means for storing the address of the next block when there is a chain, and the data byte length in the data storage section when there is a chain, In the case of, the third storage means for storing the effective byte length in the data storage unit and for subtracting the stored content in accordance with the transfer of the data is a DMA controller. If the chain is present, the transfer source address is switched to the next block when the data in the data storage section has been transferred.If the chain is not present, the data is transferred when the effective byte length in the data storage section has been transferred. Configured to terminate.

【0008】また、本発明は、複数の固定長のブロック
に分かれたバッファ内のデータをDMAコントローラに
より転送するDMA転送方式において、チェーンの有無
を示すビットと、チェーン有の場合に次ブロックのアド
レスを示す領域と、チェーン無の場合にデータ格納部内
の有効バイト長を示す領域と、転送データの格納部を各
ブロック内に設け、チェーン有の場合に次ブロックのア
ドレスを記憶する第1の記憶手段と、転送データのバイ
ト長が設定され、かつ、データの転送に応じて記憶内容
が減算される第2の記憶手段と、転送データのバイト数
をカウントするカウンタをDMAコントローラに設け、
カウンタの内容がデータ格納部内のデータバイト長にな
った時に転送元アドレスを次ブロックに切り替え、第2
の記憶手段に設定したバイト長を転送し終わった時にデ
ータの転送を終了するように構成した。
Further, according to the present invention, in a DMA transfer system in which data in a buffer divided into a plurality of fixed-length blocks is transferred by a DMA controller, a bit indicating the presence or absence of a chain and an address of the next block when the chain is present. Area for indicating the effective byte length in the data storage section when there is no chain, and a storage section for the transfer data in each block, and stores the address of the next block when the chain exists. Means, a second storage means for setting the byte length of the transfer data and subtracting the stored contents according to the transfer of the data, and a counter for counting the number of bytes of the transfer data in the DMA controller,
When the content of the counter reaches the data byte length in the data storage unit, the transfer source address is switched to the next block,
The data transfer is completed when the byte length set in the storage means has been transferred.

【0009】[0009]

【作用】本発明によれば、以上のようにDMA転送方式
を構成したので、DMAコントローラは、バッファの各
ブロックから取込んだチェーンの有無を示すデータを第
1の記憶手段に記憶し、チェーン有の場合に次ブロック
のアドレスを第2の記憶手段に記憶し、チェーン有の場
合にデータ格納部内のデータバイト長をチェーン無の場
合にデータ格納部内の有効バイト長を第3の記憶手段に
記憶し、かつ、データの転送に応じて第3の記憶手段の
内容を減算する。そして、第3の記憶手段の内容が0に
なった時、チェーン有の場合は第2の記憶手段の内容に
基づいて転送元アドレスを次ブロックに切り替え、チェ
ーン無の場合はデータの転送を終了する。
According to the present invention, since the DMA transfer system is configured as described above, the DMA controller stores the data indicating the presence / absence of the chain fetched from each block of the buffer in the first storage means, If there is a chain, the address of the next block is stored in the second storage means, and if there is a chain, the data byte length in the data storage section is stored in the second storage section. If there is no chain, the effective byte length in the data storage section is stored in the third storage section. The contents of the third storage means are stored and subtracted according to the data transfer. When the content of the third storage means becomes 0, if the chain is present, the transfer source address is switched to the next block based on the content of the second storage means, and if the chain is not present, the data transfer is completed. To do.

【0010】また、本発明によれば、DMAコントロー
ラは、チェーン有の場合に次ブロックのアドレスを第1
の記憶手段に記憶し、転送データのバイト長を第2の記
憶手段に設定し、かつ、データの転送に応じてその設定
値を減算し、データの転送に応じてカウンタの内容を増
加させる。そして、カウンタの内容がデータ格納部内の
データバイト長になった時に転送元アドレスを次ブロッ
クに切り替え、第2の記憶手段の内容が0になった時に
データの転送を終了する。
Further, according to the present invention, the DMA controller assigns the address of the next block to the first address when the chain is present.
The storage means stores the byte length of the transfer data in the second storage means, subtracts the set value according to the data transfer, and increases the content of the counter according to the data transfer. Then, when the content of the counter reaches the data byte length in the data storage unit, the transfer source address is switched to the next block, and when the content of the second storage means becomes 0, the data transfer ends.

【0011】[0011]

【実施例】以下、本発明の実施例について図面を参照し
ながら詳細に説明する。 (第1実施例)図1は本発明の第1実施例におけるDM
Aコントローラの構成を示すブロック図で、1はアドレ
ス信号、データ信号、リード等の各種制御信号の入出力
を行う入出力インタフェース部、2はタイミングの作
成、アドレスのインクリメント、ワードカウンタのデク
リメント等のDMAコントローラ全体の制御を行う制御
部、3はデータ転送中にチェーン有無識別ビットをラッ
チして保持するチェーンビット格納レジスタ、4はCP
UからI/O命令により設定され、データ転送ごとにイ
ンクリメントされていく転送先アドレスレジスタ、5は
チェーン有の場合はバッファ内のデータ格納部のデータ
バイト長を、チェーン無の場合はバッファ内のデータ格
納部内の有効バイト長を、各ブロックのデータ転送開始
時にラッチし、データ転送ごとにデクリメントされてい
くワードカウンタレジスタである。また、6はCPUか
らI/O命令により最初に設定され、転送ごとにインク
リメントされていく転送元アドレスレジスタであり、バ
ッファがチェーン化されている時はブロックが切り替わ
るごとに次ブロックの先頭アドレスをラッチする。7は
チェーン有の場合に次バッファのアドレスを示す領域を
リードした時、その値をラッチする次ブロックアドレス
レジスタ、8はチェーンの有無に従ってワードカウンタ
レジスタ5に供給するデータを選択するセレクタであ
り、チェーン有の場合はデータ長レジスタ9の内容を、
チェーン無の場合LIレジスタ10の内容を選択する。
9はバッファ内のデータ格納部内のデータバイト長を保
持するデータ長レジスタ、10はバッファ内のデータ格
納部内の有効バイト長を保持するLIレジスタ、11は
データ転送時に転送データを一時的に保持するデータバ
ッファである。
Embodiments of the present invention will now be described in detail with reference to the drawings. (First Embodiment) FIG. 1 shows a DM according to the first embodiment of the present invention.
In the block diagram showing the configuration of the A controller, 1 is an input / output interface section for inputting / outputting various control signals such as address signals, data signals, and reading, 2 is timing creation, address increment, word counter decrement, etc. A control unit for controlling the entire DMA controller, 3 is a chain bit storage register that latches and holds a chain presence / absence identification bit during data transfer, and 4 is a CP
The transfer destination address register, which is set by the I / O instruction from U and is incremented for each data transfer, is the data byte length of the data storage section in the buffer when there is a chain, and in the buffer when there is no chain. This is a word counter register that latches the effective byte length in the data storage unit at the start of data transfer of each block and decrements it every data transfer. Further, 6 is a transfer source address register which is first set by the CPU by an I / O instruction and is incremented for each transfer. When the buffer is chained, the start address of the next block is set every time the block is switched. To latch. 7 is a next block address register that latches the value when the area indicating the address of the next buffer is read when there is a chain, and 8 is a selector that selects the data to be supplied to the word counter register 5 according to the presence or absence of the chain, If there is a chain, change the contents of data length register 9 to
When there is no chain, the content of the LI register 10 is selected.
Reference numeral 9 is a data length register for holding the data byte length in the data storage section in the buffer, 10 is an LI register for holding the effective byte length in the data storage section in the buffer, and 11 is temporarily holding the transfer data during data transfer. It is a data buffer.

【0012】図2は本発明の実施例におけるバッファの
1ブロック内の構成図で、“1”でチェーン有、“0”
でチェーン無を示すチェーン有無識別ビットCH、チェ
ーン無の場合にデータ格納部内の有効バイト長を示す領
域であるLI、チェーン有の場合に次ブロックの番号を
示す領域であるNPN0,NPN1、44バイト分のユ
ーザデータ情報を備える領域であるデータ格納部を備
え、64バイトで構成されている。
FIG. 2 is a block diagram of one block of the buffer according to the embodiment of the present invention. "1" indicates a chain, and "0" indicates a chain.
, A chain presence / absence identification bit CH indicating that there is no chain, LI that is an area that indicates the effective byte length in the data storage unit when there is no chain, and NPN0, NPN1, and 44 bytes that are areas that indicate the number of the next block when there is a chain. A data storage unit, which is an area including minute user data information, is provided, and is composed of 64 bytes.

【0013】図3、図4及び図5は本発明の第1実施例
に係るDMA転送方式の動作フローチャートである。以
下、図1〜図5及び図8を参照しながら、本発明の実施
例におけるデータ転送動作を説明する。なお、以下の説
明では、図8におけるDMAコントローラ51は図1に
示した構成を有し、バッファ53は図2に示した構成を
有するものとする。
FIGS. 3, 4 and 5 are operation flowcharts of the DMA transfer system according to the first embodiment of the present invention. Hereinafter, the data transfer operation in the embodiment of the present invention will be described with reference to FIGS. 1 to 5 and 8. In the following description, the DMA controller 51 in FIG. 8 has the configuration shown in FIG. 1 and the buffer 53 has the configuration shown in FIG.

【0014】まず、図3のステップ21でCPU52が
DMAコントローラ51の転送元アドレスレジスタ6に
対して転送元のチェーン化されたブロックの先頭アドレ
スを設定し、転送先アドレスレジスタ4に対して転送先
のメインメモリ54のアドレスを設定し、ステップ22
でDMAコントローラ51に対して転送起動を行う。ス
テップ23でDMAコントローラ51は2バイトごとに
バス55の使用権をCPU52から受け(以下、バスハ
ントという)、ステップ24でバッファ53の転送元ア
ドレスから2バイトのデータ(チェーン有無識別ビット
CH、LI部、NPN0)を取込み、ステップ25でバ
ス55を解放する。
First, in step 21 of FIG. 3, the CPU 52 sets the start address of the chained block of the transfer source in the transfer source address register 6 of the DMA controller 51, and sets the transfer destination in the transfer destination address register 4. Set the address of the main memory 54 of the
Then, transfer start is performed to the DMA controller 51. In step 23, the DMA controller 51 receives the right to use the bus 55 from the CPU 52 every 2 bytes (hereinafter referred to as a bus hunt), and in step 24, the transfer source address of the buffer 53 is set to 2 bytes of data (chain presence / absence identifying bits CH, LI portion). , NPN0), and releases the bus 55 in step 25.

【0015】次に、ステップ26でチェーン有無識別ビ
ットCHをチェーンビット格納レジスタ3に、LI部を
LIレジスタ10にラッチし、転送元アドレスレジスタ
6の内容に2を加算する。次に、ステップ27でバス5
5をハントし、ステップ28で2バイトデータを転送元
アドレスから取込み、NPN1を内部に取込む。そし
て、ステップ29でバスを解放する。
Next, at step 26, the chain presence / absence identifying bit CH is latched in the chain bit storage register 3 and the LI section is latched in the LI register 10, and 2 is added to the content of the transfer source address register 6. Next, in step 27, bus 5
5 is hunted, and in step 28, 2-byte data is fetched from the transfer source address and NPN1 is fetched inside. Then, in step 29, the bus is released.

【0016】次に、図4のステップ31で、先に取込ん
だNPN0を上位に、NPN1を下位にして次ブロック
番号を確定し、次ブロックアドレスレジスタ7に設定す
る。また、チェーンビット格納レジスタ3の内容が
“1”の場合はデータ長レジスタ9の内容を、チェーン
ビット格納レジスタ3の内容が“0”の場合はLIレジ
スタ10の内容をワードカウンタレジスタ5にラッチす
る。そして、ステップ32で転送元アドレスレジスタ6
の内容に6を加算する。
Next, in step 31 of FIG. 4, the previously fetched NPN0 is set as the upper side and NPN1 is set as the lower side to determine the next block number and set it in the next block address register 7. When the content of the chain bit storage register 3 is “1”, the content of the data length register 9 is latched in the word counter register 5, and when the content of the chain bit storage register 3 is “0”, the content of the LI register 10 is latched in the word counter register 5. To do. Then, in step 32, the transfer source address register 6
Add 6 to the contents of.

【0017】本実施例では、図2のバッファをアドレス
10000000Hから101FFFFFH に置いたの
で、アドレスのA31〜A24を10H に固定している。そ
して、アドレスのA23〜A8 まではNPN0とNPN1
より算出した次ブロック番号を入れ、次ブロックアドレ
スレジスタ7にラッチする。また、データ格納部は44
バイトなので、データ長レジスタ9はハード的に44に
固定してもよいし、CPU52から設定可能なレジスタ
にしてもよい。さらに、データ格納部がバッファブロッ
クの先頭から8バイト目のところから始まっているの
で、転送元アドレスレジスタ6の内容に6を加算する。
この6の加算はハード的に固定してもよいし、CPU5
2から設定可能にしてもよい。
In this embodiment, since the buffer of FIG. 2 is placed at addresses 10000000 H to 101 FFFFF H , addresses A 31 to A 24 are fixed at 10 H. And, until A 23 ~A 8 of address NPN0 and NPN1
The next block number calculated by the above is entered and latched in the next block address register 7. In addition, the data storage unit is 44
Since it is a byte, the data length register 9 may be fixed to 44 by hardware, or may be a register that can be set by the CPU 52. Further, since the data storage section starts from the 8th byte from the beginning of the buffer block, 6 is added to the content of the transfer source address register 6.
The addition of 6 may be fixed by hardware, or the CPU 5
The setting may be made from two.

【0018】次に、ステップ33でバス55をハント
し、ステップ34でバッファ53の転送元アドレスから
データを2バイト取込んで、データバッファ11にラッ
チし、転送元アドレスレジスタ6の内容に2を加算し、
ステップ35でバスを解放する。次に、ステップ36で
バス55をハントし、ステップ37でメインメモリ54
の転送先アドレスにデータバッファ11のデータを書込
み、かつ、転送元アドレスレジスタ6の内容に2を加算
し、ワードカウンタレジスタ5の内容から1を減算し、
転送先アドレスレジスタ4の内容に2を加算し、ステッ
プ38でバスを解放する。
Next, in step 33, the bus 55 is hunted, and in step 34, 2 bytes of data are fetched from the transfer source address of the buffer 53, latched in the data buffer 11, and the content of the transfer source address register 6 is set to 2. Add
In step 35, the bus is released. Next, in step 36, the bus 55 is hunted, and in step 37, the main memory 54
The data of the data buffer 11 is written to the transfer destination address of 1, and 2 is added to the content of the transfer source address register 6, and 1 is subtracted from the content of the word counter register 5,
2 is added to the contents of the transfer destination address register 4, and the bus is released in step 38.

【0019】次に、図5のステップ41でワードカウン
タレジスタ5の内容が“0”かどうか判断し、“0”で
ないならば図4のステップ33以降の動作を繰り返す。
また、ワードカウンタレジスタ5の内容が“0”なら
ば、チェーンビット格納レジスタ3の内容により以下の
動作を行う。すなわち、チェーンビット格納レジスタ3
の内容が“1”ならば、図3のステップ23以降の動作
を行い、チェーンビット格納レジスタ3の内容が“0”
ならば、転送が終了したので、ステップ43でCPU5
2に転送が終了したことを通知する。
Next, in step 41 of FIG. 5, it is judged whether or not the content of the word counter register 5 is "0", and if it is not "0", the operation of step 33 onward of FIG. 4 is repeated.
If the content of the word counter register 5 is "0", the following operation is performed according to the content of the chain bit storage register 3. That is, the chain bit storage register 3
If the content of "1" is "1", the operation after step 23 of FIG. 3 is performed, and the content of the chain bit storage register 3 is "0".
If so, since the transfer is completed, the CPU 5 at step 43.
Notify 2 that the transfer is completed.

【0020】(第2実施例)図6は本発明の第2実施例
におけるDMAコントローラの構成を示すブロック図で
ある。ここで、図1と同一の技術手段には同一の番号を
付してある。本実施例は、第1実施例に設けられていた
チェーンビット格納レジスタ3、セレクタ8、データ長
レジスタ9及びLIレジスタ10がなく、代わりに転送
カウンタ12が設けられている。この転送カウンタ12
はバッファ内のデータ格納部のバイト数(本実施例では
“44”)をカウントすると出力を発生する。また、本
実施例では、ワードカウントレジスタ5は転送データの
バイト数を格納する。
(Second Embodiment) FIG. 6 is a block diagram showing the arrangement of a DMA controller according to the second embodiment of the present invention. Here, the same technical means as those in FIG. 1 are denoted by the same reference numerals. In this embodiment, the chain bit storage register 3, selector 8, data length register 9 and LI register 10 provided in the first embodiment are not provided, but a transfer counter 12 is provided instead. This transfer counter 12
Produces an output when the number of bytes ("44" in this embodiment) in the data storage section in the buffer is counted. Further, in the present embodiment, the word count register 5 stores the number of bytes of transfer data.

【0021】そして、本実施例の動作は、図3のステッ
プ21で転送カウンタ12に“0”を設定する処理を追
加すること、図4のステップ37で転送カウンタの内容
に1を加算すること、図5のステップ41でYESの場
合にステップ43に進むこと、ステップ41でNOの場
合に転送カウンタ12の内容が“44”かどうか判断
し、YESであれば転送カウンタ12の内容を“0”に
設定して図3のステップ23に進み、NOであれば図4
のステップ33に進むこと及び図5のステップ42の処
理がないことが第1実施例と異なる。
The operation of this embodiment is to add a process of setting "0" to the transfer counter 12 in step 21 of FIG. 3 and to add 1 to the content of the transfer counter in step 37 of FIG. If YES in step 41 of FIG. 5, the process proceeds to step 43. If NO in step 41, it is determined whether the content of the transfer counter 12 is “44”. If YES, the content of the transfer counter 12 is set to “0”. Set to "" and proceed to step 23 in FIG.
5 is different from the first embodiment in that the process goes to step 33 of FIG.

【0022】なお、上記各実施例ではデータの転送単位
を1ワード,2バイトにし、データ格納部を44バイト
にしたが、これらは任意に設定できることはいうまでも
ない。また、データ転送ごとにバスをハント、解放した
が、バスをハントして複数回転送してからバスを解放す
ることも可能である。なお、本発明は上記実施例に限定
されるものではなく、本発明の趣旨に基づき種々の変形
が可能であり、それらを本発明の範囲から排除するもの
ではない。
In the above embodiments, the data transfer unit is 1 word, 2 bytes, and the data storage unit is 44 bytes. However, it goes without saying that these can be set arbitrarily. Although the bus is hunted and released for each data transfer, it is also possible to hunt the bus and transfer it a plurality of times before releasing the bus. It should be noted that the present invention is not limited to the above embodiments, and various modifications can be made based on the spirit of the present invention, and they are not excluded from the scope of the present invention.

【0023】[0023]

【発明の効果】以上、詳細に説明したように、本発明に
よれば、チェーン化されたブロックの次ブロック番号を
取り込んで、次ブロックのアドレスを得るので、複数の
飛び飛びのアドレスのブロックにチェーン化されたデー
タをメモリの連続した領域に転送する時に、DMAコン
トローラへの設定と起動が一回で済み、CPUの負担が
軽減されるという効果がある。
As described above in detail, according to the present invention, the next block number of a chained block is fetched and the address of the next block is obtained. When transferring the converted data to the continuous area of the memory, the setting and activation to the DMA controller only needs to be performed once, and the load on the CPU is reduced.

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

【図1】本発明の第1実施例におけるDMAコントロー
ラの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a DMA controller according to a first embodiment of the present invention.

【図2】本発明の実施例におけるバッファの1ブロック
内の構成図である。
FIG. 2 is a configuration diagram of one block of a buffer in the embodiment of the present invention.

【図3】本発明の第1実施例に係るDMA転送方式の動
作フローチャートの一部である。
FIG. 3 is a part of an operation flowchart of a DMA transfer system according to the first embodiment of the present invention.

【図4】本発明の第1実施例に係るDMA転送方式の動
作フローチャートの一部である。
FIG. 4 is a part of an operation flowchart of a DMA transfer system according to the first embodiment of the present invention.

【図5】本発明の第1実施例に係るDMA転送方式の動
作フローチャートの一部である。
FIG. 5 is a part of an operation flowchart of the DMA transfer system according to the first embodiment of the present invention.

【図6】本発明の第2実施例におけるDMAコントロー
ラの構成を示すブロック図である。
FIG. 6 is a block diagram showing a configuration of a DMA controller according to a second embodiment of the present invention.

【図7】DMA転送システムの構成を示すブロック図で
ある。
FIG. 7 is a block diagram showing a configuration of a DMA transfer system.

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

1 入出力インタフェース部 2 制御部 3 チェーンビット格納レジスタ 4 転送先アドレスレジスタ 5 ワードカウンタレジスタ 6 転送元アドレスレジスタ 7 次ブロックアドレスレジスタ 8 セレクタ 9 データ長レジスタ 10 LIレジスタ 11 データバッファ 12 転送カウンタ 1 Input / Output Interface 2 Control Unit 3 Chain Bit Storage Register 4 Transfer Destination Address Register 5 Word Counter Register 6 Transfer Source Address Register 7 Next Block Address Register 8 Selector 9 Data Length Register 10 LI Register 11 Data Buffer 12 Transfer Counter

───────────────────────────────────────────────────── フロントページの続き (72)発明者 麻生 二郎 東京都港区虎ノ門1丁目7番12号 沖電気 工業株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Jiro Aso 1-7-12 Toranomon, Minato-ku, Tokyo Oki Electric Industry Co., Ltd.

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 複数の固定長のブロックに分かれたバッ
ファ内のデータをDMAコントローラにより転送するD
MA転送方式において、(a)チェーンの有無を示すビ
ットと、(b)チェーン有の場合に次ブロックのアドレ
スを示す領域と、(c)チェーン無の場合にデータ格納
部内の有効バイト長を示す領域と、(d)転送データの
格納部を前記各ブロック内に設け、(e)前記チェーン
の有無を示すデータを記憶する第1の記憶手段と、
(f)チェーン有の場合に前記次ブロックのアドレスを
記憶する第2の記憶手段と、(g)チェーン有の場合に
前記データ格納部内のデータバイト長を記憶し、チェー
ン無の場合に前記データ格納部内の有効バイト長を記憶
し、かつ、データの転送に応じて記憶内容が減算される
第3の記憶手段を前記DMAコントローラに設け、チェ
ーン有の場合は前記データ格納部内のデータを転送し終
わった時に転送元アドレスを次ブロックに切り替え、チ
ェーン無の場合は前記データ格納部内の有効バイト長を
転送し終わった時に転送を終了することを特徴とするD
MA転送方式。
1. A D which transfers data in a buffer divided into a plurality of fixed-length blocks by a DMA controller.
In the MA transfer method, (a) a bit indicating the presence or absence of a chain, (b) an area indicating the address of the next block when the chain is present, and (c) an effective byte length in the data storage section when the chain is absent. An area; and (d) a storage unit for storing transfer data in each of the blocks, and (e) first storage means for storing data indicating the presence or absence of the chain,
(F) second storage means for storing the address of the next block when there is a chain; (g) storing the data byte length in the data storage section when there is a chain; and for the case where there is no chain, the data The DMA controller is provided with a third storage unit for storing the effective byte length in the storage unit and for subtracting the stored contents in accordance with the data transfer. When the chain is present, the data in the data storage unit is transferred. When the transfer is completed, the transfer source address is switched to the next block, and when there is no chain, the transfer is ended when the transfer of the effective byte length in the data storage section is completed.
MA transfer method.
【請求項2】 複数の固定長のブロックに分かれたバッ
ファ内のデータをDMAコントローラにより転送するD
MA転送方式において、(a)チェーンの有無を示すビ
ットと、(b)チェーン有の場合に次ブロックのアドレ
スを示す領域と、(c)チェーン無の場合にデータ格納
部内の有効バイト長を示す領域と、(d)転送データの
格納部を前記各ブロック内に設け、(f)チェーン有の
場合に前記次ブロックのアドレスを記憶する第1の記憶
手段と、(g)転送データのバイト長が設定され、か
つ、データの転送に応じて記憶内容が減算される第2の
記憶手段と、(h)転送データのバイト数をカウントす
るカウンタを前記DMAコントローラに設け、前記カウ
ンタの内容がデータ格納部内のデータバイト長になった
時に転送元アドレスを次ブロックに切り替え、前記第2
の記憶手段に設定したバイト長を転送し終わった時に転
送を終了することを特徴とするDMA転送方式。
2. A D which transfers data in a buffer divided into a plurality of fixed-length blocks by a DMA controller.
In the MA transfer method, (a) a bit indicating the presence or absence of a chain, (b) an area indicating the address of the next block when the chain is present, and (c) an effective byte length in the data storage section when the chain is absent. An area, (d) a storage unit for transfer data is provided in each of the blocks, (f) first storage means for storing the address of the next block when there is a chain, and (g) a byte length of the transfer data. Is set and the storage content is subtracted according to the data transfer, and (h) a counter for counting the number of bytes of the transfer data is provided in the DMA controller, and the content of the counter is the data. When the data byte length in the storage unit is reached, the transfer source address is switched to the next block, and the second block
The transfer method is characterized in that the transfer is terminated when the byte length set in the storage means is completed.
JP3310298A 1991-11-26 1991-11-26 Dma transfer system Withdrawn JPH05151146A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3310298A JPH05151146A (en) 1991-11-26 1991-11-26 Dma transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3310298A JPH05151146A (en) 1991-11-26 1991-11-26 Dma transfer system

Publications (1)

Publication Number Publication Date
JPH05151146A true JPH05151146A (en) 1993-06-18

Family

ID=18003543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3310298A Withdrawn JPH05151146A (en) 1991-11-26 1991-11-26 Dma transfer system

Country Status (1)

Country Link
JP (1) JPH05151146A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5928339A (en) * 1996-10-18 1999-07-27 Matsushita Electric Industrial Co., Ltd. DMA-transferring stream data apparatus between a memory and ports where a command list includes size and start address of data stored in the memory
JP2010041154A (en) * 2008-07-31 2010-02-18 Ricoh Co Ltd Image processor, image processing control method, image processing control program, and recording medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5928339A (en) * 1996-10-18 1999-07-27 Matsushita Electric Industrial Co., Ltd. DMA-transferring stream data apparatus between a memory and ports where a command list includes size and start address of data stored in the memory
JP2010041154A (en) * 2008-07-31 2010-02-18 Ricoh Co Ltd Image processor, image processing control method, image processing control program, and recording medium

Similar Documents

Publication Publication Date Title
US7165126B2 (en) Direct memory access device
US4949242A (en) Microcomputer capable of accessing continuous addresses for a short time
US5138703A (en) Method of and apparatus for expanding system bus
JPH05151146A (en) Dma transfer system
CA1296808C (en) Memory access controller
JP3304395B2 (en) Data transfer device and data transfer method
JP2924643B2 (en) Digital signal processing method and apparatus
JPH02294755A (en) Data processor
JP2564624B2 (en) Stack method
JPH052468A (en) Buffer memory management system
JPH07271656A (en) Image data processing system
JPH04306755A (en) Fifo buffer device
JPS6055459A (en) Control method of block data transfer and storage
JPH0364903B2 (en)
JPS6118058A (en) Data transfer system
JPH0567035A (en) Data alignment system for dma transfer
JPH0520165A (en) System bus controller
JPS63173143A (en) Memory interface circuit
JPH02136949A (en) Input/output controller
JPH08123774A (en) Method and equipment for communication
JPH01295333A (en) Microcomputer system
JPH0962568A (en) Data transfer control circuit
JPH0325539A (en) Storage device
JPH0122655B2 (en)
JPH10161927A (en) Load buffer device

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990204