JPS63239549A - Data chaining control system - Google Patents

Data chaining control system

Info

Publication number
JPS63239549A
JPS63239549A JP7358587A JP7358587A JPS63239549A JP S63239549 A JPS63239549 A JP S63239549A JP 7358587 A JP7358587 A JP 7358587A JP 7358587 A JP7358587 A JP 7358587A JP S63239549 A JPS63239549 A JP S63239549A
Authority
JP
Japan
Prior art keywords
dma
read
transfer
register group
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
JP7358587A
Other languages
Japanese (ja)
Inventor
Takashi Inagawa
稲川 隆
Yoshinori Fujioka
良記 藤岡
Keiichi Yu
恵一 勇
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7358587A priority Critical patent/JPS63239549A/en
Publication of JPS63239549A publication Critical patent/JPS63239549A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Abstract

PURPOSE:To execute the link array chain without reducing the priority of the bus acquisition right of an I/O by specifying the starting of a DMA transfer in a system equipped with a DMA controller having a double plane register group. CONSTITUTION:A DMA controller 1 is equipped with double plane register groups 2 and 3 to accumulate transfer information to access a memory 10. Before a DMA is started, the transfer information of a first block is written to the register group 2 of the controller 1 and the transfer information of a second block is written to a register group 3 and a DMA transfer is started. Thus, without reducing the priority of the bus acquisition right of the I/O, the link array chain can be executed.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はDMAを容易に行うためのデータ・チェイニン
グ制御方式に゛関し、特にバーチャルシステムのメモリ
で複数のブロックのDMAを容易に行うのに好適なデー
タ・チェイニング制御方式に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a data chaining control method for easily performing DMA, and particularly to a data chaining control method for easily performing DMA of multiple blocks in the memory of a virtual system. The present invention relates to a data chaining control method suitable for.

〔従来の技術〕[Conventional technology]

従来のこの種の方式としては5例えば、特開昭59−1
77633号に開示されている方式が知られている。こ
の方式は、チャネル装置において、ライト・オペレーシ
ョンのデータ・チェイニング時に、主記憶装置(MS)
からデータをフェッチするオペレーションに引続き、デ
ータ・チェイニングを行い、場合によってはMSフェッ
チ・オペレーション後、データ・チェイニングを行わず
に終了するマイクロプログラムと、データ・チェイニン
グを単独で行うマイクロプログラムとを設け、チャネル
装置の状態に応じてそれぞれのマイクロ・ルーチンを使
い分けるようにした方式である。
Conventional methods of this type include 5, for example, Japanese Patent Application Laid-Open No. 59-1
A method disclosed in No. 77633 is known. This method uses the main memory (MS) when data chaining a write operation in a channel device.
There are two types of microprograms: one that performs data chaining following an operation that fetches data from an MS fetch operation, and in some cases terminates without performing data chaining after an MS fetch operation, and another that performs data chaining alone. In this system, each microroutine is used depending on the state of the channel device.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

上記従来技術においては、データバッファ制御回路の処
理要求と他の処理要求との優先選択を行う手段等を設け
る必要があり、優先選択の条件もバイトカウント、チェ
インデータフラグ、チャネルコマンドワード(以下、r
ccWJという)等多岐にわたっていた。
In the above-mentioned conventional technology, it is necessary to provide a means for preferentially selecting processing requests of the data buffer control circuit and other processing requests, and the conditions for preferential selection are also byte count, chain data flag, channel command word (hereinafter referred to as r
ccWJ), etc.

このため、上記従来技術においては、チャネル装置がM
Sフェッチを行う場合、バイトカウントが“0”か、チ
ェインデータフラグがオンか否か、更に、データ転送中
か、転送中の場合、前のCCWに関するものか否かを調
べる必要があり、条件が複雑であるため、チャネル装置
が高価になるという問題があった。
Therefore, in the above conventional technology, the channel device is M
When performing an S fetch, it is necessary to check whether the byte count is "0", whether the chain data flag is on, and whether the data is being transferred, and if it is being transferred, whether it is related to the previous CCW. The problem is that the channel equipment is expensive due to its complexity.

本発明は上記事情に鑑みてなされたもので、その目的と
するところは、従来技術における上述の如き問題を解消
し、メモリのブロックサイズが一定以上であるシステム
において、Iloのバス獲得権の優先順位を下げずに、
リンクアレイチェーンを行うことが可能で、リンクアレ
イチェーンの存在を意識せずに設計されたIloを用い
ても、リンクアレイチェーンを行うことができ、容易に
バーチャルシステムを構成可能な、データ・チェイニン
グ制御方式を提供することにある。
The present invention has been made in view of the above circumstances, and its purpose is to solve the above-mentioned problems in the prior art, and to give priority to Ilo bus acquisition rights in a system where the memory block size is larger than a certain level. without lowering your rank,
It is a data chain that can perform link array chains, and can easily configure virtual systems even when using Ilo, which was designed without being aware of the existence of link array chains. The objective is to provide an inning control method.

また、本発明の他の目的は、これを適用したバーチャル
システムにおいて、リンクアレイチェーンを行っても、
工10が最優先でバス権を獲得できるようにし、バッフ
ァが最小の安価なIloを使用可能とする、データ・チ
ェイニング制御方式を提供することにある。
Another object of the present invention is that even if a link array chain is performed in a virtual system to which the present invention is applied,
An object of the present invention is to provide a data chaining control system that allows a worker 10 to acquire the bus right with the highest priority and allows the use of an inexpensive Ilo with the smallest buffer.

〔問題点を解決するための手段) 本発明の上記目的は、メモリをアクセスする転送情報を
蓄える2面のレジスタ群A、Bを有するDMAコントロ
ーラが、前記メモリとバスを共有するシステムにおいて
、DMAを開始する前に、前記DM4コントローラの前
記レジスタ群Aに1回目のブロックの転送情報を、また
、前記レジスタ群Bに2回目のブロックの転送情報を書
込んだ後、DMA転送を開始することを特徴とするデー
タ・チェイニング制御方式によって達成される。
[Means for Solving the Problems] The above object of the present invention is to provide a system in which a DMA controller having two register groups A and B for storing transfer information for accessing a memory shares a bus with the memory. Before starting the DMA transfer, after writing the first block transfer information to the register group A of the DM4 controller and the second block transfer information to the register group B, start the DMA transfer. This is achieved by a data chaining control method featuring:

〔作用〕[Effect]

本発明に係わるデータ・チェイニング方式においては、
リンクアレイチェーンを用いたDMA転送を開始する前
に、処理ユニット(MPU)が、2面のレジスタ群A、
Bを備えたDMACに、最初のブロックの転送情報(前
記CCW)と2番目のブロックの転送情報とを、それぞ
れ書込んでおき、その後、入出力装置(Ilo)アダプ
タにDMA転送開始要求を行う。
In the data chaining method according to the present invention,
Before starting a DMA transfer using a link array chain, the processing unit (MPU) registers registers A,
Write the transfer information of the first block (the above CCW) and the transfer information of the second block to the DMAC equipped with B, and then issue a DMA transfer start request to the input/output device (Ilo) adapter. .

DMACは、I10アダプタからの要求で、レジスタl
#A内の転送情報を用いて最初のブロックのDMA転送
を行い、次に、レジスタ群B内の転送情報を用いて2番
目のブロックのDMA転送を行う、DMACは、2番目
のブロックのDMA転送の間に、3番目のブロックに関
する転送情報をメモリ内の転送情報テーブルから読出し
て(以下。
The DMAC registers register l at the request from the I10 adapter.
The DMA transfer of the first block is performed using the transfer information in #A, and then the DMA transfer of the second block is performed using the transfer information in register group B. During the transfer, the transfer information regarding the third block is read from the transfer information table in memory (see below).

この動作を、「コマンドリード」と呼ぶ)、これを。This operation is called "command read").

レジスタ群Aに書込む。Write to register group A.

なお、バス使用の優先順位は、DMA転送、コマンドリ
ード、MPUのメモリアクセスの順に高く設定する(第
2図参照)、以後、DMACは、3番目のブロックのD
MA転送中に、4番目のブロックのコマンドリードを行
うというようにして。
The priority order of bus use is set in the order of DMA transfer, command read, and MPU memory access (see Figure 2).
During MA transfer, command read for the fourth block is performed.

最後のブロックまで、リンクアレイチェーンを用いてD
MA転送を続ける。
D until the last block using link array chain
Continue MA transfer.

ところで、本発明を適用するバーチャルシステムにおい
ては、物理アドレスのブロックサイズは一定である。こ
の物理アドレスでリンクアレイチェーンを用いたDMA
転送を行う場合、DMACは、第1図に示すように、1
番目のブロックの途中からDMA転送を開始し、2番目
のブロック以後は、ブロック単位のDMA転送を行い、
最後のブロックの途中でDMA転送を終了する。
By the way, in the virtual system to which the present invention is applied, the block size of physical addresses is constant. DMA using link array chain at this physical address
When performing a transfer, the DMAC uses 1 as shown in FIG.
DMA transfer starts from the middle of the second block, and from the second block onwards, DMA transfer is performed in blocks,
DMA transfer ends in the middle of the last block.

〔実施例〕〔Example〕

以下1本発明の実施例を図面に基づいて詳細に説明する
EMBODIMENT OF THE INVENTION Below, one embodiment of the present invention will be described in detail based on the drawings.

第4図は本発明の一実施例を示すシステム構成図である
。図において、1はDMAC,4はMPU、6はデータ
バス、9はIlo、10はメモリを示しており、また、
22.23.24は、それぞれ、後述するコマンドリー
ド、MPUリード、DMAリードの各動作を示している
FIG. 4 is a system configuration diagram showing an embodiment of the present invention. In the figure, 1 is DMAC, 4 is MPU, 6 is data bus, 9 is Ilo, 10 is memory, and
22, 23, and 24 indicate command read, MPU read, and DMA read operations, which will be described later.

第3図は、DMAC1,メモリ10の、より詳細な構成
を示すものであり、図において、2,3はDMA開始ア
ドレス(以下、rADJという)、DMA転送バイト数
(以下、rCTJという)、コマンドコード(以下、r
CDJという)を取込むためのレジスタ群A、B、5は
物理アドレスバスを示している。また、8はアドレス変
換器、15は上記データバス6の使用を決定する優先決
定回路、18は工109のDMAを制御するDMA制御
回路、11はメモリ内のブロック(大きさ4にバイト)
、19は同じくメモリ10内の転送情報テーブルを示し
ている。
FIG. 3 shows a more detailed configuration of the DMAC 1 and memory 10. In the figure, 2 and 3 are the DMA start address (hereinafter referred to as rADJ), the number of DMA transfer bytes (hereinafter referred to as rCTJ), and the command Code (hereinafter r
A group of registers A, B, and 5 for taking in data (referred to as CDJ) indicate a physical address bus. Further, 8 is an address converter, 15 is a priority determination circuit that determines the use of the data bus 6, 18 is a DMA control circuit that controls DMA in the device 109, and 11 is a block in the memory (size 4 bytes).
, 19 indicate a transfer information table in the memory 10 as well.

上記各回に示したDMAC1は、物理アドレスバス5と
データバス6およびメモリリード線25を用いて、メモ
リ10内の前記転送情報テーブル19から、前述のAD
、CT、CDを読取る機能を有する。この動作が、前記
コマンドリード動作(22)であり、約400nsの時
間を要する。
The DMAC 1 shown in each of the above uses the physical address bus 5, the data bus 6, and the memory lead line 25 to transfer data from the transfer information table 19 in the memory 10 to the above-mentioned AD.
, CT, and CD. This operation is the command read operation (22), which takes about 400 ns.

また、MPU4は、論理アドレス12とメモリリード線
25を出力することにより、データバス6を介して、メ
モリ10からデータを読取る機能を有する。この動作が
、前記M P U U−ド動作(23)であり、約40
0nsの時間を要する。更に、MPU4は、ライトI1
0線7を用いることにより、DMAC1に前述のAD、
CT、CDを書込む機能と、l109に、DMA開始の
命令を発行する機能とを有する。
Furthermore, the MPU 4 has a function of reading data from the memory 10 via the data bus 6 by outputting the logical address 12 and the memory lead line 25. This operation is the M P U U-do operation (23), and is about 40
It takes 0ns. Furthermore, the MPU4
By using the 0 line 7, the above-mentioned AD,
It has a function of writing CT and CD, and a function of issuing a DMA start command to l109.

なお、アドレス変換器8は、論理アドレスバス上の論理
アドレス12を、物理アドレスに変換し。
Note that the address converter 8 converts the logical address 12 on the logical address bus into a physical address.

物理アドレスバス5に出力する機能を有する。It has a function of outputting to the physical address bus 5.

メモリIOは、物理アドレスバス5上の物理アドレスに
対応するデータをデータバス6に出力する機能を有する
。メモリ10上で、4にバイト毎に仕切った空間をブロ
ックと呼ぶのは、前述の通りである。また、メモリ10
は、前記転送情報AD、CT、CDを蓄える転送情報テ
ーブル19を有する。
The memory IO has a function of outputting data corresponding to a physical address on the physical address bus 5 to the data bus 6. As described above, a space partitioned into four bytes on the memory 10 is called a block. Also, memory 10
has a transfer information table 19 that stores the transfer information AD, CT, and CD.

l109は、M P U 4 カらf7)DMA開始命
令により、 800ns毎にDMAC1に対し、データ
バス使用要求信号(D RE Q)13を出力する。D
MAC1内では、前記DMA制御回路18からのデータ
バス使用要求(CRE Q)20と上記DREQL3と
を、前記優先決定回路15で受け、MPU4へのデータ
バス使用要求(HRE Q)16をオンする。MPU4
は上記HREQ16を受けると、データバス使用許可(
HA CK)17を出力する。
The l109 outputs a data bus use request signal (DREQ) 13 to the DMAC1 every 800 ns in response to the f7) DMA start command from the MPU4. D
In the MAC 1, the priority determining circuit 15 receives a data bus use request (CRE Q) 20 from the DMA control circuit 18 and the DREQL3, and turns on a data bus use request (HRE Q) 16 to the MPU 4. MPU4
When the above HREQ16 is received, data bus use is permitted (
HACK) 17 is output.

優先決定回路15は、HACK17を受けて、DMA制
御回路18へのデータバス使用許可(CACK)21、
あるいは、工109へのデータバス使用許可(D A 
CK)14を出力する。工109は、DACK14を受
けると、メモリ10からデータを読取る。この動作が前
記DMAリード(24)であり、約400nsを要する
。なお、優先決定回路15は、前述の通りDMAリード
(24)、コマンドリード(22)、MPUリード(2
3)の順で優先決定を行う。
In response to the HACK 17, the priority determination circuit 15 issues a data bus use permission (CACK) 21 to the DMA control circuit 18;
Alternatively, permission to use the data bus for Engineering 109 (DA
CK)14. The worker 109 reads data from the memory 10 upon receiving the DACK14. This operation is the DMA read (24) and requires about 400 ns. Note that the priority determination circuit 15 is configured to perform DMA read (24), command read (22), and MPU read (2) as described above.
Priority decisions are made in the order of 3).

以下、上述の如く構成された本実施例の具体的な動作例
を説明する6第5図は、DMAC1が、メモリIOのバ
イトアドレス4FFEH番地から4FFFH番地まで、
3000H番地から3FFFH番地まで、100OH番
地から1001H番地までの3つのブロックに分かれた
データを、工109へDMAリードする動作を示してい
る。
Hereinafter, a specific example of the operation of this embodiment configured as described above will be explained. 6 FIG.
It shows the operation of DMA reading data divided into three blocks from address 3000H to address 3FFFH and from address 100OH to address 1001H to the workpiece 109.

まず、MPU4がライトI10線7を用いて5レジスタ
群A(2)にAD=4FFEH,CT=2H2およびバ
イトのDMAリード(24)を示すCDをセットし、レ
ジスタ群B(3)にAD=3000H,CT=1000
H,およびバイトのD M A IJ−ド(24)、コ
マンドリード(22)を行い、転送情報テーブル19の
先頭アドレスがFOOOHであることを示すCDをセッ
トする。転送情報テーブル19には、AD=1000H
,CT=2Hで、バイトのDMAリード(24)を行っ
た後、DMAを終了することを示すCDをセットする。
First, the MPU 4 uses the write I10 line 7 to set AD=4FFEH, CT=2H2 and a CD indicating byte DMA read (24) in 5 register group A (2), and sets AD=4 in register group B (3). 3000H, CT=1000
H, and byte DMA IJ-code (24), command read (22), and set CD indicating that the start address of the transfer information table 19 is FOOOH. In the transfer information table 19, AD=1000H
, CT=2H, and after performing a byte DMA read (24), a CD indicating the end of DMA is set.

次に、MPU4は、ライトI10線7でl109に起動
をかける。l109は、DREQ13をオンすることで
、DMAリード(24)の要求を発行する。優先決定回
路15は、DMAリード(24)、コマンドリード(2
2)、MPUリード(23)の順で、データバス6の使
用権を与える。この状況を、第6図に示す。
Next, the MPU 4 activates the write I109 via the write I10 line 7. The l109 issues a DMA read (24) request by turning on the DREQ13. The priority determination circuit 15 has a DMA read (24) and a command read (24).
2) The right to use the data bus 6 is given in the order of MPU read (23). This situation is shown in FIG.

すなわち、DMAC1は、DACK14をオンとすると
、DMA制御回路18がレジスタ群A(2)から、最初
のDMAアドレスであるAD=4FFEHを引出し、物
理アドレスバス5に出力し、更にレジスタ群A(2)の
値を更新する。メモリIOは。
That is, when the DMAC1 turns on the DACK14, the DMA control circuit 18 extracts the first DMA address AD=4FFEH from the register group A(2), outputs it to the physical address bus 5, and further outputs the first DMA address AD=4FFEH from the register group A(2). ) updates the value. Memory IO.

4FFEH番地のデータを、データバス6に出力し、そ
のデータを工109が読取る。l109はデータを読取
ると、DREQ13をオフする。これにより、HREQ
16.HACK17.DACK14と順次オフされる。
The data at address 4FFEH is output to the data bus 6, and the device 109 reads the data. When l109 reads the data, it turns off DREQ13. This results in HREQ
16. HACK17. It is turned off sequentially with DACK14.

もう一度、DMAリード(24)を行うと、レジスタ群
A(2)に設定された2バイトのDMAリード(24)
を終了する。DMA制御回路18は、3回目のDMAリ
ード(24)は、レジスタ群B(3)のAD。
When DMA read (24) is performed again, the 2-byte DMA read (24) set in register group A (2) is performed.
end. The DMA control circuit 18 performs the third DMA read (24) on the AD of register group B (3).

CT、CDを用い、メモリ10の3000H番地から行
う、DMAClは、上記レジスタ群B(3)のAD、C
T、CDを用いて4にバイトのDMAリード(24)を
行う間、FOOOHの前記転送情報テーブル19からコ
マンドリード(22)を行い、レジスタ群A(2)に、
AD、CT、CDを3回に分けて書込む、このコマンド
リード(22)は、DMAリード(24)より低く、M
PUリード(23)より高い優先順で行われるため、D
MAリード(24)で、DREQ13が発行されてから
DACK14が返るまでの時間は、コマンドリード(2
2)の如何にかかわらず、400ns以下である。この
状況を第6図に示す。
DMACl is performed from address 3000H of the memory 10 using CT and CD.
While performing a DMA read (24) of byte 4 using T and CD, a command read (22) is performed from the transfer information table 19 of FOOOH, and the register group A (2) is read.
This command read (22), which writes AD, CT, and CD in three steps, is lower than the DMA read (24), and the M
Since it is performed with higher priority than PU read (23), D
The time from when DREQ13 is issued to when DACK14 is returned in MA read (24) is the same as command read (24).
Regardless of 2), it is 400 ns or less. This situation is shown in FIG.

上記コマンドリード(22)は、DMAリード(24)
の合間に3回行う。この場合、ブロック11の大きさは
4にバイトであるため、DMAリード(24)の合間が
4095回有り、必ず、コマンドリード(22)できる
。このようにして、DMAClのレジスタ群A(2)に
は、転送情報テーブル19のAD= 1000H,CT
=2H,バイトのD M A IJ−ドを行った後、D
MAリード(24)を終了するCDがセットされる。
The above command read (22) is the DMA read (24)
Do this three times in between. In this case, since the size of block 11 is 4 bytes, there are 4095 intervals between DMA reads (24), and command reads (22) are always possible. In this way, AD=1000H, CT of the transfer information table 19 is stored in register group A(2) of DMACl.
= 2H, after performing the DMA IJ-de of the byte, D
The CD that completes the MA read (24) is set.

DMAC1は、4にバイトのDMAリード(24)を終
了すると、レジスタ群A(2)を用い、2回のDMAリ
ード(24)を行う。ここで、CDには、上述の如く、
CT=2HのDMAリード(24)終了後は、DMAリ
ード(24)を終了するよう記されているため、一連の
DMA転送が終了する。
After completing the 4th byte DMA read (24), the DMAC1 performs two DMA reads (24) using the register group A (2). Here, the CD includes, as mentioned above,
After the DMA read (24) of CT=2H ends, the series of DMA transfers ends because it is written to end the DMA read (24).

上記実施例においては、2面のレジスタ群A。In the above embodiment, there are two register groups A.

Bに、前以って、AD、CT、CDを書込むようにして
いるが、この効果を、以下、第7図により具体的に説明
する。
AD, CT, and CD are written in B in advance, and the effect of this will be explained in detail with reference to FIG. 7 below.

l109は、800ns毎にDREQ13を出力する。l109 outputs DREQ13 every 800ns.

l109は内部にバッファを有しないため、DMAリー
ド(24)は、次のDREQ13が出力されるまでに終
了しなければならない、DMAリード(24)が、次の
DREQ13が出力されるまでに終了しない場合には、
l109はオーバーランを起こし、メモリ10内のデー
タはl109に転送されない。
Since l109 does not have an internal buffer, the DMA read (24) must be completed before the next DREQ13 is output.The DMA read (24) is not completed before the next DREQ13 is output. in case of,
l109 causes an overrun and the data in memory 10 is not transferred to l109.

DMAC1のCREQ20は、CACK21がオンから
オフになってから200ns後に、必要に応じて(3回
目のDMA転送までは必要、以後は不要)、オフからオ
ンになる。DMAClは、レジスタ群A(2)またはレ
ジスタ群B(3)のCDの内容により、必要な場合は、
AD、CT、CDをレジスタ群B(3)またはレジスタ
群A(2)に書込むコマンドリード(22)を3回行う
CREQ20 of DMAC1 is turned from off to on as necessary (necessary until the third DMA transfer, unnecessary thereafter) 200 ns after CACK21 turns from on to off. DMACl is set as necessary depending on the contents of the CD of register group A (2) or register group B (3).
Command read (22) to write AD, CT, and CD to register group B (3) or register group A (2) is performed three times.

第5図に示した例で、転送されるブロックが3000H
から3 F F FHテあるときは、DMAC1は、3
回のコマンドリード(22)を確実に行うことができる
。しかし、ブロックが、4FFEHから4FFFHであ
るときは、コマンドリードは終了しない6本発明におい
ては!これを解消するため、前述の如く、MPU4が、
ライトエ/○線7を用いて、前以って、レジスタ群B(
3)に、前記AD、CT、CDをセットするため、コマ
ンドリード(22)が不要である。
In the example shown in Figure 5, the block to be transferred is 3000H.
When there is 3 F F FH, DMAC1 is 3
The command read (22) can be performed reliably. However, when the block is from 4FFEH to 4FFFH, the command read does not end.6 In the present invention! In order to solve this problem, as mentioned above, the MPU4
Using write/○ line 7, register group B (
3), since the AD, CT, and CD are set, the command read (22) is not necessary.

第8図は、本発明によらず、すなわち、レジスタ群B(
3)に、前以って、AD、CT、CDをセットせずに、
前記4FFEHから4FFFHまでのDMA転送を行う
場合を示す図である。この場合には、レジスタ群B(3
)に、ADとCTが書込まれたところで、ブロックが切
換わる。DMAC1は、レジスタ群B(3)にCDがな
いため、DMAIJ−ド(24)を行うことができず、
l109はオーバーランを発生する。
FIG. 8 shows register group B (
3) without setting AD, CT, and CD in advance,
FIG. 4 is a diagram showing a case where DMA transfer is performed from 4FFEH to 4FFFH. In this case, register group B (3
), the block is switched when AD and CT are written. DMAC1 cannot perform DMAIJ-code (24) because there is no CD in register group B (3).
l109 causes an overrun.

更に、第9図は、本発明によらず、データバス使用の優
先順位を、コマンドリード(22)、 DMAリード(
24)、MPUリード(23)の順とし、コマンドリー
ドを3回続けて行う場合を示す図である。
Furthermore, FIG. 9 shows the priority order of data bus use, which is not based on the present invention, such as command read (22), DMA read (22),
24), MPU read (23), and command read is performed three times in a row.

この場合は、ブロックサイズが最小の場合でも、DMA
リード(24)が次のブロックに移る前に、しジスタ群
B(3)へのAD、CT、CDの書込みは終了する。し
かし、この場合には、l109のDMAリード(24)
が、800ns以上待たされるために。
In this case, even if the block size is the smallest, the DMA
Before the read (24) moves to the next block, the writing of AD, CT, and CD to the register group B (3) is completed. However, in this case, the l109 DMA lead (24)
However, because I had to wait more than 800ns.

オーバーランが発生する。Overrun occurs.

本発明によらずに上記オーバーランをなくすためには、
l109に多くのバッファを設けて、DMAClはCT
、CDを条件とし、データバスの使用優先順位を変化さ
せる必要があり、l109とDMAC1とが複雑かつ高
価となる。
In order to eliminate the above-mentioned overrun without relying on the present invention,
By providing many buffers in l109, DMACl is
, CD, and it is necessary to change the order of use priority of the data bus, making the l109 and DMAC1 complicated and expensive.

前記実施例においては、DMAリードについて述べて来
たが、l109からメモリ10ヘデータを書込む場合に
ついても同様であり、また、  l109が複数台の場
合も、本発明は有効である。
In the embodiment described above, DMA read has been described, but the same applies to writing data from the l109 to the memory 10, and the present invention is effective even when there are a plurality of l109s.

〔発明の効果〕〔Effect of the invention〕

以上述べた如く、本発明によれば、メモリをアクセスす
る転送情報を蓄える2面のレジスタ群゛A。
As described above, according to the present invention, there is a two-sided register group A that stores transfer information for accessing memory.

Bを有するDMAコントローラが、前記メモリとバスを
共有するシステムにおいて、DMAを開始する前に、前
記DM4コントローラの前記レジスタ群Aに1回目のブ
ロックの転送情報を、また、前記レジスタ群Bに2回目
のブロックの転送情報を書込んだ後、DMA転送を開始
するようにしたので、メモリのブロックサイズが一定以
上であるシステムにおいて、工10のバス獲得権の優先
順位を下げずに、リンクアレイチェーンを行うことがで
き、リンクアレイチェーンの存在を意識せずに設計され
たIloを用いても、リンクアレイチェーンを行うこと
ができ、容易にバーチャルシステムを構成できるという
効果がある。   ゛また、本発明を適用したバーチャ
ルシステムでは、リンクアレイチェーンを行っても、I
loは最優先でバス権を獲得できるため、I10内のバ
ッファを最小にできることから、安価なIloを使用す
ることができるとともに、DMACの構造を簡単にでき
、DMACを安価なものとすることが可能になるという
効果もある。
In a system in which a DMA controller having B shares a bus with the memory, before starting DMA, transfer information of the first block is transferred to the register group A of the DM4 controller, and transfer information of the first block is transferred to the register group B of the DM4 controller. Since the DMA transfer is started after the transfer information of the first block is written, in a system where the memory block size is larger than a certain value, the link array Even if Ilo is designed without being aware of the existence of a link array chain, it is possible to perform a link array chain, and a virtual system can be easily configured.゛Also, in a virtual system to which the present invention is applied, even if link array chaining is performed, I
Since LO can acquire the bus right with the highest priority, the buffer in I10 can be minimized, so it is possible to use inexpensive ILO, and the DMAC structure can be simplified, making the DMAC inexpensive. It also has the effect of making it possible.

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

第1図は本発明の構成を示す図、第2図はそのタイムチ
ャート、第3図は実施例のDMAC1゜メモリlOの詳
細な構成を示す図、第4図は本発明の一実施例を示すシ
ステム構成図、第5図はメモリの具体的な構成図、第6
図はデータバスの使用権移動を示す図、第7図は本発明
のコマンドリードのタイミングを示す図、第8図、第9
図は従来のDMA転送を行う場合のタイミングを示す図
である。 1 : DMAC12,3:レジスタ群A、B、4:M
PU、5:物理アドレスバス、6:データバス、8ニア
ドレス変換器、9:Ilo、lO:メモリ、11:メモ
リ内のブロック、15:優先決定回路、18: DMA
制御回路、19:転送情報テーブル、22:コマンドリ
ード、23:MPUリード、24:DMAリード、AD
 : DMA開始アドレス、CT : DMA転送バイ
ト数、CD:コマンドコード。 第   4   図 Q 第   5   図
FIG. 1 is a diagram showing the configuration of the present invention, FIG. 2 is a time chart thereof, FIG. 3 is a diagram showing the detailed configuration of the DMAC1° memory IO of the embodiment, and FIG. 4 is a diagram showing an embodiment of the present invention. The system configuration diagram shown in FIG. 5 is a specific configuration diagram of the memory, and FIG.
7 shows the timing of command read according to the present invention, FIGS. 8 and 9 show the transfer of the right to use the data bus.
The figure is a diagram showing the timing when performing conventional DMA transfer. 1: DMAC12, 3: Register group A, B, 4: M
PU, 5: Physical address bus, 6: Data bus, 8 Near address converter, 9: Ilo, IO: Memory, 11: Block in memory, 15: Priority determination circuit, 18: DMA
Control circuit, 19: Transfer information table, 22: Command read, 23: MPU read, 24: DMA read, AD
: DMA start address, CT: DMA transfer byte number, CD: command code. Figure 4 Q Figure 5

Claims (1)

【特許請求の範囲】[Claims] 1、メモリをアクセスする転送情報を蓄える2面のレジ
スタ群A、Bを有するダイレクト・メモリ・アクセス(
DMA)コントローラが、前記メモリとバスを共有する
システムにおいて、DMAを開始する前に、前記DMA
コントローラの前記レジスタ群Aに1回目のブロックの
転送情報を、また、前記レジスタ群Bに2回目のブロッ
クの転送情報を書込んだ後、DMA転送を開始すること
を特徴とするデータ・チェイニング制御方式。
1. Direct memory access (
DMA) In a system where a controller shares a bus with the memory, the DMA controller
Data chaining characterized in that DMA transfer is started after writing the transfer information of the first block to the register group A of the controller and the transfer information of the second block to the register group B of the controller. control method.
JP7358587A 1987-03-27 1987-03-27 Data chaining control system Pending JPS63239549A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7358587A JPS63239549A (en) 1987-03-27 1987-03-27 Data chaining control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7358587A JPS63239549A (en) 1987-03-27 1987-03-27 Data chaining control system

Publications (1)

Publication Number Publication Date
JPS63239549A true JPS63239549A (en) 1988-10-05

Family

ID=13522530

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7358587A Pending JPS63239549A (en) 1987-03-27 1987-03-27 Data chaining control system

Country Status (1)

Country Link
JP (1) JPS63239549A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04260955A (en) * 1990-06-25 1992-09-16 Nec Corp Microcomputer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04260955A (en) * 1990-06-25 1992-09-16 Nec Corp Microcomputer

Similar Documents

Publication Publication Date Title
EP1012734B1 (en) Address translation in computer bus bridge devices
US7165126B2 (en) Direct memory access device
JP5057360B2 (en) Semiconductor device, data processing device, and access method to storage device
CA1279407C (en) Buffer storage control system
JPH0793274A (en) System and device for transferring data
JPS63239549A (en) Data chaining control system
EP0191939A1 (en) Data processing bus system
JPS5837633B2 (en) Buffer memory storage control method
JPS6226055B2 (en)
JP3264316B2 (en) Direct memory access controller
EP0718771B1 (en) DMA logic unit architecture
JPH0736806A (en) Dma system
JPH05250310A (en) Data processor
JPH10222460A (en) Data transfer controller
JPS6153753B2 (en)
JPS63259746A (en) Inter-bank-memory data transmission system
JPS5856891B2 (en) information processing system
JPH08202648A (en) Direct memory access transfer system and method
JPH03156553A (en) Dma controller and information processing system
JPH0526216B2 (en)
JPH0520165A (en) System bus controller
JPS61131152A (en) Dma buffer control system
JPH0612363A (en) Memory controller and multiprocessor system
JPH04262449A (en) Data transfer system
JPS589274A (en) Write data buffer control device