JPH07175724A - Memory caching method and device therefor - Google Patents

Memory caching method and device therefor

Info

Publication number
JPH07175724A
JPH07175724A JP5320395A JP32039593A JPH07175724A JP H07175724 A JPH07175724 A JP H07175724A JP 5320395 A JP5320395 A JP 5320395A JP 32039593 A JP32039593 A JP 32039593A JP H07175724 A JPH07175724 A JP H07175724A
Authority
JP
Japan
Prior art keywords
access
main memory
memory
block
access path
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
JP5320395A
Other languages
Japanese (ja)
Inventor
Yoshiaki Sudo
義明 数藤
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP5320395A priority Critical patent/JPH07175724A/en
Publication of JPH07175724A publication Critical patent/JPH07175724A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To shorten the overall access time of a system by considering the congestion information on the access path set to a main memory in a replacement system for cache blocks and then by preventing the accesses from concentrating in a specific access path. CONSTITUTION:A cache memory 2 sends the information on the access path set to a main memory 5 from a replaceable cache block to an access path monitoring mechanism 4. The mechanism 4 detects the congestion state of each access path based on the received access path information and sends these detecting results to a block selecting mechanism 3. The mechanism 3 selects an access path of the least congestion based on the congestion states of access paths detected by the mechanism 4. Then the mechanism 3 decides the cache block which uses the selected access path as a replacing block and sends the information on this block to the memory 2.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は情報処理装置に関し、例
えば並列処理システムのメモリキャッシング方法および
装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus, for example, a memory caching method and apparatus for a parallel processing system.

【0002】[0002]

【従来の技術】従来より、複数の情報処理装置が共有す
る主メモリにアクセス可能である並列処理システムにお
いては、各情報処理装置から主メモリへのアクセス経路
が単一である場合、各情報処理装置からの主メモリへの
アクセス要求が単一のアクセス経路に集中・混雑してし
まい、各情報処理装置からの主メモリアクセスが遅延さ
れてしまっていた。
2. Description of the Related Art Conventionally, in a parallel processing system in which a main memory shared by a plurality of information processing devices can be accessed, if each information processing device has a single access path to the main memory, Access requests from the devices to the main memory are concentrated and congested on a single access path, and the main memory access from each information processing device is delayed.

【0003】そのために、各情報処理装置から主メモリ
へのアクセス経路は複数存在した方が有利であり、従来
より各情報処理装置から主メモリへのアクセス経路が複
数存在するような並列処理システムが提案されてきた。
上述した並列処理システムにおいては、複数のアクセス
経路のうちのあるアクセス経路が混雑した場合には、各
情報処理装置からそのアクセス経路を用いる主メモリア
クセスが大きく遅延してしまう。そのために従来の並列
処理システムでは、同時にアクセスするデータを格納す
る主メモリ上の領域を複数のアクセス経路上の主メモリ
上の領域に分散させたり、各情報処理装置のもつキャッ
シュメモリの容量を大きくして主メモリアクセスを低減
したりする等、個々の主メモリへのアクセス経路をでき
るだけ混雑させないようにしていた。
Therefore, it is advantageous that there are a plurality of access routes from each information processing device to the main memory. Conventionally, there is a parallel processing system in which there are a plurality of access routes from each information processing device to the main memory. Has been proposed.
In the parallel processing system described above, when a certain access route among a plurality of access routes is congested, main memory access using the access route from each information processing device is greatly delayed. Therefore, in the conventional parallel processing system, the areas of the main memory that store the data to be accessed simultaneously are distributed over the areas of the main memory on multiple access routes, and the capacity of the cache memory of each information processing device is increased. Therefore, the main memory access is reduced, and the access route to each main memory is kept as crowded as possible.

【0004】また、従来の情報処理装置のメモリキャッ
シング装置は複数のキャッシュブロックを持っているキ
ャッシング装置において、複数のキャッシュブロックに
対する主メモリデータの格納方式には、ダイレクトマッ
ピング方式とセットアソシアティブ方式、およびフルア
ソシアティブ方式の3種類に類別される。この3種類の
メモリキャッシング装置のデータ格納方式のうち、セッ
トアソシアティブ方式とフルアソシアティブ方式の2つ
の方式では、主メモリ上のあるデータをキャッシュメモ
リに格納する際に、複数のキャッシュブロックから1個
のキャッシュブロックを選択し、そのキャッシュブロッ
クに格納されているデータを掃き出したり無効化しなけ
ればならないブロックリプレースメントが発生する。従
来このリプレースメントアルゴリズムとして、LRU(L
east Recently Used) を基にした方式がとられており、
その選択方式はデータを主メモリに書き込んだり再びそ
のデータを読み込むための主メモリアクセスのコストが
全てのキャッシュブロックで同じであるという過程に基
づいていた。また、LRUを基にした方式以外のリプレ
ースメントアルゴリズムとしては、例えば公知のFIF
O方式や、また、主メモリ上に格納されているデータへ
のアクセス時間を基にして、リプレースするキャッシュ
ブロックを決定する方法等がとられてきた。
In addition, the memory caching device of the conventional information processing device has a plurality of cache blocks. In the caching device of the main memory data for the plurality of cache blocks, a direct mapping system and a set associative system are used. There are three types of full associative methods. Of the three types of data storage methods of the memory caching device, in the two methods of the set associative method and the full associative method, when storing certain data in the main memory in the cache memory, one of a plurality of cache blocks is used. A block replacement occurs in which a cache block is selected and the data stored in the cache block must be swept or invalidated. Conventionally, this replacement algorithm has been LRU (L
A method based on east recently used) is adopted,
The selection scheme was based on the process that the cost of main memory access to write data to the main memory or read the data again is the same in all cache blocks. Further, as a replacement algorithm other than the LRU-based method, for example, a known FIF is used.
The O method and the method of deciding the cache block to be replaced have been adopted based on the access time to the data stored in the main memory.

【0005】[0005]

【発明が解決しようとする課題】しかしながら上述した
従来例では、並列処理システムにおいて主メモリへのア
クセス経路が複数ある場合に、複数のキャッシュブロッ
クのうちどのブロックをリプレースするかという選択
に、リプレースするキャッシュブロックのある主メモリ
へのアクセス経路の輻輳状況は考慮されなかった。
However, in the above-mentioned conventional example, when there are a plurality of access paths to the main memory in the parallel processing system, the replacement is performed in accordance with the selection of which of the plurality of cache blocks is to be replaced. The congestion situation of the access route to the main memory with the cache block was not considered.

【0006】従って、複数のキャッシュブロックに対す
る主メモリデータの格納方式としてセットアソシアティ
ブ方式やフルアソシアティブ方式を採用したメモリキャ
ッシング装置においては、ある特定のアクセス経路へア
クセスが集中して、そのアクセス経路だけが混雑したり
する。これによって、並列処理システム全体のメモリア
クセス時間が長くなり、処理能力が低下するという問題
があった。
Therefore, in a memory caching apparatus which adopts the set associative method or the full associative method as a method for storing main memory data in a plurality of cache blocks, accesses are concentrated on a specific access path and only that access path is stored. It gets crowded. As a result, there has been a problem that the memory access time of the entire parallel processing system becomes long and the processing capability is lowered.

【0007】[0007]

【課題を解決するための手段】本発明は上述の課題を解
決することを目的としてなされたもので、上述の課題を
解決する一手段として、以下の構成を備える。即ち、所
定のアドレスのデータを格納可能な複数のキャッシュブ
ロックを有するメモリキャッシング装置であって、複数
のアクセス経路により主メモリをアクセスする主メモリ
アクセス手段と、前記主メモリアクセス手段の全てのア
クセス経路の輻輳状況を検出する輻輳状況検出手段と、
前記輻輳状況検出手段により検出された全てのアクセス
経路の輻輳状況により最もゆとりのあるアクセス経路を
選択するアクセス経路選択手段と、前記アクセス経路選
択手段により選択されたアクセス経路を使用するキャッ
シュブロックをリプレースブロックとして選択するブロ
ック選択手段と、前記アクセス経路選択手段により選択
されたアクセス経路を使用して前記主メモリアクセス手
段により主メモリにアクセスする主メモリアクセス手段
と、前記ブロック選択手段により選択されたキャッシュ
ブロックに前記主メモリアクセス手段により主メモリか
らデータを複写するブロックリプレース手段とを有する
ことを特徴とする。
The present invention has been made for the purpose of solving the above-mentioned problems. As one means for solving the above-mentioned problems, the following structure is provided. That is, a memory caching device having a plurality of cache blocks capable of storing data at a predetermined address, the main memory access means accessing a main memory by a plurality of access paths, and all access paths of the main memory access means. Congestion state detection means for detecting the congestion state of,
An access route selecting unit that selects an access route having the most margin according to the congestion status of all the access routes detected by the congestion state detecting unit, and a cache block that uses the access route selected by the access route selecting unit are replaced. Block selection means for selecting as a block, main memory access means for accessing the main memory by the main memory access means by using the access path selected by the access path selection means, and cache selected by the block selection means The block has block replacement means for copying data from the main memory by the main memory access means.

【0008】例えば、前記主メモリアクセス手段は複数
の主メモリへのアクセス経路を相互結合網で構成し、前
記輻輳状況検出手段は前記相互結合網中のパケットにパ
ケット計数情報を付加することにより検出することを特
徴とする。
For example, the main memory access means configures an access path to a plurality of main memories by an interconnection network, and the congestion state detection means detects the packet by adding packet count information to a packet in the interconnection network. It is characterized by doing.

【0009】[0009]

【作用】以上の構成において、主メモリへのアクセス経
路が複数存在する並列情報処理装置において、キャッシ
ュブロックのリプレースメント制御方式に主メモリへの
アクセス経路の輻輳情報を考慮させることによって、特
定のアクセス経路にアクセスが集中することによるアク
セス時間の遅延を防止することができ、システム全体の
メモリアクセス時間を低減し、システム全体の処理速度
をあげることが可能となるという特有の作用効果があ
る。
In the above configuration, in a parallel information processing apparatus having a plurality of access routes to the main memory, the replacement control method of the cache block allows the congestion information of the access route to the main memory to be taken into consideration, so that a specific access route can be obtained. It is possible to prevent a delay in access time due to the concentration of accesses to the memory, reduce the memory access time of the entire system, and increase the processing speed of the entire system.

【0010】[0010]

【実施例】以下、図面を参照して、本発明に係る一実施
例を詳細に説明する。 <第1実施例>図1は本実施例の並列処理システムにお
けるメモリキャッシング装置の概要構成と、その動作対
象を示すブロック図である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment according to the present invention will be described in detail below with reference to the drawings. <First Embodiment> FIG. 1 is a block diagram showing a schematic configuration of a memory caching device in a parallel processing system of the present embodiment and its operation target.

【0011】図1において、破線で囲まれた10が本実
施例におけるメモリキャッシング装置であり、キャッシ
ュメモリ2とブロック選択機構3とアクセス経路監視機
構4とで構成される。メモリキャッシング装置10は、
複数のアクセス経路6によって主メモリ5と接続されて
おり、主メモリ5に格納されているデータを中央処理装
置1に対して提供する。ここで主メモリ5は、複数のア
クセス経路6によって複数の領域に分けて考えることが
できる。
In FIG. 1, reference numeral 10 surrounded by a broken line is a memory caching device in this embodiment, which is composed of a cache memory 2, a block selection mechanism 3, and an access route monitoring mechanism 4. The memory caching device 10 is
It is connected to the main memory 5 by a plurality of access paths 6 and provides the data stored in the main memory 5 to the central processing unit 1. Here, the main memory 5 can be considered by being divided into a plurality of areas by a plurality of access paths 6.

【0012】また、メモリキャッシング装置10に中央
処理装置1を加えた構成をメモリキャッシング部20と
し、本実施例の並列処理システムでは同一構成のメモリ
キャッシング部20が複数存在するため、説明を省略す
る。次に、図2に上述した図1に示す本実施例のメモリ
キャッシング装置を備える並列処理システムの概要構成
例を示す。
Further, a configuration in which the central processing unit 1 is added to the memory caching device 10 is referred to as a memory caching unit 20. In the parallel processing system of this embodiment, there are a plurality of memory caching units 20 having the same configuration, and the description thereof will be omitted. . Next, FIG. 2 shows a schematic configuration example of a parallel processing system including the memory caching device of this embodiment shown in FIG.

【0013】図2において、21〜24は4つの領域に
分けて考えることのできる主メモリ0〜3であり、メモ
リキャッシング部25〜28から、4本のバス29をそ
れぞれのアクセス経路としてアクセスされる。尚、メモ
リキャッシング部25〜28は、図1に示すメモリキャ
ッシング部20であり、図2においては中央処理装置と
キャッシュメモリのみを図示しておく。
In FIG. 2, reference numerals 21 to 24 are main memories 0 to 3, which can be divided into four areas, and are accessed from the memory caching units 25 to 28 using the four buses 29 as respective access paths. It The memory caching units 25 to 28 are the memory caching unit 20 shown in FIG. 1, and only the central processing unit and the cache memory are shown in FIG.

【0014】以上のような構成を持つメモリキャッシン
グ装置10の動作を、図3および図4を参照して、詳細
に説明する。図3は、本実施例のメモリキャッシング装
置における各情報の流れを示す図である。アクセス経路
監視機構32は、図1に示す複数のアクセス経路6のそ
れぞれの輻輳状況を、不図示のバス・スヌープ機構等を
用いて過去の所定期間のアクセス経路占有率を調べるこ
とにより検出する。
The operation of the memory caching device 10 having the above configuration will be described in detail with reference to FIGS. 3 and 4. FIG. 3 is a diagram showing the flow of each information in the memory caching device of this embodiment. The access route monitoring mechanism 32 detects the congestion status of each of the plurality of access routes 6 shown in FIG. 1 by examining the access route occupancy rate for a predetermined period in the past using a bus snoop mechanism or the like (not shown).

【0015】キャッシュメモリ33において、キャッシ
ュブロックのリプレース要求が発生した場合に、キャッ
シュメモリ33はリプレース可能なキャッシュブロック
から主メモリへのアクセス経路を、後述するメモリアド
レスに含めることによりアクセス経路情報としてアクセ
ス経路監視機構32へ送出する。アクセス経路監視機構
32では、キャッシュメモリ33より得られたアクセス
経路情報に従って、各アクセス経路の輻輳状況を検出
し、ブロック選択機構31に送出する。
When a cache block replacement request is generated in the cache memory 33, the cache memory 33 includes access paths from the replaceable cache blocks to the main memory as access path information by including the access path in a memory address described later. It is sent to the route monitoring mechanism 32. The access route monitoring mechanism 32 detects the congestion status of each access route according to the access route information obtained from the cache memory 33, and sends it to the block selection mechanism 31.

【0016】そして、ブロック選択機構31では、アク
セス経路監視機構32から受け取った各アクセス経路の
輻輳状況から判断して最も混雑していないアクセス経路
を選択し、選択されたアクセス経路を使用するキャッシ
ュブロックをリプレースブロックとして決定し、キャッ
シュメモリ33へその情報を送出する。キャッシュメモ
リ33では、以上のようにして得られたリプレースブロ
ック情報に従って、当該キャッシュブロックの内容を当
該アクセス経路を介して主メモリの対応するブロックの
内容に置換する。
Then, the block selecting mechanism 31 selects the least congested access route judging from the congestion status of each access route received from the access route monitoring mechanism 32, and uses the selected access route. Is determined as a replace block, and the information is sent to the cache memory 33. In the cache memory 33, the contents of the cache block are replaced with the contents of the corresponding block of the main memory via the access path in accordance with the replacement block information obtained as described above.

【0017】上述した図3に示す例では、アクセス経路
の選択情報をメモリアドレス情報としてアクセス経路監
視機構32に知らせることにより、アクセス経路の輻輳
状況を調べたが、本実施例はこれに限定されるものでは
なく、例えばアクセス経路数が少ない場合には、全ての
アクセス経路について、無条件に輻輳状況を調べること
もできる。その例を図4を参照して説明する。
In the example shown in FIG. 3 described above, the congestion status of the access route is checked by notifying the access route monitoring mechanism 32 of the access route selection information as the memory address information, but this embodiment is not limited to this. However, if the number of access routes is small, for example, the congestion status can be unconditionally checked for all access routes. An example thereof will be described with reference to FIG.

【0018】図4において、キャッシュメモリ43にキ
ャッシュブロックのリプレース要求が発生した場合に、
キャッシュメモリ43は、リプレース可能なキャッシュ
ブロックから主メモリへのアクセス経路を、アクセス経
路情報としてブロック選択機構41へ送出する。また、
それと同時にキャッシュメモリ43は、アクセス経路監
視機構42に全アクセス経路の輻輳状況を検出しブロッ
ク選択機構41に送出するように、輻輳状況報告要求を
送出する。アクセス経路監視機構42ではキャッシュメ
モリ43からの輻輳状況報告要求に従って、全アクセス
経路の輻輳状況を検出し、ブロック選択機構41に送出
する。
In FIG. 4, when a cache block replacement request is issued to the cache memory 43,
The cache memory 43 sends the access path from the replaceable cache block to the main memory to the block selection mechanism 41 as access path information. Also,
At the same time, the cache memory 43 sends a congestion status report request to the access path monitoring mechanism 42 so as to detect the congestion status of all access paths and send it to the block selection mechanism 41. The access path monitoring mechanism 42 detects the congestion status of all access paths according to the congestion status report request from the cache memory 43, and sends it to the block selection mechanism 41.

【0019】そして、ブロック選択機構41では、アク
セス経路監視機構42から受け取った全アクセス経路の
輻輳状況から判断して最も混雑していないアクセス経路
を選択し、選択されたアクセス経路を使用するキャッシ
ュブロックをリプレースブロックとして決定し、キャッ
シュメモリ43へ、その情報を送出する。キャッシュメ
モリ43では、以上のようにして得られたリプレースブ
ロック情報に従って、当該キャッシュブロックの内容を
当該アクセス経路を介して主メモリの対応するブロック
の内容に置換する。
Then, the block selecting mechanism 41 selects the least congested access route judging from the congestion status of all the access routes received from the access route monitoring mechanism 42, and uses the selected access route in the cache block. Is determined as a replace block, and the information is sent to the cache memory 43. In the cache memory 43, the contents of the cache block are replaced with the contents of the corresponding block of the main memory via the access path in accordance with the replacement block information obtained as described above.

【0020】以上説明したように本実施例のメモリキャ
ッシング装置においては、ブロック選択機構31,41
は、図3または図4に示した方法で得たアクセス経路の
輻輳状況に従って、アクセス経路が混雑していないキャ
ッシュブロックをリプレースブロックとして選択する。
次に、上述した本実施例のメモリキャッシング装置にお
けるキャッシュメモリの構成について、図5,図6およ
び図7を参照して以下に説明する。
As described above, in the memory caching device of this embodiment, the block selection mechanisms 31 and 41 are used.
Selects a cache block in which the access route is not congested as a replacement block according to the congestion state of the access route obtained by the method shown in FIG. 3 or 4.
Next, the configuration of the cache memory in the above-described memory caching device of the present embodiment will be described below with reference to FIGS. 5, 6 and 7.

【0021】図5は、4つのアクセス経路を持つ、セッ
トアソシアティブ方式を用いたキャッシュメモリ(以
下、4−wayセットアソシアティブキャッシュ)の構
成例を示す図である。図5において、51は参照データ
の主メモリ上でのアドレスを格納しているメモリアドレ
スであり、52〜55は、それぞれキャッシュメモリバ
ンクであり、本実施例では4つのバンクを持つ。
FIG. 5 is a diagram showing a configuration example of a cache memory using a set associative system (hereinafter, 4-way set associative cache) having four access routes. In FIG. 5, reference numeral 51 is a memory address storing the address of the reference data in the main memory, 52 to 55 are cache memory banks, respectively, and in this embodiment, there are four banks.

【0022】本実施例では、参照データのメモリアドレ
ス51の下位ビットにより、4つのキャッシュメモリバ
ンク52〜55から1個ずつ格納可能なブロックが決定
され、即ち、4個のブロックがリプレースメント候補と
して選択される。そして、選択された各キャッシュメモ
リバンク52〜55上のブロックのアドレス情報が、ブ
ロック選択機構へ送出される。
In this embodiment, the lower bits of the memory address 51 of the reference data determine the blocks that can be stored one by one from the four cache memory banks 52 to 55, that is, four blocks are selected as replacement candidates. To be done. Then, the address information of the blocks on the selected cache memory banks 52 to 55 is sent to the block selection mechanism.

【0023】図6および図7は、本実施例における主メ
モリの領域分割の様子を示す例である。図6に、上述し
た図5に示すメモリアドレス51の内容を示す。図6に
おいて、メモリアドレス51は中位ビット61で主メモ
リバンク0〜3の識別を示し、中位ビット61に続く下
位ビット62でキャッシュメモリ内におけるアドレスを
示す。すると、図6に示すように例えば主メモリバンク
0に対応するアドレス領域は、メモリアドレス51にお
いて「0x????0000〜0x????0fff」
と表される。即ち、メモリアドレス51の下位16ビッ
トがキャッシュメモリ内のアドレスを示し、続く4ビッ
トが主メモリバンク識別となる。
FIGS. 6 and 7 are examples showing how the main memory is divided into areas in this embodiment. FIG. 6 shows the contents of the memory address 51 shown in FIG. In FIG. 6, the memory address 51 indicates the identification of the main memory banks 0 to 3 by the middle bit 61, and the lower bit 62 following the middle bit 61 indicates the address in the cache memory. Then, as shown in FIG. 6, for example, the address area corresponding to the main memory bank 0 is "0x ??????? 0000 to 0x ?????? 0fff" in the memory address 51.
Is expressed as That is, the lower 16 bits of the memory address 51 indicate the address in the cache memory, and the subsequent 4 bits are the main memory bank identification.

【0024】尚、図6においてアドレス領域例に示され
る「????」で表される4ビットは、任意の値をとる
ものとする。本実施例において、主メモリは、例えば上
述した図6に示す様にその領域が分割されており、主メ
モリのどのバンクにアクセスするかによって、アクセス
経路が決定される。
It is assumed that the 4 bits represented by "??????" shown in the example of the address area in FIG. 6 take an arbitrary value. In the present embodiment, the main memory is divided into areas as shown in FIG. 6, for example, and the access path is determined depending on which bank of the main memory is accessed.

【0025】また、図6と同様に、図7に示すようにメ
モリアドレスの上位ビット71を主メモリバンク0〜3
の識別とし、下位ビット72をキャッシュメモリ内にお
けるアドレスとして、主メモリ領域を分割することも可
能である。以上説明したような図6または図7に示すよ
うに主メモリバンクを決定するビット情報を、図3に示
すキャッシュメモリ33からアクセス経路監視機構32
に送出することにより、各リプレース候補ブロックのア
クセス経路の輻輳状況を検出することができる。
Further, as in FIG. 6, the upper bits 71 of the memory address are set to the main memory banks 0 to 3 as shown in FIG.
It is also possible to divide the main memory area using the lower bit 72 as an address in the cache memory. As described above, the bit information for determining the main memory bank as shown in FIG. 6 or 7 is transferred from the cache memory 33 shown in FIG.
By sending the replacement candidate block, the congestion status of the access route of each replacement candidate block can be detected.

【0026】尚、本実施例において、過去一定期間内に
全てのバスへのアクセスが全くなかったり、混雑状況が
同じであるブロックが選択された場合など、アクセス経
路の輻輳状況だけによってリプレースブロックを決定で
きない場合も発生し得る。その場合には、まずアクセス
経路の輻輳状況によってリプレース候補ブロックを選択
した上で、LRUの近似等の方法でリプレースブロック
を決定する。
In this embodiment, the replacement block is replaced only by the congestion condition of the access route, such as when no bus is accessed at all in the past within a certain period of time or a block having the same congestion condition is selected. There may be cases where the decision cannot be made. In that case, first, a replacement candidate block is selected according to the congestion status of the access route, and then the replacement block is determined by a method such as LRU approximation.

【0027】以上説明したように本実施例によれば、主
メモリへのアクセス経路が複数存在する並列処理システ
ムにおいて、キャッシュブロックのリプレースメント制
御方式に主メモリへのアクセス経路の輻輳情報を考慮さ
せることによって、システム全体のメモリアクセス時間
を低減し、システム全体の処理速度をあげるという効果
がある。
As described above, according to the present embodiment, in a parallel processing system having a plurality of access paths to the main memory, the replacement control method of the cache block is made to consider the congestion information of the access path to the main memory. This has the effect of reducing the memory access time of the entire system and increasing the processing speed of the entire system.

【0028】<第2実施例>本発明に係る第2実施例を
以下に説明する。上述した第1実施例においては、主メ
モリへのアクセス経路がメモリキャッシング装置から直
接監視出来る場合の説明を行ったが、第2実施例では、
図8および図9を参照して、相互結合網によってパケッ
トを伝達することによって主メモリへのアクセスを行な
うようなシステムについて、本発明を適用した例を示
す。
<Second Embodiment> A second embodiment according to the present invention will be described below. In the above-described first embodiment, the case where the access path to the main memory can be directly monitored from the memory caching device has been described, but in the second embodiment,
With reference to FIGS. 8 and 9, an example in which the present invention is applied to a system in which a main memory is accessed by transmitting a packet by an interconnection network will be shown.

【0029】図8は、相互結合網によって接続される並
列処理システムの概要構成を示すブロック図である。図
8において、80はメモリキャッシング部であり、中央
処理装置81と、メモリキャッシング装置82から構成
される。尚、メモリキャッシング装置82は、上述した
第1実施例の図1に示すメモリキャッシング装置10と
同一の構成を成し、キャッシュメモリ2,ブロック選択
機構3,アクセス経路監視機構4とを含む。
FIG. 8 is a block diagram showing a schematic configuration of a parallel processing system connected by an interconnection network. In FIG. 8, reference numeral 80 is a memory caching unit, which includes a central processing unit 81 and a memory caching unit 82. The memory caching device 82 has the same configuration as the memory caching device 10 of the first embodiment shown in FIG. 1 and includes a cache memory 2, a block selection mechanism 3, and an access route monitoring mechanism 4.

【0030】メモリキャッシング部80は複数存在し、
例えばクロスバ、多段結合、トーラス等による相互結合
網83を介して、複数の領域に分割された主メモリ84
に接続している。図8に示されるような相互結合網83
によって主メモリ84と中央処理装置81とが接続され
ている並列処理システムでは、主メモリ84へのアクセ
スは、相互結合網83によりパケットを伝達することに
よって、行われる。従って、主メモリ84へのアクセス
経路の輻輳状況をメモリキャッシング装置82から直接
検出することは出来ない。
There are a plurality of memory caching units 80,
For example, a main memory 84 divided into a plurality of areas via an interconnection network 83 such as a crossbar, multistage connection, or torus.
Connected to. An interconnection network 83 as shown in FIG.
In the parallel processing system in which the main memory 84 and the central processing unit 81 are connected by, the access to the main memory 84 is performed by transmitting a packet by the mutual connection network 83. Therefore, the congestion status of the access path to the main memory 84 cannot be directly detected from the memory caching device 82.

【0031】従って、第2実施例では、主メモリ84へ
のアクセス用パケットにアクセス経路の輻輳状況の情報
を付加する例を示し、その詳細を図9を参照して以下に
説明する。図9は、アクセス経路の輻輳状況をパケット
に付加するスイッチの概念を示す図である。
Therefore, in the second embodiment, an example in which the information on the congestion status of the access route is added to the packet for accessing the main memory 84 will be described in detail below with reference to FIG. FIG. 9 is a diagram showing the concept of a switch that adds the congestion status of an access route to a packet.

【0032】図9において、90は図8に示す相互結合
網83の各網に存在するスイッチである。第2実施例に
おいては説明の簡便のため、スイッチ90はメモリキャ
ッシング部80からの2本の入力95,96と主メモリ
84への2本の出力97,98を含むものとし、入力9
6からパケット93が入力され、出力97へパケット9
4が出力される例を示す。スイッチ90はカウンタ9
1,92を含み、単位時間あたりのパケット入力数を計
数する。尚、各カウンタ91,92のパケット計数値
は、不図示の回路によって所定の単位時間毎にクリアさ
れる。パケット93,94は、複数の中央処理装置81
の識別情報や、アクセスする主メモリ84のアドレス情
報、また、当該アドレスに格納されているデータそのも
のを格納する領域等を有すると共に、パケット計数情報
100,101を含む。
In FIG. 9, 90 is a switch that exists in each network of the mutual connection network 83 shown in FIG. In the second embodiment, for simplicity of explanation, it is assumed that the switch 90 includes two inputs 95 and 96 from the memory caching unit 80 and two outputs 97 and 98 to the main memory 84.
The packet 93 is input from 6 and the packet 9 is output 97.
4 shows an example in which 4 is output. Switch 90 is counter 9
Including 1, 92, the number of packet inputs per unit time is counted. The packet count values of the counters 91 and 92 are cleared by a circuit (not shown) every predetermined unit time. The packets 93 and 94 are transmitted to a plurality of central processing units 81.
Identification information, address information of the main memory 84 to be accessed, an area for storing the data itself stored at the address, and the like, and packet count information 100, 101.

【0033】上述したような構成を持つ第2実施例にお
ける図9に示すスイッチの動作について、以下に説明す
る。図9に示すように、入力96よりパケット93が入
力される場合について考える。パケット93が入力96
からスイッチ90へ入力される際に、スイッチ90にお
いてカウンタ92はその値に1加算することにより、入
力されたパケット数を累積していく。そして、パケット
93のパケット計数情報100には、カウンタ92の値
が格納され、スイッチ90から出力97へパケット94
が出力される際に、そのパケット計数情報101にはカ
ウンタ92の値が格納されており、即ち、キャッシング
装置82から主メモリ84へのアクセス経路が入力96
である場合の輻輳状況が検出されたことになる。
The operation of the switch shown in FIG. 9 in the second embodiment having the above structure will be described below. As shown in FIG. 9, consider the case where the packet 93 is input from the input 96. Packet 93 input 96
When the data is input to the switch 90 from the counter, the counter 92 in the switch 90 adds 1 to the value to accumulate the number of input packets. Then, the value of the counter 92 is stored in the packet count information 100 of the packet 93, and the packet 94 is output from the switch 90 to the output 97.
Is output, the value of the counter 92 is stored in the packet count information 101, that is, the access path from the caching device 82 to the main memory 84 is input 96.
If it is, the congestion situation is detected.

【0034】従って、メモリキャッシング装置82に含
まれる図1に示すアクセス経路監視機構4は、主メモリ
84から戻ってきたパケットに含まれるパケット計数情
報の値より輻輳状況を得て、そのメモリキャッシング装
置82から各主メモリ84の領域へのアクセス経路の輻
輳状況の統計情報を記憶しておく。そしてアクセス経路
監視機構4は、メモリキャッシング装置82に含まれる
図1に示すブロック選択機構3へ、各アクセス経路の輻
輳状況の統計情報を通知する。
Therefore, the access path monitoring mechanism 4 shown in FIG. 1 included in the memory caching device 82 obtains the congestion status from the value of the packet count information included in the packet returned from the main memory 84, and the memory caching device The statistical information of the congestion status of the access path from 82 to the area of each main memory 84 is stored. Then, the access route monitoring mechanism 4 notifies the block selection mechanism 3 shown in FIG. 1 included in the memory caching device 82 of the statistical information of the congestion status of each access route.

【0035】以上のようにして、第2実施例においても
第1実施例と同様にリプレースブロックが決定される。
尚、上述した例ではカウンタ92によるパケット計数の
例を示したが、もちろんカウンタ91による計数におい
ても同様である。また、スイッチ90への入力96から
出力97へのアクセス経路を示したが、もちろん入力9
6から出力98でも同様の結果となる。
As described above, also in the second embodiment, the replacement block is determined as in the first embodiment.
Although the example of counting the packets by the counter 92 is shown in the above-mentioned example, the same applies to the counting by the counter 91. Also, the access route from the input 96 to the switch 90 to the output 97 is shown, but of course the input 9
Similar results are obtained from 6 to output 98.

【0036】以上説明したように第2実施例によれば、
相互結合網によって主メモリと中央処理装置が接続され
ているような並列処理システムにおいても、パケットに
パケット計数情報を付加することにより、第1実施例と
同様に、キャッシュブロックのリプレースメント制御方
式に主メモリへのアクセス経路の輻輳情報を考慮させる
ことが可能となり、システム全体のメモリアクセス時間
を低減し、システム全体の処理速度をあげるという効果
がある。
As described above, according to the second embodiment,
Even in the parallel processing system in which the main memory and the central processing unit are connected by the mutual connection network, by adding the packet count information to the packet, it is possible to use the cache block replacement control method as in the first embodiment, as in the first embodiment. It is possible to take into consideration the congestion information of the access path to the memory, which has the effect of reducing the memory access time of the entire system and increasing the processing speed of the entire system.

【0037】尚、本発明は、複数の機器から構成される
システムに適用しても、1つの機器から成る装置に適用
しても良い。また、本発明はシステム或は装置にプログ
ラムを供給することによって達成される場合にも適用で
きることは言うまでもない。
The present invention may be applied to a system composed of a plurality of devices or an apparatus composed of a single device. Further, it goes without saying that the present invention can be applied to the case where it is achieved by supplying a program to a system or an apparatus.

【0038】[0038]

【発明の効果】以上説明したように本発明によれば、主
メモリへのアクセス経路が複数存在する並列情報処理装
置において、キャッシュブロックのリプレースメント制
御方式に主メモリへのアクセス経路の輻輳情報を考慮さ
せることによって、特定のアクセス経路にアクセスが集
中することによるアクセス時間の遅延を防止することが
でき、システム全体のメモリアクセス時間を低減し、シ
ステム全体の処理速度をあげることが可能となるという
効果がある。
As described above, according to the present invention, in a parallel information processing apparatus having a plurality of main memory access paths, the cache block replacement control method takes into consideration congestion information of the main memory access paths. By doing so, it is possible to prevent the delay of access time due to the concentration of accesses on a specific access route, reduce the memory access time of the entire system, and increase the processing speed of the entire system. There is.

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

【図1】本発明に係る第1実施例におけるメモリキャッ
シング装置の概要構造を示すブロック図である。
FIG. 1 is a block diagram showing a schematic structure of a memory caching device in a first embodiment according to the present invention.

【図2】本実施例の複数のバスを用いた並列処理システ
ムにおける概要構成を示すブロック図である。
FIG. 2 is a block diagram showing a schematic configuration of a parallel processing system using a plurality of buses according to the present embodiment.

【図3】本実施例のメモリキャッシング装置における選
択されたアクセス経路についての各情報の流れを示す図
である。
FIG. 3 is a diagram showing a flow of each piece of information regarding a selected access path in the memory caching device of the present embodiment.

【図4】本実施例のメモリキャッシング装置における全
アクセス経路についての各情報の流れを示す図である。
FIG. 4 is a diagram showing a flow of each information regarding all access paths in the memory caching device of the present embodiment.

【図5】本実施例のセットアソシアティブ方式を用いた
キャッシュメモリの構成例を示す図である。
FIG. 5 is a diagram showing a configuration example of a cache memory using the set associative method of the present embodiment.

【図6】本実施例の複数のバスによる主メモリの領域分
割例を示す図である。
FIG. 6 is a diagram showing an example of area division of a main memory by a plurality of buses according to the present embodiment.

【図7】本実施例の複数のバスによる主メモリの領域分
割例を示す図である。
FIG. 7 is a diagram showing an example of area division of a main memory by a plurality of buses according to the present embodiment.

【図8】本発明に係る第2実施例における相互結合網に
よって接続される並列処理システムの概要構成を示すブ
ロック図である。
FIG. 8 is a block diagram showing a schematic configuration of a parallel processing system connected by an interconnection network in a second embodiment according to the present invention.

【図9】第2実施例におけるアクセス経路の輻輳状況を
パケットに付加するスイッチの概念図である。
FIG. 9 is a conceptual diagram of a switch that adds a congestion status of an access route to a packet in the second embodiment.

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

1 中央処理装置 2 キャッシュメモリ 3 ブロック選択機構 4 アクセス時間記憶機構 5 主メモリ 6 アクセス経路 10 メモリキャッシング装置 20 メモリキャッシング部 1 central processing unit 2 cache memory 3 block selection mechanism 4 access time storage mechanism 5 main memory 6 access path 10 memory caching device 20 memory caching unit

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 所定のアドレスのデータを格納可能な複
数のキャッシュブロックを有するメモリキャッシング装
置におけるメモリキャッシング方法であって、 複数のアクセス経路により主メモリをアクセスする主メ
モリアクセス手段による全てのアクセス経路の輻輳状況
を検出する輻輳状況検出工程と、 前記輻輳状況検出工程により検出された全てのアクセス
経路の輻輳状況により最もゆとりのあるアクセス経路を
選択するアクセス経路選択工程と、 前記アクセス経路選択工程により選択されたアクセス経
路を使用するキャッシュブロックをリプレースブロック
として選択するブロック選択工程と、 前記アクセス経路選択工程により選択されたアクセス経
路を使用して前記主メモリアクセス手段により主メモリ
にアクセスする主メモリアクセス工程と、 前記ブロック選択工程により選択されたキャッシュブロ
ックに前記主メモリアクセス工程により主メモリからデ
ータを複写するブロックリプレース工程とを有すること
を特徴とするメモリキャッシング方法。
1. A memory caching method in a memory caching apparatus having a plurality of cache blocks capable of storing data at a predetermined address, wherein all access paths by a main memory access means for accessing a main memory by a plurality of access paths. A congestion status detecting step of detecting the congestion status of the access path, an access path selecting step of selecting an access path having the most room according to the congestion status of all the access paths detected by the congestion status detecting step, and the access path selecting step A block selecting step of selecting a cache block using the selected access path as a replacement block; and a main memory access step of accessing the main memory by the main memory access means using the access path selected in the access path selecting step. Memory caching method characterized by comprising the scan process, and a block replacement process of copying data from the main memory by said main memory access process to the cache block selected by the block selection process.
【請求項2】 前記主メモリアクセス手段は複数の主メ
モリへのアクセス経路を相互結合網で構成し、 前記輻輳状況検出工程は前記相互結合網中のパケットに
パケット計数情報を付加することにより検出することを
特徴とする請求項1記載のメモリキャッシング方法。
2. The main memory access means configures an access path to a plurality of main memories by an interconnection network, and the congestion state detecting step detects by adding packet count information to a packet in the interconnection network. The memory caching method according to claim 1, wherein:
【請求項3】 所定のアドレスのデータを格納可能な複
数のキャッシュブロックを有するメモリキャッシング装
置であって、 複数のアクセス経路により主メモリをアクセスする主メ
モリアクセス手段と、 前記主メモリアクセス手段の全てのアクセス経路の輻輳
状況を検出する輻輳状況検出手段と、 前記輻輳状況検出手段により検出された全てのアクセス
経路の輻輳状況により最もゆとりのあるアクセス経路を
選択するアクセス経路選択手段と、 前記アクセス経路選択手段により選択されたアクセス経
路を使用するキャッシュブロックをリプレースブロック
として選択するブロック選択手段と、 前記アクセス経路選択手段により選択されたアクセス経
路を使用して前記主メモリアクセス手段により主メモリ
にアクセスする主メモリアクセス手段と、 前記ブロック選択手段により選択されたキャッシュブロ
ックに前記主メモリアクセス手段により主メモリからデ
ータを複写するブロックリプレース手段とを有すること
を特徴とするメモリキャッシング装置。
3. A memory caching device having a plurality of cache blocks capable of storing data at a predetermined address, the main memory access device accessing a main memory through a plurality of access paths, and all of the main memory access devices. Congestion status detection means for detecting the congestion status of the access path, access path selection means for selecting the access path with the most room according to the congestion status of all access paths detected by the congestion status detection means, the access path Block selecting means for selecting a cache block that uses the access path selected by the selecting means as a replacement block, and accessing the main memory by the main memory accessing means using the access path selected by the access path selecting means. Main memory access hand When, memory caching apparatus characterized by having a block replacement means for copying data from the main memory by said main memory access means to the cache block selected by said block selecting means.
【請求項4】 前記主メモリアクセス手段は複数の主メ
モリへのアクセス経路を相互結合網で構成し、 前記輻輳状況検出手段は前記相互結合網中のパケットに
パケット計数情報を付加することにより検出することを
特徴とする請求項3記載のメモリキャッシング装置。
4. The main memory access means configures an access path to a plurality of main memories by an interconnection network, and the congestion status detection means detects by adding packet count information to a packet in the interconnection network. The memory caching device according to claim 3, wherein:
JP5320395A 1993-12-20 1993-12-20 Memory caching method and device therefor Withdrawn JPH07175724A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5320395A JPH07175724A (en) 1993-12-20 1993-12-20 Memory caching method and device therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5320395A JPH07175724A (en) 1993-12-20 1993-12-20 Memory caching method and device therefor

Publications (1)

Publication Number Publication Date
JPH07175724A true JPH07175724A (en) 1995-07-14

Family

ID=18120995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5320395A Withdrawn JPH07175724A (en) 1993-12-20 1993-12-20 Memory caching method and device therefor

Country Status (1)

Country Link
JP (1) JPH07175724A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001025931A1 (en) * 1999-10-01 2001-04-12 Sun Microsystems, Inc. Multiple variable cache replacement policy
JP2006053857A (en) * 2004-08-16 2006-02-23 Fujitsu Ltd System controller, speculative fetch method, and information processor

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001025931A1 (en) * 1999-10-01 2001-04-12 Sun Microsystems, Inc. Multiple variable cache replacement policy
US6282617B1 (en) 1999-10-01 2001-08-28 Sun Microsystems, Inc. Multiple variable cache replacement policy
US6523091B2 (en) * 1999-10-01 2003-02-18 Sun Microsystems, Inc. Multiple variable cache replacement policy
JP2006053857A (en) * 2004-08-16 2006-02-23 Fujitsu Ltd System controller, speculative fetch method, and information processor

Similar Documents

Publication Publication Date Title
EP0472879B1 (en) Method and apparatus for dynamic detection and routing of non-uniform traffic in parallel buffered multistage interconnection networks
US7706275B2 (en) Method and apparatus for routing data in an inter-nodal communications lattice of a massively parallel computer system by employing bandwidth shells at areas of overutilization
US6038644A (en) Multiprocessor system with partial broadcast capability of a cache coherent processing request
US10877838B1 (en) Data plane error detection for ternary content-addressable memory (TCAM) of a forwarding element
KR100605142B1 (en) Flexible probe/probe response routing for maintaining coherency
US6546471B1 (en) Shared memory multiprocessor performing cache coherency
US6430190B1 (en) Method and apparatus for message routing, including a content addressable memory
JP3996455B2 (en) Data transfer method for information processing system and information processing system
US4969088A (en) Hardware mechanism for automatically detecting hot-spot references and diverting same from memory traffic in a multiprocessor computer system
JPH11504781A (en) Coordinating method and apparatus for routing device output access in a packet switching network
WO2020226699A1 (en) Distributed cache with in-network prefetch
EP0606368A1 (en) Packet processing method and apparatus
US5398235A (en) Cell exchanging apparatus
CN104731733A (en) System And Method For Frequency Determination Across Interface Of Data Processing System
CN104731758A (en) Coherency overcommit
US8031614B2 (en) Method and apparatus for routing data in an inter-nodal communications lattice of a massively parallel computer system by dynamic global mapping of contended links
CN104731757A (en) System and method for determining command rate based on dropped commands
US7206922B1 (en) Instruction memory hierarchy for an embedded processor
JP3641834B2 (en) Parallel processor system and packet discard method suitable therefor
US9537799B2 (en) Phase-based packet prioritization
JPH07175724A (en) Memory caching method and device therefor
EP0581485B1 (en) Circulating pointer monitor
US20210165606A1 (en) Apparatus and methods for managing packet transfer across a memory fabric physical layer interface
JPH07321795A (en) Buffer address management method
US20050044328A1 (en) Methods and apparatus for maintaining coherency in a multi-processor system

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