JPH0553908A - High-speed access storage device - Google Patents

High-speed access storage device

Info

Publication number
JPH0553908A
JPH0553908A JP3211751A JP21175191A JPH0553908A JP H0553908 A JPH0553908 A JP H0553908A JP 3211751 A JP3211751 A JP 3211751A JP 21175191 A JP21175191 A JP 21175191A JP H0553908 A JPH0553908 A JP H0553908A
Authority
JP
Japan
Prior art keywords
memory
data
address
cpu
read
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
JP3211751A
Other languages
Japanese (ja)
Inventor
Yoshihiro Furuyui
義浩 古結
Hidehiko Hamamura
秀彦 浜村
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.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries 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 Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP3211751A priority Critical patent/JPH0553908A/en
Publication of JPH0553908A publication Critical patent/JPH0553908A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To reduce average memory access time in the case of a processing to access the wide data area of image data or the like. CONSTITUTION:This device is equipped with (n) [(n) >=2] data memories to execute parallel operations and a memory access controller 2 to control parallel read/write to those data memories while receiving a memory access request from a CPU. The memory access controller 2, is formed as an address predicting circuit 4 to predict the next memory read access request address from the CPU, to previously read the data of the plural predicted addresses from the memory, to store the addresses in a read buffer 6, to compare memory read access request addresses from the CPU with these stored predicted addresses, to output the data of the coincident predicted address to the CPU and to read the data of the address from the memory only when the address is not coincident.

Description

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

【0001】[0001]

【産業上の利用分野】この発明は、高速アクセス記憶装
置に関する。
FIELD OF THE INVENTION This invention relates to high speed access storage devices.

【0002】[0002]

【従来の技術】汎用CPUからの高速アクセスを可能に
する高速メモリは、容量が小さく高価であるという欠点
を有している。そこで、従来は高速アクセス記憶装置と
してキャッシュメモリを付加したメモリシステムが使用
されている。キャッシュメモリはCPUとメインメモリ
との間に設置される半導体の高速メモリで、プログラム
の実行時にプログラムの一部(たとえば8キロバイト)
がこのメモリ内に読み込まれ、そこで命令の実行が高速
に行なわれる。
2. Description of the Related Art A high-speed memory that enables high-speed access from a general-purpose CPU has a drawback that it has a small capacity and is expensive. Therefore, conventionally, a memory system with a cache memory is used as a high-speed access storage device. The cache memory is a semiconductor high-speed memory that is installed between the CPU and main memory, and is a part of the program (for example, 8 kilobytes) when the program is executed.
Are read into this memory, where instructions are executed at high speed.

【0003】このキャッシュメモリシステムを使用する
ことによって、CPUからあるデータを参照するとき
に、そのデータを含むデータブロックをキャッシュメモ
リにコピーしておき、データアクセスをキャッシュメモ
リ上で行ない高速アクセスを実現することが可能にな
る。
By using this cache memory system, when referring to certain data from the CPU, a data block containing the data is copied to the cache memory, and data access is performed on the cache memory to realize high-speed access. It becomes possible to do.

【0004】[0004]

【発明が解決しようとする課題】従来、キャッシュメモ
リシステムで使用されるキャッシュメモリの容量は小さ
いため、一度にキャッシュメモリ上にコピーできるデー
タ量は少ない。
Conventionally, since the capacity of the cache memory used in the cache memory system is small, the amount of data that can be copied onto the cache memory at one time is small.

【0005】したがって、局所的なデータアクセスが多
い処理の場合には、キャッシュメモリ上にあるデータブ
ロック内のデータにアクセスする割合が比較的大きくな
るので、平均データアクセス時間が小さくなる。
Therefore, in the case of a process in which there are many local data accesses, the ratio of accessing the data in the data block in the cache memory becomes relatively large, and the average data access time becomes short.

【0006】しかし、画像データなどの広域なデータ領
域にアクセスする処理の場合には、キャッシュメモリ上
でデータアクセスする割合が小さくなり、キャッシュメ
モリを使用しても平均データアクセス時間を小さくする
ことはできない。この発明は、広いデータ領域にアクセ
スする処理の場合にも高速アクセスが可能な装置を提供
することを目的とする。
However, in the case of processing for accessing a wide data area such as image data, the ratio of data access on the cache memory becomes small, and even if the cache memory is used, the average data access time cannot be shortened. Can not. It is an object of the present invention to provide a device capable of high speed access even in the case of a process of accessing a large data area.

【0007】[0007]

【課題を解決するための手段】この発明の高速アクセス
記憶装置は、並列動作を実行するn(n≧2)個のデー
タメモリと、それらのデータメモリに対しCPUからの
データアクセス要求を受けて並列リード/ライトを制御
するメモリアクセスコントローラとを備えており、この
メモリアクセスコントローラがCPUからの次のデータ
リードアクセス要求アドレスを予測し、データを先読み
し保持しておく手段と、CPUからのメモリリードアク
セス要求アドレスと、これら記憶された予測されたアド
レスとを比較して、一致した予測アドレスのデータをC
PUに対して出力させ、一致しない場合にのみメモリか
らそのアドレスのデータを読み出す手段とを備えること
を特徴とする。CPUからのデータライトアクセス要求
時においては、ライトすべきアドレスを受けとった時点
で、ライト完了の信号を返し、その後にライトを実行す
る手段を備えることによって高速化を図っている。
SUMMARY OF THE INVENTION A high speed access storage device of the present invention receives n (n ≧ 2) data memories which execute parallel operations and data access requests from the CPU to these data memories. A memory access controller for controlling parallel read / write is provided. The memory access controller predicts the next data read access request address from the CPU, prefetches and holds the data, and a memory from the CPU. The read access request address is compared with these stored predicted addresses, and the data of the matching predicted address is C
It is provided with a means for outputting to the PU and reading the data of the address from the memory only when they do not match. When a data write access request is issued from the CPU, a speedup is achieved by providing a means for returning a write completion signal when the address to be written is received and then executing the write.

【0008】[0008]

【作用】上記のように構成されたメモリアクセスコント
ローラは、並列動作を実行するn(n≧2)個のデータ
メモリに対し、CPUからのメモリアクセス要求を受け
て次のように並列リード/ライト制御を行なう。
The memory access controller configured as described above receives a memory access request from the CPU for n (n ≧ 2) data memories that execute parallel operation, and performs parallel read / write as follows. Take control.

【0009】メモリリード時においては、CPUからの
以前のメモリリードアクセスにおけるアドレスから、そ
の後の複数回のメモリリードアクセスのアドレスを予測
し、そのアドレスのデータを先読みし保持しておく。予
測した複数回のメモリリードアクセスのアドレスが互い
に異なるデータメモリ1i(i=1,2,…,k)にあ
れば、先読みは複数メモリで並列に実行できる。そし
て、CPUから実際にメモリリードアクセスがあった際
には、実際のメモリリードアクセスのアドレスと先読み
したアドレスとを比較して、一致すれば先読みしていた
アドレスのデータをCPUに返す。これにより、連続す
るデータへのアクセス等に対し並列データアクセスを実
現し、平均アクセス時間を小さくすることが可能にな
る。
At the time of memory read, the address of a plurality of memory read accesses thereafter is predicted from the address in the previous memory read access from the CPU, and the data at that address is prefetched and held. If the predicted addresses for a plurality of memory read accesses are in different data memories 1i (i = 1, 2, ..., K), prefetching can be executed in parallel in a plurality of memories. When the CPU actually makes a memory read access, the address of the actual memory read access is compared with the prefetched address, and if they match, the data of the prefetched address is returned to the CPU. As a result, parallel data access can be realized for continuous data access, and the average access time can be shortened.

【0010】メモリライト時においては、CPUからの
メモリライトアクセス要求を受け、ライトすべきアドレ
スを受け取った時点でCPUに対しライト完了の信号を
返し、その後にライトを実行する。連続してメモリライ
ト要求がある場合においても、ライトすべきアドレスが
互いに異なるデータメモリ1i(i=1,2,…,k)
にあれば、ライトは複数メモリで並列に実行できる。し
たがって、複数データメモリに順にライトを行なうよう
にデータアドレスを決定すれば、並列データアクセスを
実現して平均アクセス時間を小さくできる。
At the time of memory write, a memory write access request from the CPU is received, a write completion signal is returned to the CPU when the address to be written is received, and then the write is executed. Even when there are consecutive memory write requests, the data memories 1i (i = 1, 2, ..., K) whose write addresses are different from each other
With, writes can be performed in parallel on multiple memories. Therefore, if the data address is determined so as to sequentially write to a plurality of data memories, parallel data access can be realized and the average access time can be shortened.

【0011】[0011]

【実施例】以下、図面を参照してこの発明の一実施例を
説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings.

【0012】図1は、この発明の一実施例を示す全体構
成図である。同図において、CPU10が接続されてい
るアドレスデータバス9には、k個のメモリアクセスコ
ントローラ2i(i=1,2,…,k)が並列に接続さ
れており、各メモリアクセスコントローラ2i(i=
1,2,…,k)には、データメモリ1i(i=1,
2,…,k)が接続されている。
FIG. 1 is an overall configuration diagram showing an embodiment of the present invention. In the figure, k memory access controllers 2i (i = 1, 2, ..., K) are connected in parallel to the address data bus 9 to which the CPU 10 is connected, and each memory access controller 2i (i =
1, 2, ..., K) has data memories 1i (i = 1, 1).
2, ..., K) are connected.

【0013】図2は、この発明によるメモリアクセスコ
ントローラ2i(i=1,2,…,k)の内部のブロッ
ク図であり、アドレスチェック回路3、アドレス予測回
路4、ライトバッファ5、リードバッファ6、ゲート7
a〜7d、ゲートコントローラ8で構成される。アドレ
スチェック回路3は、CPUからメモリアクセスコント
ローラ2iが受け取ったアドレスが、接続されているデ
ータメモリに割り当てられているか否かをチェックす
る。アドレス予測回路4は、以前のメモリリードアクセ
スにおけるアドレスから複数のアドレスを予測して、そ
のデータをデータメモリ1iからリードしてリードバッ
ファ6に記憶させ、予測したメモリアクセスアドレス
と、アドレスチェック回路3から入力された実際のメモ
リリード要求アドレスとを比較する。
FIG. 2 is a block diagram of the inside of the memory access controller 2i (i = 1, 2, ..., K) according to the present invention. The address check circuit 3, the address prediction circuit 4, the write buffer 5, and the read buffer 6 are shown. , Gate 7
a to 7d and a gate controller 8. The address check circuit 3 checks whether the address received by the memory access controller 2i from the CPU is assigned to the connected data memory. The address prediction circuit 4 predicts a plurality of addresses from the addresses in the previous memory read access, reads the data from the data memory 1i and stores the data in the read buffer 6, and the predicted memory access address and the address check circuit 3 The actual memory read request address input from is compared.

【0014】CPU10からアドレスデータバス9によ
って伝達されたメモリリード/ライト信号,アドレス
は、メモリアクセスコントローラ2i(i=1,2,
…,k)に入力される。各メモリアクセスコントローラ
2i内部のアドレスチェック回路3は、前記メモリリー
ド/ライトアドレスが、接続されているデータメモリ1
iに割り当てられているアドレスであるかを調べ、割り
当てられていれば、メモリリード信号であるかメモリラ
イト信号であるかを調べる。
The memory read / write signals and addresses transmitted from the CPU 10 via the address data bus 9 are stored in the memory access controller 2i (i = 1, 2,
..., k). The address check circuit 3 in each memory access controller 2i uses the data memory 1 to which the memory read / write address is connected.
Whether the address is assigned to i is checked, and if it is assigned, it is checked whether it is a memory read signal or a memory write signal.

【0015】メモリライト信号であった場合には、アド
レスチェック回路3はライトバッファ5内のデータの有
無を調べる。ライトバッファ5内にデータが無ければゲ
ート7aを開き、CPU10からの(ライトすべき)デ
ータをライトバッファ5に入れる。ゲート7aを開いた
時点で、アドレスチェック回路3はCPU10にメモリ
ライト完了信号を返し、その後に、ライトバッファ5に
メモリライトアドレスを与える。ゲートコントローラ8
はゲート7cを開き、ライトバッファ5からデータメモ
リ1iに対してライトを実行する。ライトバッファ5内
にデータがすでに有る場合には(それ以前のメモリライ
ト信号による)メモリライト中と判断し、ウエイトす
る。
If it is a memory write signal, the address check circuit 3 checks whether or not there is data in the write buffer 5. If there is no data in the write buffer 5, the gate 7a is opened and the data (to be written) from the CPU 10 is put in the write buffer 5. At the time when the gate 7a is opened, the address check circuit 3 returns a memory write completion signal to the CPU 10, and then gives the memory write address to the write buffer 5. Gate controller 8
Opens the gate 7c and executes the write from the write buffer 5 to the data memory 1i. When the data already exists in the write buffer 5, it is determined that the memory is being written (by the memory write signal before that), and the wait is performed.

【0016】メモリリード信号であった場合には、アド
レスチェック回路3はCPU10からのメモリリードア
ドレスをアドレス予測回路4に送る。アドレス予測回路
4においては、このメモリリード信号が発生する前に以
前のアドレス値から複数のアドレスを予測し、それに基
づいてゲートコントローラ8はゲート7dを開き、それ
らの予測したアドレスのデータをリードバッファ6内に
フェッチしておく。
If it is a memory read signal, the address check circuit 3 sends the memory read address from the CPU 10 to the address prediction circuit 4. In the address prediction circuit 4, a plurality of addresses are predicted from the previous address value before the memory read signal is generated, and the gate controller 8 opens the gate 7d on the basis of the predicted addresses to read the data at the predicted addresses in the read buffer. Fetch in 6

【0017】アドレス予測回路4においては、CPU1
0からのメモリリード要求アドレスと予測しておいたア
ドレスを比較して、一致するものがあれば、リードバッ
ファ6内に格納されている一致アドレス内のデータを、
ゲート7bを開いてCPU10に送る。一致するアドレ
スが無い場合には、ゲートコントローラ8はゲート7d
を開き、CPU10から受け取ったメモリリードアドレ
スのデータをデータメモリ1iからリードして、リード
バッファ6内にフェッチした後CPU10に送る。
In the address prediction circuit 4, the CPU 1
The memory read request address from 0 is compared with the predicted address, and if there is a match, the data in the match address stored in the read buffer 6 is
The gate 7b is opened and sent to the CPU 10. If there is no matching address, the gate controller 8 determines the gate 7d.
Is opened, the data of the memory read address received from the CPU 10 is read from the data memory 1i, fetched into the read buffer 6, and then sent to the CPU 10.

【0018】このようにしてデータをCPU10に送っ
た後は、アドレス予測回路4は次のメモリリードアドレ
スを予測し、そのアドレス内のデータをフェッチしてリ
ードバッファ6内に格納しておく。次に、この発明によ
る具体的なアクセス例を示す。
After sending the data to the CPU 10 in this way, the address prediction circuit 4 predicts the next memory read address, fetches the data in that address, and stores it in the read buffer 6. Next, a specific access example according to the present invention will be shown.

【0019】k×n個の配列データd(i,j)のリー
ド/ライトの例を説明する。d(1,1),d(2,
1),…,d(k−1,n),d(k,n)の順にアク
セスするものとする。
An example of reading / writing k × n array data d (i, j) will be described. d (1,1), d (2,
1), ..., D (k-1, n), d (k, n) are accessed in this order.

【0020】d(i,j)(j=1,2,…,n)をデ
ータメモリ1iに格納するとする。いま、ライトバッフ
ァ5からデータメモリ1iへのライトに要する時間をt
w、アドレスチェック回路3がアドレスをチェックして
ライトバッファ5にアドレスを与えるまでの時間をta
とする。このとき、 ta<tw/k であれば、k個のデータメモリ1iすべてが並列にライ
トを実行して、すべてのデータのライトは(ta+t
w)×(n+1)以下の時間で終了する。
It is assumed that d (i, j) (j = 1, 2, ..., N) is stored in the data memory 1i. Now, the time required for writing from the write buffer 5 to the data memory 1i is t
w, the time until the address check circuit 3 checks the address and gives the address to the write buffer 5 is ta
And At this time, if ta <tw / k, all k data memories 1i execute write in parallel, and all data are written (ta + t
w) × (n + 1) or less.

【0021】次に、データメモリ1iにライトされたk
×n個の配列データd(i,j)を、d(1,1),d
(2,1),…,d(k−1,n),d(k,n)の順
にリードするものとする。
Next, k written in the data memory 1i
Xn array data d (i, j) is converted into d (1,1), d
(2, 1), ..., D (k-1, n), and d (k, n) are read in this order.

【0022】リードの場合、アドレス予測をアドレスの
差分で行なうようにする。このとき、最初の予測アドレ
スがすべてのメモリアクセスコントローラ2iで得られ
るまでに要する時間が、(ta+tw)×k×2で、そ
の後、ライトの場合と同様の並列動作により(ta+t
w)×(n−1)以下の時間ですべてのリードを終了す
る。
In the case of reading, the address prediction is performed by the difference between the addresses. At this time, the time required until the first predicted address is obtained by all the memory access controllers 2i is (ta + tw) × k × 2, and after that, by the same parallel operation as in the case of writing, (ta + t)
All reads are completed in a time of w) × (n−1) or less.

【0023】[0023]

【発明の効果】以上詳記したようにこの発明によれば、
CPUからの次のメモリリードアクセス要求アドレスを
予測し、データを先読みし保持しておく手段と、CPU
からのメモリライトアクセス要求時においては、ライト
すべきアドレスを受け取った時点で、ライト完了の信号
を返し、その後にライトを実行する手段を備えることに
より、画像データなどの広域なデータ領域にアクセスす
る処理の場合にも、平均メモリアクセス時間を小さくす
ることができる。
As described above in detail, according to the present invention,
Means for predicting the next memory read access request address from the CPU, prefetching and holding the data, and the CPU
When a memory write access request is issued from the device, a write completion signal is returned when the address to be written is received, and a means for executing the write after that is provided to access a wide-area data area such as image data. Also in the case of processing, the average memory access time can be shortened.

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

【図1】この発明の一実施例に係る高速アクセス記憶装
置の構成図。
FIG. 1 is a configuration diagram of a high speed access storage device according to an embodiment of the present invention.

【図2】同実施例におけるメモリアクセスコントローラ
の詳細を示す回路構成図。
FIG. 2 is a circuit configuration diagram showing details of a memory access controller in the embodiment.

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

1…データメモリ、2…メモリアクセスコントローラ、
3…アドレスチェック回路、4…アドレス予測回路、5
…ライトバッファ、6…リードバッファ、7…ゲート、
8…ゲートコントローラ、10…CPU。
1 ... data memory, 2 ... memory access controller,
3 ... Address check circuit, 4 ... Address prediction circuit, 5
... write buffer, 6 ... read buffer, 7 ... gate,
8 ... Gate controller, 10 ... CPU.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 並列動作を実行するn(n≧2)個のデ
ータメモリと、それらのデータメモリに対し、CPUか
らのメモリアクセス要求を受けて並列リード/ライトを
制御するメモリアクセスコントローラとを備え、 メモリアクセスコントローラは、CPUからの次のメモ
リリードアクセス要求アドレスを予測して、複数の予測
されたアドレスのデータを予めメモリから読み出して記
憶する手段と、 CPUからのメモリリードアクセス要求アドレスと、こ
れら記憶された予測されたアドレスとを比較して、一致
した予測アドレスのデータをCPUに対して出力させ、
一致しない場合にのみメモリからそのアドレスのデータ
を読み出す手段とを備えていることを特徴とする高速ア
クセス記憶装置。
1. An n (n ≧ 2) number of data memories that execute parallel operations, and a memory access controller that controls the parallel read / write in response to a memory access request from the CPU for these data memories. The memory access controller includes means for predicting a next memory read access request address from the CPU, preliminarily reading and storing data of a plurality of predicted addresses from the memory, and a memory read access request address from the CPU. , Comparing these stored predicted addresses and causing the CPU to output the data of the matching predicted address,
A high-speed access storage device comprising means for reading the data of the address from the memory only when they do not match.
JP3211751A 1991-08-23 1991-08-23 High-speed access storage device Withdrawn JPH0553908A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3211751A JPH0553908A (en) 1991-08-23 1991-08-23 High-speed access storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3211751A JPH0553908A (en) 1991-08-23 1991-08-23 High-speed access storage device

Publications (1)

Publication Number Publication Date
JPH0553908A true JPH0553908A (en) 1993-03-05

Family

ID=16610982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3211751A Withdrawn JPH0553908A (en) 1991-08-23 1991-08-23 High-speed access storage device

Country Status (1)

Country Link
JP (1) JPH0553908A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065477B2 (en) 2008-03-21 2011-11-22 Toshiba Storage Device Corporation Disk apparatus and advance data reading method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065477B2 (en) 2008-03-21 2011-11-22 Toshiba Storage Device Corporation Disk apparatus and advance data reading method

Similar Documents

Publication Publication Date Title
US5265236A (en) Method and apparatus for increasing the speed of memory access in a virtual memory system having fast page mode
US5251310A (en) Method and apparatus for exchanging blocks of information between a cache memory and a main memory
JP2003504757A (en) Buffering system bus for external memory access
JP3641031B2 (en) Command device
JPH08185355A (en) Data memory and its operating method
US5012410A (en) Data processor with instruction cache memory
KR960007833B1 (en) Method and apparatus for fast page mode selection
JPH0553908A (en) High-speed access storage device
JP3145545B2 (en) Memory access device
US5896505A (en) Data transfer system and method for dividing an original data read instruction into individual read demands for each data element
JP2851777B2 (en) Bus control method and information processing device
JPH09319657A (en) Processor provided with buffer for reading instruction
JPH0210450A (en) Prefetch control system for cache memory
JP2762798B2 (en) Information processing apparatus of pipeline configuration having instruction cache
JPH03116345A (en) Data processor
JP2502406B2 (en) Storage control system and data processing device
JPH06274415A (en) Shared memory system
JP2001154845A (en) Memory bus access control system after cache miss
JPS6391756A (en) Partial write instruction processing system for storage device
JPH07141174A (en) Register
JP2000259495A (en) Cache memory control method and multiprocessor system
JPH01211395A (en) Ic memory
JPH0528414B2 (en)
JPH04219843A (en) Store system of instruction cache
JPH04242431A (en) Information processor

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: 19981112