JPH06243037A - Data look-ahead device - Google Patents

Data look-ahead device

Info

Publication number
JPH06243037A
JPH06243037A JP5028821A JP2882193A JPH06243037A JP H06243037 A JPH06243037 A JP H06243037A JP 5028821 A JP5028821 A JP 5028821A JP 2882193 A JP2882193 A JP 2882193A JP H06243037 A JPH06243037 A JP H06243037A
Authority
JP
Japan
Prior art keywords
data
address
buffer memory
memory
storage device
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
JP5028821A
Other languages
Japanese (ja)
Inventor
Hiroshi Okamoto
弘 岡本
Kaoru Abe
薫 阿部
Yasushi Sekine
泰 関根
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 Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5028821A priority Critical patent/JPH06243037A/en
Publication of JPH06243037A publication Critical patent/JPH06243037A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To provide a data look-ahead device where the number of access times from a processor is small in the data look-ahead device used in a multi- processor system sharing a storage device. CONSTITUTION:A buffer memory 6 accumulating data which are read out for each of blocks which are previously set from an external storage device, a buffer address memory 8 accumulating the address of data stored in the buffer memory 6 and a specified address memory 9 accumulating a part of address in data stored in the buffer memory 6 are provided. When the processor 1 reads out data corresponding to the address accumulated in the specified address memory 9 from the buffer memory 6, a memory management part 7 invalidates the buffer memory 6. Since the data look-ahead device invalidates the buffer memory by itself by access to the specified address, the processor 1 need not give a buffer memory invalidating instruction. Then, the number of the access times of the processor 1 is reduced and a high speed operation becomes possible.

Description

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

【0001】[0001]

【産業上の利用分野】この発明は、複数のプロセッサ
と、これらからアクセスされる記憶装置からなるシステ
ムにおいて、プロセッサが記憶装置からデータを読み出
すときに、データを先読みしてバッファメモリに格納
し、プロセッサのデータ読み出しを効率的に行うための
データ先読み装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system comprising a plurality of processors and a storage device accessed from them, and when the processor reads data from the storage device, the data is prefetched and stored in a buffer memory, The present invention relates to a data prefetching device for efficiently reading data from a processor.

【0002】[0002]

【従来の技術】図6は、従来のデータ先読み装置の構成
及びデータ先読み装置とプロセッサ、記憶装置との接続
を示す図である。図6において、1a,bはプロセッ
サ、2a,bはプロセッサ1a,bにそれぞれ接続され
るデータ先読み装置、3はデータ先読み装置2a,bが
接続される共通バス、4はデータ先読み装置2a,b、
共通バス3経由でプロセッサ1a,bからアクセスされ
る記憶装置、5はプロセッサ1a,bにそれぞれに接続
され、複数のプロセッサ1a,b間で記憶装置4へのア
クセス権を制御する排他制御機構、6a,bはデータ先
読み装置2を構成するバッファメモリ、7a,bはデー
タ先読み装置2を構成し、バッファメモリ6a,bの制
御を行うバッファメモリ管理部、8a,bはデータ先読
み装置2a,bを構成し、バッファメモリ6a,bに記
憶されている記憶装置4のデータのアドレスを格納する
バッファアドレスメモリである。
2. Description of the Related Art FIG. 6 is a diagram showing a configuration of a conventional data prefetching device and connections between the data prefetching device, a processor, and a storage device. In FIG. 6, 1a and b are processors, 2a and b are data read-ahead devices respectively connected to the processors 1a and b, 3 is a common bus to which the data read-ahead devices 2a and b are connected, and 4 is a data read-ahead device 2a, b. ,
The storage devices 5 accessed from the processors 1a and b via the common bus 3 are connected to the processors 1a and 1b, respectively, and an exclusive control mechanism for controlling access right to the storage device 4 among the plurality of processors 1a and b, Reference numerals 6a and 6b are buffer memories constituting the data pre-reading device 2, 7a and b are constituents of the data pre-reading device 2, and buffer memory managers for controlling the buffer memories 6a and 6b are provided. 8a and 8b are data pre-reading devices 2a and b. And a buffer address memory for storing the address of the data of the storage device 4 stored in the buffer memories 6a and 6b.

【0003】次に動作について説明する。データ先読み
装置とは、複数のプロセッサ間の通信を行うために、記
憶装置の一部(通信するための領域)のデータを、あら
かじめ一括してバッファメモリに蓄える装置である。
Next, the operation will be described. The data read-ahead device is a device that stores a part of the data (area for communication) of the storage device in advance in a buffer memory in order to perform communication between a plurality of processors.

【0004】プロセッサ1a,bのいずれかが記憶装置
4をアクセスするとき、まず排他的制御機構5により、
記憶装置4の使用権を獲得する。獲得できない場合は、
獲得できるまで待つことになる。
When any of the processors 1a and 1b accesses the storage device 4, first, the exclusive control mechanism 5
Acquire the right to use the storage device 4. If not,
I will wait until I can get it.

【0005】プロセッサ1aが使用権を獲得した場合、
プロセッサ1aはデータ先読み装置2aを経由して記憶
装置4をアクセスするが、データ先読み装置2aのバッ
ファメモリ6aに格納されているデータは、他のプロセ
ッサ1bにより記憶装置4のデータが書き換えられるた
め、記憶装置4内の現在のデータと異なっていることが
ある。
When the processor 1a acquires the usage right,
The processor 1a accesses the storage device 4 via the data prefetching device 2a, but the data stored in the buffer memory 6a of the data prefetching device 2a is rewritten by the other processor 1b. It may be different from the current data in the storage device 4.

【0006】そこで、プロセッサ1aはバッファメモリ
6aの無効化を行う。無効化とは、メモリを初期化する
ことであり、例えばデータが有効であることを示すフラ
グを0にすることである。バッファメモリ6aの無効化
を行った後、記憶装置4へのリードアクセスを行い、終
了すると排他制御権を解放する。
Therefore, the processor 1a invalidates the buffer memory 6a. To invalidate means to initialize the memory, for example, to set a flag indicating that the data is valid to 0. After invalidating the buffer memory 6a, read access to the storage device 4 is performed, and the exclusive control right is released when the read access is completed.

【0007】[0007]

【発明が解決しようとする課題】従来のデータ先読み装
置においては、上記のようにデータ先読み装置2aのバ
ッファメモリ6aの無効化を行うために、プロセッサ1
aがデータ先読み装置2aに無効化を命令する必要があ
り、そのため、プロセッサ1aからデータ先読み装置2
aへのアクセス回数が増えるという問題があった。
In the conventional data prefetching apparatus, the processor 1 is used to invalidate the buffer memory 6a of the data prefetching apparatus 2a as described above.
a needs to instruct the data prefetching device 2a to invalidate, so that the data prefetching device 2 is transferred from the processor 1a.
There is a problem that the number of times of access to a increases.

【0008】例えば、データ先読み装置2aに対して4
バイト単位でアクセスするプロセッサ1aが、共通バス
3を経由して、記憶装置4のアドレス0番地から16バ
イトリードを行う場合を例にとり説明する。
For example, for the data prefetching device 2a, 4
An example will be described in which the processor 1a, which accesses in byte units, reads 16 bytes from the address 0 of the storage device 4 via the common bus 3.

【0009】図7に示すように、 (1) 排他制御によるアクセス権を獲得する。 (2) バッファメモリを無効化する。 (3) 記憶装置(アドレス0)の4バイトをリードする
(バッファミスヒット) (4) 記憶装置からバッファメモリへデータを転送する。 (5) 記憶装置(アドレス4)の4バイトをリードする。 (6) 記憶装置(アドレス8)の4バイトをリードする。 (7) 記憶装置(アドレス12)の4バイトをリードす
る。 (8) 排他制御権の解放 の順序でアドレス0番地からの16バイトリード処理を
行う。
As shown in FIG. 7, (1) an access right is acquired by exclusive control. (2) Disable the buffer memory. (3) Read 4 bytes of the storage device (address 0) (buffer miss) (4) Transfer data from the storage device to the buffer memory. (5) Read 4 bytes from the storage device (address 4). (6) Read 4 bytes from the storage device (address 8). (7) Read 4 bytes of the storage device (address 12). (8) 16-byte read processing from address 0 is performed in the order of releasing the exclusive control right.

【0010】図7の場合、プロセッサ1aからデータ先
読み装置2aへのアクセス回数は、上記(2) 、(3) 、
(5) 、(6) 、(7) の計5回である。少量のデータを頻繁
にアクセスする場合、これらのアクセスによりオーバー
ヘッドが生じ、処理性能の低下を招くことになる。
In the case of FIG. 7, the number of times of access from the processor 1a to the data prefetching device 2a is as follows (2), (3),
(5), (6), and (7) a total of 5 times. When a small amount of data is frequently accessed, these accesses cause an overhead, resulting in deterioration of processing performance.

【0011】この発明は、上記のような問題点を解決す
るためになされたものであり、複数のプロセッサ間でデ
ータ交信を行う記憶装置の領域のうち、あらかじめ一部
のアドレスを特定アドレスとして設定しておき、この特
定アドレスへのリードアクセスにより、データ先読み装
置自身がデータバッファを無効化し、プロセッサからデ
ータ先読み装置へのアクセス回数を減らすことを目的と
する。
The present invention has been made in order to solve the above problems, and sets a part of addresses in advance as a specific address in an area of a storage device for performing data communication between a plurality of processors. The read access to the specific address is intended to reduce the number of accesses from the processor to the data prefetching device by invalidating the data buffer by the data prefetching device itself.

【0012】[0012]

【課題を解決するための手段】請求項1に係る発明は、
外部の記憶装置から予め設定されたブロックごとに読み
出されたデータを蓄えるバッファメモリと、上記バッフ
ァメモリに格納されたデータのアドレスを蓄える第1の
アドレスメモリと、上記バッファメモリに格納されたデ
ータのアドレスのうち予め定められた一部を蓄える第2
のアドレスメモリと、上記バッファメモリを管理するメ
モリ管理手段とを備え、上記第2のアドレスメモリに蓄
えられているアドレスに対応するデータが、上記バッフ
ァメモリから読み出されるとき、上記バッファメモリの
内容を無効にするものである。
The invention according to claim 1 is
A buffer memory for storing the data read from the external storage device for each preset block, a first address memory for storing the address of the data stored in the buffer memory, and data stored in the buffer memory Second part of a predetermined part of the address of the
Address memory and memory management means for managing the buffer memory, and when the data corresponding to the address stored in the second address memory is read from the buffer memory, the contents of the buffer memory are It invalidates.

【0013】請求項2に係る発明は、外部の記憶装置か
ら予め設定されたブロックごとに読み出されたデータを
蓄えるバッファメモリと、上記バッファメモリに格納さ
れたデータのアドレスを蓄える第1のアドレスメモリ
と、上記バッファメモリに格納されたデータのアドレス
のうち予め定められた一部を蓄える第2のアドレスメモ
リと、上記バッファメモリを管理するメモリ管理手段と
を備え、上記バッファメモリの容量を、外部の記憶装置
から読み出すデータのブロックの大きさと同等にしたも
のである。
According to a second aspect of the present invention, there is provided a buffer memory for storing data read from an external storage device for each preset block, and a first address for storing an address of the data stored in the buffer memory. A memory, a second address memory that stores a predetermined part of the address of the data stored in the buffer memory, and a memory management unit that manages the buffer memory. This is equivalent to the size of a block of data read from an external storage device.

【0014】請求項3に係る発明は、第2のアドレスメ
モリに蓄えられているアドレスに対応するデータ以外の
データが、上記バッファメモリから読み出されるとき、
上記バッファメモリの内容を無効にする要求を受けつけ
るものである。
According to a third aspect of the invention, when data other than the data corresponding to the address stored in the second address memory is read from the buffer memory,
It accepts a request to invalidate the contents of the buffer memory.

【0015】[0015]

【作用】請求項1に係る発明において、メモリ管理手段
が、第2のアドレスメモリに蓄えられているアドレスに
対応するデータが、バッファメモリから読み出されるこ
とを検知することにより、データ先読み装置自身がバッ
ファメモリの内容を無効化し、データ転送を行う。
According to the first aspect of the invention, the memory management means detects that the data corresponding to the address stored in the second address memory is read from the buffer memory. Invalidates the contents of the buffer memory and transfers data.

【0016】請求項2に係る発明において、バッファメ
モリの無効化を行わず、データの転送のみを行う。
In the second aspect of the invention, the buffer memory is not invalidated, and only the data transfer is performed.

【0017】請求項3に係る発明において、メモリ管理
手段が、第2のアドレスメモリに蓄えられているアドレ
スに対応するデータが、バッファメモリから読み出され
ることを検知することにより、データ先読み装置自身が
バッファメモリの内容を無効にするとともに、第2のア
ドレスメモリに蓄えられているアドレスに対応するデー
タ以外のデータが、上記バッファメモリから読み出され
るときには、バッファメモリの内容を無効にする要求を
受けつけることにより、無効化を行う。
In the invention according to claim 3, the memory management means detects that the data corresponding to the address stored in the second address memory is read from the buffer memory, whereby the data prefetching device itself is To invalidate the contents of the buffer memory and to accept a request to invalidate the contents of the buffer memory when data other than the data corresponding to the address stored in the second address memory is read from the buffer memory. To invalidate.

【0018】[0018]

【実施例】【Example】

実施例1 以下、この発明の一実施例について図を用いて説明す
る。図1は、この発明にかかわるデータ先読み装置の構
成及びデータ先読み装置とプロセッサ、記憶装置との接
続を示す図である。図1において、1a,bはプロセッ
サ、2a,bはプロセッサ1a,bにそれぞれ接続され
るデータ先読み装置、3はデータ先読み装置2a,bが
接続される共通バス、4はデータ先読み装置2a,b、
共通バス3経由でプロセッサ1a,bからアクセスされ
る記憶装置、5はプロセッサ1a,bに接続され、複数
のプロセッサ1a,b間で記憶装置4へのアクセス権を
制御する排他制御機構、6a,bはデータ先読み装置2
a,bを構成し、記憶装置4からのデータを蓄えるバッ
ファメモリ、7a,bはデータ先読み装置2a,bを構
成し、バッファメモリ6a,bの制御を行うバッファメ
モリ管理部、8a,bはデータ先読み装置2a,bを構
成し、バッファメモリ6a,bに記憶されている記憶装
置4のデータのアドレスを格納するバッファアドレスメ
モリ、9a,bは特定アドレスを格納する特定アドレス
メモリである。
Embodiment 1 An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing a configuration of a data prefetching device according to the present invention and a connection between the data prefetching device, a processor, and a storage device. In FIG. 1, 1a and b are processors, 2a and b are data pre-reading devices connected to the processors 1a and 1b, 3 is a common bus to which the data pre-reading devices 2a and 2b are connected, and 4 is data pre-reading devices 2a and 2b. ,
A storage device 5, which is accessed from the processors 1a and b via the common bus 3, is connected to the processors 1a and b, and an exclusive control mechanism for controlling access right to the storage device 4 among the plurality of processors 1a and b, 6a, b is the data prefetching device 2
a and b are buffer memories that store data from the storage device 4, 7a and b are data look-ahead devices 2a and b, and a buffer memory management unit that controls the buffer memories 6a and b, and 8a and b are A buffer address memory that configures the data prefetching devices 2a and 2b and stores an address of data of the storage device 4 stored in the buffer memories 6a and 6b, and 9a and 9b are specific address memories that store specific addresses.

【0019】次に動作について説明する。図2にプロセ
ッサのリード処理の概要を示す。 (1) プロセッサ1a,bのいずれかが記憶装置4をアク
セスするとき、まず排他的制御機構5により、記憶装置
4の使用権を獲得する。獲得できない場合は、獲得でき
るまで待つことになる。
Next, the operation will be described. FIG. 2 shows an outline of the read processing of the processor. (1) When any of the processors 1a and 1b accesses the storage device 4, first, the exclusive control mechanism 5 acquires the right to use the storage device 4. If you cannot get it, you will have to wait until you can get it.

【0020】(2) プロセッサ1aが使用権を獲得した場
合、プロセッサ1aはデータ先読み装置2aを経由して
記憶装置4をアクセスする。データのリードはデータブ
ロックの特定アドレスを基準にして規則的に行われるの
で、プロセッサ1aはまず特定アドレスのデータから読
むことになる。ここで特定アドレスは、一定の大きさ
の、例えば16バイトバウンダリーのデータブロックご
とに、例えば先頭、末尾のアドレスをいう。
(2) When the processor 1a acquires the usage right, the processor 1a accesses the storage device 4 via the data prefetching device 2a. Since data is regularly read based on the specific address of the data block, the processor 1a first reads from the data of the specific address. Here, the specific address refers to, for example, a leading address and an ending address for each data block of a fixed size, for example, a 16-byte boundary.

【0021】(3) しかし、データ先読み装置2aのバッ
ファメモリ6aに格納されているデータは、他のプロセ
ッサ1bにより記憶装置4のデータが書き換えられるた
め、記憶装置4内の現在のデータをリードしバッファメ
モリ6aに格納する。 (4) (1) で獲得した制御権を解放する。
(3) However, since the data stored in the buffer memory 6a of the data prefetching device 2a is rewritten by the other processor 1b, the current data in the storage device 4 is read. It is stored in the buffer memory 6a. (4) Release the control right acquired in (1).

【0022】ところで、上記(2) において、バッファメ
モリ6aのデータの無効化(初期化)をする必要がある
が、この発明のデータ先読み装置は、バッファメモリの
無効化の条件として、「アクセスしたアドレスのデータ
がバッファメモリにない」ということだけでなく、「特
定アドレスへのリードである」という条件を追加するこ
とにより、プロセッサのデータ先読み装置に対するバッ
ファメモリの無効化を明示的に行う必要がなくなる。
By the way, in the above (2), it is necessary to invalidate (initialize) the data in the buffer memory 6a. However, the data read-ahead device of the present invention uses "accessed" as a condition for invalidating the buffer memory. It is necessary to explicitly invalidate the buffer memory for the data read-ahead device of the processor by adding not only "the data of the address is not in the buffer memory" but also the condition of "reading to a specific address". Disappear.

【0023】つまり、この発明にかかわるデータ先読み
装置においては、データ先読み装置2a自身が自動的に
バッファメモリ6aの無効化を行うため、プロセッサ1
aがデータ先読み装置2aに無効化を命令する必要がな
く、そのため、プロセッサ1aからデータ先読み装置2
aへのアクセス回数の増加を抑えることができる。
In other words, in the data prefetching apparatus according to the present invention, the data prefetching apparatus 2a itself automatically invalidates the buffer memory 6a, so that the processor 1
It is not necessary for a to instruct the data prefetching device 2a to invalidate, so that the data prefetching device 2a
It is possible to suppress an increase in the number of accesses to a.

【0024】次に具体例を用いて、上記の動作をさらに
詳細に説明する。例えば、データ先読み装置2aに対し
て4バイト単位でアクセスするプロセッサ1aが、共通
バス3を経由して、記憶装置4のデータブロックのアド
レス0番地から16バイトリードを行うものとする。
Next, the above operation will be described in more detail using a specific example. For example, it is assumed that the processor 1a, which accesses the data prefetching device 2a in units of 4 bytes, reads 16 bytes from the address 0 of the data block of the storage device 4 via the common bus 3.

【0025】図3に示すように、以下のステップにした
がって処理される。 (1) 排他制御によるアクセス権を獲得する。 (2) 記憶装置(アドレス0)の4バイトをリードする。 プロセッサ1aは、データ先読み装置2aに対して記憶
装置4のアドレス0番地への4バイトリードを行うが、
0番地はブロックの先頭アドレスであって、特定アドレ
スであるから、バッファメモリ管理部7aがこのことを
検知し、バッファメモリ6aの無効化を行う。無効化
は、例えばメモリの初期化、データが有効であることを
示すフラグを0にすることにより行う。このことによ
り、プロセッサ1aはアドレス0のデータを読むことが
できなくなる(バッファミスヒット)ため、次に示すよ
うに記憶装置4からデータをリードする。
As shown in FIG. 3, processing is performed according to the following steps. (1) Acquire an access right by exclusive control. (2) Read 4 bytes of the storage device (address 0). The processor 1a performs a 4-byte read to the address 0 of the storage device 4 with respect to the data prefetch device 2a.
Since address 0 is the start address of the block and is a specific address, the buffer memory management unit 7a detects this and invalidates the buffer memory 6a. The invalidation is performed, for example, by initializing the memory and setting a flag indicating that the data is valid to 0. As a result, the processor 1a cannot read the data at the address 0 (buffer miss), so that the data is read from the storage device 4 as shown below.

【0026】(3) 記憶装置4からバッファメモリ6aへ
データを転送する。 バッファメモリ管理部7aは、共通バス3を経由して記
憶装置4に対してアドレス0番地から16バイト分先読
みを行う。すなわち、図5に示すように記憶装置4のア
ドレスマップ12に定義されたプロセッサ間の通信のた
めの領域である一部の領域14(データブロック)をバ
ッファメモリへ転送することにより、記憶装置4の領域
14はバッファメモリ6aの内容11になる。なお領域
13は記憶装置4の領域12に設けられた、領域14を
おくことのできる領域である。図5では領域14は先頭
(0番地)に置かれている。
(3) Data is transferred from the storage device 4 to the buffer memory 6a. The buffer memory management unit 7a prefetches 16 bytes from the address 0 to the storage device 4 via the common bus 3. That is, as shown in FIG. 5, by transferring a partial area 14 (data block), which is an area for communication between processors defined in the address map 12 of the storage device 4, to the buffer memory, The area 14 of becomes the content 11 of the buffer memory 6a. The area 13 is an area provided in the area 12 of the storage device 4 in which the area 14 can be provided. In FIG. 5, the area 14 is placed at the head (address 0).

【0027】このとき、バッファアドレスメモリ8aに
は、バッファメモリ6aに格納された内容11に対応し
てバッファアドレスが設定される。すなわち、図4に示
すように、ブロックの大きさは16バイトであり、4バ
イトごとにデータを読み込むことに対応して、アドレス
0、4、8、12がセットされる。また、ブロックの大
きさが32バイト以上のときには、上記のアドレスに加
え、アドレス16、20・・・が設定される。このう
ち、図中のアドレス0及びアドレス16は特定アドレス
である。なお図4、5において、アドレスは16進表記
である。データ転送完了後、プロセッサ1aはアドレス
0から4バイト(図4の15の領域)をリードする。
At this time, the buffer address is set in the buffer address memory 8a corresponding to the contents 11 stored in the buffer memory 6a. That is, as shown in FIG. 4, the size of the block is 16 bytes, and addresses 0, 4, 8, and 12 are set in correspondence with reading of data every 4 bytes. When the block size is 32 bytes or more, addresses 16, 20, ... Are set in addition to the above addresses. Of these, address 0 and address 16 in the figure are specific addresses. In FIGS. 4 and 5, the address is in hexadecimal notation. After the data transfer is completed, the processor 1a reads 4 bytes (15 area in FIG. 4) from the address 0.

【0028】(4) 記憶装置(アドレス4)の4バイトを
リードする。 プロセッサ1aが、アドレス4番地への4バイトのリー
ドを行うと、バッファメモリ管理部7aは、バッファア
ドレスメモリ8aにアドレス4が書かれていることから
バッファヒットしたことを知り、記憶装置4へのアクセ
スは行わず、バッファメモリ6aのアドレス4番地に相
当するデータをプロセッサ1に返す。
(4) Read 4 bytes of the storage device (address 4). When the processor 1a reads 4 bytes to the address 4, the buffer memory management unit 7a knows that the buffer 4 has been hit because the address 4 is written in the buffer address memory 8a, and the buffer memory management unit 7a writes to the storage device 4. No access is performed and the data corresponding to the address 4 of the buffer memory 6a is returned to the processor 1.

【0029】(5) 記憶装置(アドレス8)の4バイトを
リードする。 アドレス4番地におけるリードと同様である。 (6) 記憶装置(アドレス12)の4バイトをリードす
る。 アドレス4番地におけるリードと同様である。 (7) 排他制御権の解放 排他制御機構5にて排他制御権を解放し、他のプロセッ
サに使用権を譲る。
(5) Read 4 bytes of the storage device (address 8). This is the same as the read at the address 4. (6) Read 4 bytes from the storage device (address 12). This is the same as the read at the address 4. (7) Release of exclusive control right The exclusive control mechanism 5 releases the exclusive control right and transfers the usage right to another processor.

【0030】図3の場合、プロセッサ1aからデータ先
読み装置2aへのアクセス回数は、上記(2) 、(4) 、
(5) 、(6) の計4回であり、データ無効命令が不要にな
るため、従来のデータ先読み装置に比べ1回減少する。
プロセッサ1bの場合も同様である。
In the case of FIG. 3, the number of accesses from the processor 1a to the data prefetching device 2a is the same as the above (2), (4),
This is a total of 4 times of (5) and (6), and since the data invalid instruction is not necessary, it is reduced once compared to the conventional data prefetching device.
The same applies to the case of the processor 1b.

【0031】バッファメモリ6aからの読み込み動作は
以上の通りであるが、書き込み動作については、プロセ
ッサ1aは、データをバッファメモリ6aに書き込むと
ともに、記憶装置4にも書き込むストアスルー方式で行
われる。もっとも、この方式に限らず、書き込み動作は
ストアイン方式でもよい。
The read operation from the buffer memory 6a is as described above, but the write operation is performed by the processor 1a by the store-through method of writing the data in the buffer memory 6a and also in the storage device 4. However, the write operation is not limited to this method and may be a store-in method.

【0032】なお、特定アドレスはプロセッサ1a,1
b、データ先読み装置2a,2bごとに異なっていても
よい。またプロセッサは3以上であってもよい。
The specific address is the processor 1a, 1
b, the data read-ahead devices 2a and 2b may be different. Further, the number of processors may be three or more.

【0033】実施例2 なお、上記の例では、バッファメモリのサイズが先読み
データのサイズより大きいが、バッファメモリのサイズ
を先読みのデータブロックのサイズと等しく設定しても
よく、この場合、バッファメモリの無効化という処理を
せずに、記憶装置からの先読みデータをセットし、バッ
ファアドレスの該当アドレスを登録するだけでよい。デ
ータ転送によって無効化と同様の効果が得られるからで
ある。
Embodiment 2 Although the size of the buffer memory is larger than the size of the prefetch data in the above example, the size of the buffer memory may be set to be equal to the size of the prefetch data block. It suffices to set the pre-read data from the storage device and register the corresponding address of the buffer address without performing the process of invalidating. This is because the same effect as invalidation can be obtained by data transfer.

【0034】例えば、データブロックが16バイトであ
るとき、バッファメモリ6a,6bのサイズを16バイ
トにしておく。そして、プロセッサ1aが特定アドレス
をリードすると、ただちに記憶装置4からバッファメモ
リ6aへデータ転送をするものとする。すると、バッフ
ァメモリ6aの内容はすべて最新の、記憶装置4の内容
と同一のものとなるから、バッファ6aの無効化する必
要はなくなる。
For example, when the data block is 16 bytes, the size of the buffer memories 6a and 6b is set to 16 bytes. Then, when the processor 1a reads the specific address, the data is transferred from the storage device 4 to the buffer memory 6a immediately. Then, since the contents of the buffer memory 6a are all the same as the latest contents of the storage device 4, it is not necessary to invalidate the buffer 6a.

【0035】この場合も、図3の場合と同様に、アクセ
ス回数は (2) 記憶装置(アドレス0)の4バイトリード 特定アドレスのアクセスにより、無効化せずにデータ転
送を行う。 (4) 記憶装置(アドレス4)の4バイトリード (5) 記憶装置(アドレス8)の4バイトリード (6) 記憶装置(アドレス12)の4バイトリード の計4回であり、従来のデータ先読み装置に比べ1回減
少する。
Also in this case, as in the case of FIG. 3, the number of accesses is (2) 4-byte read of the storage device (address 0), and data transfer is performed without invalidation by accessing a specific address. (4) 4-byte read of storage device (address 4) (5) 4-byte read of storage device (address 8) (6) 4-byte read of storage device (address 12): 4 times in total Reduces once compared to the device.

【0036】実施例3 また、上記の例では、プロセッサは、必ず特定アドレス
からアクセスするとしたが、特定アドレス以外の番地か
らアクセスされるときは、バッファメモリの内容を無効
化する要求のみ受けつける機能を持つことにより、プロ
セッサが特定アドレス以外をアクセスする場合にも対応
することができる。
Third Embodiment In the above example, the processor always accesses from a specific address, but when accessed from an address other than the specific address, it has a function of accepting only a request for invalidating the contents of the buffer memory. By having it, it is possible to deal with the case where the processor accesses other than a specific address.

【0037】[0037]

【発明の効果】以上のように、請求項1及び請求項3の
発明によれば、データ先読み装置内のバッファメモリの
無効化の命令を特定アドレスへのアクセスという形で実
現したので、プロセッサからデータ先読み装置へのアク
セス回数を減らすことができる。
As described above, according to the first and third aspects of the present invention, the instruction for invalidating the buffer memory in the data prefetching device is realized in the form of access to a specific address. The number of accesses to the data prefetching device can be reduced.

【0038】また、請求項2の発明によれば、データ先
読み装置内のバッファメモリの容量を、データブロック
の大きさと同等にしたので、無効化の命令が不要にな
り、プロセッサからデータ先読み装置へのアクセス回数
を減らすことができる。
Further, according to the invention of claim 2, since the capacity of the buffer memory in the data prefetching device is made equal to the size of the data block, the invalidation instruction is not necessary, and the processor reads data from the data prefetching device. It is possible to reduce the number of times of access.

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

【図1】この発明によるデータ先読み装置の一実施例を
示す図である。
FIG. 1 is a diagram showing an embodiment of a data prefetching device according to the present invention.

【図2】この発明によるプロセッサのリード処理の一実
施例を示す図である。
FIG. 2 is a diagram showing an embodiment of a read process of a processor according to the present invention.

【図3】この発明によるプロセッサのリード処理の一実
施例の詳細を示す図である。
FIG. 3 is a diagram showing details of an embodiment of a read process of the processor according to the present invention.

【図4】この発明によるバッファメモリのアドレスマッ
プの一例を示す図である。
FIG. 4 is a diagram showing an example of an address map of a buffer memory according to the present invention.

【図5】この発明による記憶装置のアドレスマップの一
例を示す図である。
FIG. 5 is a diagram showing an example of an address map of a storage device according to the present invention.

【図6】従来のデータ先読み装置を示す図である。FIG. 6 is a diagram showing a conventional data prefetching device.

【図7】従来のプロセッサのリード処理の詳細を示す図
である。
FIG. 7 is a diagram showing details of a read process of a conventional processor.

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

1 プロセッサ 2 データ先読み装置 3 共通バス 4 記憶装置 5 排他制御機構 6 バッファメモリ 7 バッファメモリ管理部 8 バッファアドレスメモリ 9 特定アドレスメモリ 1 Processor 2 Data Lookahead Device 3 Common Bus 4 Storage Device 5 Exclusive Control Mechanism 6 Buffer Memory 7 Buffer Memory Management Section 8 Buffer Address Memory 9 Specific Address Memory

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】外部の記憶装置から予め設定されたブロッ
クごとに読み出されたデータを蓄えるバッファメモリ
と、上記バッファメモリに格納されたデータのアドレス
を蓄える第1のアドレスメモリと、上記バッファメモリ
に格納されたデータのアドレスのうち予め定められた一
部を蓄える第2のアドレスメモリと、上記第2のアドレ
スメモリに蓄えられているアドレスに対応するデータ
が、上記バッファメモリから読み出されるとき、上記バ
ッファメモリの内容を無効にするとともに、上記外部の
記憶装置から上記バッファメモリへ上記ブロックごとに
データを転送するメモリ管理手段とを備えたことを特徴
とするデータ先読み装置。
1. A buffer memory for storing data read from an external storage device for each preset block, a first address memory for storing an address of the data stored in the buffer memory, and the buffer memory. A second address memory that stores a predetermined part of the address of the data stored in, and data corresponding to the address stored in the second address memory are read from the buffer memory, A data pre-reading device comprising: memory management means for invalidating the contents of the buffer memory and transferring data for each block from the external storage device to the buffer memory.
【請求項2】外部の記憶装置から予め設定されたブロッ
クごとに読み出されたデータを蓄え、上記ブロックの大
きさと同等の容量を持つバッファメモリと、上記バッフ
ァメモリに格納されたデータのアドレスを蓄える第1の
アドレスメモリと、上記バッファメモリに格納されたデ
ータのアドレスのうち予め定められた一部を蓄える第2
のアドレスメモリと、上記第2のアドレスメモリに蓄え
られているアドレスに対応するデータが、上記バッファ
メモリから読み出されるとき、上記外部の記憶装置から
上記バッファメモリへ上記ブロックごとにデータを転送
するメモリ管理手段とを備えたことを特徴とするデータ
先読み装置。
2. A buffer memory that stores data read from an external storage device for each preset block and stores a buffer memory having a capacity equivalent to the size of the block and an address of the data stored in the buffer memory. A first address memory for storing, and a second address memory for storing a predetermined part of the address of the data stored in the buffer memory.
Memory for transferring the data for each block from the external storage device to the buffer memory when the data corresponding to the addresses stored in the address memory and the second address memory are read from the buffer memory. A data prefetching device comprising: management means.
【請求項3】第2のアドレスメモリに蓄えられているア
ドレスに対応するデータ以外のデータが、上記バッファ
メモリから読み出されるとき、上記バッファメモリの内
容を無効にする要求を受けつけることを特徴とする請求
項1記載のデータ先読み装置。
3. When the data other than the data corresponding to the address stored in the second address memory is read from the buffer memory, it receives a request to invalidate the contents of the buffer memory. The data prefetching device according to claim 1.
JP5028821A 1993-02-18 1993-02-18 Data look-ahead device Pending JPH06243037A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5028821A JPH06243037A (en) 1993-02-18 1993-02-18 Data look-ahead device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5028821A JPH06243037A (en) 1993-02-18 1993-02-18 Data look-ahead device

Publications (1)

Publication Number Publication Date
JPH06243037A true JPH06243037A (en) 1994-09-02

Family

ID=12259069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5028821A Pending JPH06243037A (en) 1993-02-18 1993-02-18 Data look-ahead device

Country Status (1)

Country Link
JP (1) JPH06243037A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007080220A (en) * 2005-09-16 2007-03-29 Matsushita Electric Ind Co Ltd Memory control device
JP2007241612A (en) * 2006-03-08 2007-09-20 Matsushita Electric Ind Co Ltd Multi-master system
JP2008204292A (en) * 2007-02-21 2008-09-04 Toshiba Corp Memory management system
WO2011148552A1 (en) * 2010-05-25 2011-12-01 パナソニック株式会社 Cache controller and control method thereof
JP2012038293A (en) * 2010-08-11 2012-02-23 Primesense Ltd Multiprocessor system on-chip for machine vision

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007080220A (en) * 2005-09-16 2007-03-29 Matsushita Electric Ind Co Ltd Memory control device
US7516254B2 (en) 2005-09-16 2009-04-07 Panasonic Corporation Memory control apparatus
JP2007241612A (en) * 2006-03-08 2007-09-20 Matsushita Electric Ind Co Ltd Multi-master system
JP2008204292A (en) * 2007-02-21 2008-09-04 Toshiba Corp Memory management system
WO2011148552A1 (en) * 2010-05-25 2011-12-01 パナソニック株式会社 Cache controller and control method thereof
JP2012038293A (en) * 2010-08-11 2012-02-23 Primesense Ltd Multiprocessor system on-chip for machine vision

Similar Documents

Publication Publication Date Title
JP3587591B2 (en) Method of controlling cache miss and computer system thereof
KR100262906B1 (en) Data prefetch method and system
KR100240911B1 (en) Progressive data cache
US6338119B1 (en) Method and apparatus with page buffer and I/O page kill definition for improved DMA and L1/L2 cache performance
JP3016575B2 (en) Multiple cache memory access methods
JPS6336466A (en) Bus expander
JPH1055306A (en) Memory controller
US8621152B1 (en) Transparent level 2 cache that uses independent tag and valid random access memory arrays for cache access
US6345320B1 (en) DMA address buffer and cache-memory control system
JPH09160827A (en) Prefetch of cold cache instruction
US5367657A (en) Method and apparatus for efficient read prefetching of instruction code data in computer memory subsystems
JP3506024B2 (en) Information processing equipment
JP2000512050A (en) Microprocessor cache consistency
JP3515333B2 (en) Information processing equipment
US7685372B1 (en) Transparent level 2 cache controller
JPH06243037A (en) Data look-ahead device
JPH04336641A (en) Data cache and method for use in processing system
US7328310B2 (en) Method and system for cache utilization by limiting number of pending cache line requests
JP4742432B2 (en) Memory system
JP2976867B2 (en) I / O buffer device and management method thereof
JPH0516061B2 (en)
JPH0354649A (en) Buffer storage control system
JPH06187239A (en) Data coincidence control system for multi-layered cache memory
JP3782178B2 (en) Information processing device
JPH0421044A (en) One-chip cache memory