JPH01280858A - Lock control system for main storage device - Google Patents

Lock control system for main storage device

Info

Publication number
JPH01280858A
JPH01280858A JP63110953A JP11095388A JPH01280858A JP H01280858 A JPH01280858 A JP H01280858A JP 63110953 A JP63110953 A JP 63110953A JP 11095388 A JP11095388 A JP 11095388A JP H01280858 A JPH01280858 A JP H01280858A
Authority
JP
Japan
Prior art keywords
lock
access
main memory
address
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP63110953A
Other languages
Japanese (ja)
Inventor
Masatoshi Kira
吉良 雅敏
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 JP63110953A priority Critical patent/JPH01280858A/en
Publication of JPH01280858A publication Critical patent/JPH01280858A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To prevent the deterioration of a main storage device due to a lock access by storing a lock instruction to its address in a buffer tag array when the lock instruction is unsuccessful and referring to the lock unsuccessful bit of the buffer tag array for the access of the lock instruction to the main storage device. CONSTITUTION:When the lock instruction is made access to the main storage device and it is unsuccessful, it is stored in the lock unsuccessful bit 72 of the address provided in the buffer tag array 7. Then, when the lock instruction is unsuccessful, even if the lock instruction is repeatedly outputted, the access of the lock instruction thereafter is not carried out by referring to the buffer tag array 7 to the main storage device. Thereby, an excessive lock access to the main storage device is reduced and the processing efficiency of the main storage device can be improved for that.

Description

【発明の詳細な説明】 〔概 要〕 バッファのバッファタグアレーのロック不成功ピントを
参照するようにした主記憶装置のロック制御方式に関し
、 バッファ内蔵の装置に着目し、ロックアクセスによる主
記憶装置の性能劣化を防ぐ方法を提供することを目的と
し、 複数のプロセッサが共用する主記憶装置の1つのアドレ
スを前記プロセッサがアクセスする場合に、アクセスに
先立ってロック命令によって前記主記憶装置の前記アド
レスのアクセスを占用する方式であって、バッファに記
憶された主記憶装置のデータの実アドレスを格納したバ
ッファタグアレーのそれぞれのアドレスにロック不成功
ビットを設け、且つ該ロック不成功ビットを参照して前
記主記憶装置にアクセスするロック命令を処理するロッ
ク不成功処理部を設け、該ロック命令が不成功であった
場合、該バッファタグアレーの当該アドレスに記憶し、
前記主記憶装置へのロック命令のアクセスには、前記バ
ッファタグアレーのロック不成功ビットを参照して行う
よう構成する。
[Detailed Description of the Invention] [Summary] Regarding a lock control method for a main memory device that refers to an unsuccessful lock focus of a buffer tag array of a buffer, focusing on a device with a built-in buffer, the main memory device using lock access is The purpose of the present invention is to provide a method for preventing performance deterioration of a main storage device, and when the processor accesses one address of a main storage device shared by a plurality of processors, the address of the main storage device is locked by a lock instruction prior to the access. This is a method that occupies access to the main storage device, and provides a lock failure bit at each address of a buffer tag array that stores the real address of the data in the main memory stored in the buffer, and refers to the lock failure bit. a lock failure processing unit for processing a lock instruction to access the main storage device, and if the lock instruction is unsuccessful, storing it in the corresponding address of the buffer tag array;
The lock instruction access to the main storage device is performed by referring to the lock failure bit of the buffer tag array.

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

本発明は、バッファのバッファタグアレーのロック不成
功ビットを参照するようにした主記憶装置のロック制御
方式に関するものである。
The present invention relates to a lock control method for a main memory device that refers to a lock failure bit in a buffer tag array of a buffer.

複数のプロセッサが主記憶装置を共用するシステムにお
いては、ロック命令によって主記憶装置をアクセスする
場合、そのアドレスの占用権をとってからそのアドレス
に対するデータをアクセスするようにして、アクセス中
は他のプロセッサからのアクセスを排除して、アクセス
中のデータの保護を図っている。
In a system where multiple processors share the main memory, when accessing the main memory using a lock instruction, the exclusive right to that address is taken and then the data at that address is accessed. It protects the data being accessed by eliminating access from the processor.

プロセッサはロックアクセスが不成功の時は、直ちに同
じロックアクセスを繰り返してロックが成功するのを待
つか、他のジョブを処理を行うようにする(第5図参照
)。
When the lock access is unsuccessful, the processor immediately repeats the same lock access and waits for the lock to succeed, or processes another job (see FIG. 5).

しかし、主記憶装置は、それぞれのプロセッサがロック
不成功をみて、・操り返し出し続けるロックアクセスを
処理する必要があり、この処理のために主記憶装置の実
効効率が減少する。
However, the main memory needs to process lock accesses that each processor continues to manipulate and return after each processor sees a lock failure, and this processing reduces the effective efficiency of the main memory.

そのため、このロックアクセスを制御して主記憶装置の
処理効率をあげることが要求される。
Therefore, it is required to increase the processing efficiency of the main storage device by controlling this lock access.

〔従来の技術〕[Conventional technology]

第3図は従来例のロック制御論理構成を説明する図、 第4図は第3図のフローチャート図である。 FIG. 3 is a diagram explaining the lock control logic configuration of a conventional example. FIG. 4 is a flowchart diagram of FIG. 3.

従来、一般的なロックアクセスは次のようにする。Conventionally, common lock access is performed as follows.

通常、命令レジスタに入力した命令がロック命令である
と認識すると、バッファにデータがあるか否かに関わら
ず無条件に主記憶装置にロックフェッチアクセスを出す
Normally, when the instruction input to the instruction register is recognized as a lock instruction, a lock fetch access is unconditionally issued to the main memory regardless of whether there is data in the buffer.

即ち、第3図において、命令レジスタ1に格納されたロ
ック命令はデコーダ3によってロック命令であると認識
されると、ロックアクセス信号がロックアクセスレジス
タ4に格納され、主記憶装置(MSU)リクエスト信号
がMSUリクエストレジスタ5に発行され、オペランド
レジスタ2に格納されたロック命令のアドレスは、MS
Uアドレスレジスタ6に格納され、これらレジスタの信
号とデータが主記憶装置に出力される。
That is, in FIG. 3, when the lock instruction stored in the instruction register 1 is recognized as a lock instruction by the decoder 3, a lock access signal is stored in the lock access register 4, and a main storage unit (MSU) request signal is generated. is issued to MSU request register 5, and the address of the lock instruction stored in operand register 2 is
The signals and data of these registers are stored in the U address register 6 and output to the main memory.

一方、バッファタグアレー7は上記したように図示しな
いバッファに格納されたデータの主記憶装置上のアドレ
ス、即ち、実アドレスを記憶している。
On the other hand, as described above, the buffer tag array 7 stores addresses on the main storage device of data stored in buffers (not shown), that is, real addresses.

そして、バッファ無効化信号によって他の装置からのス
トアアクセスを無効にし、ムーブイン信号によって主記
憶装置からバッファへの転送されたデータのアドレスが
バッファタグアレー7に書き込まれる。
Then, store accesses from other devices are disabled by the buffer invalidation signal, and the address of the data transferred from the main memory device to the buffer is written into the buffer tag array 7 by the move-in signal.

即ち、バッファ無効化信号によってタグ有効性ビット7
1が「0」となり、ムーブイン信号によってrlJとな
る。
That is, the tag validity bit 7 is set by the buffer invalidation signal.
1 becomes "0" and becomes rlJ by the move-in signal.

通常の主記憶装置のアクセス命令では、オペランドレジ
スタ2に格納されたアドレスとバッファタグアレー7に
格納されたアドレスとに一致するものがない時主記憶装
置にアクセスされる。
In a normal main memory access instruction, the main memory is accessed when there is no match between the address stored in the operand register 2 and the address stored in the buffer tag array 7.

また、一致すれば、主記憶装置にアクセスされないでバ
ッファからアクセスされる。
If they match, the buffer is accessed without accessing the main memory.

以下、第4図のフローチャートにおいて、主記憶装置で
は発行されたロックアドレスがあるかどうか確認し、も
しあればそのロックアクセスのアドレスと入力したロッ
クアクセスのアドレスとを比較する。もし、等しい場合
は先行したアクセスが解放されるまで待つ。
Hereinafter, in the flowchart of FIG. 4, the main storage device checks whether there is an issued lock address, and if so, compares the lock access address with the input lock access address. If they are equal, wait until the previous access is released.

そして、解放されると、次ぎのロックアドレスをセット
し、以後他装置の同一のロックアドレスを禁止する。
Once released, the next lock address is set, and subsequent use of the same lock address by other devices is prohibited.

入力したデータがロック可能と判断すると、ロックデー
タと入れ換え、即ち、新しく入力したデータを主記憶装
置に格納し、主記憶装置はその時点でロックを終了する
When it is determined that the input data can be locked, the newly input data is replaced with the lock data, that is, the newly input data is stored in the main memory, and the main memory ends the lock at that point.

そして、ロックアクセスが成功したことを示す条件コー
ドCCを「0」にする。
Then, the condition code CC indicating that the lock access was successful is set to "0".

入力したデータがロックすることが不可能であった時、
ロックアクセスを出した装置が主記憶装置に対してロッ
クアクセスの終了を指示する。
When the entered data was impossible to lock,
The device that issued the lock access instructs the main storage device to terminate the lock access.

そして、条件コードCCを「1」にする。Then, the condition code CC is set to "1".

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

このように、従来例の方法ではロックアクセスは主記憶
装置に対して必ず実行するが、ロックアクセスが解除さ
れたかどうか判明しないまま実行しているため、システ
ムのスルーブツトが劣化してしまう。
As described above, in the conventional method, lock access is always performed on the main storage device, but because the lock access is performed without knowing whether or not it has been released, the throughput of the system deteriorates.

本発明はこのような点に鑑みて創作されたものであって
、バッファ内蔵の装置に着目し、ロックアクセスによる
主記憶装置の性能劣化を防ぐ方法を提供することを目的
としている。
The present invention was created in view of these points, and an object of the present invention is to provide a method for preventing performance deterioration of a main memory device due to lock access, focusing on a device with a built-in buffer.

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

上記した目的を達成するために、バッファに記憶された
主記憶装置のデータの実アドレスを格納したバッファタ
グアレーのそれぞれのアドレスにロック不成功ビットを
設け、且つロック不成功処理部を設け、ロック命令が不
成功であった場合、バッファタグアレーの当該アドレス
に記憶し、主記憶装置へのロック命令のアクセスには、
バッファタグアレーのロック不成功ビットを参照して行
、うようにする。
In order to achieve the above-mentioned purpose, a lock failure bit is provided at each address of the buffer tag array that stores the real address of the data in the main memory stored in the buffer, and a lock failure processing section is provided. If the instruction is unsuccessful, store it at that address in the buffer tag array, and access the lock instruction to main memory by
Perform this by referring to the lock failure bit in the buffer tag array.

〔作 用〕[For production]

ロック命令を主記憶装置にアクセスして不成功になった
時、バッファタグアレーに設けた当該アドレスのロック
不成功ビットに記憶する。
When a lock instruction is unsuccessfully accessed to the main memory, it is stored in a lock failure bit of the address provided in the buffer tag array.

そして、たとえ、ロック命令が不成功の時、ロック命令
を繰り返し出力するような構成になっていても、爾後の
ロック命令のアクセスはバッファタグアレーを参照する
ことによって、主記憶装置にロック命令のアクセスをす
ることはない。
Even if the configuration is such that the lock command is repeatedly output when the lock command is unsuccessful, subsequent lock command accesses refer to the buffer tag array to store the lock command in the main memory. There is no access.

従って、主記憶装置に対する余分なロックアクセスが減
少し、それだけ主記憶装置の処理効率をよくすることが
できる。
Therefore, unnecessary lock accesses to the main memory are reduced, and the processing efficiency of the main memory can be improved accordingly.

(実 施 例〕 第1図は、本発明の主記憶装置のロック制御方式の制御
論理構成を説明する図、 第2図は、第1図のフローチャート図である。
(Embodiment) FIG. 1 is a diagram illustrating a control logic configuration of a lock control method for a main storage device of the present invention, and FIG. 2 is a flowchart diagram of FIG. 1.

第1図において、72はバッファタグアレー7に格納さ
れた主記憶装置の実アドレスに設けられたロック不成功
ビット、8はロック不成功処理部である。
In FIG. 1, 72 is a lock failure bit provided at the real address of the main memory stored in the buffer tag array 7, and 8 is a lock failure processing unit.

なお、全図を通じて同一符号は同一対象物を示す。Note that the same reference numerals indicate the same objects throughout the figures.

以下、第2図のフローチャートとともに上記した従来の
技術の項で説明した制御方式に付加された部分を主に本
発明を説明する。
Hereinafter, the present invention will be mainly explained with reference to the flowchart of FIG. 2 and the parts added to the control method described in the section of the prior art described above.

■ロック命令が不成功の時は、バッファタグアレー7の
当該アドレスのロック不成功ビット72にrlJを書き
込む。
(2) When the lock command is unsuccessful, rlJ is written to the lock failure bit 72 of the address in the buffer tag array 7.

■ロックアクセスの時は、必ずバッファタグアレー7に
アクセスし、そのタグ有効性ビット71で有効性が確認
されても(タグ有効性ビット71がrlJ)、ロック不
成功(ロック不成功ビット72が「l」)の時は主記憶
装置に対してアクセスを出さない。
■When accessing a lock, the buffer tag array 7 is always accessed, and even if validity is confirmed by the tag validity bit 71 (tag validity bit 71 is rlJ), the lock is unsuccessful (lock failure bit 72 is ``l''), no access is issued to the main memory.

つまり、ロックが不成功なのだから他装置からのロック
解除を待つ。
In other words, since the lock was unsuccessful, the device waits for unlock from another device.

■他装置からロック解除の指示があった時は、バッファ
タグアレー7のタグ有効性ビット71を「0」にする。
(2) When an instruction to release the lock is received from another device, the tag validity bit 71 of the buffer tag array 7 is set to "0".

■タグ有効性ビット71が「1」のタグアドレスにアク
セスにきた時は、主記憶装置にアクセスを出す。
- When accessing a tag address where the tag validity bit 71 is "1", an access is issued to the main memory.

■主記憶装置からデータが転送されてきた時には、タグ
有効性ビット71を「1」にしてロック不成功ビット7
2を「0」にする。
■When data is transferred from the main memory, the tag validity bit 71 is set to "1" and the lock failure bit 7 is set to "1".
Set 2 to "0".

ロック不成功処理部8は、バッファタグアレー7にロッ
ク不成功が記憶され、且つそのロック命令のオペランド
アドレスとバッファタグの実アドレスが一敗した時、主
記憶装置にMSUリクエスト信号とロックアクセス信号
を送出しないようにする。
When a lock failure is stored in the buffer tag array 7 and the operand address of the lock instruction and the real address of the buffer tag fail, the lock failure processing unit 8 sends an MSU request signal and a lock access signal to the main storage device. do not send.

即ち、第4図におけるA、Bのステップが付加されるこ
とになり、ロック不成功時には、次のロック命令が主記
憶装置にアクセスされず、上記1a装置の処理が軽減さ
れる。
That is, steps A and B in FIG. 4 are added, and when the lock is unsuccessful, the next lock instruction will not access the main memory, and the processing of the 1a device will be reduced.

なお、上記の主記憶装置はデータ処理の資源でもよく、
またプロセッサの資源を使用する装置であっても本発明
の制御方式が適用されることは云うまでもない。
Note that the above main memory may also be a data processing resource,
It goes without saying that the control method of the present invention can also be applied to devices that use processor resources.

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

以上の説明から明らかなように本発明によれば、主記憶
装置のアクセス負荷が軽減され、アクセス効率が向上す
るとともに、システム全体の処理を高速化することがで
き、工業的に極めて有用である。
As is clear from the above description, the present invention reduces the access load on the main memory, improves access efficiency, and speeds up the processing of the entire system, making it extremely useful industrially. .

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

第1図は本発明の主記憶装置のロック制御方式の一実施
例の制御論理構成を説明する図、第2図は第1図のフロ
ーチャート図、 第3図は従来例の制御論理構成を説明する図、第4図は
第3図のフローチャート図、 第5図はロック制御を説明する図である。 図において、 7はバッファタグアレー、 72はロック不成功ビット、 8はロック不成功処理部を示す。 オ37^フロー千↑−トロ 第 4 図 オ丁図/+70−チャート図 第2図 第3図 ロック釈推アを敲明すシ図 第5図
FIG. 1 is a diagram explaining the control logic configuration of an embodiment of the main memory lock control method of the present invention, FIG. 2 is a flowchart diagram of FIG. 1, and FIG. 3 is a diagram explaining the control logic configuration of a conventional example. FIG. 4 is a flowchart of FIG. 3, and FIG. 5 is a diagram explaining lock control. In the figure, 7 is a buffer tag array, 72 is a lock failure bit, and 8 is a lock failure processing unit. O 37 ^ Flow 1↑ - Toro 4th figure

Claims (1)

【特許請求の範囲】 複数のプロセッサが共用する主記憶装置の1つのアドレ
スを前記プロセッサがアクセスする場合に、アクセスに
先立ってロック命令によって前記主記憶装置の前記アド
レスのアクセスを占用する方式であって、 バッファに記憶された主記憶装置のデータの実アドレス
を格納したバッファタグアレー(7)のそれぞれのアド
レスにロック不成功ビット(72)を設け、且つ該ロッ
ク不成功ビット(72)を参照して前記主記憶装置にア
クセスするロック命令を処理するロック不成功処理部(
8)を設け、該ロック命令が不成功であった場合、該バ
ッファタグアレー(7)の当該アドレスに記憶し、前記
主記憶装置へのロック命令のアクセスには、前記バッフ
ァカグアレー(7)にしたことを特徴とする主記憶装置
のロック制御方式。
[Scope of Claims] When the processor accesses one address of a main memory shared by a plurality of processors, the access to the address of the main memory is occupied by a lock instruction prior to the access. A lock failure bit (72) is provided at each address of the buffer tag array (7) storing the real address of the data in the main memory stored in the buffer, and the lock failure bit (72) is referred to. a lock failure processing unit (
8), and if the lock instruction is unsuccessful, it is stored in the corresponding address of the buffer tag array (7), and when the lock instruction accesses the main memory, the buffer tag array (7) A lock control method for a main memory device characterized by:
JP63110953A 1988-05-06 1988-05-06 Lock control system for main storage device Pending JPH01280858A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63110953A JPH01280858A (en) 1988-05-06 1988-05-06 Lock control system for main storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63110953A JPH01280858A (en) 1988-05-06 1988-05-06 Lock control system for main storage device

Publications (1)

Publication Number Publication Date
JPH01280858A true JPH01280858A (en) 1989-11-13

Family

ID=14548722

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63110953A Pending JPH01280858A (en) 1988-05-06 1988-05-06 Lock control system for main storage device

Country Status (1)

Country Link
JP (1) JPH01280858A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08314869A (en) * 1995-05-23 1996-11-29 Kofu Nippon Denki Kk Information processor
JP2010146431A (en) * 2008-12-22 2010-07-01 Nec Computertechno Ltd Memory control device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08314869A (en) * 1995-05-23 1996-11-29 Kofu Nippon Denki Kk Information processor
JP2010146431A (en) * 2008-12-22 2010-07-01 Nec Computertechno Ltd Memory control device

Similar Documents

Publication Publication Date Title
US4481573A (en) Shared virtual address translation unit for a multiprocessor system
US5761734A (en) Token-based serialisation of instructions in a multiprocessor system
US4916604A (en) Cache storage apparatus
JP2761506B2 (en) Main memory controller
JP2000029857A (en) System serialization method by early release of individual processor
JPS59180767A (en) Serializer
JPH0576060B2 (en)
JPH02166539A (en) Cash line withdrawal
JPH0340047A (en) Cash-line-storage method
JPH0564825B2 (en)
JPH1173365A (en) Method for optimizing data moving operation
JPH01280858A (en) Lock control system for main storage device
JP3381079B2 (en) Exclusive control system using cache memory
US6981108B1 (en) Method for locking shared resources connected by a PCI bus
JPH08329019A (en) Data management system of semaphore
JPH0727488B2 (en) Memory access control method
JPS6153747B2 (en)
JP2844679B2 (en) Access control method and information processing device
JP2559165B2 (en) Multiprocessor system
JPH06208547A (en) Communication controller
JP3226557B2 (en) Multiprocessor system
JPH01271866A (en) Lock control system for main memory
JPH0332103B2 (en)
JPH10247182A (en) Multiprocessor system
JPS6228866A (en) Main memory access system