JPH0750466B2 - Parallel computer cache memory control system - Google Patents

Parallel computer cache memory control system

Info

Publication number
JPH0750466B2
JPH0750466B2 JP62205750A JP20575087A JPH0750466B2 JP H0750466 B2 JPH0750466 B2 JP H0750466B2 JP 62205750 A JP62205750 A JP 62205750A JP 20575087 A JP20575087 A JP 20575087A JP H0750466 B2 JPH0750466 B2 JP H0750466B2
Authority
JP
Japan
Prior art keywords
data
cell
cache memory
access request
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP62205750A
Other languages
Japanese (ja)
Other versions
JPS6448166A (en
Inventor
宏明 石畑
優子 原田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP62205750A priority Critical patent/JPH0750466B2/en
Publication of JPS6448166A publication Critical patent/JPS6448166A/en
Publication of JPH0750466B2 publication Critical patent/JPH0750466B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔概要〕 プロセッサを有するセルが通信ポートを介して他セルと
接続されると共に,データを上記各セルが分散保持する
並列計算機における並列計算機キャッシュ・メモリ制御
方式に関し, 他セルに対して行うデータ・アクセスに当ってのプロセ
ッサ間通信のためのオーバヘッドやデータ中継のための
オーバヘッドを減少することを目的とし, 個々のセルに対応して,少なくとも自己セルが必要とし
たデータについて,また必要に応じて自己セルを経由し
て転送されたデータについて,当該データを保持するキ
ャッシュ・メモリをもうけ,あるセルからのデータ・ア
クセス要求が通過するセルにおいてキャッシュ・メモリ
上に所望されるデータが存在していれば,当該データ
を,上記データ・アクセス要求を発したセルに対して転
送するよう構成する。
DETAILED DESCRIPTION OF THE INVENTION [Outline] A parallel computer cache memory control system in a parallel computer in which a cell having a processor is connected to other cells via a communication port and data is distributed and held by each cell, The data required for at least the own cell corresponding to each cell for the purpose of reducing the overhead for interprocessor communication and the overhead for data relay in the data access to the cell. , And, if necessary, for data transferred via its own cell, a cache memory holding the data is provided, and the data access request from a certain cell is desired on the cache memory in the passing cell. If there is any data that does not exist, the data is sent to the source of the data access request. Configured to forward to

〔産業上の利用分野〕[Industrial application field]

本発明は,並列計算機キャッシュ・メモリ制御方式,特
に,プロセッサを有するセルが通信ポートを介して他セ
ルと接続されると共に,データを上記各セルが分散保持
する並列計算機における並列計算機キャッシュ・メモリ
制御方式に関する。
The present invention relates to a parallel computer cache memory control method, and more particularly, to a parallel computer cache memory control in a parallel computer in which a cell having a processor is connected to another cell via a communication port and data is distributed and held in each cell. Regarding the scheme.

半導体技術の発展に伴なって,高性能のコンピュータが
コンパクトに実現できることになり,数100ないし数100
0台規模の並列計算機が考慮の対象となりつつある。こ
のような並列計算機においては,個々のセルがデータを
分散保持する形とならざるを得ないが,プロセッサ間通
信のためのオーバヘッドやデータ中継のためのオーバヘ
ッドが問題となる。
With the development of semiconductor technology, it has become possible to realize high-performance computers in a compact size.
0-scale parallel computers are being considered. In such a parallel computer, it is inevitable that individual cells hold data in a distributed manner, but the overhead for communication between processors and the overhead for data relay pose a problem.

〔従来の技術〕[Conventional technology]

並列計算機において共通データを記憶する方式として,
個々のセルがデータを分散配置しておき,プロセッサ間
通信によって必要なデータをアクセスすることが行われ
ている。
As a method of storing common data in a parallel computer,
Data is distributed in individual cells and required data is accessed through interprocessor communication.

この場合,プロセッサ間通信におけるメッセージとして
は,データ・アクセス要求と要求に対応して転送される
データとが存在する。各セルは,要求されたデータがい
ずれのセル上に存在するかを指示するデータ配置テーブ
ルと,或るセルと通信するための最短経路を指示するデ
ータ方向テーブルとを少なくともそなえており,あわせ
てデータ・アクセス要求を発する機能やデータ中継を行
う機能などをそなえている。
In this case, the message in the inter-processor communication includes a data access request and data transferred in response to the request. Each cell has at least a data placement table that indicates on which cell the requested data resides and a data direction table that indicates the shortest path for communicating with a cell. It has a function to issue data access requests and a function to relay data.

第3図は従来方式によるセル構成例を示している。セル
2-i内には,ローカル・バス12と通信バス13とが存在し
ている。ローカル・バス12に対して,プロセッサ10とメ
イン・メモリ11とが連繋されている。また通信バス13に
は,複数の送信ポート22-iと,複数の受信ポート23-iと
が連繋されている。
FIG. 3 shows an example of a cell structure according to the conventional method. cell
A local bus 12 and a communication bus 13 are present in 2-i. The processor 10 and the main memory 11 are connected to the local bus 12. Further, the communication bus 13 is connected to a plurality of transmission ports 22-i and a plurality of reception ports 23-i.

両者のバス12と13との間に,通信制御部24が存在し,当
該通信制御部24には,DMAコントローラ(DMAC)14,アド
レス・レジスタ(AR)15,リクエスト・レジスタ(RR)1
6,リクエスト・マルチプレクサ(REQ MPX)17,リクエス
ト・コントローラ(REQCTL)18,リクエスト・デマルチ
プレクサ(REQDMPX)19,アドレス変換回路(Rdid→ME
M)20,通信制御部全体の制御を行うマイクロシーケンサ
21が存在している。なお,本発明にいうデータ配置テー
ブルやデータ方向テーブルは,例えばメイン・メモリ11
上に保持されていると考えてよい。
A communication control unit 24 exists between both buses 12 and 13, and the communication control unit 24 includes a DMA controller (DMAC) 14, an address register (AR) 15, and a request register (RR) 1.
6, request multiplexer (REQ MPX) 17, request controller (REQCTL) 18, request demultiplexer (REQDMPX) 19, address conversion circuit (Rdid → ME
M) 20, Micro sequencer that controls the entire communication control unit
There are 21. The data arrangement table and the data direction table referred to in the present invention are, for example, the main memory 11
Think of it as held on.

分散して記憶されているデータは,複数のセル2-i上の
メイン・メモリ11上に記憶されており,例えば4KBの記
憶単位毎にデータid(以下データidの意味でdidとい
う)が付けられて管理されている。言うまでもなく,did
は全セルにわたって一意にデータを指示する。
The data stored in a distributed manner is stored in the main memory 11 on a plurality of cells 2-i. For example, a data id (hereinafter referred to as “did” in the meaning of data id) is attached to each storage unit of 4 KB. Is managed. Needless to say, did
Indicates data uniquely across all cells.

各送信ポート22-iや受信ポート23-iには,「1」から始
まるアドレス(以下ポートidの意味でpidという)がつ
けられている。
An address starting from "1" (hereinafter referred to as pid in the meaning of port id) is attached to each of the transmission port 22-i and the reception port 23-i.

自己のセルがデータ・アドレス要求を行う場合には,リ
クエスト・レジスタ(RR)16において,上記pidをpid=
0とし,かつデータ・アクセス要求元(自己のセルid即
ちセルidを意味するcidを自己のものとする)と,当該
データ・アクセス要求の送り先(上記cidを「0」ない
しNとして与える−なお所望するデータが自己のセル上
のメイン・メモリ11上に存在している場合に上記「0」
を与える)とを与える。
When the own cell makes a data address request, the above pid is set to pid = in the request register (RR) 16.
0, and the data access request source (the own cell id, that is, the cid meaning the cell id is its own) and the destination of the data access request (the above cid is given as "0" or N ---) If the desired data exists in the main memory 11 on its own cell, the above "0"
Give) and give.

セル間の通信に当っては,データ・アクセス要求の場合
には要求didが転送され,データの場合には当該データ
についてのdidとデータとが転送され両者は各ポートに
おいて区別して識別することができる。
In communication between cells, the requested did is transferred in the case of a data access request, and the did and the data of the data are transferred in the case of data, and both can be distinguished and identified at each port. it can.

プロセッサ10がデータ・アクセス要求を行うに当って
は,上記の如くリクエスト・レジスタ(RR)16にセット
すると共に,要求するデータの格納先をアドレス・レジ
スタ(AR)15にセットする。他のセルからのデータ・ア
クセス要求と自己プロセッサ10からのデータ・アクセス
要求とは,上記didと上記pidとの対を要求didや要求pid
を意味するRdidとRpidとの対として,リクエスト・マル
チプレクサ(REQ MPX)17においてキューイングされ,1
つずつ取出されてリクエスト・コントローラ(REQCTL)
18に導びかれる。
When the processor 10 makes a data access request, the processor 10 sets the request register (RR) 16 as described above and sets the storage destination of the requested data in the address register (AR) 15. The data access request from another cell and the data access request from the self-processor 10 are the request did and the request pid for the pair of the did and the pid.
Is queued in the request multiplexer (REQ MPX) 17 as a pair of Rdid and Rpid that means 1
Request controller (REQCTL) taken out one by one
Guided to 18.

当該リクエスト・コントローラ(REQCTL)18は,上記Rd
idとRpidとの対を受取ると,次の如き処理を行う。即
ち, (1)上述のデータ配置テーブルを上記Rdidをキーとし
て参照し,所望されるデータを保持しているセルのセル
id(cid)を求める。
The request controller (REQCTL) 18 is Rd above.
When the id / Rpid pair is received, the following processing is performed. That is, (1) The cell of the cell holding the desired data by referring to the above-mentioned data arrangement table using the above Rdid as a key
Find the id (cid).

(2)上述のデータ方向テーブルを上記cidをキーとし
て参照し,当該所望されるデータをもっているセルに対
応するポートid(Opid)を求める。
(2) The above-mentioned data direction table is referenced with the above cid as a key, and the port id (Opid) corresponding to the cell having the desired data is obtained.

(3)Opid=0(この場合には,要求される即ち所望さ
れるデータを自己セルがもっていることを意味する)な
らば,(i)アドレス変換回路Rdid→MEM)20を用いて,
Rdidから自己のメイン・メモリ11に対するアドレスへの
変換を行い,(ii)Rpid=0(この場合には,要求を発
したのは自己セルであることを意味する)ならば,上記
アドレス変換回路20で得たアドレスにおけるメイン・メ
モリ11上の内容をアドレス・レジスタ(AR)15にて指示
されるメイン・メモリ11上のアドレスへ転送するよう
に,DMAコントローラ14を起動し,(iii)Rpid≠0(こ
の場合には,他セルが要求を発したことを意味する)な
らば,アドレス変換回路20で得たアドレスにおけるメイ
ン・メモリ11上の内容を,上記Rpidで指示されるポート
に対してデータ転送を行うように,DMAコントローラ14を
起動する。
(3) If Opid = 0 (in this case, it means that the self cell has the required or desired data), (i) Address conversion circuit Rdid → MEM) 20 is used.
If the address is converted from Rdid to its own main memory 11 and (ii) Rpid = 0 (in this case, it is the self cell that issued the request), the above address conversion circuit Start the DMA controller 14 so that the contents in the main memory 11 at the address obtained in 20 are transferred to the address in the main memory 11 designated by the address register (AR) 15, and (iii) Rpid If ≠ 0 (in this case, it means that another cell has issued a request), the contents on the main memory 11 at the address obtained by the address conversion circuit 20 are transferred to the port designated by the Rpid. The DMA controller 14 is activated so as to transfer the data.

(4)Opid≠0(この場合には,自己セルはそのデータ
をもっていない)ならば,当該Opidが示すポートからRd
idに対応するデータ・アクセス要求を送信する。
(4) If Opid ≠ 0 (in this case, the own cell does not have the data), Rd from the port indicated by the relevant Opid
Send the data access request corresponding to id.

またデータを受信した場合においては,次の如き処理を
行う。即ち, (5)受信したデータのdidを上記リクエスト・レジス
タ(RR)16の内容と比較する。同じならば自己セルが要
求したデータであり,受信ポートからアドレス・レジス
タ(AR)15が示すメイン・メモリ11上のアドレスへデー
タ転送を行うように,DMAコントローラ14を起動する。
When data is received, the following processing is performed. That is, (5) the did of the received data is compared with the content of the request register (RR) 16. If they are the same, it is the data requested by the own cell, and the DMA controller 14 is activated so that the data is transferred from the receiving port to the address on the main memory 11 indicated by the address register (AR) 15.

(6)同じでなければ,このデータは,以前に他セルか
らの要求を中継したものの返事に当るものであることか
ら,受信ポートから,所望する送信ポートへのデータ転
送を行うように,DMAコントローラ14を起動する。
(6) If they are not the same, this data corresponds to a reply of a request from another cell previously, so DMA is performed so that data is transferred from the receiving port to the desired transmitting port. Start the controller 14.

〔発明が解決しようとする問題点〕[Problems to be solved by the invention]

上記第3図を参照して説明した従来の方式の場合,セル
の個数が数100ないし数1000と増大するにつれて,或る
セルが他のセルに存在するデータをアクセスするに当っ
て,セル間での通信の行われる平均回数が増大してしま
い,オーバヘッドが非所望に大となる。
In the case of the conventional method described with reference to FIG. 3 above, as one cell accesses data existing in another cell as the number of cells increases to several hundreds to several thousands, inter-cell communication is performed. The average number of times communication is performed increases, and the overhead becomes undesirably large.

本発明は,他セルに対して行うデータ・アクセルに当っ
てのプロセッサ間通信のためのオーバヘッドやデータ中
継のためのオーバヘッドを減少することを目的としてい
る。
An object of the present invention is to reduce the overhead for communication between processors and the overhead for data relay in the data accelerator performed for other cells.

〔問題点を解決するための手段〕[Means for solving problems]

第1図は本発明の原理構成図を示す。図中の符号1はホ
スト計算機,2-iはセル,3-iはデータ配置テーブルであっ
てdidで指示されるデータが保持されるセルを特定する
情報を格納しているもの,4-iはデータ方向テーブルであ
って或るセルと通信するための最短経路を指示する情報
を格納しているもの,5-iは本発明において用意されるキ
ャッシュ・メモリを表わしている。また符号6はコマン
ド・バスであってホスト計算機と各セルとの間でのコマ
ンドを交信するためのもの,7は各セル間の交信バスを表
わしている。
FIG. 1 shows the principle configuration of the present invention. In the figure, reference numeral 1 is a host computer, 2-i is a cell, 3-i is a data arrangement table which stores information for identifying the cell holding the data indicated by did, 4-i Is a data direction table which stores information indicating the shortest path for communicating with a cell, and 5-i represents a cache memory prepared in the present invention. Reference numeral 6 is a command bus for communicating commands between the host computer and each cell, and 7 is a communication bus between each cell.

各セル2-iにもうけられるキャッシュ・メモリ5-iには,
例えば(i)自己セル2-iが最近利用したデータや,(i
i)他セル2-jが行ったデータ・アクセス要求に対応した
データについて,当該データが自己セル2-iを経由した
場合における当該データを保持するようにされる。
The cache memory 5-i for each cell 2-i contains
For example, (i) data recently used by self-cell 2-i, (i
i) Regarding the data corresponding to the data access request made by the other cell 2-j, the data when the data passes through the self cell 2-i is held.

言うまでもなく,各セル2-iは,第3図を参照して説明
した従来の方式の場合におけるプロセッサ10,メイン・
メモリ11,通信制御部24や,送信ポート22-iや受信ポー
ト23-iなどをそなえている。
Needless to say, each cell 2-i includes a processor 10 and a main unit in the case of the conventional method described with reference to FIG.
It has a memory 11, a communication control unit 24, a transmission port 22-i, a reception port 23-i, and the like.

〔作用〕[Action]

データ・アクセスに当っては,次のように行われる。即
ち, (1)今セル2-1のプログラムが或るデータを必要とし
たとする。
Data access is performed as follows. That is, (1) It is assumed that the program of cell 2-1 now needs some data.

(2)セル2-1は,データ配置テーブル3-1を参照して,
所望するデータが例えばセル2-12に存在していることを
知る。
(2) Cell 2-1 refers to the data arrangement table 3-1 and
Know that the desired data resides in cells 2-12, for example.

(3)自己のキャッシュ・メモリ5-1上に当該所望する
データが存在していれば,そのデータをプログラムへ返
して終る。
(3) If the desired data exists in its own cache memory 5-1, the data is returned to the program and the process ends.

(4)自己のキャッシュ・メモリ5-1上に存在していな
い場合には,セル2-1は,セル2-12に対してデータ・ア
クセス要求を送るために,データ方向テーブル4-1を参
照し,図示の場合にはセル2-2またはセル2-5の方向が良
いことを知る。そして,今の場合にセル2-2を選んだと
する。
(4) If it does not exist in its own cache memory 5-1, cell 2-1 uses data direction table 4-1 to send a data access request to cell 2-12. Referring to the drawing, it is known that the direction of the cell 2-2 or the cell 2-5 is good. And, in the present case, it is assumed that cell 2-2 is selected.

(5)セル2-1は,セル2-2に対してデータ・アクセス要
求を送り,データが送られてくるのを待つ。
(5) Cell 2-1 sends a data access request to cell 2-2 and waits for data to be sent.

(6)セル2-2は,データ・アクセス要求を受信する
と,そのデータが自己のキャッシュ・メモリ5-2内にあ
るか否かを調べる。
(6) Upon receiving the data access request, the cell 2-2 checks whether the data is in its own cache memory 5-2.

(7)キャッシュ・メモリ5-2内にあれば,そのデータ
をセル2-1に返して終る。
(7) If it is in the cache memory 5-2, the data is returned to the cell 2-1 to finish.

(8)キャッシュ・メモリ5-2内になければ,セル2-12
にデータ・アクセス要求を送るために,データ方向テー
ブル4-2を調べ,例えばセル2-3に対してデータ・アクセ
ス要求を発して終る。
(8) Cell 2-12 if not in cache memory 5-2
The data direction table 4-2 is checked in order to send the data access request to the cell, and the data access request is issued to, for example, the cell 2-3, and the process ends.

(9)以下,セル2-3,セル2-4,セル2-8が上記セル2-2の
場合と同様な処理を行い,データ・アクセス要求がセル
2-12に至る。
(9) Hereafter, the cell 2-3, the cell 2-4, and the cell 2-8 perform the same processing as in the case of the cell 2-2, and the data access request is issued to the cell.
It reaches 2-12.

(10)セル2-12は,自己のもつデータについてその要求
がきたことを知ると,メイン・メモリ11から所望のデー
タを読出し,データ・アクセス要求がきた方向にそのデ
ータを送る。
(10) When the cell 2-12 learns that its own data has been requested, it reads the desired data from the main memory 11 and sends the data in the direction of the data access request.

(11)セル2-8は,セル2-12からセル2-1向けのデータを
受信すると,自己のキャッシュ・メモリ5-8に当該デー
タを登録する。キャッシュ・メモリ5-8が満杯であった
場合には,最も古いデータまたは最も使用頻度の少ない
データを捨てて新しいデータを登録する。
(11) When the cell 2-8 receives the data for the cell 2-1 from the cell 2-12, it registers the data in its own cache memory 5-8. If cache memory 5-8 is full, discard the oldest or least recently used data and register new data.

(12)更にセル2-8は,データ・アクセス要求のあった
側のセル2-4の方向へデータを返送する。
(12) Further, the cell 2-8 returns the data in the direction of the cell 2-4 on the side where the data access request is made.

(13)以下,セル2-4,2-3,2-2が上記セル2-8の場合と同
様な処理を行い,データはセル2-1に送られる。
(13) After that, the cells 2-4, 2-3, and 2-2 perform the same processing as in the case of the cell 2-8, and the data is sent to the cell 2-1.

(14)セル2-1は,受取ったデータをキャッシュ・メモ
リ5-1に登録すると共に,プログラムへ渡す。
(14) The cell 2-1 registers the received data in the cache memory 5-1 and passes it to the program.

上記の如く,データ・アクセス要求についての転送とそ
れに対応するデータについての転送とが行われたため,
自己のセル上のキャッシュ・メモリ中,あるいはデータ
・アクセス要求が経由してゆくセル上のキャッシュ・メ
モリ中に,所望するデータが存在していれば,データ・
アクセスのための距離が小となる。
As described above, since the transfer of the data access request and the transfer of the corresponding data are performed,
If the desired data exists in the cache memory of its own cell or in the cache memory of the cell through which the data access request passes, the data
The distance for access is small.

なお,上記説明においては,或るセルがデータを読取る
場合について説明した。勿論,データを書込む場合につ
いても同様の処理を行うことができないわけではない
が,データ・アクセス要求が経由した各セルにおけるキ
ャッシュ・メモリ上のデータの一部を書替えたり無効に
したりする処理は,必らずしも簡単ではない。しかし,
例えば,並列計算機によって,CAD用のデータや画像デー
タなどを取扱う場合には,データの書込みにくらべて読
出しの頻度が極端に大であり,かつ特定のセルのみが特
定のセルを利用する形の頻度が大である。このために,
上記第1図を参照して説明した如き処理も十分に利用価
値がある。勿論,データの書き替えに伴って必要となる
キャッシュ・コヒーレンシーの動作を正しくとらせるこ
とは,周知の手段例えばブロードキャスト処理などがあ
り,処理時間の長いコストの高い処理を必要とするが,
不可能なことではない。
In the above description, the case where a certain cell reads data has been described. Of course, the same process cannot be performed when writing data, but the process of rewriting or invalidating a part of the data in the cache memory in each cell through which the data access request passes is not possible. , It is not always easy. However,
For example, when handling CAD data or image data with a parallel computer, the frequency of reading is extremely high compared to the writing of data, and only certain cells use certain cells. The frequency is high. For this,
The processing described with reference to FIG. 1 above is also sufficiently useful. Of course, there is a well-known means such as a broadcast process for properly performing the cache coherency operation necessary for rewriting data, which requires a long processing time and a high cost process.
It's not impossible.

〔実施例〕〔Example〕

第2図は本発明の場合におけるセルの一実施例を示す。
図中の符号10ないし24は第3図に対応しており,5-i-1は
キャッシュ・メモリにおけるデータ格納部,5-i-2はキャ
ッシュ・メモリにおけるタグ格納部を表わしている。
FIG. 2 shows an embodiment of a cell in the case of the present invention.
Reference numerals 10 to 24 in the figure correspond to FIG. 3, 5-i-1 represents a data storage section in the cache memory, and 5-i-2 represents a tag storage section in the cache memory.

データ・アクセス要求に当って,次のように処理が行わ
れる。
The data access request is processed as follows.

(1)データ配置テーブル3-iをRdidをキーとして参照
し,cidを求める。
(1) The data arrangement table 3-i is referenced with Rdid as a key to obtain cid.

(2)データ方向テーブル4-iを,cidをキーとして参照
し,Opidを求める。
(2) The data direction table 4-i is referenced with the cid as a key, and the opid is obtained.

(3)Opid=0ならば,(i)アドレス変換回路20を用
いて,Rdidから自己のメイン・メモリ11に対するアドレ
スへの変換を行い,(ii)Rpid=0ならば,上記アドレ
ス変換回路20で得たアドレスにおけるメイン・メモリ11
上の内容をアドレス・レジスタ(AR)15にて指示される
メイン・メモリ11上のアドレスへ転送するように,DMAコ
ントローラ14を起動し,(iii)Rpid≠0ならば,アド
レス変換回路20で得たアドレスにおけるメイン・メモリ
11上の内容を,上記Rpidで指示されるポートに対してデ
ータ転送を行うように,DMAコントローラ14を起動する。
(3) If Opid = 0, (i) the address conversion circuit 20 is used to convert the Rdid to an address for its own main memory 11, and (ii) if Rpid = 0, the address conversion circuit 20 Main memory at the address obtained in 11
Start the DMA controller 14 so that the above contents are transferred to the address in the main memory 11 designated by the address register (AR) 15. If (iii) Rpid ≠ 0, the address conversion circuit 20 Main memory at the obtained address
11. The DMA controller 14 is activated so that the above contents are transferred to the port indicated by the Rpid.

(4)Opid≠0ならば,(i)Rdidをキーとしてキャッ
シュ・メモリにおけるタグ格納部5-i-2を参照し,(i
i)ヒットしたら,キャッシュ・メモリにおけるデータ
格納部5-i-1からのデータを所望するポートへ転送する
ように,DMAコントローラ14を起動し,(iii)ヒットし
なかったならば,所望するポートからRdidに対応するデ
ータ・アクセス要求を送信する。
(4) If Opid ≠ 0, (i) Rdid is used as a key to refer to the tag storage unit 5-i-2 in the cache memory, and (i
i) On hit, activate the DMA controller 14 so that the data from the data storage unit 5-i-1 in the cache memory is transferred to the desired port, and (iii) If no hit, enter the desired port Sends a data access request corresponding to Rdid.

またデータを受信した場合においては,次の如き処理を
行う。即ち, (5)受信したデータのdidを上記リクエスト・レジス
タ(RR)16の内容と比較する。同じならば自己セルが要
求したデータであり,受信ポートからアドレス・レジス
タ(AR)15が示すメイン・メモリ11上のアドレスへデー
タ転送を行うように,DMAコントローラ14を起動する。
When data is received, the following processing is performed. That is, (5) the did of the received data is compared with the content of the request register (RR) 16. If they are the same, it is the data requested by the own cell, and the DMA controller 14 is activated so that the data is transferred from the receiving port to the address on the main memory 11 indicated by the address register (AR) 15.

(6)同じでなければ,このデータは以前に他セルから
の要求を中継したものの返事に当るものであることか
ら,受信ポートから所望する送信ポートへのデータ転送
を行うように,DMAコントローラ14を起動する。
(6) If they are not the same, this data corresponds to a reply from a request from another cell previously, so the DMA controller 14 should perform data transfer from the receiving port to the desired transmitting port. To start.

(7)受信したデータをキャッシュ・メモリ5-i上に登
録する。満杯であった場合には,他のデータを削除して
登録する。当該削除に当ってのアルゴリズムとしては,
公知のLRUや,FIFOやランダム方式などを用いることがで
きる。
(7) Register the received data in the cache memory 5-i. If it is full, delete other data and register. The algorithm for this deletion is
Known LRU, FIFO, random method, etc. can be used.

〔発明の効果〕〔The invention's effect〕

以上説明した如く,本発明によれば,分散保持されてい
るデータをアクセスするに当って,特にデータ読出しに
関して,処理速度を向上することができる。
As described above, according to the present invention, it is possible to improve the processing speed in accessing the data held in a distributed manner, particularly regarding the data reading.

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

第1図は本発明の原理構成図,第2図は本発明の場合に
おけるセルの一実施例,第3図は従来方式によるセル構
成例を示す。 図中の符号1はホスト計算機,2-iはセル,3-iはデータ配
置テーブル,4-iはデータ方向テーブル,5-iはキャッシュ
・メモリ,10はプロセッサ,11はメイン・メモリ,22-iは
送信ポート,23-iは受信ポート,24は通信制御部を表わ
す。
FIG. 1 is a block diagram showing the principle of the present invention, FIG. 2 is an embodiment of a cell in the case of the present invention, and FIG. In the figure, reference numeral 1 is a host computer, 2-i is a cell, 3-i is a data allocation table, 4-i is a data direction table, 5-i is a cache memory, 10 is a processor, 11 is main memory, and 22. -i is a transmission port, 23-i is a reception port, and 24 is a communication control unit.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】プロセッサ(10)とメイン・メモリ(11)
と2つ以上の通信ポート(22,23)とを少なくともそな
えたセル(2-i)が,上記通信ポート(22,23)を介して
他のセル(2-j)と接続されてなる並列計算機におい
て, 上記個々のセル(2-i)に対して, 個々のデータがいずれのセル(2)上に存在するかを指
示するデータ配置テーブル(3-i)と, 或るセルと通信するための好ましい経路を指示する情報
を格納するデータ方向テーブル(4-i)と, 少なくとも自己のセル(2-i)が必要としたデータにつ
いては当該データを保持するキャッシュ・メモリ(5-
i)と をもうけ, 上記1つのセル(2-i)が所望するデータをアクセスし
た際に,当該データをアクセスするデータ・アクセス要
求が通過するセル(2-k)において,当該通過するセル
(2-k)上におけるキャッシュ・メモリ(5-k)中に当該
所望するデータが存在していれば,当該存在していたデ
ータを,上記データ・アクセス要求を発したセル(2-
i)に転送するようにした ことを特徴とする並列計算機キャッシュ・メモリ制御方
式。
1. A processor (10) and a main memory (11)
And a cell (2-i) having at least two or more communication ports (22,23) connected to another cell (2-j) via the communication port (22,23) in parallel. In the computer, for each individual cell (2-i), the data arrangement table (3-i) that indicates which cell (2) the individual data exists on, and to communicate with a certain cell A data direction table (4-i) that stores information that indicates a preferred route for storing the data, and a cache memory (5--) that holds the data required by at least its own cell (2-i).
i) and, when one cell (2-i) accesses the desired data, the cell (2-k) through which the data access request to access the data passes If the desired data exists in the cache memory (5-k) on the 2-k), the existing data is transferred to the cell (2-) that issued the data access request.
The parallel computer cache memory control method is characterized in that it is transferred to i).
JP62205750A 1987-08-19 1987-08-19 Parallel computer cache memory control system Expired - Lifetime JPH0750466B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62205750A JPH0750466B2 (en) 1987-08-19 1987-08-19 Parallel computer cache memory control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62205750A JPH0750466B2 (en) 1987-08-19 1987-08-19 Parallel computer cache memory control system

Publications (2)

Publication Number Publication Date
JPS6448166A JPS6448166A (en) 1989-02-22
JPH0750466B2 true JPH0750466B2 (en) 1995-05-31

Family

ID=16512036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62205750A Expired - Lifetime JPH0750466B2 (en) 1987-08-19 1987-08-19 Parallel computer cache memory control system

Country Status (1)

Country Link
JP (1) JPH0750466B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5020059A (en) * 1989-03-31 1991-05-28 At&T Bell Laboratories Reconfigurable signal processor
US7500039B2 (en) 2005-08-19 2009-03-03 International Business Machines Corporation Method for communicating with a processor event facility
US7778271B2 (en) 2005-08-19 2010-08-17 International Business Machines Corporation Method for communicating instructions and data between a processor and external devices
US7386636B2 (en) * 2005-08-19 2008-06-10 International Business Machines Corporation System and method for communicating command parameters between a processor and a memory flow controller

Also Published As

Publication number Publication date
JPS6448166A (en) 1989-02-22

Similar Documents

Publication Publication Date Title
US5490253A (en) Multiprocessor system using odd/even data buses with a timeshared address bus
JP2602599B2 (en) Multiprocessor data processing system and method of operation thereof
JPH04246745A (en) Memory access system
JP2000268006A (en) Multiprocessor system
CN1307569C (en) Method and apparatus for transferring data at high speed using direct memory access in multi-processor environments
JP2746530B2 (en) Shared memory multiprocessor
JP2561261B2 (en) Buffer storage access method
JPH0319976B2 (en)
JPH0750466B2 (en) Parallel computer cache memory control system
JPH0212361A (en) Parallel computer system using hierarchical bus
JPH0511337B2 (en)
JPH09167143A (en) Message reception control system
JPS63223846A (en) Cache memory
JPH10240695A (en) Operation using local storage device of plural unprocessed requests in sci system
JPH0883216A (en) Information processor and its method
JP2971119B2 (en) High-speed data transfer method in multiple processor system
JP2798140B2 (en) Virtual space control method
JPH0619855A (en) Method and device for queueing message
JP2001273191A (en) Computer system
JPH0822418A (en) Virtual address space managing device
JP2696899B2 (en) Multiprocessor system
JPH0612363A (en) Memory controller and multiprocessor system
JPH01154272A (en) Multiprocessor device
JP2001014283A (en) Computer system
JPH0247739A (en) Control system for main storage device