JPH02294866A - Storage control system - Google Patents

Storage control system

Info

Publication number
JPH02294866A
JPH02294866A JP1116291A JP11629189A JPH02294866A JP H02294866 A JPH02294866 A JP H02294866A JP 1116291 A JP1116291 A JP 1116291A JP 11629189 A JP11629189 A JP 11629189A JP H02294866 A JPH02294866 A JP H02294866A
Authority
JP
Japan
Prior art keywords
address
search
information
main memory
faa
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.)
Granted
Application number
JP1116291A
Other languages
Japanese (ja)
Other versions
JPH0778786B2 (en
Inventor
Tadaaki Isobe
磯部 忠章
Toshiko Isobe
磯部 敏子
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.)
Hitachi Ltd
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering Co 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 Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP1116291A priority Critical patent/JPH0778786B2/en
Priority to DE19904014733 priority patent/DE4014733A1/en
Publication of JPH02294866A publication Critical patent/JPH02294866A/en
Publication of JPH0778786B2 publication Critical patent/JPH0778786B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems

Abstract

PURPOSE:To efficiently execute the coincidence control between an MS and a BS by a small number of FAAs by retrieving whether information in an area is inputted to the other processor or not, and executing the control so as to nullify the information concerned in the case it is inputted. CONSTITUTION:A storage area of a main storage device (MS) 1 is extracted, whether information in the area is inputted to buffer storage devices (BS) 31, 41 of the other processor or not is retrieved, and in the case it is inputted, the control is executed so as to nullify the information concerned. That is, this system is provided with a mechanism 250 for extracting an address for showing a stored area by detecting a common bit position and a value from addresses of plural store requests issued from processors VP0, VP1, a mechanism 251 for retrieving successively management tables 23, 24 of the BS in order to decide whether information of an extracted address area is inputted to the BSs 31, 41 in each scalar processor 3, 4 or not, and mechanisms 23 - 26 for nullifying it in the case it is inputted. In such a way, the coincidence security control can be executed normally by a small number of second management tables (FAA).

Description

【発明の詳細な説明】 C産業上の利用分野〕 本発明は記憶制御方式に関し、特にマルチプロセッサシ
ステムにおける共有記憶装置とバッファ記憶装置の一致
制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION Field of Industrial Application The present invention relates to a storage control system, and more particularly to a coherence control system between a shared storage device and a buffer storage device in a multiprocessor system.

〔従来技術〕[Prior art]

近年の計算機システムでは、主記憶装置(MainSt
rage,以下MSと略記する)の内容をMSよりも高
速の素子で構成したバッファ(又はヰヤッシ:L)記憶
装置(Suffer Strage,以下BSと略記す
る)に格納しておき、処理装置からの高速なアクセスを
可能にしている。
In recent computer systems, main memory (MainSt.
The contents of the Suffer Storage (hereinafter abbreviated as MS) are stored in a buffer (or storage: L) storage device (hereinafter abbreviated as BS) composed of elements faster than the MS, and the contents are stored at high speed from the processing device. It allows for easy access.

最近、各々にBSを備えた複数の命令プロセッサによっ
てMSが共有される、いわゆるマルチプロセッサシステ
ムが注目されているが、このようなマルチプロセッサシ
ステムでは、他の命令プロセッサからMSに対してスト
ア動作が行われた際に、MSとBSとの一致保証制御が
必要となる。
Recently, so-called multiprocessor systems in which an MS is shared by multiple instruction processors each equipped with a BS have been attracting attention. When this occurs, control to ensure consistency between the MS and BS is required.

かかる技術について記載されている例としては、特公昭
54−40182号公報がある。
An example of such a technique described is Japanese Patent Publication No. 54-40182.

上記公報に記載された方式によれば、BSにMS内のア
ドレスを登録しておく管理テーブル(Buffer^d
dress Array,  以下BAAと略記する)
を設けるとともに、これとは別個に独立して第2の管理
テーブル(Front Address Array,
以下FAAと略記する)を設けている。このFAAは、
他の命令プロセッサから参照されるストアアドレスチェ
ックのための管理テーブルであって、MSとBS間の一
致制御を高速に処理するものである。
According to the method described in the above publication, a management table (Buffer^d) in which addresses in the MS are registered in the BS.
(hereinafter abbreviated as BAA)
In addition to providing a second management table (Front Address Array,
(hereinafter abbreviated as FAA). This FAA is
This is a management table for checking store addresses that is referenced by other instruction processors, and is used to quickly process consistency control between MS and BS.

さらに最近では科学技術計算を高速に処理するために、
ベクトル処理装置(Vector Processor
以下VPと略記する)が用いられるようになってきてい
る。このvPは、ベクトルデータを保持するベクトルレ
ジスタ (Vector Register,以下VR
と略記する》と、上記ベクトルデータを演算する演算器
とをそれぞれ複数個備えている。このようなVPにおけ
る制御方式としては、一つのベクトル命令のベクトルデ
ータを複数グループの要素に分割し、各グループ毎に並
列に演算を実行する要素並列処理方式を採用しているも
のが多い。この場合には、VPからMSをアクセスする
際に、分割された要素単位に並列に複数のアクセス要求
制御装置(リクエスタ)に割当てて処理を行う。
Furthermore, in order to process scientific and technical calculations at high speed,
Vector Processor
(hereinafter abbreviated as VP) has come to be used. This vP is a vector register (hereinafter referred to as VR) that holds vector data.
and a plurality of arithmetic units that operate on the vector data. As a control method for such a VP, many adopt an element parallel processing method in which vector data of one vector instruction is divided into multiple groups of elements and operations are executed in parallel for each group. In this case, when accessing the MS from the VP, processing is performed by assigning the divided elements to a plurality of access request control devices (requesters) in parallel.

このようなVPとBSとを備えたスカラ処理装置(Sc
alar Processor,  以下SPと略記す
る)を各々1台ずつ備えたMS共有型システムにおいて
、vPからMSへのストア動作の処理に必要なFAAの
ハードウエア量を削減するための方式として、特願昭6
 3−3 8 0 0号に記載されたものがある。
A scalar processing device (Sc
Alar Processor (hereinafter abbreviated as SP) is used as a method for reducing the amount of FAA hardware required to process store operations from vP to MS in a shared MS system. 6
There is one described in No. 3-3800.

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

ところが、上記従来技術では、前述のような複数のVP
と複数のSPとからなるマルチプロセッサシステムに関
しては何ら考慮されていなかった。
However, in the above-mentioned conventional technology, multiple VPs as described above
No consideration was given to a multiprocessor system consisting of a processor and a plurality of SPs.

すなわち、1台のVPが発行したストアリクエストに対
しては、全SPのBSに対応するFAAを検索する必要
があり、そのために各リクエスタに対応した数だけのF
AAを設けるようにすると、(vp台数)X (SP台
数)分のFAAが必要となり、ハードウエア量が極端に
増大して、事実上、システムの実現が不可能になってし
まう。
In other words, for a store request issued by one VP, it is necessary to search for FAAs corresponding to the BSs of all SPs, and for this purpose, it is necessary to search for FAAs corresponding to the BSs of all SPs.
If AA is provided, FAA for (number of VPs) x (number of SPs) will be required, and the amount of hardware will increase extremely, making it virtually impossible to implement the system.

一方、FAAの数を少なくすると、FAA検索待ちのた
めの無駄な時間が大量に発生し、システムの性能が大幅
に低下してしまうといった不都合があった。
On the other hand, if the number of FAAs is reduced, there is a problem that a large amount of time is wasted waiting for FAA search, resulting in a significant drop in system performance.

本発明の目的は上記課題を解決し、複数のストアリクエ
スタを備えた複数のVPと、各々BSを備えた複数のS
Pと、これらのVPおよびSPにより共有されるMSか
ら構成されるマルチプロセッサシステムにおいて、小数
のFAAで効率的にMSとBSとの間の一致制御を行う
ことが可能な記憶制御方式を提供することにある。
An object of the present invention is to solve the above-mentioned problems, and to provide a plurality of VPs each having a plurality of store requestors and a plurality of Ss each having a BS.
To provide a storage control method capable of efficiently controlling consistency between MSs and BSs with a small number of FAAs in a multiprocessor system consisting of MSs shared by P and these VPs and SPs. There is a particular thing.

〔課題を解決するための手段〕[Means to solve the problem]

本発明の記憶制御方式は、主記憶装置と、主記憶装置を
共有する2以上のプロセッサとからなり各プロセッサは
上記主記憶装置の情報の一部の写しを保持するバッファ
記イ,キ装置を備えているマルチプロセッサシステムに
おいて、一つのプロセッサが所定の期間内に書き換えた
主記憶装置の記憶領域を抽出し、該領域内の情報が他の
プロセッサのバッファ記憶装置に取り込まれているか否
かを検索するとともに、取り込まれていた場合にはこの
バッファ記憶領域中の該当情報を無効化するように制御
するものである。
The storage control system of the present invention comprises a main storage device and two or more processors that share the main storage device, and each processor has a buffer storage device that holds a copy of a part of the information in the main storage device. In a multiprocessor system, one processor extracts a storage area of the main memory that has been rewritten within a predetermined period, and determines whether the information in the area has been taken into the buffer storage of another processor. In addition to searching, if the information has been retrieved, control is performed to invalidate the corresponding information in this buffer storage area.

すなわち、プロセッサから発行される複数のストアリク
エストのアドレスから共通のビット位置と値とを検出す
ることにより、ストアした領域を示すアドレスを抽出す
る機構と、該抽出したアドレス領域の情報が各SP内B
Sに取り込まれているか否かを判断するためにBSの管
理テーブルを順次検索する機構と、取り込まれていた場
合には当該情報を無効化する機構を備えるものである。
In other words, there is a mechanism for extracting an address indicating a stored area by detecting common bit positions and values from the addresses of multiple store requests issued by the processor, and a mechanism for extracting the address indicating the stored area, and information on the extracted address area within each SP. B
This system includes a mechanism for sequentially searching the management table of the BS to determine whether the information has been imported into S, and a mechanism for invalidating the information if it has been imported.

また、上記アドレス領域の検索を高速に処理するため、
検索専用に管理テーブル(FAA)を備えるものである
In addition, in order to process the search for the above address area at high speed,
A management table (FAA) is provided exclusively for searching.

さらに、抽出したアドレスでFAAの検索を行うよりも
個別のストアリクエストのアドレスでFAAを検索する
方が短時間に終了するか、もしくは効率的な無効化処理
が行える(過剰な無効化処理を低減できる)と判断され
る場合のために、ストアリクエストを発行するVPから
の指示により、上記二つの検索手段を切り換えて処理す
る機構を備えるものである。
Furthermore, searching for FAA using the address of an individual store request can be completed in a shorter time than searching for FAA using the extracted address, or more efficient invalidation processing can be performed (reducing excessive invalidation processing). In case it is determined that the store request is possible, a mechanism is provided for switching between the two search means and processing according to an instruction from the VP issuing the store request.

〔作用〕[Effect]

上記した手段によれば、VPが発行した複数個のストア
リクエストを少なくとも一つの抽出アドレスに縮退させ
て各SPに対応するFAAを検索する。これによって、
MS上のある領域が各SPのBSに取り込まれているか
否かを判定できるため、ストアリクエスタ対応にFAA
を設ける場合よりも小数のFAAで検索処理を正常に行
うことができる。
According to the above-described means, a plurality of store requests issued by a VP are reduced to at least one extraction address, and an FAA corresponding to each SP is searched. by this,
Since it can be determined whether a certain area on the MS has been imported into the BS of each SP, FAA
Search processing can be performed normally with a smaller number of FAA than in the case where FAA is provided.

また、vPが発行する一連のストアリクエストの数が少
なくて、アドレス抽出によるFAA検索が、個別のスト
アリクエストによるFAA検索よりも長時間必要になる
と判断される場合や、VPが発行する複数個のストアリ
クエストのアドレスが主記憶上の広範囲な領域に分散し
ており、アドレス抽出処理によるFAA検索では過剰に
BSの無効化処理が行われると判断される場合には、個
別のストアリクエストによるFAA検索処理に切り換え
るよう制御する。これによって、アドレス抽出処理によ
るFAA検索にともなう特定ケースでの処理時間の増大
、過剰な無効化処理の削減(システム性能の向上)を実
現することができる。
In addition, if the number of a series of store requests issued by a vP is small and it is determined that an FAA search using address extraction will require a longer time than an FAA search using individual store requests, or if the number of a series of store requests issued by a VP is If the address of the store request is distributed over a wide area in the main memory and it is determined that the FAA search using the address extraction process will result in excessive BS invalidation processing, the FAA search using the individual store request control to switch to processing. This makes it possible to increase processing time in specific cases associated with FAA search by address extraction processing and to reduce excessive invalidation processing (improving system performance).

〔実施例〕〔Example〕

まず、本発明の実施例を第2図に関して説明する。 First, an embodiment of the invention will be described with reference to FIG.

第2図は本発明の一実施例を示すベクトル処理装置のマ
ルチプロセッサシステムの主要部の構成を示すブロック
図である。
FIG. 2 is a block diagram showing the configuration of the main parts of a multiprocessor system of a vector processing device showing an embodiment of the present invention.

同図において、1はMSであり、該MSIは腹数(ここ
では2台)のSP3.4および複数のVP5.6によっ
て共有されている。2はMSIに対するSP3.4およ
びVP5.6からのリクエストを制御する記憶制御装置
(Storage Controller,  以下S
Cと略記する)である。
In the figure, 1 is an MS, and the MSI is shared by the number of SPs 3.4 (two in this case) and a plurality of VPs 5.6. 2 is a storage controller (S) that controls requests from SP3.4 and VP5.6 to MSI.
(abbreviated as C).

SP3は、BS31とこのBS31のMSI内のアドレ
スを登録しておくためのBAA30を備えている。また
VP5は一対のVR51Aと51Bとを有しており、こ
れらに対応したストアリクエスタ50A,50Bを備え
ている。上記VR5IA,51BはMSl上のデータ(
ベクトルデータ)の写しを保持するためのものであり、
上記SP3におけるBS31と同様の機能を有している
The SP3 includes a BS31 and a BAA30 for registering the address in the MSI of this BS31. Further, the VP5 has a pair of VRs 51A and 51B, and store requesters 50A and 50B corresponding to these VRs. The above VR5IA, 51B is the data on MSI (
vector data).
It has the same functions as the BS31 in SP3 described above.

ただし、各VR51A,51Bはレジスタであり、ソフ
トウエアにより管理され、BSのようなハードウェアに
よるMS1との情報の一致保証制御は行わない点が特徴
である。
However, each VR 51A, 51B is a register and is managed by software, and is characterized in that hardware such as a BS does not perform control to ensure consistency of information with the MS 1.

SP4およびVP6も上記に説明したSP3,VP6と
同種の構成となっている。すなわち、SP4はBAA4
0,BS41を備え、VP6はVR61A,VR61B
およびストアリクエスタ60A,60Bを備えており、
これらの機能は上記SP3およびVP5で説明したもの
と同様である。
SP4 and VP6 also have the same configuration as SP3 and VP6 described above. That is, SP4 is BAA4
0, Equipped with BS41, VP6 is VR61A, VR61B
and store requesters 60A and 60B.
These functions are similar to those described in SP3 and VP5 above.

本実施例において、上記VP5,6は、要素並列方式で
演算を実行する。たとえば、VP5でVR51A,51
BのデータをMSIのある領域に格納するストア命令が
発行されると、VR51A,51Bのデータを要素単位
に2分割して、第1要素はりクエスタ50A1第2要素
はりクエスタ50Bのように、二つのりクエスタに分割
して割り当てる。リクエスタ50A,50Bは、各々M
S1に対してストアリクエストを発行する。以上の処理
は、VP6においても同様である。
In this embodiment, the VPs 5 and 6 execute calculations in an element parallel manner. For example, in VP5, VR51A, 51
When a store command is issued to store the data of B in a certain area of the MSI, the data of VR51A, 51B is divided into two element by element, and the data of VR51A and 51B are divided into two parts, such as the first element is Questa 50A1 and the second element is Questa 50B. Divide and allocate to Tsuri questa. The requesters 50A and 50B each have M
A store request is issued to S1. The above processing is the same in VP6.

SC2は、BAA30および40の写しであるFAA2
3および24と、VP5.6が発行するストア命令の対
象領域が各SP内BSに取り込まれているか否かを検索
するための検索機構25.2 6 (Referenc
e tlnit,  以下REF25,26と略記する
)を備えている。このREF25,26には、各々のV
P5,6に対応するストアリクエスク50A,50B.
60A,60Bから送られてくる複数個のストアアドレ
スからストアしている領域アドレスを抽出する機構と、
その抽出アドレスを基に、BS31.41に該領域が取
り込まれているか否かを順次FAA内を検索する機構お
よび各BAA対応の検索専用FAAを備えている。
SC2 is FAA2 which is a copy of BAA30 and 40
3 and 24, and a search mechanism 25.2 6 (Reference
e tlnit (hereinafter abbreviated as REF25, 26). These REFs 25 and 26 contain respective V
Store requests 50A, 50B corresponding to P5, 6.
a mechanism for extracting a stored area address from multiple store addresses sent from 60A and 60B;
Based on the extracted address, it is provided with a mechanism that sequentially searches the FAA to determine whether or not the area has been taken into BS31.41, and a search-only FAA corresponding to each BAA.

まず、VP5から一つのベクトルストア命令が発行され
た場合について全体的な動作を説明する。
First, the overall operation when one vector store instruction is issued from the VP5 will be explained.

VP5で一つのベクトルストア命令が起動されると、要
素並列方式によりベクトルストアデータを複数個のスト
アリクエスタ50A,50Bに分割して割り当てる。複
数個のストアリクエスタ50A,50Bから発行される
ストアリクエストアドレスは、信号線5a,5bを介し
てSC2に送られてREF25にふいて順次送られてく
る複数個のアドレスの共通ビットを抽出する「領域アド
レス抽出処理」が行われる。ここで求められる抽出アド
レスは、該ベクトルストア命令が書き換えるMSIの領
域を示すものである。この抽出アドレスを基に、REF
25内に設けられた検索専用の二つのFAA (FAA
 2 3.2 6に各々対応する機構)をサーチする。
When one vector store instruction is activated in the VP5, vector store data is divided and allocated to a plurality of store requesters 50A and 50B using an element parallel method. The store request addresses issued from the plurality of store requesters 50A and 50B are sent to the SC2 via the signal lines 5a and 5b, and are passed to the REF 25 to extract the common bits of the sequentially sent addresses. "area address extraction processing" is performed. The extraction address obtained here indicates the area of the MSI to be rewritten by the vector store instruction. Based on this extracted address, REF
Two search-only FAAs (FAA
2, 3.2, and 6).

ここで、本システムのバッファ管理は、セットアソシア
ティブ方式を採用しているものとして、検索ではFΔΔ
のカラムアドレスを順次変化させて必要なエントリを調
査する。なお、この検索で通常の個別リクエストアドレ
スによるFAA検索と異なることは、個別リクエストに
よる検索が各カラムに登録されているアドレス全ビット
との比較を行うのに対して、抽出アドレスによる検索で
は、複数個のリクエストアドレスの中で変化しなかった
ビットだけを比較の対象とすることである。これによっ
て効率的な検索が可能となる。
Here, assuming that the buffer management of this system adopts the set associative method, in the search, FΔΔ
Examine the necessary entries by changing the column address in sequence. Note that this search is different from a normal FAA search using individual request addresses.A search using individual requests compares all bits of addresses registered in each column, whereas a search using extracted addresses compares all bits of addresses registered in each column. This means that only the bits that have not changed in the request addresses are compared. This enables efficient searching.

上記F A .A検索をしている間に、抽出アドレスと
一致したカラムが検出されると、BS内に取り込まれて
いるデータを無効化するために、FAA23または24
 (もしくは両方)に対して該カラムの無効化処理要求
が送出される。FAA23.24では、この要求を受け
取ると、自身の管理テーブル内の該当力ラムを無効化す
るとともに、REF25,26内のFAAおよびBAA
30,40に該当力ラムの無効化要求を送出する。BA
A30,40およびREF25.26内のFAAがこの
要求を受け取ると、各管理テーブル内の該当力ラムを無
効化する。ここで、REF25,26内で検索した結果
、無効化処理が必要となった場合でも、直接REF25
,26内のFAAを無効化せずに、一旦FAA23また
は24を介して無効化処理を行うのは、FAA23.2
4に対するSP3.4からのFAA登録処理との時間差
によるFAA23.24とREF25.26内のFAA
との内容の不一致を防ぐためである。
The above FA. During A search, if a column that matches the extracted address is detected, FAA23 or 24 is sent to invalidate the data imported into the BS.
(or both), an invalidation processing request for the column is sent. When FAA23.24 receives this request, it invalidates the corresponding power RAM in its own management table, and also disables the FAA and BAA in REF25 and REF26.
30 and 40, a request to invalidate the corresponding power RAM is sent. B.A.
When the FAAs in A30, 40 and REF 25.26 receive this request, they invalidate the appropriate power RAM in their respective management tables. Here, even if invalidation processing is required as a result of searching within REF25 and REF26, directly refer to REF25 and REF26.
, 26, and performs the invalidation process once via FAA 23 or 24. FAA 23.2
FAA23.24 and FAA in REF25.26 due to time difference with FAA registration processing from SP3.4 for 4
This is to prevent discrepancies in the content.

第8図(a)には、本実施例で採用しているBAA(F
AA)の構造を示している。本実施例におけるBS管理
方式では、セットアソシアティブ方式として、たとえば
ロウ数は2、カラム数は16とする。上記BSへのデー
タ登録単位は64バイトのブロックであり、テーブル内
の各エントリの登録アドレスは、21ビットである。第
8図ら〕には、実アドレスの各ビットと、バイトアドレ
ス.ブロック内アドレス,カラムアドレス,上位アドレ
スとの対応を示している。
FIG. 8(a) shows the BAA (F
The structure of AA) is shown. In the BS management method in this embodiment, the number of rows is 2 and the number of columns is 16, for example, as a set associative method. The unit of data registration to the BS is a 64-byte block, and the registration address of each entry in the table is 21 bits. Figure 8 et al.] show each bit of the real address and the byte address. It shows the correspondence between intra-block addresses, column addresses, and upper addresses.

第1図は、SC2におけるFAA,REF関連の詳細構
造を示したものである。
FIG. 1 shows the detailed structure related to FAA and REF in SC2.

SPO,SPIより信号線3a,3bを介して送られて
くるFAAへの登録要求(各SPのBS31.41への
取り込みにともなう)や無効化要求(MSへの書き込み
にともなう他SP内BSデータの無効化)を選択回路2
7が受け付:ナ、目的のFAA(FAA23またはFA
A24>に対する処理を行う。ここでSPO,SP1か
らの登録要求であれば、各々FAAO  (23),F
AAI(24)に対して登録の動作を行い、SPO,S
P1からの書き込みにともなう無効化要求に対しては、
各々FAAI (24),FAAO (23)で各書込
アドレスが登録されているか否かを検査し、登録されて
いた場合には、該エン} Uを無効化する。このような
FAA23.24に対する処理は、同様の要求が信号線
3a,3bを介してREF25内のFAA25A,25
BおよびREF26内のFAAに対して送られて実行さ
れる。
Registration requests to the FAA sent from SPO and SPI via signal lines 3a and 3b (accompanying the import into BS31.41 of each SP) and invalidation requests (accompanying writing to the MS, BS data in other SPs) Select circuit 2
7 is accepted: N, target FAA (FAA23 or FA
A24> is processed. Here, if the registration request is from SPO and SP1, FAAO (23) and F
Performs registration operation on AAI (24) and sends SPO, S
In response to an invalidation request associated with writing from P1,
Each of FAAI (24) and FAAO (23) checks whether each write address is registered, and if it is registered, invalidates the corresponding en}U. Such processing for the FAA 23.24 is performed when a similar request is sent to the FAA 25A, 25 in the REF 25 via the signal lines 3a, 3b.
B and the FAA in the REF 26 for execution.

一方、VPO,VPIから送られてくるストアリクエス
トアドレスは、vPOの場合、信号線5a,5bを介し
てアドレス抽出機構250に人力される。ここで複数個
のアドレスから共通ビット(値が同一のビット)を抜き
出した領域アドレスを抽出し、FAA検索制御機構25
1に送出する。
On the other hand, in the case of vPO, the store request address sent from VPO and VPI is manually input to address extraction mechanism 250 via signal lines 5a and 5b. Here, the area address where common bits (bits with the same value) are extracted from the multiple addresses is extracted, and the FAA search control mechanism 25
Send to 1.

このFAA検索制御機構251によって上記抽出アドレ
スが各FAA25A,25B内で検索される。この検索
処理で一致するエントリを検出した場合には、該エント
リの無効化要求を信号線25a,25bを介して目的の
FAΔ0(23)またはFAAI (24)に対して送
出する。選択回路27は、この要求を受け取ると、FA
A内の当該エン} IJの無効化処理を行い、その後、
BAA 30,40およびREF25,26内FAAと
同様の無効化処理要求を送出する。
This FAA search control mechanism 251 searches for the extracted address in each FAA 25A, 25B. If a matching entry is detected in this search process, a request to invalidate the entry is sent to the target FAΔ0 (23) or FAAI (24) via the signal lines 25a, 25b. Upon receiving this request, the selection circuit 27 selects the FA
The relevant en in A} Perform the IJ invalidation process, and then
The same invalidation processing request as the FAA in BAA 30, 40 and REF 25, 26 is sent.

以上の処理によってVPOから発行されたベクトルスト
ア要求にともなうSPO,SPI内BS31.41の無
効化動作が完了し、MSと各BS内のデータの一致性が
保証されることになる。なお、以上の処理はVPIから
のベクトルストア要求に対してもREF26を使用して
同様に処理される。
Through the above processing, the invalidation operation of the BSs 31 and 41 in the SPO and SPI in response to the vector store request issued by the VPO is completed, and the consistency of data in the MS and each BS is guaranteed. Note that the above processing is similarly performed using the REF 26 for a vector store request from the VPI.

第3図は、上記アドレス抽出機構250の詳細を示した
ものである。なお、アドレス抽出機構260についても
同様である。
FIG. 3 shows details of the address extraction mechanism 250. Note that the same applies to the address extraction mechanism 260.

信号線5a,5bを介して送られるVPO  (5)か
らの要求は、一旦先人先出型のスタック7071に入力
される。なお本実施例ではスタック70.71に対して
同時に人力される検索要求は、抽出アドレス検索要求と
個別リクエスト検索要求とが混在することのないように
、ストアリクエスタ50Δ,50B,60A,60Bを
制御している。このスタック70.71に人力された要
求は上記のように人力順に順次取り出され、以降の論理
に供給される。ここでスタックの出力である70a,7
1aはFAA検索アドレスであり、70b,7lbはF
AA検索要求、70c,71cは個別リクエスト検索要
求、70d,71dはアドレス抽出開始指示、70e,
71eはアドレス抽出終了指示である。
Requests sent from the VPO (5) via the signal lines 5a and 5b are temporarily input to the first-first-first-time stack 7071. Note that in this embodiment, the store requesters 50Δ, 50B, 60A, and 60B are controlled so that the search requests that are manually input to the stacks 70 and 71 at the same time are not mixed with extracted address search requests and individual request search requests. are doing. The requests manually entered into the stack 70, 71 are sequentially taken out in the order in which they were entered, as described above, and are supplied to the subsequent logic. Here the output of the stack is 70a, 7
1a is the FAA search address, and 70b and 7lb are FAA search addresses.
AA search request, 70c, 71c are individual request search requests, 70d, 71d are address extraction start instructions, 70e,
71e is an address extraction end instruction.

アドレス抽出処理は、個別リクエスト検索要求7Qc,
71Cがともに″0″である時に、スタック70.71
の要求を同時に処理することにより進められる。検索ア
ドレスは、選択回路75で702が選択されてレジスタ
76に入力される。
Address extraction processing includes individual request search request 7Qc,
When 71C are both "0", stack 70.71
This is accomplished by processing multiple requests simultaneously. The search address 702 is selected by the selection circuit 75 and input to the register 76 .

これと同時に、アドレス70aと71aとが比較回路7
2でビット毎に比較され、一致しているビットを″ 1
”、不一致のビットを20”としてバリッドビットレジ
スタ77に対して抽出バリツドビット情報としてセット
する。他の要求信号は、スタック70.71の出力70
b,7lb,70c.71c,70d,71d,70e
,71eを各々ORゲート746〜749で論理和をと
り、各々フリップフロップ770〜773にセットする
。アドレス抽出処理であることをORゲート74の負極
抽出が″ 1”になることで検出すると、O Rゲー 
ト 742,   743,  AND ゲー ト 7
 4 4745を介して各スタック70.71に対して
出力ポインタの更新を指示する。
At the same time, addresses 70a and 71a are
2 is compared bit by bit, and the matching bits are ``1
", the mismatch bit is set as 20" and is set in the valid bit register 77 as extracted valid bit information. Other request signals are output 70 of stack 70.71.
b, 7lb, 70c. 71c, 70d, 71d, 70e
, 71e are logically summed by OR gates 746-749, and set in flip-flops 770-773, respectively. When it is detected that the address extraction process is being performed by the negative extraction of the OR gate 74 becoming "1", the OR gate
742, 743, AND gate 7
4 4745 to instruct each stack 70.71 to update the output pointer.

次に、レジスタ76.77およびフリップフロップ77
0〜773に対してスタック70.71から取り出され
た要求は、これがアドレス抽出処理の開始指示付きのも
のであれば、この条件をANDゲート775で検出し、
抽出バリッドビット情報をレジスタ77の出力を選択す
るように選択回路79を制御してレジスタ781にセッ
トする。
Next, registers 76, 77 and flip-flop 77
If the request taken out from the stack 70.71 for 0 to 773 includes an instruction to start address extraction processing, this condition is detected by the AND gate 775,
The selection circuit 79 is controlled to select the output of the register 77 to set the extracted valid bit information in the register 781.

ここで検索アドレスについては毎回レジスタ76の値が
レジスタ780にセットされる。一旦抽出処理が開始さ
れると、順次送られて来る検索アドレスを比較回路78
で前回のアドレスとビット単位に比較する。その比較結
果が一致している場合には” 1”、不一致の場合には
”0″となる。この比較回路78の出力と、レジスタ7
7の出力である新たな抽出バリッドビット情報と、前回
の抽出バリッドビット情報であるレジスタ781の出力
とをビット毎にANDゲート784で論理積をとり、抽
出バリッドビッζ情報としてレジスタ781にセットす
る。この処理をアドレス抽出終了指示付要求が現れるま
で順次繰り返す。ANDゲ−}776で、アドレス抽出
終了指示を検出すると、フリップフロップ783を経由
して抽出アドレス検索要求250bとしてFAA検索機
構251に送出する。この時、レジスタ780,781
の値が、各々抽出アドレス2 5 0 a.抽出バリッ
ドビット情報250vとして同時に送出される。
Here, for the search address, the value of register 76 is set in register 780 every time. Once the extraction process is started, the search addresses that are sent sequentially are compared to the comparison circuit 78.
Compares bit by bit with the previous address. If the comparison results match, it will be "1", and if they do not match, it will be "0". The output of this comparison circuit 78 and the register 7
The new extracted valid bit information, which is the output of step 7, and the output of the register 781, which is the previous extracted valid bit information, are ANDed bit by bit by an AND gate 784, and the result is set in the register 781 as extracted valid bit ζ information. This process is sequentially repeated until a request with an address extraction end instruction appears. When the address extraction end instruction is detected in the AND game 776, it is sent to the FAA search mechanism 251 via the flip-flop 783 as an extracted address search request 250b. At this time, registers 780 and 781
, respectively, are the extracted addresses 2 5 0 a. It is simultaneously sent out as extracted valid bit information 250v.

一方、個別リクエスト検索要求を処理する場合は、スタ
ック70.71の要求を交互に取り出して以降の論理に
供給する。検索アドレス70a,71aの選択回路75
における選択は、1ビットカウンタを構成するフリップ
フロツプ73の出力によって制御される。フリップフロ
ツブ73の出力が″0”ならばアドレス70aが、また
”1″ならばアドレス71aが選択される。検索要求が
選択されると、フリップフロップ73の出力が″0″の
場合は、インバータ回路730→ANDゲー ト 7 
4 0 →O Rゲー ト 7 4 2→AND ゲー
 ト 744を経由してスタック70の出力ポインタの
更新を指示する。一方、フリップフロップ73の出力が
”1″の場合には、ANDゲート741→ORゲート7
43→ANDゲート745を介してスタック71の出力
ポインタの更新を指示する。
On the other hand, when processing individual request search requests, requests from the stacks 70 and 71 are taken out alternately and supplied to subsequent logic. Selection circuit 75 for search addresses 70a and 71a
The selection in is controlled by the output of flip-flop 73, which constitutes a 1-bit counter. If the output of the flip-flop 73 is "0", the address 70a is selected, and if the output is "1", the address 71a is selected. When the search request is selected, if the output of the flip-flop 73 is "0", the inverter circuit 730 → AND gate 7
40→OR gate 742→AND gate 744 to instruct the update of the output pointer of the stack 70. On the other hand, when the output of the flip-flop 73 is "1", the AND gate 741→OR gate 7
43 -> AND gate 745 to instruct the output pointer of the stack 71 to be updated.

さらに個別リクエスト検索要求の処理中は、ORゲート
74.746とANDゲート739を介して、1ビット
カウンタ (フリップフロツプ73)を更新する。
Furthermore, during processing of the individual request search request, a 1-bit counter (flip-flop 73) is updated via OR gates 74, 746 and AND gate 739.

次に、個別リクエスト検索要求がレジスタ76,フリッ
プフロップ770,771に取り出されると、フリップ
フロップ770,771の出力をANDゲート774を
介してフリップフロップ782にセットし、FAA検索
機構251に対して個別リクエスト検索要求信号250
Cを送出する。
Next, when the individual request search request is taken out to the register 76 and flip-flops 770, 771, the outputs of the flip-flops 770, 771 are set to the flip-flop 782 via the AND gate 774, and the individual requests are sent to the FAA search mechanism 251. Request search request signal 250
Send C.

この際、検索アドレス250aも、レジスタ76,78
0を経由してFAA検索機栂251に送出される。なお
、ここではバリッドビット情報は意味を持たない。
At this time, the search address 250a is also set to registers 76 and 78.
0 to the FAA search engine 251. Note that valid bit information has no meaning here.

第4図は、FAA検索機構251とFAA25A,25
Bの詳細を示している。
Figure 4 shows the FAA search mechanism 251 and FAA25A, 25
Details of B are shown.

まず、抽出アドレス検索の場合について、その動作を説
明する。アドレス抽出機構250から抽出アドレス検索
要求250bを受け取ると、検索処理中を示すフリップ
フロツブ806をセットするとともに、検索アドレス2
50aをレジスタ8oo,goiに、抽出バリッドビッ
ト情報をレジスタ802にそれぞれセットする。なお、
レジスタ802に人力する抽出バリッドビット情報は変
換回路813を介して一部変換を施す。この変換回路8
13の詳細を示したのが第5図である。当該回路では、
カラムアドレスの4ビットに対応するバリッドビット 
(上位からvQ,Vl,V2,V3)に対して、”00
00’.   1000”1100″,   1110
”.   1111″のビット列パターンに変換するも
のであり、上位ビットから”■”が連続する場合につい
てのみ対象ビットを“ 1″とするものである。すなわ
ち、ANDゲー}8132で、変換前の4ビットすべて
が1”であることを検出した時のみに、変換後の全ビッ
トを” 1″とし、ANDゲート8131で変換前の上
位3ビットが”l″のときに変換後の上位3ビットだけ
を″ 1″とし、さらにANDゲート8130で変換前
の上位2ビットが″1”のときに、変換後の上位2ビッ
トだけを”1”とし、変換前の上位1ビットが” 1”
のときに、変換後の上位1ビットだけを” 1″とする
。つまり、この処理は変換前のビット列中に”l”の間
に”0”があった場合に”0″のビット位置以下のビッ
トを”0”に変換するものである。
First, the operation in the case of extraction address search will be explained. When the extracted address search request 250b is received from the address extraction mechanism 250, the flip-flop 806 indicating that the search process is in progress is set, and the search address 2
50a are set in registers 8oo and goi, and extracted valid bit information is set in register 802, respectively. In addition,
The extracted valid bit information manually entered into the register 802 is partially converted via a conversion circuit 813. This conversion circuit 8
FIG. 5 shows the details of 13. In this circuit,
Valid bits corresponding to 4 bits of column address
For (vQ, Vl, V2, V3 from the top), “00
00'. 1000"1100", 1110
The bit string pattern is converted into a bit string pattern of ".1111", and the target bit is set to "1" only when "■" continues from the upper bit. In other words, only when the AND gate 8132 detects that all 4 bits before conversion are 1'', all bits after conversion are set to 1, and the AND gate 8131 sets the upper 3 bits before conversion to ``1''. 1'', only the upper 3 bits after conversion are set to ``1'', and when the upper 2 bits before conversion are set to ``1'' by AND gate 8130, only the upper 2 bits after conversion are set to ``1'', The upper 1 bit before conversion is “1”
When , only the high-order bit after conversion is set to "1". In other words, this process converts the bits below the bit position of "0" to "0" when there is "0" between "1" in the bit string before conversion.

また、レジスタ801に人力するカラムアドレスは、変
換後の抽出バリッドビット情報と、信号線250aを介
して送られて来る検索アドレス中のカラムアドレスとゲ
ート812で論理積をとり、さらに選択回路803で選
択して作成される。ここで、選択回路803は、抽出ア
ドレス検索要求250bを受け付ける時にのみ該ゲート
812の出力信号を選択するよう制御する。
In addition, the column address manually entered in the register 801 is determined by performing an AND operation on the extracted valid bit information after conversion and the column address in the search address sent via the signal line 250a at the gate 812, and then at the selection circuit 803. Selected and created. Here, the selection circuit 803 controls to select the output signal of the gate 812 only when accepting the extracted address search request 250b.

抽出アドレス検索に必要な情報が設定されると、直ちに
FAAの検索が開始される。ここでFAA23.24か
らのFAA25A,25Bへの登録/キャンセル要求が
なければ、カラムアドレス・上位アドレスが選択回路8
22〜825を介してFAA25A,25Bに送られて
管理テーブルを参照する。ここで、指示されるカラムア
ドレスに対応する管理テーブルのエントリを読み出して
、レジスタ802の抽出バリッドビット情報を基に、ア
ドレス比較回路25A0.25A1.25B0.25B
1で上位アドレスと比較する。
Once the information necessary for the extracted address search is set, the FAA search is immediately started. Here, if there is no registration/cancellation request from FAA23.24 to FAA25A, 25B, the column address/upper address is the selection circuit 8.
22 to 825 to the FAA 25A, 25B and refer to the management table. Here, the entry of the management table corresponding to the specified column address is read out, and based on the extracted valid bit information of the register 802, the address comparison circuit 25A0.25A1.25B0.25B
1 to compare with the upper address.

第6図は、アドレス比較回路25AO〜25B1の詳細
を示したものである。レジスタ800 (第4図参照)
からの上位アドレスと、FAAの管理テーブルから読み
出したアドレスをビット毎に排他的論理和ゲート900
〜902で比較し、各ゲートの出力と、ビット対応の抽
出バリッドビット情報と、ANDゲート910〜912
で論理積をとり、その出力をNORゲート920でまと
め、さらに検索処理中であることを示すフリップフロッ
プ806の出力をANDゲート807、ORゲー}81
0を介した信号とANDゲート930で論理積をとって
これを一致信号とする。
FIG. 6 shows details of the address comparison circuits 25AO to 25B1. Register 800 (see Figure 4)
Exclusive OR gate 900 extracts the upper address from the address and the address read from the FAA management table bit by bit.
~902, the output of each gate, extracted valid bit information corresponding to the bit, and AND gates 910~912
The logical AND is performed by the NOR gate 920, and the output of the flip-flop 806 indicating that the search process is in progress is processed by the AND gate 807 and the OR gate}81.
An AND gate 930 performs a logical product with the signal through 0 and uses this as a match signal.

この第6図に示す比較回路の機能は、抽出バリッドビッ
トが” 1″の位誼のアドレスビットについてのみ比較
対象として一致/不一致の判定を下すというものである
。該比較回路2 5AO〜25B1で一致を検出すると
、該エン} IJを無効化するために信号線25a,2
5bを介してFAA 23,24に無効化要求を送出す
る。
The function of the comparison circuit shown in FIG. 6 is to make a match/mismatch determination only with respect to address bits whose extracted valid bits are "1". When a match is detected in the comparison circuits 25AO to 25B1, the signal lines 25a and 25B1 are
5b to the FAA 23, 24.

一つのカラムアドレスの検索が終了すると、カラムアド
レスを加算回路804において″ 1″だけ増加させて
、再度力ラムアドレスレジスタ80lにセットする。こ
の際、選択回路803は、加算回路804の出力を選択
するように制御する。
When the search for one column address is completed, the column address is incremented by "1" in the adder circuit 804 and set in the column address register 80l again. At this time, the selection circuit 803 controls to select the output of the addition circuit 804.

またレジスタ801へのセット指示は、フリップフロッ
プ806の出力をANDゲート807およびORゲート
8l4を介して生成する。なお、ここでこのセット指示
はFAA23.24からの登録/キャンセル要求がある
場合に、ANDゲート807において抑止される。
Further, a set instruction to register 801 generates the output of flip-flop 806 via AND gate 807 and OR gate 8l4. Note that this set instruction is suppressed at the AND gate 807 when there is a registration/cancellation request from the FAA 23.24.

以上のようにして、カラムアドレスは順次”1”ずつ増
加させられ、それに伴ってFAAの管理テーブル内が検
索されていく。このようなカラムアドレスの増加は、レ
ジスタ802にセットされた抽出バリッドビット情報の
カラムアドレスに対応するビットにおいて、該ビット値
が”0″のビットのカラムアドレスのすべての組み合わ
せが計算された時点で終了する。つまり、  1”であ
る最下位の抽出バリッドビット位置に対して加算回路8
04内で桁上げが生じた段階でカラムアドレスの増加が
停止され、FAA検索が終了する。このときの条件は、
加算回路804の各桁の桁上げ信号と、抽出バリッドビ
ット中のカラムアドレスに対応する情報により生成され
、これによってフリップフロツプ806をリセットして
FAA検索処理を終了させる。
As described above, the column address is sequentially incremented by "1" and the FAA management table is searched accordingly. This increase in column address occurs when all combinations of column addresses of bits whose bit value is "0" in the bit corresponding to the column address of the extracted valid bit information set in the register 802 are calculated. finish. In other words, the adder circuit 8
When a carry occurs within 04, the column address increment is stopped and the FAA search ends. The conditions at this time are
It is generated by the carry signal of each digit of the adder circuit 804 and the information corresponding to the column address in the extracted valid bits, thereby resetting the flip-flop 806 and terminating the FAA search process.

第7図には上記終了条件検出回路の詳細を示す。FIG. 7 shows details of the termination condition detection circuit.

抽出バリッドビット (カラムアドレスに対応する。Extract valid bit (corresponds to column address)

上位からvO,vl,v2,v3)と加算回路804の
桁上げ信号(上位からcl,c2.c3)との論理積を
ANDゲート8050〜8052でとり、さらにこれを
ORゲート8053でまとめることによって終了条件を
検出する。
By ANDing the carry signals of the adder circuit 804 (from the upper order: vO, vl, v2, v3) and the carry signals (from the upper order: cl, c2, c3) using AND gates 8050 to 8052, and further combining them using an OR gate 8053. Detect termination conditions.

以上に説明した一連の処理によって、抽出アドレス検索
の処理が行われる。
The extracted address search process is performed through the series of processes described above.

次に個別リクエスト検索処理の動作について説明する。Next, the operation of the individual request search process will be explained.

第4図において、個別リクエスト検索要求250Cを受
け取ると、抽出バリッドビットを変換回路813および
ORゲート815で強制的に全ビット” ■”の状態と
し、これをレジスタ802にセットする。これと同時に
検索アドレスについても、レジスタ800および801
にセットする。
In FIG. 4, when the individual request search request 250C is received, the conversion circuit 813 and the OR gate 815 force all extracted valid bits to be in the state of “①” and set this in the register 802. At the same time, the search address is also stored in registers 800 and 801.
Set to .

このときに選択回路803は、検索アドレス250aを
選択するよう、ORゲート808を介して制御される。
At this time, the selection circuit 803 is controlled via the OR gate 808 to select the search address 250a.

また個別リクエスト検索要求250Cは、フリップフロ
ップ809,ORゲート8lOを経由してアドレス比較
回路25AO〜25B1に送られる。ここでレジスタ8
00,804にセットされたアドレスは、選択回路82
2〜825を介してFAAの管理テーブルに供給され、
アドレス比較回路での一致/不一致が判定され、ここで
一致を検出するとFAA23.24に対して無効化要求
を送出する。ここで個別リクエスト検索要求250Cで
は、カラムアドレスの更新は不要であるため、該処理は
以上で終了する。
Further, the individual request search request 250C is sent to the address comparison circuits 25AO to 25B1 via a flip-flop 809 and an OR gate 81O. Here register 8
The address set to 00,804 is selected by the selection circuit 82.
2 to 825 to the FAA management table,
Match/mismatch is determined in the address comparison circuit, and if a match is detected here, an invalidation request is sent to the FAA 23.24. Here, in the individual request search request 250C, there is no need to update the column address, so the process ends here.

また、FAA23.24からの管理テーブルへの登録/
キャンセル要求が信号線3b,4bを介して送られて来
る場合には、該要求を各々レジスタ820,821にセ
ットし、後続の選択回路822〜825をレジスタ82
0,821の出力を選択するように制御して、FAAの
管理テーブルをアクセスするとともに、該要求をORゲ
ート830を介してANDゲート807に送出して抽出
アドレス検索処理を中断させるよう制御する。
In addition, registration to the management table from FAA23.24/
When a cancellation request is sent via signal lines 3b and 4b, the request is set in registers 820 and 821, respectively, and the subsequent selection circuits 822 to 825 are set in registers 820 and 821.
Control is performed to select outputs 0 and 821 to access the FAA management table, and to send the request to AND gate 807 via OR gate 830 to interrupt the extracted address search process.

以上説明した動作によってVP5,6からのベクトルス
トア命令の実行にともなうBSとMSとの一致保証制御
を行うことができる。
Through the operations described above, it is possible to perform control to ensure consistency between the BS and the MS in accordance with the execution of vector store instructions from the VPs 5 and 6.

なお、以上述べたように、本実施例におけるFAA検索
では抽出アドレス検索と個別リクエスト検索との二つの
モードが用意されている。個別リクエスト検索は、たと
えば抽出アドレス検索では検索に時間がかかり過ぎるか
、あるいはBSをきわめて過剰に無効化してしまうよう
な可能性のある場合に使用する。このような個別リクエ
スト検索での利点が生かせられる具体例について以下に
分類分けけして説明する。
As described above, the FAA search in this embodiment has two modes: extraction address search and individual request search. The individual request search is used, for example, when an extracted address search would take too much time or would likely overly disable the BS. Specific examples in which the advantages of such individual request searches can be utilized will be categorized and explained below.

■一つのベクトルストア命令で処理する要s数が少な《
、抽出アドレス検索ではオーバヘッドが大きい場合、 ■一つのベクトルストア命令のオペランドアドレスの増
分値が大きく、抽出アドレスの領域が大きくなる場合、 ■対象となるベクトルストア命令の種類がリストベクト
ルストアであり、抽出アドレスの領域が大きくなる場合
、 等である。本条件は、ストアリクエスタ50A〜51B
において、図示しない判定回路を用いることによってベ
クトル長、アドレス増分値、命令種等を識別していずれ
の検索モードが適切であるかを決定する。この決定は、
個別リクエスト検索要求信号250Cに反映され、RE
F25,26において、該信号に基づいた効率的なFA
A検索が実行される。
■The number of seconds required to process with one vector store instruction is small.
, When the overhead is large in the extraction address search, ■ When the increment value of the operand address of one vector store instruction is large and the area of the extraction address becomes large, ■ When the type of target vector store instruction is a list vector store, When the extraction address area becomes large, etc. These conditions apply to store requesters 50A to 51B.
In this step, a determination circuit (not shown) is used to identify the vector length, address increment value, instruction type, etc., and determine which search mode is appropriate. This decision
It is reflected in the individual request search request signal 250C, and the RE
In F25, 26, efficient FA based on the signal
A search is executed.

また、本実施例では、VPからみた各SPのBSは対等
の関係にあるものとしたが、SPOとVPO  SPI
とVPIが各々密接な関係で処理を進めているのであれ
ば、VPOからのストアではSPO用FAAOの検索を
個別リクエスト検索で、SPI用FAAIの検索を抽出
アドレス検索で行い、VPIからのストアでは、SPO
用FAAOの検索を抽出アドレス検索で、SPI用FA
A 1の検索を個別リクエスト検索で行うようにして、
過剰なBS無効化処理を抑えてシステム性能の向上を図
るように制御してもよい。
Furthermore, in this embodiment, it is assumed that the BSs of each SP are in an equal relationship as viewed from the VP, but the SPO and VPO SPI
If and VPI are proceeding with processing in a close relationship, then in the store from VPO, the search for FAAO for SPO is done by individual request search, the search for FAAI for SPI is done by extraction address search, and in the store from VPI, ,SPO
Extract address search for FAAO for SPI
A: Perform the search in 1 using an individual request search,
Control may be performed to improve system performance by suppressing excessive BS invalidation processing.

また、アドレス抽出機構250は、SC2内でなくプロ
セッサ側に設けてもよい。この場合には、BSとMSと
の一致保証制御に絡むプロセッサとSC間のインターフ
ェース(量)を削減することができ、さらにこれに絡む
ハードウエア量を削減することができる。
Furthermore, the address extraction mechanism 250 may be provided on the processor side instead of within the SC2. In this case, it is possible to reduce the amount of interface between the processor and the SC that is involved in the control to guarantee consistency between the BS and the MS, and it is also possible to reduce the amount of hardware involved.

また、検索アドレスの抽出、参照の処理は、アドレスの
ビット単位に行われなくてもよ<、複数ビットの単位で
一致/不一致を制御するようにしてもよい。
Furthermore, the process of extracting and referring to a search address does not have to be performed in units of bits of the address; it is also possible to control match/mismatch in units of a plurality of bits.

さらに、本実施例では、ベクトル処理機構を備えたブロ
セ/サに関して税明したが、該機構を備えていないマル
チプロセッサシステムにおいても本発明は有効である。
Further, in this embodiment, a processor/server equipped with a vector processing mechanism has been described, but the present invention is also effective in a multiprocessor system not equipped with such a mechanism.

また、マルチプロセッサの構成法(プロセッサと記憶装
置の接続形験)にかかわらず、本発明は有効である。
Further, the present invention is effective regardless of the configuration method of the multiprocessor (the connection between the processor and the storage device).

以上、本実施例によれば検索用FAAの面数をVPのス
トアリクエスタ毎に設ける必要がなく、半分の面数のF
AAで効率的な検索処理を行えるため、ハードウエア量
削減に大きな効果がある。
As described above, according to this embodiment, there is no need to provide the number of pages of search FAA for each VP store requester, and half the number of pages of FAA is required.
Since AA can perform efficient search processing, it has a great effect on reducing the amount of hardware.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、キャッシュ(BS)と共有記憶装li
t(MS)との一致保証制御を行うためのキャッシュの
登録アドレス管理テーブルの面数を性能を維持した状態
のまま従来技術の半分以下に削減することができ、少な
いハードウエア量で効率的な記憶制御が可能となる。
According to the present invention, the cache (BS) and the shared storage li
The number of registered address management tables in the cache for performing consistency guarantee control with t(MS) can be reduced to less than half that of the conventional technology while maintaining performance, resulting in an efficient system with a small amount of hardware. Memory control becomes possible.

また、上記一致制御のためのアドレス情報を、従来の複
数個のアドレスから一つに縮退(抽出)したアドレスに
変換できるので、該情報伝達のためのハードウエア量、
インターフェース量を上記縮退の度合に応じて削減する
ことが可能となる。
In addition, since the address information for the above-mentioned matching control can be converted into one address that is degenerated (extracted) from a plurality of conventional addresses, the amount of hardware for transmitting the information can be reduced.
It becomes possible to reduce the amount of interfaces according to the degree of degeneracy.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明による一実施例の記憶制御装置(SC)
における第2の管理テーブル(FAA)および検索機構
(REF)の詳細構造を示したブロック図、 第2図は実施例のベクトル処理装置のマルチプロセッサ
システムの主要部の構成を示すブロック図、 第3図はアドレス抽出機構の詳細を示したブロック図、 第4図はFAA検索機構と第2の管理テーブル(FAA
)の詳細を示したブロック図、第5図は変換回路を示す
ブロック図、 第6図はアドレス比較回路の詳細を示したブロック図、 第7図は終了条件検出回路の詳細を示すブロック図、 第8図(a)はB A A ( F A A ) ノ構
造ヲ示t フoック図、 第8図(b)は実アドレスの各ビットと、バイトアドレ
ス、ブロック内アドレス、カラムアドレス、上位アドレ
スとの対応を示した説明図である。 1・・・主記憶装置(MS) 、2・・・記憶制御装置
(SC) 、3.4・・・スカラ処理装!(SP)3a
・・・信号線、3b・・・信号線、56・・・ベクトル
処理装置、5a,5b・・・信号線、23.24・・・
第2の管理テーブル(FAA)、25.26・・・検索
機構(REF)、25A,25B・・・第2の管理テー
ブル(FAA)25A0.25A1・・・アドレス比較
回路、25a.25b・・・信号線、27・・・選択回
路、30.31・・・バッファ記憶装置(BS)、50
A,50B・・・ストアリクエスタ、60A.60B・
・・ストアリクエスタ、70・・・スタック、70a・
・・検索アドレス、70b・・・出力、70c・・・個
別リクエスト検索要求、71・・・スタック、71a・
・・アドレス、72・・・比較回路、73・・・フリッ
プフロップ、74・・・ORゲート、75・・・選択回
路、76・・・レジスタ、77・・・バリッドビットレ
ジスタ、78・・・レジスタ、78・・・比較回路、7
9・・・選択回路、250・・・アドレス抽出機構、2
50a・・・アドレス、250b・・・アドレス検索要
求、250c・・・個別リクエスト検索要求、250v
・・・抽出バリッドビット情報、251・・・FAA検
索機構、251・・・FAA検索制御機構、260・・
・アドレス抽出機構、730・・・インバータ回路、7
39 〜 741  ・ ・ ・ AND ゲー ト 
、  742,   743・ ・ ・ORゲート、7
44.  745  ・ ・ ・ANDゲート、746
 ・ ・ ・ORゲート、770 ・ ・ ・フリップ
フロップ、774〜776・・・ANDゲート、780
,781・・・レジスタ、782,783・・・フリッ
プフロップ、784・・・ANDゲート、800,80
1・・・レジスタ、801・・・カラムアドレスレジス
タ、802・・・レジスタ、803・・・選択回路、8
04・・・加算回路、806・・・フリップフロップ、
807・・・ANDゲート、808・・・ORゲート、
809・・・フリップフロツブ、810・・・ O R
 ゲ ー ト 、  8 1 2  ・  ・  ・ 
ゲ ー ト 、  813  ・・変換回路、814,
815・・・ORゲート、820・・・レジスタ、82
2・・・選択回路、830・・・ORゲート、900・
・・排他的論理和ゲート、903・・・ANDゲート、
910・ ・ ・ANDゲート、920 ・ ・ ・N
ORゲート、8050 ・ ・ ・ANDゲート、80
53 ・ ・ ・ORゲート、8130 ・ ・ ・A
NDゲート、8131・・・ANDゲート、8132・
・・ANDゲート。 代理人 弁理士 筒 井 大 和
FIG. 1 shows a storage control device (SC) according to an embodiment of the present invention.
FIG. 2 is a block diagram showing the detailed structure of the second management table (FAA) and search mechanism (REF) in FIG. The figure is a block diagram showing details of the address extraction mechanism, and Figure 4 shows the FAA search mechanism and second management table (FAA
), FIG. 5 is a block diagram showing the conversion circuit, FIG. 6 is a block diagram showing details of the address comparison circuit, FIG. 7 is a block diagram showing details of the termination condition detection circuit, Figure 8(a) shows the structure of BAA (FAA), and Figure 8(b) shows each bit of the real address, byte address, intra-block address, column address, FIG. 3 is an explanatory diagram showing correspondence with higher-order addresses. 1...Main storage device (MS), 2...Storage control device (SC), 3.4...Scalar processing unit! (SP)3a
... Signal line, 3b... Signal line, 56... Vector processing device, 5a, 5b... Signal line, 23.24...
Second management table (FAA), 25.26... Search mechanism (REF), 25A, 25B... Second management table (FAA) 25A0.25A1... Address comparison circuit, 25a. 25b... Signal line, 27... Selection circuit, 30.31... Buffer storage device (BS), 50
A, 50B...store requester, 60A. 60B・
...Store requester, 70...Stack, 70a.
...Search address, 70b...Output, 70c...Individual request search request, 71...Stack, 71a...
... Address, 72... Comparison circuit, 73... Flip-flop, 74... OR gate, 75... Selection circuit, 76... Register, 77... Valid bit register, 78... Register, 78... Comparison circuit, 7
9... Selection circuit, 250... Address extraction mechanism, 2
50a...Address, 250b...Address search request, 250c...Individual request search request, 250v
...Extraction valid bit information, 251...FAA search mechanism, 251...FAA search control mechanism, 260...
・Address extraction mechanism, 730... Inverter circuit, 7
39 ~ 741 ・ ・ ・ AND gate
, 742, 743... OR gate, 7
44. 745 ・ ・ ・AND gate, 746
・ ・ ・OR gate, 770 ・ ・ ・Flip-flop, 774-776...AND gate, 780
,781...Register, 782,783...Flip-flop, 784...AND gate, 800,80
1... Register, 801... Column address register, 802... Register, 803... Selection circuit, 8
04...Addition circuit, 806...Flip-flop,
807...AND gate, 808...OR gate,
809...Flip flop, 810...O R
Gate, 8 1 2...
Gate, 813...Conversion circuit, 814,
815...OR gate, 820...register, 82
2...Selection circuit, 830...OR gate, 900...
...Exclusive OR gate, 903...AND gate,
910 ・ ・ ・AND gate, 920 ・ ・ ・N
OR gate, 8050 ・ ・ ・AND gate, 80
53 ・ ・ ・OR gate, 8130 ・ ・ ・A
ND gate, 8131...AND gate, 8132...
...AND gate. Agent Patent Attorney Daiwa Tsutsui

Claims (1)

【特許請求の範囲】 1、主記憶装置と、主記憶装置を共有する2以上のプロ
セッサとからなり各プロセッサは上記主記憶装置の情報
の一部の写しを保持するバッファ記憶装置を備えている
マルチプロセッサシステムにおいて、一つのプロセッサ
が所定の期間内に書き換えた主記憶装置の記憶領域を抽
出し、該領域内の情報が他のプロセッサのバッファ記憶
装置に取り込まれているか否かを検索するとともに、取
り込まれていた場合にはこのバッファ記憶領域中の該当
情報を無効化するように制御することを特徴とする記憶
制御方式。 2、上記主記憶装置の記憶領域の抽出は、一つのプロセ
ッサが所定の期間内に主記憶装置に対して発行した書込
みリクエストのアドレスにおいて変化しなかったビット
位置と値とを抽出することにより行うことを特徴とする
請求項1記載の記憶制御方式。 3、上記で抽出されたアドレスに基づいて各プロセッサ
が有しているバッファ記憶装置の登録情報アドレスの管
理テーブルを必要なエントリに対して順次検索すること
を特徴とする請求項2記載の記憶制御方式。 4、上記で抽出されたアドレスに基づいて必要なエント
リに対して検索を行うための検索用の管理テーブルを上
記登録情報アドレスの管理テーブルとは別に備えている
ことを特徴とする請求項2または3記載の記憶制御方式
。 5、上記アドレスは、複数ビットの単位でブロック毎に
抽出され検索に用いられることを特徴とする請求項2、
3または4記載の記憶制御方式。 6、主記憶装置と、該主記憶装置の情報の一部の写しを
保持するバッファ記憶装置を備えたプロセッサとからな
る制御システムにおいて、バッファ記憶装置内の特定ア
ドレスパターンを抽出する際に、複数個のアドレスから
変化しない共通ビットの位置と値とを抜き出すことを特
徴とする記憶制御方式。 7、検索データと被検索テーブルとの検索処理を行う際
に、検索データとの比較を被検索テーブル中エントリの
特定ビット位置とのみ行い、両者の一致/不一致を判定
することを特徴とする記憶制御方式。 8、主記憶装置に対して各々ストアリクエスタを備えた
複数のベクトル処理装置と、主記憶装置の写しを記憶し
、かつ記憶している写しの主記憶内アドレスを登録して
いる管理テーブルを付加したバッファ記憶装置を各々備
えた複数のスカラ処理装置とで構成されるマルチプロセ
ッサシステムにおいて、上記ベクトル処理装置から発行
される複数のストアリクエストのアドレスから共通のビ
ット位置と値とを検出することにより、ストアした領域
を示すアドレスを抽出する手段と、該抽出したアドレス
領域の情報が各スカラ処理装置内のバッファ記憶装置に
取り込まれているか否かを判断するためにバッファ記憶
装置の管理テーブルを順次検索する手段と、取り込まれ
ていた場合には当該情報を無効化する手段とを有する記
憶制御方式。 9、ベクトル処理装置から主記憶装置に対する複数個の
ストアリクエストが対象とする主記憶領域を示すアドレ
スを抽出して各スカラ処理装置内のバッファ記憶装置に
対応する管理テーブルを検索する第1の検索手段と、ベ
クトル処理装置から主記憶装置に対する個別のストアリ
クエストのアドレスを用いて上記管理テーブルを検索す
る第2の検索手段とを備え、ベクトル処理装置から発行
されるストアリクエストに対応するベクトル命令の諸条
件によって第1または第2の検索手段を採用する選択手
段を備えていることを特徴とする請求項8記載の記憶制
御方式。
[Claims] 1. Consisting of a main memory and two or more processors that share the main memory, each processor is provided with a buffer memory that holds a copy of a portion of the information in the main memory. In a multiprocessor system, one processor extracts a storage area of the main memory that has been rewritten within a predetermined period, and searches whether the information in the area has been taken into the buffer storage of another processor. , the storage control method is characterized in that, if the information has been imported, the corresponding information in the buffer storage area is invalidated. 2. The storage area of the main memory is extracted by extracting the bit positions and values that did not change in the address of the write request issued by one processor to the main memory within a predetermined period. The storage control system according to claim 1, characterized in that: 3. The storage control according to claim 2, wherein a management table of registration information addresses of a buffer storage device possessed by each processor is sequentially searched for necessary entries based on the address extracted above. method. 4. Claim 2 or 4, characterized in that a search management table for searching for necessary entries based on the address extracted above is provided separately from the management table for the registration information address. 3. The storage control method described in 3. 5. Claim 2, wherein the address is extracted for each block in units of multiple bits and used for the search.
4. The storage control method according to 3 or 4. 6. In a control system comprising a main memory device and a processor equipped with a buffer memory device that holds a copy of a portion of information in the main memory device, when extracting a specific address pattern in the buffer memory device, multiple A storage control method characterized by extracting the positions and values of common bits that do not change from individual addresses. 7. A memory characterized in that when performing a search process between the search data and the table to be searched, the comparison with the search data is performed only with a specific bit position of the entry in the table to be searched, and it is determined whether the two match/mismatch. control method. 8. Add a plurality of vector processing devices each having a store requester to the main memory, and a management table that stores a copy of the main memory and registers the address in the main memory of the stored copy. In a multiprocessor system consisting of a plurality of scalar processing units each equipped with a buffer storage device, by detecting a common bit position and value from the addresses of a plurality of store requests issued from the vector processing unit. , a means for extracting an address indicating a stored area, and a management table of the buffer storage device in order to determine whether information of the extracted address area has been taken into the buffer storage device in each scalar processing device. A storage control method having means for searching and means for invalidating the information if it has been captured. 9. First search for extracting addresses indicating the main storage area targeted by multiple store requests from the vector processing device to the main storage device and searching the management table corresponding to the buffer storage device in each scalar processing device means and second search means for searching the management table using addresses of individual store requests from the vector processing device to the main memory, and a second search device for searching the management table using addresses of individual store requests issued from the vector processing device. 9. The storage control system according to claim 8, further comprising a selection means for employing the first or second search means depending on various conditions.
JP1116291A 1989-05-10 1989-05-10 Memory control method Expired - Lifetime JPH0778786B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP1116291A JPH0778786B2 (en) 1989-05-10 1989-05-10 Memory control method
DE19904014733 DE4014733A1 (en) 1989-05-10 1990-05-08 Controlling buffer memory of multiprocessor system with main memory - detecting common bit positions and values in memory requests to identify target memory regions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1116291A JPH0778786B2 (en) 1989-05-10 1989-05-10 Memory control method

Publications (2)

Publication Number Publication Date
JPH02294866A true JPH02294866A (en) 1990-12-05
JPH0778786B2 JPH0778786B2 (en) 1995-08-23

Family

ID=14683407

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1116291A Expired - Lifetime JPH0778786B2 (en) 1989-05-10 1989-05-10 Memory control method

Country Status (2)

Country Link
JP (1) JPH0778786B2 (en)
DE (1) DE4014733A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08335189A (en) * 1995-06-09 1996-12-17 Nec Corp Cache memory device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5797168A (en) * 1980-12-06 1982-06-16 Fujitsu Ltd Buffer nullification control system
JPS6079467A (en) * 1983-10-07 1985-05-07 Nec Corp Information processing system
JPS62285157A (en) * 1986-06-04 1987-12-11 Hitachi Ltd Memory control system
JPS638848A (en) * 1986-06-27 1988-01-14 Yokogawa Hewlett Packard Ltd Cache tag look-aside
JPS6345652A (en) * 1986-08-13 1988-02-26 Nec Corp Invalidation processing system for information processor
JPH0277858A (en) * 1988-06-17 1990-03-16 Hitachi Ltd Memory controller for computer system with plural processors

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6093563A (en) * 1983-10-27 1985-05-25 Hitachi Ltd Buffer storage control system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5797168A (en) * 1980-12-06 1982-06-16 Fujitsu Ltd Buffer nullification control system
JPS6079467A (en) * 1983-10-07 1985-05-07 Nec Corp Information processing system
JPS62285157A (en) * 1986-06-04 1987-12-11 Hitachi Ltd Memory control system
JPS638848A (en) * 1986-06-27 1988-01-14 Yokogawa Hewlett Packard Ltd Cache tag look-aside
JPS6345652A (en) * 1986-08-13 1988-02-26 Nec Corp Invalidation processing system for information processor
JPH0277858A (en) * 1988-06-17 1990-03-16 Hitachi Ltd Memory controller for computer system with plural processors

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08335189A (en) * 1995-06-09 1996-12-17 Nec Corp Cache memory device

Also Published As

Publication number Publication date
DE4014733A1 (en) 1990-11-15
JPH0778786B2 (en) 1995-08-23

Similar Documents

Publication Publication Date Title
US3533075A (en) Dynamic address translation unit with look-ahead
JPH02190930A (en) Software instruction executing apparatus
JPH03108042A (en) Multiple virtual space address system and computer system
JPS6118222B2 (en)
KR20010101628A (en) High-speed processor system, method of using the same, and recording medium
JPS60142451A (en) Address conversion control system
JPH0997214A (en) Information-processing system inclusive of address conversion for auxiliary processor
KR20010070469A (en) Device and method for performing high-speed low overhead context switch
US5339397A (en) Hardware primary directory lock
US4658356A (en) Control system for updating a change bit
JPH02294866A (en) Storage control system
JP2685455B2 (en) Data processing device
KR950004249B1 (en) Method for data transmission between host and node computers of parallel processing system
JPH06103477B2 (en) Parallel cache memory
JPH01226056A (en) Address converter
JPH06149752A (en) Barrier synchronization system for parallel computer
JPS61239339A (en) System for controlling transfer of page data
JPS60215250A (en) Data processor
JPS60183652A (en) Cache memory control method
JPS61221845A (en) Producing system for invalidated address of buffer memory
JPH0322053A (en) Move in buffer control system
JPH0668734B2 (en) Memory control method
JPS617960A (en) Buffer nullification control system
JPH10247182A (en) Multiprocessor system
JPS62285180A (en) Vector processor