JPH04267453A - Direct memory access device - Google Patents
Direct memory access deviceInfo
- Publication number
- JPH04267453A JPH04267453A JP3028408A JP2840891A JPH04267453A JP H04267453 A JPH04267453 A JP H04267453A JP 3028408 A JP3028408 A JP 3028408A JP 2840891 A JP2840891 A JP 2840891A JP H04267453 A JPH04267453 A JP H04267453A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- memory access
- storage means
- address counter
- 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
Links
Landscapes
- Bus Control (AREA)
Abstract
Description
【0001】0001
【産業上の利用分野】本発明は複雑なデータの自動転送
を可能にするダイレクトメモリアクセス装置に関するも
のである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a direct memory access device that enables automatic transfer of complex data.
【0002】0002
【従来の技術】図2は従来のダイレクトメモリアクセス
装置の一例を示すブロック図であって、10はデータの
自動転送を行うための転送元アドレスを発生するソース
アドレスカウンタ、70はデータの自動転送を行うため
の転送先アドレスを発生するディストネーションアドレ
スカウンタ、20はソースアドレスカウンタ10とディ
ストネーションアドレスカウンタにより発生したアドレ
スを出力するアドレスバス、30はアドレスバス20に
より選択されるメモリ装置、40はアドレスバス20に
より選択される周辺装置、50はメモリ装置30と周辺
装置40の入出力を接続するデータバス、60はデータ
バス50への出力データを一時記憶するデータ保持装置
、80はダイレクトメモリアクセスの動作の終了条件を
決定する停止アドレス記憶装置、90はソースアドレス
カウンタ10と停止アドレス記憶装置80の値を比較す
る比較装置、100は比較装置90でソースアドレスカ
ウンタ10と停止アドレス記憶装置80の値が等しいと
きダイレクトメモリアクセス装置の動作を終了させるダ
イレクトメモリアクセス終了信号である。2. Description of the Related Art FIG. 2 is a block diagram showing an example of a conventional direct memory access device, in which 10 is a source address counter for generating a transfer source address for automatic data transfer, and 70 is a source address counter for generating a transfer source address for automatic data transfer. 20 is an address bus that outputs the address generated by the source address counter 10 and the destination address counter; 30 is a memory device selected by the address bus 20; 40 is a memory device selected by the address bus 20; A peripheral device is selected by the address bus 20, 50 is a data bus that connects the input/output of the memory device 30 and the peripheral device 40, 60 is a data holding device that temporarily stores output data to the data bus 50, and 80 is a direct memory access 90 is a comparison device that compares the values of the source address counter 10 and the stop address storage device 80; 100 is a comparison device 90 that compares the values of the source address counter 10 and the stop address storage device 80; This is a direct memory access end signal that ends the operation of the direct memory access device when the values are equal.
【0003】この従来例の動作を説明すると、ソースア
ドレスカウンタ10より発生するアドレスがアドレスバ
ス20を通してメモリ装置30または、周辺装置40を
選択し、その出力データをデータバス50に出力する。
データバス50に出力されたデータは、データ保持装置
60に一時保持される。次に、ディストネーションアド
レスカウンタ70より発生するアドレスがアドレスバス
20を通してメモリ装置30または、周辺装置40を選
択し、これに、データ保持装置60に一時保持したデー
タをデータバス50を通して出力する。To explain the operation of this conventional example, an address generated by a source address counter 10 selects a memory device 30 or a peripheral device 40 through an address bus 20, and outputs its output data to a data bus 50. The data output to the data bus 50 is temporarily held in a data holding device 60. Next, the address generated by the destination address counter 70 selects the memory device 30 or the peripheral device 40 via the address bus 20, and outputs the data temporarily held in the data holding device 60 to this via the data bus 50.
【0004】これらの動作をソースアドレスカウンタ1
0をインクリメントまたはデクリメントし、ディストネ
ーションカウンタ70をインクリメントまたはデクリメ
ントまたは固定して、前記ソースアドレスカウンタ90
の値と停止アドレス記憶装置80の値とを比較装置90
で比較し、値が等しくなるまで連続して行うことで大量
データの自動転送を実現している。These operations are performed using the source address counter 1.
The source address counter 90 is incremented or decremented by 0 and the destination counter 70 is incremented or decremented or fixed.
Comparing device 90 compares the value of and the value of stop address storage device 80.
Automatic transfer of large amounts of data is achieved by comparing the values continuously until the values are equal.
【0005】[0005]
【発明が解決しようとする課題】しかしながら、上記従
来例ではデータ長が固定でないデータ列の自動転送を行
う場合転送開始の度にダイレクトメモリアクセスの停止
アドレスを算出しなければならず、またデータを単に自
動転送するだけで、例えばあるビットだけをマスクする
(論理積演算をする)などの処理が必要な場合、あらか
じめデータをマスクしておくか、転送されたデータをマ
スクして使用するなどソフトウェアの処理が煩雑になり
処理速度の向上が困難であった。[Problems to be Solved by the Invention] However, in the above conventional example, when automatically transferring a data string whose data length is not fixed, it is necessary to calculate the stop address for direct memory access every time a transfer is started, and the data If you are simply transferring automatically and need to perform processing such as masking only certain bits (logical AND operation), mask the data in advance or mask the transferred data before using it using software. The processing became complicated and it was difficult to improve the processing speed.
【0006】[0006]
【課題を解決するための手段】以上の問題点を解決する
ために、本発明のダイレクトメモリアクセス装置は、1
組以上のポインタアドレス生成手段と、前記ポインタア
ドレス生成手段で指定するアドレスをアドレス情報とし
て特定のデータを読み書きする記憶手段と、前記記憶手
段から読みだしたデータを一時的に記憶し、前記記憶手
段への書き込み時に記憶したデータを出力する仮記憶手
段と、特定のデータパターンを記憶する第1レジスタ手
段と、前記仮記憶手段の出力と前記第1レジスタ手段の
出力を演算し、前記記憶手段への書き込み時に演算結果
を出力する演算手段と、特定のデータを記憶する第2の
レジスタ手段と、前記第2のレジスタ手段の出力と前記
仮記憶手段の出力を比較する比較手段を備えている。[Means for Solving the Problems] In order to solve the above problems, a direct memory access device of the present invention provides:
at least one pair of pointer address generation means, a storage means for reading and writing specific data using an address specified by the pointer address generation means as address information, and a storage means for temporarily storing data read from the storage means; a temporary storage means for outputting data stored when writing to the memory; a first register means for storing a specific data pattern; , a second register means for storing specific data, and a comparison means for comparing the output of the second register means and the output of the temporary storage means.
【0007】[0007]
【作用】本発明では、複雑なデータの自動転送を可能に
するダイレクトメモリアクセス装置を得ることができる
。According to the present invention, it is possible to obtain a direct memory access device that enables automatic transfer of complex data.
【0008】[0008]
【実施例】以下、本発明の一実施例を図面を参照しなが
ら説明する。DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings.
【0009】図1は本発明の第一の実施例のブロック図
であって、図2に示す従来例から変更した点はソースア
ドレスカウンタ10と停止アドレス記憶装置110の値
を比較してダイレクトメモリアクセスの終了条件を決定
せずに終了条件をある特定のデータパターンを認識した
ときに決定するように停止データ記憶装置110とデー
タ保持装置60と停止データ記憶装置の値を比較する比
較手段120を追加したことと、あらかじめ特定のデー
タパターンを記憶するデータレジスタ手段130と、前
記データレジスタ手段130の出力とデータ保持装置6
0の出力を演算する演算器手段140を追加し、前記演
算器手段140の結果をメモリ装置30または周辺装置
40への書き込み時に出力するようにしたことである。FIG. 1 is a block diagram of a first embodiment of the present invention, which is different from the conventional example shown in FIG. Comparing means 120 for comparing the values of the stop data storage device 110, the data holding device 60, and the stop data storage device so as to determine the end condition when a certain data pattern is recognized without determining the access end condition. Additionally, a data register means 130 for storing a specific data pattern in advance, and an output of the data register means 130 and a data holding device 6
An arithmetic unit means 140 for calculating an output of 0 is added, and the result of the arithmetic unit means 140 is outputted when writing to the memory device 30 or the peripheral device 40.
【0010】この実施例の動作を説明すると、ソースア
ドレスカウンタ10より発生するアドレスがアドレスバ
ス20を通してメモリ装置30または、周辺装置40を
選択し、その出力データをデータバス50に出力する。
データバス50に出力されたデータは、データ保持装置
60に一時保持される。次に、ディストネーションアド
レスカウンタ70より発生するアドレスがアドレスバス
20を通してメモリ装置30または、周辺装置40を選
択し、これに、データ保持装置60に一時保持したデー
タとデータレジスタ手段130に設定しておいたデータ
との演算を演算器手段140で行い、データバス50を
通して出力する。To explain the operation of this embodiment, the address generated by the source address counter 10 selects the memory device 30 or the peripheral device 40 through the address bus 20, and outputs the output data to the data bus 50. The data output to the data bus 50 is temporarily held in a data holding device 60. Next, the address generated by the destination address counter 70 selects the memory device 30 or the peripheral device 40 through the address bus 20, and sets the data temporarily held in the data holding device 60 and the data register means 130 thereto. The arithmetic unit means 140 performs arithmetic operations on the stored data and outputs the result through the data bus 50.
【0011】これらの動作をソースアドレスカウンタ1
0をインクリメントまたはデクリメントし、ディストネ
ーションカウンタ70をインクリメントまたはデクリメ
ントまたは固定して、前記データ保持装置60の値と停
止データ記憶装置110の値とを比較装置120で比較
し、値が等しくなるまで連続して行う。These operations are performed by the source address counter 1.
0 is incremented or decremented, the destination counter 70 is incremented, decremented, or fixed, and the value of the data holding device 60 and the value of the stop data storage device 110 are compared by the comparator 120, and the comparison continues until the values become equal. and do it.
【0012】また、演算器手段140の動作を例えば論
理積演算に設定し、データレジスタ130に最下位ビッ
トのみを‘1’にするデータを設定すれば、常に転送元
のデータの最下位ビット以外のビットを‘0’にして転
送ができるようになり、複雑なデータの転送を大量に自
動転送することが可能となる。もちろん、演算器手段1
40は論理演算や算術演算などを行うことができる。Furthermore, if the operation of the arithmetic unit means 140 is set to, for example, an AND operation, and data is set in the data register 130 to set only the least significant bit to '1', all data other than the least significant bit of the data of the transfer source are always transferred. Transfer can now be performed by setting the bit to '0', making it possible to automatically transfer a large amount of complex data. Of course, the computing unit means 1
40 can perform logical operations, arithmetic operations, and the like.
【0013】[0013]
【発明の効果】本発明のダイレクトメモリアクセス装置
は以上の説明からも明らかなように、1組以上のポイン
タアドレス生成手段と、前記ポインタアドレス生成手段
で指定するアドレスをアドレス情報として特定のデータ
を読み書きする記憶手段と、前記記憶手段から読みだし
たデータを一時的に記憶し、前記記憶手段への書き込み
時に記憶したデータを出力する仮記憶手段と、特定のデ
ータパターンを記憶する第1レジスタ手段と、前記仮記
憶手段の出力と前記第1レジスタ手段の出力を演算し、
前記記憶手段への書き込み時に演算結果を出力する演算
手段と、特定のデータを記憶する第2のレジスタ手段と
、前記第2のレジスタ手段の出力と前記仮記憶手段の出
力を比較する比較手段を有するもので、複雑なデータの
自動転送を可能にするダイレクトメモリアクセス装置を
得ることができる。Effects of the Invention As is clear from the above description, the direct memory access device of the present invention includes one or more sets of pointer address generation means and an address designated by the pointer address generation means for generating specific data by using the address specified by the pointer address generation means as address information. storage means for reading and writing, temporary storage means for temporarily storing data read from the storage means and outputting the stored data when writing to the storage means, and first register means for storing a specific data pattern. and calculating the output of the temporary storage means and the output of the first register means,
an arithmetic means for outputting an arithmetic result when writing into the storage means; a second register means for storing specific data; and a comparison means for comparing the output of the second register means and the output of the temporary storage means. With this, it is possible to obtain a direct memory access device that enables automatic transfer of complex data.
【図1】本発明の一実施例におけるダイレクトメモリア
クセス装置の構成図FIG. 1 is a configuration diagram of a direct memory access device according to an embodiment of the present invention.
【図2】従来の実施例におけるダイレクトメモリアクセ
ス装置の構成図[Fig. 2] A configuration diagram of a direct memory access device in a conventional embodiment.
10 ソースアドレスカウンタ
20 アドレスバス
30 メモリ装置
40 周辺装置
50 データバス
60 データ保持装置
70 ディストネーションアドレスカウンタ80
停止アドレス記憶装置
90 アドレス比較装置
110 停止データ記憶装置
120 データ比較手段
130 データレジスタ
140 演算器10 Source address counter 20 Address bus 30 Memory device 40 Peripheral device 50 Data bus 60 Data holding device 70 Destination address counter 80
Stop address storage device 90 Address comparison device 110 Stop data storage device 120 Data comparison means 130 Data register 140 Arithmetic unit
Claims (1)
前記ポインタアドレス生成手段で指定するアドレスをア
ドレス情報として特定のデータを読み書きする記憶手段
と、前記記憶手段から読みだしたデータを一時的に記憶
し、前記記憶手段への書き込み時に記憶したデータを出
力する仮記憶手段と、特定のデータパターンを記憶する
第1レジスタ手段と、前記仮記憶手段の出力と前記第1
レジスタ手段の出力を演算し、前記記憶手段への書き込
み時に演算結果を出力する演算手段と、特定のデータを
記憶する第2のレジスタ手段と、前記第2のレジスタ手
段の出力と前記仮記憶手段の出力を比較する比較手段を
有するダイレクトメモリアクセス装置。Claim 1: One or more sets of pointer address generation means;
Storage means for reading and writing specific data using the address specified by the pointer address generation means as address information, and temporarily storing the data read from the storage means and outputting the stored data when writing to the storage means. temporary storage means for storing a specific data pattern; first register means for storing a specific data pattern;
a calculation means for calculating the output of the register means and outputting the calculation result when writing to the storage means; a second register means for storing specific data; and an output of the second register means and the temporary storage means. A direct memory access device having comparison means for comparing the outputs of.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3028408A JPH04267453A (en) | 1991-02-22 | 1991-02-22 | Direct memory access device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3028408A JPH04267453A (en) | 1991-02-22 | 1991-02-22 | Direct memory access device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04267453A true JPH04267453A (en) | 1992-09-24 |
Family
ID=12247833
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3028408A Pending JPH04267453A (en) | 1991-02-22 | 1991-02-22 | Direct memory access device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04267453A (en) |
-
1991
- 1991-02-22 JP JP3028408A patent/JPH04267453A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH01265347A (en) | Address generating device | |
| US4630192A (en) | Apparatus for executing an instruction and for simultaneously generating and storing related information | |
| JPH0644245B2 (en) | Store buffer device | |
| US20020004861A1 (en) | DMA controller in which bus access ratio can be set | |
| JPH04267453A (en) | Direct memory access device | |
| JPH04264948A (en) | Direct memory access device | |
| JP2707256B2 (en) | Micro computer | |
| JPH0831033B2 (en) | Data processing device | |
| JPH04267452A (en) | Direct memory access device | |
| JPH04267454A (en) | Direct memory access device | |
| JPH04348446A (en) | Direct memory access device | |
| JP2752220B2 (en) | String processing unit | |
| JPH01119823A (en) | first in first out storage | |
| JP2581144B2 (en) | Bus control device | |
| JPS619725A (en) | Microprogram control circuit | |
| JPS6019816B2 (en) | microprogram control adapter | |
| JPH02287732A (en) | Register address generating device | |
| JPS63103342A (en) | Main memory controller | |
| JPS6242237A (en) | Loading system to instruction buffer | |
| JPH0478942A (en) | Memory access circuit | |
| JPH0426494B2 (en) | ||
| JPH07146839A (en) | DMA circuit | |
| JPS6244839A (en) | Instruction fetching device | |
| JPS6224327A (en) | Stack memory control system | |
| JPH04248633A (en) | Test system |