JPS5841525B2 - Direct memory access system - Google Patents

Direct memory access system

Info

Publication number
JPS5841525B2
JPS5841525B2 JP50016823A JP1682375A JPS5841525B2 JP S5841525 B2 JPS5841525 B2 JP S5841525B2 JP 50016823 A JP50016823 A JP 50016823A JP 1682375 A JP1682375 A JP 1682375A JP S5841525 B2 JPS5841525 B2 JP S5841525B2
Authority
JP
Japan
Prior art keywords
address
register
counter
block
data
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.)
Expired
Application number
JP50016823A
Other languages
Japanese (ja)
Other versions
JPS5192129A (en
Inventor
国臣 会沢
楯夫 杉本
泰良 大山
忠 南
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 JP50016823A priority Critical patent/JPS5841525B2/en
Publication of JPS5192129A publication Critical patent/JPS5192129A/ja
Publication of JPS5841525B2 publication Critical patent/JPS5841525B2/en
Expired legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】 本発明は、ダイレクトメモリアクセス(以下I)MAと
いう)によりアドレスの連続しないブロックに分割され
たメモリエリアの読込みまたは書込み(以下リード/ラ
イ1へという)を連続的に行なうリード/ライト方式に
関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention continuously reads or writes (hereinafter referred to as read/write 1) a memory area divided into blocks of non-consecutive addresses by direct memory access (hereinafter referred to as I MA). This relates to the read/write method used.

従来のDMAによるリード/ライト方式は、アドレスレ
ジスタを1個持ち、プログラムによりリード/ライトエ
リアの先頭アドレスを該アドレスレジスタにセットし、
スタート指示があるとり−ド/ライトを行ない、終了は
、リード/ライトバイト数のカウントあるいは終了コー
ドの判別によって認識し、プログラムに割込み等により
連絡していた。
The conventional read/write method using DMA has one address register, and the start address of the read/write area is set in the address register by a program.
A read/write is performed when a start instruction is given, and the end is recognized by counting the number of read/write bytes or by determining an end code, and is notified to the program by an interrupt or the like.

この方式において、第1図のように、アドレスの連続し
ないブロック5,6,7,8に分割されたメモリエリア
のリード/ライトを連続的に行なうためには、第1ブロ
ツク5の終了割込みを起してから第2ブロツク6の先頭
アドレス2がセットされるまでの時間(割込み待ち時間
+プログラム処理時間)を極力小さくしなければならな
い。
In this method, in order to continuously read/write the memory area divided into blocks 5, 6, 7, and 8 with non-consecutive addresses as shown in FIG. The time (interrupt waiting time + program processing time) from when the program is started until the start address 2 of the second block 6 is set must be made as short as possible.

例えば4800BPSの回線データとしてのり一ド/ラ
イトでは上記時間的制約は約1.6 m sになり、こ
れ以内に必ず抑えることは従来方式では困難である。
For example, when reading/writing data on a 4800 BPS line, the above-mentioned time constraint is about 1.6 ms, and it is difficult with conventional methods to always keep the time constraint within this range.

本発明は、上述した従来のDMA方式の欠点を比較的簡
単な回路で解決して汎用性のあるDMAによるリード/
ライト方式を提供せんとするものである。
The present invention solves the drawbacks of the conventional DMA method described above with a relatively simple circuit, and provides a versatile DMA read/write system.
It is intended to provide a light method.

本発明は、DMAによるリード/ライトにおいて、アド
レスの連続しないブロックに分割されたメモリエリアの
り一ド/ライトを連続的に行なうために、入出力制御部
にアドレス更新用のバイナリカウンタ1個とアドレス記
憶用のレジスタ1個を備え、■ブロックのり一ド/ライ
トが終了した場合には前記アドレス記憶用のレジスタの
内容をアドレス更新用のバイナリカウンタに移して次の
ブロックを連続的にリード/ライトし、空いたアドレス
記憶用のレジスタには更に次のブロックの先頭アドレス
をセットするようにしてリード/ライトが連続的に行な
えるようにしたことを特徴とするものである。
In order to continuously read/write a memory area divided into blocks of non-consecutive addresses during read/write using DMA, the present invention provides an input/output control unit with one binary counter for updating addresses and one binary counter for updating addresses. Equipped with one register for storage; ■When a block read/write is completed, the contents of the register for address storage are transferred to a binary counter for updating the address, and the next block is continuously read/written. However, the first address of the next block is further set in the vacant address storage register, so that reading/writing can be performed continuously.

第2図に本発明の一実施例を示す。FIG. 2 shows an embodiment of the present invention.

第2図aにおいて、A−1〜A7はアンド回路、N1〜
N3はノット回路、ORはオア回路、B1.B2はJK
フリップフロップ、9はアドレス記憶用のレジスタ、1
0はアドレス更新用のバイナリカウンタを示す。
In Figure 2a, A-1 to A7 are AND circuits, N1 to
N3 is a NOT circuit, OR is an OR circuit, B1. B2 is JK
Flip-flop, 9 is a register for storing addresses, 1
0 indicates a binary counter for updating the address.

またDATA BUSはデータとしてアドレス情報を
与えるバスで、ADRBUSはアドレスバス、11はア
ドレスセット時の指令信号、12はDMAによる1ブロ
ツク終了の指令信号、13はバイナリカウンタのカウン
トパルス、14はアドレスをアドレスバスADRBUS
に乗せるためのゲート信号である。
Also, DATA BUS is a bus that provides address information as data, ADRBUS is an address bus, 11 is a command signal when setting an address, 12 is a command signal for completing one block by DMA, 13 is a count pulse of a binary counter, and 14 is a bus that outputs an address. Address bus ADRBUS
This is a gate signal to be placed on the

次に第2図aの回路の動作を第2図すのタイムチャート
と共に説明する。
Next, the operation of the circuit shown in FIG. 2a will be explained with reference to the time chart shown in FIG.

最初に、第1図に示した第1ブロツク5の先頭アドレス
1をセットするために、アドレスセット信号ADR5E
T11aが加えられると、初期状態ではフリップフロッ
プB2はリセットされているので、その0出力端子が”
1″であるから、アドレスセット信号11aはアンド回
路A3とオア回路ORを通してカウンタ10に加えられ
ると共に、レジスタ9にも加えられる。
First, in order to set the starting address 1 of the first block 5 shown in FIG.
When T11a is applied, flip-flop B2 is reset in the initial state, so its 0 output terminal becomes "
1'', the address set signal 11a is applied to the counter 10 through the AND circuit A3 and the OR circuit OR, and is also applied to the register 9.

したがって、DATA BUS上のアドレス情報はレ
ジスタ9にセットされた後カウンタ10にセットされる
Therefore, address information on the DATA BUS is set in register 9 and then in counter 10.

フリップフロップB1. B2はアドレスセット信号1
1aの立下りでトリガパルスが与えられ、初期状態でB
l t B2の各0出力端子はtl 1 nであるが、
このトリガパルスが与えられた時に、前段のフリップフ
ロップB1のJ端子はtt Q It 、 K端子が1
′′であるからそのO出力端子は“1″を保持する。
Flip-flop B1. B2 is address set signal 1
A trigger pulse is given at the falling edge of 1a, and in the initial state B
Each 0 output terminal of l t B2 is tl 1 n, but
When this trigger pulse is given, the J terminal of the flip-flop B1 in the previous stage becomes tt Q It, and the K terminal becomes 1.
'', its O output terminal holds "1".

しかしフリップフロップB2はアンド回路A2の出力が
0”1ノット回路N3の出力が1″であるから、出力が
反転して1出力端子が”1″、O出力端子が01+とな
る。
However, in the flip-flop B2, since the output of the AND circuit A2 is 0 and the output of the 1-NOT circuit N3 is 1'', the outputs are inverted, and the 1 output terminal becomes ``1'' and the O output terminal becomes 01+.

すなわちアンド回路A3はオフになる。That is, AND circuit A3 is turned off.

この状態で続いて第1図に示す第2ブロツク6の先頭ア
ドレス2をセットするためアドレスセット信号11bを
送る。
In this state, an address set signal 11b is subsequently sent to set the leading address 2 of the second block 6 shown in FIG.

この信号はカウンタ10にはアンド回路A3でカットさ
れるので加えられず、レジスタ9のみに印加される。
This signal is not applied to the counter 10 because it is cut by the AND circuit A3, but is applied only to the register 9.

従ってDATA BUS上の第2ブロツク先頭アドレ
ス2はレジスタ9にセットされるが、第1ブロツク先頭
アドレス1はカウンタ10にセットされたままである。
Therefore, the second block start address 2 on the DATA BUS is set in the register 9, but the first block start address 1 remains set in the counter 10.

またこのとき、前記のように後段のフリップフロップB
2はセットされているから、トリガ時において、前段フ
リップフロップB1のJ端子が]”、K端子が0″であ
るから前段フリップフロップB1がセットされる。
Also, at this time, as mentioned above, the flip-flop B in the latter stage
2 is set, so at the time of trigger, the J terminal of the front flip-flop B1 is ]", and the K terminal is 0", so the front flip-flop B1 is set.

この状態でゲート信号14をオンとしてカウンタ10の
出力ゲート回路A6〜A7を開き、カウントパルス13
を加えると、第1図の第1ブロツク5の内容がリードさ
れる。
In this state, the gate signal 14 is turned on to open the output gate circuits A6 to A7 of the counter 10, and the count pulse 13
, the contents of the first block 5 in FIG. 1 are read.

第1ブロツクのリードが終了すると1ブロツクのDMA
終了信号12が出る。
When the read of the first block is completed, the DMA of one block is
An end signal 12 is issued.

この信号はオア回路ORを通してカウンタ10に加えら
れ、これによってレジスタ9の内容がカウンタ10にセ
ットされる。
This signal is applied to the counter 10 through the OR circuit OR, thereby setting the contents of the register 9 in the counter 10.

またこのDMA終了信号にはノット回路N2.アンド回
路A1を通してフリップフロップB1.B2に、トリガ
信号として加えられ、このとき前段フリップフロップB
1のJ端子、K端子ともに1″であるからそのO出力端
子が1″となるが、後段フリップフロップB2はタイミ
ング的に前段フリップフロップB1の反転前の状態を拾
うので、出力は反転しない。
This DMA end signal is also connected to a NOT circuit N2. Through the AND circuit A1, the flip-flop B1. B2 as a trigger signal, and at this time, the previous flip-flop B
1's J and K terminals are both 1'', so its O output terminal becomes 1'', but since the subsequent flip-flop B2 picks up the state of the previous flip-flop B1 before inversion in terms of timing, the output is not inverted.

続いて第3ブロツク7の先頭アドレス3をレジスタ9に
セットするため、アドレスセット信号11eを加えると
、この信号は、アンド回路A3がオフであるからカウン
タ10には加えられず、レジスタ9のみに加えられてD
ATA BUS上の第3先頭アドレス情報がレジスタ
9にセットされる。
Next, in order to set the first address 3 of the third block 7 in the register 9, an address set signal 11e is applied. Since the AND circuit A3 is off, this signal is not applied to the counter 10, but is applied only to the register 9. Added D
Third head address information on the ATA BUS is set in register 9.

このとき前段フリップフロップB、の0出力端子がO”
となる。
At this time, the 0 output terminal of the previous stage flip-flop B is O”
becomes.

またDMA終了時にプログラムに割込みがかかり、プロ
グラム処理後次のアドレスプログラムによりセットされ
る。
Further, when the DMA ends, the program is interrupted, and after the program is processed, it is set by the next address program.

このように第11第2、第3・・・ブロックを踏切れる
ことなく連続的にリードすることができる。
In this way, it is possible to lead continuously without crossing the 11th, 2nd, 3rd, etc. blocks.

ライトについても同様である。The same applies to lights.

以上に説明したように、本発明は、バイナリカウンタと
レジスタを各1個備えることによって、プログラムの割
込み処理時間を従来方式における1〜2msから数10
m5以上(つまりブロックのり一ド/ライトに要する時
間程度)に広げることができ、プログラムを組む上での
障害を取り除くことができる。
As explained above, by providing one binary counter and one register, the present invention can reduce the program interrupt processing time from 1 to 2 ms in the conventional system to several tens of milliseconds.
This can be extended to more than m5 (that is, about the time required to read/write a block), and it is possible to eliminate obstacles in programming.

また、DMAアドレスバスへのアドレス出力によるイン
ターフェイスの数は従来方式と同じであり、バイナリカ
ウンタを2個設けるよりは有利である。
Furthermore, the number of interfaces for outputting addresses to the DMA address bus is the same as in the conventional system, which is more advantageous than providing two binary counters.

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

第1図はアドレスの連続しないブロックに分割されたエ
リアの例を示す図、第2図aは本発明の一実施例を示す
回路図、同すはaの動作を説明するために描いたタイム
チャートである。 符号の説明、1〜4・・・・・・先頭アドレス、5〜8
・・・・・・メモリブロック、9・・・・・・アドレス
記憶用レジスタ、10・・・・・・アドレス更新用パイ
ナリカウンク、11・・・・・・アドレスセット信号、
12・・・・・・DMA終了信号、13・・・・・・カ
ウントパルス、14・・・・・・アドレス出力ゲート信
号、A、〜A7・・・・・・アンド回路、B1.B2・
・・・・・JKフリップフロップ、N、〜N3・・・・
・・ノット回路、OR・・・・・・オア回路。
Fig. 1 is a diagram showing an example of an area divided into blocks with non-consecutive addresses, Fig. 2 a is a circuit diagram showing one embodiment of the present invention, and a timer diagram drawn to explain the operation of a. It is a chart. Explanation of codes, 1 to 4...Start address, 5 to 8
... Memory block, 9 ... Register for address storage, 10 ... Pinary count for updating address, 11 ... Address set signal,
12...DMA end signal, 13...Count pulse, 14...Address output gate signal, A, ~A7...AND circuit, B1. B2・
...JK flip-flop, N, ~N3...
...Knot circuit, OR...OR circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 アドレスセット信号に応答してデータバス上のアド
レスデータを取り込むアドレス記憶用のレージスタと、
1ブロック分のダイレクトメモリアクセスDMA動作終
了を示す信号に応答して上記レジスタからアドレスデー
タを取り込み、この値をカウントパルスに応答して順次
更新して出力するカウンタと、最初のアドレスセット信
号に対しては上記レジスタから上記カウンタへのアドレ
スデータの転送を許容し、その後のアドレスセット信号
に対しては上記転送を抑制する如く制御動作する制御手
段とを有し、上記カウンタ出力をアドレスとしてメモリ
エリアの1ブロック分のデータについてDMA動作を行
ない、該DMA動作中に次にアクセスすべきブロックの
先頭アドレスを上記レジスタにセットしておき、上記D
MA動作終了時に上記レジスタから上記カウンタに新た
なブロックの先頭アドレスを移すようにしたことを特徴
とするダイレクトメモリアクセスによる読込み書込み方
式。
1. An address storage register that captures address data on the data bus in response to an address set signal;
A counter that takes in address data from the above register in response to a signal indicating the end of a direct memory access DMA operation for one block, updates this value sequentially in response to a count pulse, and outputs it, and a counter that responds to the first address set signal. The control means allows the transfer of address data from the register to the counter and controls the transfer in response to a subsequent address set signal, and uses the output of the counter as an address to transfer the address data to the memory area. A DMA operation is performed on one block of data, and during the DMA operation, the start address of the block to be accessed next is set in the above register, and the above D
A read/write method using direct memory access, characterized in that the start address of a new block is transferred from the register to the counter when the MA operation ends.
JP50016823A 1975-02-12 1975-02-12 Direct memory access system Expired JPS5841525B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP50016823A JPS5841525B2 (en) 1975-02-12 1975-02-12 Direct memory access system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP50016823A JPS5841525B2 (en) 1975-02-12 1975-02-12 Direct memory access system

Publications (2)

Publication Number Publication Date
JPS5192129A JPS5192129A (en) 1976-08-12
JPS5841525B2 true JPS5841525B2 (en) 1983-09-13

Family

ID=11926885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50016823A Expired JPS5841525B2 (en) 1975-02-12 1975-02-12 Direct memory access system

Country Status (1)

Country Link
JP (1) JPS5841525B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5660933A (en) * 1979-10-22 1981-05-26 Nec Corp Information processor
JPS58181134A (en) * 1982-04-16 1983-10-22 Hitachi Ltd Data transfer circuit
JPH01120660A (en) * 1987-11-04 1989-05-12 Nec Corp Microcomputer device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4847235A (en) * 1971-10-15 1973-07-05
JPS49123744A (en) * 1973-03-31 1974-11-27
JPS49131649A (en) * 1973-04-20 1974-12-17

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4847235A (en) * 1971-10-15 1973-07-05
JPS49123744A (en) * 1973-03-31 1974-11-27
JPS49131649A (en) * 1973-04-20 1974-12-17

Also Published As

Publication number Publication date
JPS5192129A (en) 1976-08-12

Similar Documents

Publication Publication Date Title
JPH0212442A (en) Ic card with erroneous write preventing function
JP2762138B2 (en) Memory control unit
JPS5841525B2 (en) Direct memory access system
RU2000117017A (en) SYSTEM FOR PROGRAM MANAGEMENT OF TECHNOLOGICAL EQUIPMENT
JPH07311708A (en) Memory card
SU1283760A1 (en) Control device for microprocessor system
JPH046024B2 (en)
SU1541620A1 (en) Device for extension of directly addressed memory of microprocessor
JPS6290733A (en) Device for displaying content of ram
JPS54145444A (en) Control system of buffer memory
KR100373796B1 (en) Device for reading and writing serial eeprom and method thereof
JP2580877B2 (en) Light module for data flow calculator
JP2854301B2 (en) Memory access circuit
JPH031279A (en) Simulator
JPS5815203U (en) programmable controller
JPH0222717A (en) Computer
JPS5829046A (en) Memory sorting system
JPH0272430A (en) Arithmetic processor
JPS6045459B2 (en) Memory bank control method
JPS5938827A (en) Microprocessor ipl system
JPS63301338A (en) Memory with control memory
JP2000099449A (en) Interface circuit for cpu data bus and memory control system provided with the same
JPH0365727A (en) Microprogram storage system
JPH0644298B2 (en) Program rewriting device for data flow type computer
JPS62298836A (en) Ram for program storage