JPH02230456A - Data dependence relation detection type multiprocessor - Google Patents

Data dependence relation detection type multiprocessor

Info

Publication number
JPH02230456A
JPH02230456A JP5236189A JP5236189A JPH02230456A JP H02230456 A JPH02230456 A JP H02230456A JP 5236189 A JP5236189 A JP 5236189A JP 5236189 A JP5236189 A JP 5236189A JP H02230456 A JPH02230456 A JP H02230456A
Authority
JP
Japan
Prior art keywords
memory
access
address
data
data dependence
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
JP5236189A
Other languages
Japanese (ja)
Inventor
Ryuichi Takahashi
隆一 高橋
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP5236189A priority Critical patent/JPH02230456A/en
Publication of JPH02230456A publication Critical patent/JPH02230456A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE:To eliminate the load for scattering of processes and for control of synchronization and to improve the processing speed when a conflict of accesses is produced by providing a memory access control circuit which can identify the data dependence relation. CONSTITUTION:A multiprocessor consists of processors 10 - 1N, an access request arbitrating means 20, a memory 30, a selection means 40, an address comparison means 50, a buffer 60, and a memory access control circuit including the address transfer means 70 and 80. If the access requests have a conflict to the shared memory 30, the access order is decided according to the scattering method of the processing contents and the data dependence relation that is decided by a memory address. As a result, the scattering of processes due to the software and the control of synchronization are not required. Then the overall system processing speed is improved.

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はマルチプロセッサに関し、特に、適当な処理内
容の分散と同期の方法のもとに、データ依存関係を動的
に検出してアクセス順序を定めるメモリアクセス制御方
法を用いた高速マルチプロセッサに関する。
Detailed Description of the Invention [Field of Industrial Application] The present invention relates to multiprocessors, and in particular, dynamically detects data dependencies and determines the access order based on an appropriate method of distributing and synchronizing processing contents. This invention relates to a high-speed multiprocessor using a memory access control method that defines

[従来の技術1 従来のメモリアクセス制御は、第2図に示すように、プ
ロセッサ10〜INが共有するメモリ30への競合する
更新、参照等のアクセス要求を調停するにあたり、プロ
セッサ10〜INのアクセス要求R1〜Rnをアクセス
要求調停手段20が受けて、予め定められた調停アルゴ
リズム、例えば先着順またはプロセッサ番号順等にした
かってアクセス権を与えていた。
[Prior Art 1] As shown in FIG. 2, in conventional memory access control, when arbitrating competing access requests such as update and reference to the memory 30 shared by the processors 10 to IN, The access request arbitration means 20 receives the access requests R1 to Rn and grants access rights according to a predetermined arbitration algorithm, such as first-come-first-served basis or processor number order.

調停アルゴリズムによってアクセス権を与えるプロセッ
サが決まると、アクセス要求調停手段20がその旨を選
択手段40へ指示してアクセス要求アドレスA1〜An
からアクセス権を与えるプロセッサに関るアクセス要求
アドレスを選択し、メモリ30ヘアクセス実行のアドレ
ス信号Aとして入力する。この時、同時にアクセス要求
調停手段20が、アクセス権を与えたプロセッサに対し
てアクセス要求受理信号(Kl〜Kn)を返送すること
により、当該プロセッサは、データの更新の場合、当該
データを更新データ信号Dとしてメモリ30へ転送し、
データの参照の場合、参照データ信号Dとして取込むこ
とになる。
When the processor to which the access right is granted is determined by the arbitration algorithm, the access request arbitration means 20 instructs the selection means 40 to that effect and selects the access request addresses A1 to An.
The access request address related to the processor to which the access right is to be granted is selected from the list and inputted to the memory 30 as an address signal A for access execution. At this time, at the same time, the access request arbitration means 20 returns an access request acceptance signal (Kl to Kn) to the processor that has granted the access right. Transfer it to the memory 30 as signal D,
In the case of data reference, it is taken in as a reference data signal D.

[発明か解決しようとする課題] 」−述した従来のメモリアクセス制御方式では、共有メ
モリ上でのデータ依存関係、すなわちそれらのアクセス
がもし同じアドレスに対するものであるなら、 (1)ある更新は他のある更新の後に行なわなければな
らない。
[Invention or problem to be solved] - In the conventional memory access control method described above, if there is a data dependency relationship on the shared memory, that is, if those accesses are to the same address, (1) a certain update is Must be done after some other update.

(2)ある参照は他のある更新の後に行なわなりればな
らない。
(2) Some references must occur after some other updates.

(3)ある更新は他のある参照の後に行なわなければな
らない。
(3) Certain updates must occur after certain other references.

という関係を識別することができず、ソフトウエアによ
って、タグやフラグを設けるなどして必ずこれらのデー
タ依存関係か保証されるような処理の分散、同期の管理
を行なっていたため、システム全体の処理速度が制約を
受けるという欠点かある。
Because it was not possible to identify these relationships, software was used to manage the distribution and synchronization of processing in a way that guaranteed these data dependencies by setting tags and flags. The drawback is that speed is limited.

[課題を解決するだめの手段] 本発明のデータ依存関係検出型マルチプロセッサは、共
有するメモリに対1−るアクセス要求が競合した場合に
、処理内容の分散方法とメモリアl・レスで定まるデー
タ依存関係によってアクセス順序を決定するメモリアク
セス制御回路を有することによってこの問題を解決して
いる。
[Means for Solving the Problems] The data dependency detection type multiprocessor of the present invention is capable of distributing data determined by a method of distributing processing contents and a memory address when there are conflicting access requests to a shared memory. This problem is solved by having a memory access control circuit that determines the access order based on dependencies.

[作 用] プロツセサには、あらかじめ、アクセスか競合し、しか
もデータ依存関係を検出した場合のアクセス順序が決定
できるように処理内容を適宜分散し、互いに適宜同期し
て動作させる。各プロセッサはアクセス要求が生した場
合は、あるタイミングで一斉にアクセス要求を行なう。
[Operation] Processing contents are appropriately distributed to the processors in advance so that the access order can be determined in the event of access conflict and data dependency is detected, and the processors are operated in synchronization with each other as appropriate. When an access request is generated, each processor issues the access request all at once at a certain timing.

本発明のマルチプロセッサが有するメモリアクセス制御
回路はアクセス要求のアドレスを比較することにより、
データ依存関係が存在することを検出すると、はじめの
処理内容の分散方法とから、たとえばプロセッサ番号に
注目するなどしてアクセス順序を決定し、全体として正
しい処理を実現する。
By comparing the addresses of access requests, the memory access control circuit included in the multiprocessor of the present invention
When the existence of a data dependency relationship is detected, the access order is determined based on the initial distribution method of processing contents, for example by paying attention to the processor number, and correct processing is realized as a whole.

[実施例〕 次に、本発明の実施例について図面を参照して説明する
[Example] Next, an example of the present invention will be described with reference to the drawings.

第1図は本発明のデータ依存関係検出型マルチプロセッ
サの一実施例を示すブロック図である。
FIG. 1 is a block diagram showing an embodiment of a data dependency detection type multiprocessor of the present invention.

このマルチプロセッサはプロセッサ10〜INと、アク
セス要求調停手段20とメモリ30と選択手段40とア
ドレス比較手段50とハッファ60とアドレス転送手段
70.80とて構成されるメモリアクセス制御回路とを
備えている。
This multiprocessor includes processors 10 to IN, and a memory access control circuit composed of access request arbitration means 20, memory 30, selection means 40, address comparison means 50, huffer 60, and address transfer means 70 and 80. There is.

アクセス要求調停手段20は、プロセッサ10〜INが
発するメモリアクセス要求信号R1〜RNを受け、メモ
リ30に対するアクセスが競合した際、アクセウ要求を
発したプロセッサのプロセッサ番号を調べてアクセスの
優先順位を定め、当該プロセッサに、順次メモリアクセ
ス要求受理信号K1〜KNを返送する。選択手段40は
、アクセス要求調停手段20が定めた順序にしたがって
各プロセッサが発したアクセス要求に関るアクセス要求
アドレスA1〜ANをアドレス転送手段70へ転送する
。アドレス比較手段5oはアドレス転送手段70からの
アドレスを受け、そのアドレスをバッファ60が記憶し
ているアトレスと比較してデータ依存関係を調べ、デー
タ依存関係かなければ当該アドレスをア1・レス転送手
段70および80で選択してアドレス信号Aとしてメモ
リ30へ転送し、また、データ依存関係かあればアドレ
ス転送手段70へ、当該アトレスをハツファ60へ転送
するよう指示する。
The access request arbitration means 20 receives memory access request signals R1 to RN issued by the processors 10 to IN, and determines access priority by checking the processor number of the processor that issued the access request when access to the memory 30 conflicts. , sequentially send back memory access request acceptance signals K1 to KN to the processor. The selection means 40 transfers the access request addresses A1 to AN related to the access requests issued by each processor to the address transfer means 70 in the order determined by the access request arbitration means 20. The address comparison means 5o receives the address from the address transfer means 70, compares the address with the address stored in the buffer 60, checks the data dependency relationship, and transfers the address to the address if there is no data dependency relationship. The means 70 and 80 select and transfer the address to the memory 30 as an address signal A, and if there is a data dependency, the address transfer means 70 is instructed to transfer the address to the buffer 60.

次に、本実施例の動作について説明する。Next, the operation of this embodiment will be explained.

まず、アクセス要求調停手段20が複数のプロセッサか
らデータの更新または参照のアクセス要求を受けると、
アクセス要求を発したプロセッサのプロセッサ番号を調
へてアクセスの優先順位を決定する。つづいて、その順
序にしたがって各アクセス要求に関るアドレスが選択手
段40で選択されて、順次アトレス比較手段50へ送ら
れ、バッファ60内のアドレスと比較されてデータ依存
関係が調べられる。ここで、依存関係がなければそのま
まメモリ30ヘアドレス信号Aとして転送され、該当す
るプロセッサは、更新の場合、書込みデータをデータ信
号Dとして出力して目的とずるアトレスのデータの更新
を行ない、参照の場合、メモリ30の目的とするアドレ
スのデータをデータ信号Dとして取込む。また、データ
依存関係かあれば、このアドレスは一旦バッファ60へ
格納され、以前にバッファ60へ記憶されていたアドレ
スに対応するアクセスか優先される。
First, when the access request arbitration means 20 receives an access request for data update or reference from a plurality of processors,
The access priority is determined by checking the processor number of the processor that issued the access request. Subsequently, addresses related to each access request are selected by the selection means 40 in accordance with the order, and sequentially sent to the address comparison means 50, where they are compared with the addresses in the buffer 60 to check data dependence. Here, if there is no dependency relationship, the data is transferred as is to the memory 30 as the address signal A, and in the case of updating, the corresponding processor outputs the write data as the data signal D to update the data of the target address and refer to it. In this case, the data at the target address in the memory 30 is taken in as the data signal D. Furthermore, if there is a data dependency, this address is temporarily stored in the buffer 60, and priority is given to access corresponding to the address previously stored in the buffer 60.

[発明の効果] 以」二説明したように本発明は、適宜同期して動作し、
アクセスが競合した場合、データ依存関係を調べれば、
どのアクセスを優先するかが定まるように処理を分散し
、このデータ依存関係を識別可能なメモリアクセス制御
回路を具備することにより、データ依存関係を必ず保証
するような処理の分散、同期の管理の負荷が無くなり、
処理速度を向上させるという効果かある。
[Effects of the Invention] As explained below, the present invention operates synchronously as appropriate,
If there is an access conflict, you can check the data dependencies.
By distributing processing so that it is determined which access has priority, and by providing a memory access control circuit that can identify this data dependency, it is possible to distribute processing and manage synchronization to ensure data dependence. The load is gone,
It has the effect of improving processing speed.

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

第1図は本発明のデータ依存関係検出型マルチプロセッ
サの一実施例を示すブロック図、第2図は従来例を示す
ブロック図である。 10〜IN・・・・・・プロセッサ、 20・・・・・・・・・・・・アクセス要求調停手段、
30・・・・・・・・・・・・メモリ、  40・・・
・・・選択手段、50・・・・・・・・・・・・アトレ
ス比較手段、60・・・・・・・・・・・・パッファ、
70. 80・・・・・・アドレス転送手段。
FIG. 1 is a block diagram showing an embodiment of a data dependency detection type multiprocessor of the present invention, and FIG. 2 is a block diagram showing a conventional example. 10-IN... Processor, 20... Access request arbitration means,
30・・・・・・・・・Memory, 40...
・・・Selection means, 50・・・・・・・・・Atres comparison means, 60・・・・・・・・・Puffer,
70. 80...Address transfer means.

Claims (1)

【特許請求の範囲】 1、複数のプロセッサがメモリを共有して適宜同期して
動作するマルチプロッセサにおいて、 該メモリに対するアクセス要求が競合した場合に、処理
内容の分散方法とメモリアドレスで定まるデータ依存関
係によってアクセス順序を決定するメモリアクセス制御
回路を有するデータ依存関係検出型マルチプロセッサ。
[Claims] 1. In a multiprocessor in which multiple processors share a memory and operate in synchronization as appropriate, when access requests to the memory conflict, a method for distributing processing contents and data determined by memory addresses are provided. A data dependency detection type multiprocessor having a memory access control circuit that determines access order based on dependency relationships.
JP5236189A 1989-03-03 1989-03-03 Data dependence relation detection type multiprocessor Pending JPH02230456A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5236189A JPH02230456A (en) 1989-03-03 1989-03-03 Data dependence relation detection type multiprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5236189A JPH02230456A (en) 1989-03-03 1989-03-03 Data dependence relation detection type multiprocessor

Publications (1)

Publication Number Publication Date
JPH02230456A true JPH02230456A (en) 1990-09-12

Family

ID=12912667

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5236189A Pending JPH02230456A (en) 1989-03-03 1989-03-03 Data dependence relation detection type multiprocessor

Country Status (1)

Country Link
JP (1) JPH02230456A (en)

Similar Documents

Publication Publication Date Title
US5193197A (en) Apparatus and method for distributed dynamic priority arbitration for access to a shared resource
US5613139A (en) Hardware implemented locking mechanism for handling both single and plural lock requests in a lock message
EP0432075B1 (en) Multiprocessor with relatively atomic instructions
US6986005B2 (en) Low latency lock for multiprocessor computer system
US7533206B2 (en) Resource management device
US6484240B1 (en) Mechanism for reordering transactions in computer systems with snoop-based cache consistency protocols
US8458411B2 (en) Distributed shared memory multiprocessor and data processing method
US5249297A (en) Methods and apparatus for carrying out transactions in a computer system
EP1132818B1 (en) Method and data processing system for access arbitration of a plurality of processors to a time multiplex shared memory in a real time system
US6189061B1 (en) Multi-master bus system performing atomic transactions and method of operating same
JPH08161254A (en) Information processing system and bus arbitration system therefor
JPH02230456A (en) Data dependence relation detection type multiprocessor
JPH08202672A (en) Decentralized multiprocessing system
JPH08272667A (en) File access control system
JPH05508496A (en) Method and apparatus for loading and flagging instructions
JPH03177960A (en) Inter-processor memory exclusive control system
JP4190629B2 (en) Multiprocessor system
JP3206013B2 (en) Direct memory access transfer controller
JPH06314231A (en) Shared memory access control method
JPH11203253A (en) Exclusive access control method for shared resources
JPS63113637A (en) Exclusive processing system for hash table entry
JP2547329B2 (en) Lock data setting device
JP3211694B2 (en) Multiprocessor connection method
JPH03100853A (en) Inter-processor communication system
JP3256975B2 (en) DMA transfer control device