JP2972711B2 - Ordering control method and node - Google Patents

Ordering control method and node

Info

Publication number
JP2972711B2
JP2972711B2 JP10101807A JP10180798A JP2972711B2 JP 2972711 B2 JP2972711 B2 JP 2972711B2 JP 10101807 A JP10101807 A JP 10101807A JP 10180798 A JP10180798 A JP 10180798A JP 2972711 B2 JP2972711 B2 JP 2972711B2
Authority
JP
Japan
Prior art keywords
memory write
node
memory
output
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP10101807A
Other languages
Japanese (ja)
Other versions
JPH11282748A (en
Inventor
淳 樋川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP10101807A priority Critical patent/JP2972711B2/en
Publication of JPH11282748A publication Critical patent/JPH11282748A/en
Application granted granted Critical
Publication of JP2972711B2 publication Critical patent/JP2972711B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、特に中央演算処理
部、メモリ、入出力制御部、入出力デバイスを持つノー
ドを複数接続してなる分散共有メモリシステムにおける
オーダリング制御方法及びノードに属する。
The present invention relates to an ordering control method and a node in a distributed shared memory system in which a plurality of nodes having a central processing unit, a memory, an input / output control unit, and an input / output device are connected.

【0002】[0002]

【従来の技術】従来は、1つのノードにおけるメモリシ
ステムでは、メモリライトの発行順に処理がされていた
のでメモリライトの処理順番の管理をする必要はなかっ
た。
2. Description of the Related Art Conventionally, in a memory system in one node, processing is performed in the order in which memory writes are issued, so that it is not necessary to manage the processing order of memory writes.

【0003】[0003]

【発明が解決しようとする課題】ところで、入出力デバ
イスからのメモリライト要求は、アドレスに従って処理
先に対してメモリライトを実行し、完了報告信号をもっ
てメモリライト処理を完了し、はじめて次のメモリライ
ト要求を受けることができた。そのため、完了報告信号
を待つ間にメモリライトを実行することができず、シス
テム全体としてのスループットを低減させていた。
By the way, in response to a memory write request from an input / output device, a memory write is executed to a processing destination in accordance with an address, and a memory write process is completed with a completion report signal. I was able to receive the request. Therefore, the memory write cannot be executed while waiting for the completion report signal, and the throughput of the entire system is reduced.

【0004】また、分散共有メモリシステムにおいては
複数のノードでメモリを分散共有するので、ノードの切
り替わりにおいて、従来のままではメモリライトの処理
の追い越しが発生する可能性が高く、これを防止するに
は、メモリライトの処理順番(オーダリング)の管理が
必要であった。蓋し、デバイス間の順序保証が必要な場
合、それはソフトウェアの責任で行うのでハードウエア
がそこまで保証する必要がないからである。ちなみに、
このデバイス間は、『デバイスA→デバイスB』ではな
く、『デバイスA→メモリ、デバイスB→メモリ』という
意味である。
In a distributed shared memory system, since memory is distributed and shared by a plurality of nodes, there is a high possibility that overwriting of memory write processing will occur in the case of node switching as it is conventionally. Requires management of the memory write processing order (ordering). In addition, if ordering between devices is required, it is the responsibility of software and hardware does not need to guarantee that much. By the way,
The space between the devices is not “device A → device B” but “device A → memory, device B → memory”.

【0005】本発明は斯かる問題点を鑑みてなされたも
のであり、その目的とするところは、スループットを向
上させ、オーダリングの管理を行うことができるオーダ
リング制御機構を提供する点にある。
The present invention has been made in view of such a problem, and an object of the present invention is to provide an ordering control mechanism capable of improving throughput and managing ordering.

【0006】[0006]

【課題を解決するための手段】本発明は、上記課題を解
決すべく以下に掲げる構成とした。請求項1記載の発明
の要旨は、中央演算処理部、メモリ、入出力制御部、入
出力デバイスを持つノードを複数接続してなる分散共有
メモリシステムにおけるオーダリング制御方法であっ
て、前記入出力デバイスが発行するメモリライトを、前
記入出力デバイス毎に保持する複数のメモリライトバッ
ファを入出力制御部に設け、該メモリライトバッファ単
位でメモリライトのオーダリング管理を行い、1つ前に
メモリライトバッファから発行されたメモリライトのノ
ード番号を記憶しておき、これから発行するメモリライ
トのノード番号と比較し、既に前回のメモリライトの書
き込み完了通知を受信している場合は、メモリライトを
発行し、ノード番号が不一致となり、先行しているメモ
リライトの書き込み完了通知を受信してないとき、これ
から発行しようとしていたメモリライトを抑止すること
を特徴とするオーダリング制御方法に存する。請求項2
記載の発明の要旨は、中央演算処理部及びメモリを備え
た、分散共有メモリシステムにおけるノードであって、
さらに複数の入出力デバイスと、入出力制御部とを備
え、該入出力制御部は、前記入出力デバイス毎に保持さ
れるメモリライトを逐次格納するメモリライトバッファ
と、処理先を決めるオーダリング管理回路と、いずれの
ノードに対するメモリライトかを選択する比較データを
持つノード選択テーブルとを有し、前記オーダリング管
理回路は、前回のメモリライトのノード番号を格納する
ノード番号格納部と、これらから出力されるノード番号
を比較する比較器と、実行中のメモリライトをカウント
する前処理カウント制御部と、実行中のメモリライトが
あった場合に出力するようにするためのOR回路と、該
OR回路の出力と前記比較器から出る信号とをandす
るAND回路と、該AND回路の出力を反転させるため
のインバータと、該インバータから出る信号とリクエス
ト信号をandするAND回路と、該AND回路からの
出力の調停を行う内部調停とを有することを特徴とする
ノードに存する。請求項3記載の発明の要旨は、前記前
処理カウント制御部は、加減算器を有し、該加減算機
は、メモリライトの実行につき前記前処理カウント制御
部の値に加算し、メモリライト完了につき減算すること
を特徴とする請求項2記載のノードに存する。請求項4
記載の発明の要旨は、前記OR回路は、前記前処理カウ
ント制御部の3乃至5のいずれかに出力とIOデバイス
からのメモリライト実行の有無のORの演算結果を出力
することを特徴とした請求項2又は、3に記載のノード
に存する。請求項5記載の発明の要旨は、前記内部調停
は、いずれのリクエストを先に処理するかを決定し、許
可信号を発することを特徴とした請求項2乃至4のいず
れかに記載のノードに存する。請求項6記載の発明の要
旨は、請求項2乃至5のいずれかに記載の前記ノードが
複数接続されてなることを特徴とした分散共有メモリシ
ステムに存する。
The present invention has the following arrangement to solve the above-mentioned problems. The gist of the invention according to claim 1 is an ordering control method in a distributed shared memory system in which a plurality of nodes having a central processing unit, a memory, an input / output control unit, and an input / output device are connected, wherein the input / output device A plurality of memory write buffers for holding the memory writes issued by each of the input / output devices are provided in the input / output control unit, and the ordering management of the memory writes is performed in units of the memory write buffers. The node number of the issued memory write is stored and compared with the node number of the memory write to be issued from now on.If the write completion notice of the previous memory write has already been received, the memory write is issued and the node If the numbers do not match and a write completion notice for the preceding memory write has not been received, It consists in ordering control method characterized by inhibiting the memory write you were trying al issued. Claim 2
The gist of the described invention is a node in a distributed shared memory system including a central processing unit and a memory,
The input / output control unit further includes a plurality of input / output devices and an input / output control unit. The input / output control unit includes a memory write buffer for sequentially storing memory writes held for each of the input / output devices, and an ordering management circuit for determining a processing destination. And a node selection table having comparison data for selecting which node is the memory write. The ordering management circuit includes a node number storage unit for storing the node number of the previous memory write, and a node number output from the node number storage unit. A comparator for comparing the node numbers to be executed, a pre-processing count control unit for counting the memory write being executed, an OR circuit for outputting when there is a memory write being executed, and an OR circuit for An AND circuit for ANDing an output and a signal output from the comparator; an inverter for inverting an output of the AND circuit; An AND circuit for and a signal and the request signal emanating from the converter resides in a node, characterized in that it comprises an internal arbitration for arbitrating an output from said AND circuit. The gist of the invention according to claim 3 is that the pre-processing count control unit has an adder / subtractor, and the adder / subtractor adds the value to the pre-processing count control unit for execution of memory write, and 3. The node according to claim 2, wherein the subtraction is performed. Claim 4
The gist of the present invention is characterized in that the OR circuit outputs an output to one of the preprocessing count control units 3 to 5 and an OR operation result indicating whether or not a memory write is executed from an IO device. A node according to claim 2 or 3. The gist of the invention according to claim 5 is that the internal arbitration determines which request is processed first, and issues a permission signal. Exist. The gist of the invention according to claim 6 resides in a distributed shared memory system characterized in that a plurality of the nodes according to claim 2 are connected.

【0007】すなわち、本発明はノード切り替えの識別
を行う入出力制御部により処理順番を管理することで、
メモリライトの処理の追い越しを無くした。
That is, according to the present invention, the processing order is managed by the input / output control unit for identifying the node switching.
Eliminate memory write overtaking.

【0008】また、複数ある入出力デバイスのそれぞれ
にメモリライトバッファを設定することで、一方の入出
力デバイスの要求するメモリライトでノード切り替えが
あった場合、ノード切り替えを行っている間の待ち時間
に、他方の入出力デバイスからのメモリライトを処理す
ることができるようにして、システム全体としてのスル
ープットの向上を計った。
In addition, by setting a memory write buffer for each of a plurality of input / output devices, when a node is switched by a memory write requested by one of the input / output devices, a waiting time during the node switching is performed. In addition, the memory write from the other input / output device can be processed to improve the throughput of the entire system.

【0009】なお、本発明において、複数の入力デバイ
スに入力されるメモリライトは、全く同一である必要は
ない。
In the present invention, the memory writes input to a plurality of input devices need not be exactly the same.

【0010】[0010]

【作用】本発明は、個々の入出力デバイスに入力された
メモリライトのノード番号を判定してノード番号が一致
しているか、あるいは、既に前回のメモリライトの書き
込み完了通知を受信している場合はメモリライトを発行
し、それ以外はメモリライトの発行を阻止する。
According to the present invention, when the node number of the memory write input to each input / output device is determined and the node numbers match, or when the write completion notice of the previous memory write has already been received, Issues a memory write, and otherwise blocks the issue of a memory write.

【0011】さらに詳細に説明すると、入出力デバイス
が発行するメモリライトを入出力デバイス毎に保持する
メモリライトバッファを入出力制御部に設け、このメモ
リライトバッファ単位でメモリライトのオーダリング管
理を行う。
More specifically, a memory write buffer for holding the memory write issued by the input / output device for each input / output device is provided in the input / output control unit, and the ordering management of the memory write is performed for each memory write buffer.

【0012】入出力制御部から同一ノードへのメモリラ
イトは経路が同じなので、順序は逆転する可能性はな
い。一方、ノードの切り替えが発生するとき、メモリラ
イトの書き込み順序が逆転する可能性が出てくる。そこ
で、メモリアドレスとノード番号を対応させるノード選
択テーブルを設け、メモリライトのアドレスで、テーブ
ルを引くことで転送先のノード番号を知る。また、1つ
前にメモリライトバッファから発行されたメモリライト
のノード番号を覚えておき、これから発行するメモリラ
イトのノード番号と比較する。ノード番号が不一致とな
り、先行しているメモリライトの書き込み完了通知を受
信してないとき、これから発行しようとしていたメモリ
ライトを抑止することで、順序保証を行う。但し、この
間、メモリライトの発行が抑止されるので、当然、メモ
リライトのスループットは悪くなる。ノード番号が一致
していればメモリライトを連続して発行する。
Since the memory write from the input / output control unit to the same node has the same path, the order is not likely to be reversed. On the other hand, when node switching occurs, there is a possibility that the write order of the memory write is reversed. Therefore, a node selection table for associating the memory address with the node number is provided, and the node number of the transfer destination is known by referring to the table with the address of the memory write. Also, the node number of the memory write issued from the memory write buffer immediately before is remembered and compared with the node number of the memory write to be issued from now on. If the node numbers do not match and a write completion notification of the preceding memory write has not been received, the order is guaranteed by suppressing the memory write that is about to be issued. However, during this time, issuance of the memory write is suppressed, so that the memory write throughput naturally deteriorates. If the node numbers match, memory writes are issued continuously.

【0013】上述したように、入出力デバイス同士のメ
モリライトの順序保証は不要であるので、デバイス毎
に、メモリライトバッファを複数設ければ、1つのメモ
リライトバッファが上記の条件が成立する。発行を抑止
している間でも、別のライトバッファから、先行と後続
のノード番号が同じならば、こちらのバッファからメモ
リライトを連続して発行することができる。
As described above, since it is not necessary to guarantee the order of memory write between input / output devices, if a plurality of memory write buffers are provided for each device, one memory write buffer satisfies the above condition. Even while the issuance is suppressed, if the preceding and succeeding node numbers are the same from another write buffer, memory writes can be continuously issued from this buffer.

【0014】この様に、1つのメモリバッファでは、順
序保証をするため連続発行ができないが、メモリライト
バッファを複数持つことで、連続メモリライトの確率を
高くし、順序保証をしながら、システム全体のメモリラ
イトのスループット向上を図る。
As described above, continuous issuance is not possible with one memory buffer to guarantee the order. However, by providing a plurality of memory write buffers, the probability of continuous memory write is increased, and the entire system is guaranteed while ensuring the order. To improve the memory write throughput.

【0015】[0015]

【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。本実施の形態は、図1に示
すように、複数ノード接続した分散共有メモリシステム
であり、その構成は、中央演算処理部A及びB、メモリ
C及びD、入出力制御部α及びβ、入出力デバイス1,
2,3,4を併せ持つ。この分散共有メモリシステム
は、システム全体で論理的に1つのメモリを持ち、この
メモリには物理アドレスを与える。このメモリを物理ア
ドレスのある単位に区切る。この区切られたメモリを各
ノードがそれぞれ持つことでメモリ分散化を計る。例え
ば、4Gバイトのメモリ空間があり、これを4つのセグ
メントに区切る。0から2Gバイト未満をノード0が受
け持ち、2Gバイトから4Gバイト以下をノード1が受
け持つようなシステムを想定している。
Embodiments of the present invention will be described below in detail with reference to the drawings. As shown in FIG. 1, the present embodiment is a distributed shared memory system in which a plurality of nodes are connected, and the configuration thereof includes central processing units A and B, memories C and D, input / output control units α and β, and input / output control units α and β. Output device 1,
It has 2, 3, and 4. This distributed shared memory system logically has one memory in the whole system, and gives a physical address to this memory. This memory is divided into certain units of physical addresses. Each node has the partitioned memory, so that the memory is distributed. For example, there is a memory space of 4 Gbytes, which is divided into four segments. It is assumed that the node 0 handles 0 to less than 2 Gbytes and the node 1 handles 2 Gbytes to 4 Gbytes or less.

【0016】入出力制御部α及びβは、入出力デバイス
1,2,3,4から出力されたメモリライトを逐次格納
するメモリライトバッファ11及び21と、処理先を決
めるオーダリング管理回路4と、どのノード0,1に対
するメモリライトかを選択する比較データを持つノード
選択テーブル5を有している。
The input / output control units α and β include memory write buffers 11 and 21 for sequentially storing memory writes output from the input / output devices 1, 2, 3, and 4, an ordering management circuit 4 for determining a processing destination, A node selection table 5 having comparison data for selecting which node 0 or 1 is a memory write is provided.

【0017】オーダリング管理回路4は、図3に示すよ
うに、前回のメモリライトのノード番号を格納するノー
ド番号格納部13及び23と、これらから出力されるノ
ード番号100を比較する比較器15及び25と、実行
中のメモリライトをカウントする前処理カウント制御部
14及び24と、実行中のメモリライトがあった場合に
出力するようにするためのOR回路16及び26と、こ
のOR回路16及び26の出力と比較器15及び25か
ら出る信号とをandするAND回路18及び28と、
このAND回路18及び28の出力を反転させるための
インバータ17及び27と、このインバータ17及び2
7から出力される信号とリクエスト信号101をand
するAND回路19及び29と、このAND回路19及
び29からの出力の調停を行う内部調停30からなる。
As shown in FIG. 3, the ordering management circuit 4 includes node number storages 13 and 23 for storing the node numbers of the previous memory write, and a comparator 15 and a comparator 15 for comparing the node number 100 output from these. 25, preprocessing count controllers 14 and 24 for counting the number of memory writes being executed, OR circuits 16 and 26 for outputting when there is a memory write being executed, and OR circuits 16 and 26. AND circuits 18 and 28 for ANDing the output of 26 and the signals from comparators 15 and 25;
Inverters 17 and 27 for inverting the outputs of the AND circuits 18 and 28, and inverters 17 and 2
7 and the request signal 101
AND circuits 19 and 29 for arbitration, and an internal arbiter 30 for arbitrating outputs from the AND circuits 19 and 29.

【0018】メモリライトバッファ11及び21は、互
いのメモリライト動作に影響されないで独立してメモリ
ライト処理が行なえるようにするための入出力デバイス
1,2,3,4が要求するメモリライトを格納する、デ
バイス毎に用意されたものである。
The memory write buffers 11 and 21 store the memory writes required by the input / output devices 1, 2, 3, and 4 to enable independent memory write processing without being affected by each other's memory write operation. It is prepared for each device to be stored.

【0019】前処理カウント制御部14は、実際には、
前処理カウント制御部14の横に記された加減算器(○
で囲まれたプラスマイナス記号の部分)が、メモリライ
ト実行につき前処理カウント制御部14の値に加算し、
メモリライト完了につき減算します。これらの加減算に
より前処理カウント制御部では、現在実行中のメモリラ
イトがある時、すなわちカウント結果が”0でない”時
は”1”を出力し、現在実行中のメモリライトがない
時、すなわちカウント結果が”0である”時は”0を出
力するようになっている。
The pre-processing count control unit 14 actually
The adder / subtractor (○) written next to the pre-processing count controller 14
Is added to the value of the pre-processing count control unit 14 for the execution of the memory write,
It is decremented when memory write is completed. Due to these additions and subtractions, the preprocessing count control unit outputs “1” when there is a memory write currently being executed, that is, when the count result is “0”, and when there is no memory write currently being executed, When the result is "0", "0" is output.

【0020】OR回路16及び26は、前処理カウント
制御部14の出力とIOデバイスからのメモリライト実
行の有無のORの演算結果を出力する。
The OR circuits 16 and 26 output the output of the pre-processing count control unit 14 and the result of an OR operation on the presence or absence of execution of memory write from the IO device.

【0021】内部調停30は、内部調停30から出され
る許可信号102により、いずれのリクエストを先に処
理するかを決定する。メモリライトバッファ11及び2
1に格納されているメモリライトは処理先のメモリ0及
び1に対して処理を実行できる。また、メモリライトバ
ッファ11,21双方のメモリライト発行は選択的に阻
止されることとなる。
The internal arbitration 30 determines which request is processed first, based on the permission signal 102 output from the internal arbitration 30. Memory write buffers 11 and 2
The memory write stored in “1” can execute processing for the memories 0 and 1 of the processing destination. Further, the memory write issuance of both the memory write buffers 11 and 21 is selectively prevented.

【0022】次に、本発明の動作を図1〜図4を参照し
て説明する。図4は動作の流れを示すフローチャートで
ある。
Next, the operation of the present invention will be described with reference to FIGS. FIG. 4 is a flowchart showing the flow of the operation.

【0023】まず、入出力デバイス1及び2から出され
たメモリライトは、メモリライトバッファ11及び21
に逐次格納される。
First, memory writes issued from the input / output devices 1 and 2 are transmitted to the memory write buffers 11 and 21.
Are stored sequentially.

【0024】次いで、メモリライトバッファ11及び1
2に格納されたメモリライトと、ノード選択テーブル5
に格納されているデータとをオーダリング管理回路4を
通して比較し、処理先ノードの識別及びメモリライト動
作の調停を行い、メモリライトの抑制を行ってメモリラ
イトを実行する。
Next, the memory write buffers 11 and 1
2 and the node selection table 5
Is compared with the data stored in the memory through the ordering management circuit 4, the processing node is identified, the memory write operation is arbitrated, the memory write is suppressed, and the memory write is executed.

【0025】次いで、図2に示すように、4ギガバイト
のメモリ空間では、2ギガバイト領域をもってそれぞれ
ノード0とノード1としたとき、それぞれのノードのア
ドレスをバイナリにして見比べると、アドレスの先頭2
ビットで、”00−01”はノード0、”10−11”
はノード1と区切ることができる。そこでメモリライト
の処理先ノードの切り替わりを識別するのに、このアド
レス先頭2ビットと処理先ノードの設定を関連付けたデ
ータをノード選択テーブル5に予め格納しておき、入出
力デバイス1,2,3,4からのメモリライト毎に処理
先アドレスの先頭2ビットとノード選択テーブル5のデ
ータとを比較することで、メモリライトのノードの切り
替わりを識別する。
Next, as shown in FIG. 2, in a 4-gigabyte memory space, when each of the nodes 0 and 1 has a 2-gigabyte area and the addresses of the nodes are compared in binary, the first two
Bit, "00-01" is node 0, "10-11"
Can be separated from node 1. In order to identify the switching of the memory write processing destination node, data in which the first two bits of the address and the setting of the processing destination node are stored in the node selection table 5 in advance, and the input / output devices 1, 2, 3 , 4 for each memory write, the first two bits of the processing destination address and the data of the node selection table 5 are compared to identify the switching of the memory write node.

【0026】次いで、図3に示すように、比較によるノ
ードの識別動作は、入出力デバイス1及び2に格納され
たメモリライトのアドレスを図2に示す方法でノード識
別をし、ノード選択テーブル12及び22で選択された
ノード番号と、前回のメモリライトにおけるノード番号
を格納するノード番号格納部13及び23のノード番号
を比較器15及び25で比較し、一致しなければ”1”
を出力することで行なわれる。先行してメモリライトを
実行中のものをカウントする前処理カウント制御部14
及び24は処理するメモリライトが実行中ならカウント
数を加算し、完了したならカウント数を減算すること
で、処理中であるメモリライトの有無を管理する。
Next, as shown in FIG. 3, in the operation of identifying a node by comparison, the address of the memory write stored in the input / output devices 1 and 2 is identified by the method shown in FIG. And the node numbers of the node number storage units 13 and 23 storing the node numbers in the previous memory write are compared by the comparators 15 and 25, and if they do not match, "1"
Is output. Pre-processing count control unit 14 that counts the number of memory writes that are being executed earlier
And 24 manage the presence / absence of the memory write being processed by adding the count number if the memory write to be processed is being executed, and subtracting the count number if completed.

【0027】次いで、この前処理カウント制御部のカウ
ントからOR回路16及び26を通して実行中のメモリ
ライトがあれば出力は”1”になる。このOR回路の出
力と比較器15及び25の出力をAND回路18及び2
8でandして、ノードの不一致かつ前処理カウント制
御部14及び24で処理中であるメモリライトがあれ
ば”1”を出力する。
Next, if there is a memory write being executed through the OR circuits 16 and 26 from the count of the preprocessing count control unit, the output becomes "1". The output of the OR circuit and the outputs of the comparators 15 and 25 are connected to AND circuits 18 and 2
In step 8, “1” is output if there is a memory write in which the nodes do not match and are being processed by the pre-processing count controllers 14 and 24.

【0028】インバータ17及び27を通したAND回
路18及び28の出力と現在処理要求を出しているメモ
リライトのリクエスト信号101をAND回路19及び
29でandすることで、ノード不一致かつ処理中であ
るメモリライトがある場合、内部調停30へのリクエス
ト信号101は”0”となり、内部調停30により許可
信号102が”0”を出力して、ノード切り替え時のメ
モリライトを抑止する。
When the outputs of the AND circuits 18 and 28 through the inverters 17 and 27 and the request signal 101 of the memory write which is currently issuing a processing request are ANDed by the AND circuits 19 and 29, the nodes do not match and the processing is in progress. When there is a memory write, the request signal 101 to the internal arbitration 30 becomes “0”, the enable signal 102 outputs “0” by the internal arbitration 30, and the memory write at the time of node switching is suppressed.

【0029】実施の形態に係るオーダリング制御機構は
上記の如く構成されているので、以下に掲げる効果を奏
する。
Since the ordering control mechanism according to the embodiment is configured as described above, the following effects can be obtained.

【0030】入出力デバイス1,2,3,4毎にメモリ
ライトバッファ11,21を用意し、互いのメモリアク
セス動作に影響されないで独立してメモリライト処理が
行なえるようにすることで、一方のメモリライトバッフ
ァ11,21に格納されたメモリライトの完了報告を待
つ間に、他方のメモリライトバッファ11,21に格納
されたメモリライトを実行することができる。これによ
り、連続メモリライトの確率を高くし、順序保証をしな
がら、システム全体のメモリライトのスループットの向
上が計ることができる。
The memory write buffers 11 and 21 are prepared for each of the input / output devices 1, 2, 3 and 4, so that the memory write processing can be performed independently without being affected by each other's memory access operation. While waiting for the completion report of the memory write stored in the memory write buffers 11 and 21, the memory write stored in the other memory write buffers 11 and 21 can be executed. As a result, it is possible to increase the probability of continuous memory write and to improve the memory write throughput of the entire system while guaranteeing the order.

【0031】また、複数ノード接続による分散共有メモ
リシステムにおいて、図3に示すようなオーダリング管
理回路4の比較動作によるノードの切り替わりの識別
や、ノード切り替えを伴うメモリライト要求に対しての
抑制機能によって、メモリライト処理の追い越しを抑止
するオーダリング管理を実現することができる。 その
結果、本実施の形態によればハードウエアの発熱、電力
消費を低減することができる。
Further, in a distributed shared memory system in which a plurality of nodes are connected, identification of node switching by comparison operation of the ordering management circuit 4 as shown in FIG. 3 and suppression of a memory write request accompanied by node switching are provided. In addition, it is possible to realize ordering management for suppressing overtaking of the memory write process. As a result, according to the present embodiment, it is possible to reduce heat generation and power consumption of hardware.

【0032】なお、本実施の形態においては入出力デバ
イス1〜4が2組ずつ接続された構成になっているが、
本発明はそれに限定されず、本発明を適用する上で好適
な数にすることができる。
In this embodiment, two input / output devices 1 to 4 are connected.
The present invention is not limited thereto, and may be any number suitable for applying the present invention.

【0033】また、各ノード毎に単一の入出力デバイス
及びメモリライトバッファしかなくても上記効果を奏す
ることができる。
Further, even if only a single input / output device and a memory write buffer are provided for each node, the above effects can be obtained.

【0034】また、上記構成部材の数、位置、形状等は
上記実施の形態に限定されず、本発明を実施する上で好
適な数、位置、形状等にすることができる。なお、各図
において、同一構成要素には同一符号を付している。
The number, position, shape, and the like of the above-mentioned constituent members are not limited to the above-described embodiment, but can be set to a number, position, shape, and the like suitable for carrying out the present invention. In the drawings, the same components are denoted by the same reference numerals.

【0035】[0035]

【発明の効果】本発明は以上のように構成されているの
で、以下に掲げる効果を奏する。第1の効果は、スルー
プットの向上である。入出力デバイス毎にメモリライト
バッファを用意し、互いのメモリアクセス動作に影響さ
れないで独立してメモリライト処理が行なえるようにす
ることで、一方のメモリライトバッファに格納されたメ
モリライトの完了報告を待つ間に、他方のメモリライト
バッファに格納されたメモリライトを実行することがで
きる。これにより、連続メモリライトの確率を高くし、
順序保証をしながら、システム全体のメモリライトのス
ループットの向上が計れる。
Since the present invention is configured as described above, the following effects can be obtained. The first effect is an improvement in throughput. A memory write buffer is prepared for each input / output device so that memory write processing can be performed independently without being affected by each other's memory access operation, so that completion of memory write stored in one memory write buffer can be reported. , The memory write stored in the other memory write buffer can be executed. This increases the probability of continuous memory writes,
It is possible to improve the memory write throughput of the entire system while guaranteeing the order.

【0036】第2の効果は、オーダリング管理が行なえ
ることである。複数ノード接続による分散共有メモリシ
ステムにおいて、図3に示すようなオーダリング管理回
路の比較動作によるノードの切り替わりの識別や、ノー
ド切り替えを伴うメモリライト要求に対しての抑制機能
によって、メモリライト処理の追い越しを抑止するオー
ダリング管理を実現している。
The second effect is that ordering management can be performed. In a distributed shared memory system with a plurality of nodes connected, memory write processing is overtaken by a function of identifying node switching by a comparison operation of an ordering management circuit as shown in FIG. 3 and a function of suppressing a memory write request involving node switching. The ordering management that suppresses is realized.

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

【図1】本発明の実施の形態に係る共有メモリ型コンピ
ュータの構成図である。
FIG. 1 is a configuration diagram of a shared memory computer according to an embodiment of the present invention.

【図2】図1に示すオーダリング管理回路の動作を示す
図である。
FIG. 2 is a diagram showing an operation of the ordering management circuit shown in FIG.

【図3】図1に示すオーダリング管理回路の構成図であ
る。
FIG. 3 is a configuration diagram of an ordering management circuit shown in FIG. 1;

【図4】図1に示すオーダリング管理回路のフローチャ
ート図である。
FIG. 4 is a flowchart of the ordering management circuit shown in FIG. 1;

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

α,β 入出力制御部 4 オーダリング管理回路 5 ノード選択テーブル 11,21 メモリライトバッファ 12,22 ノード選択テーブル 13,23 ノード番号格納部 14,24 前処理カウント制御部 15,25 比較器 16,26 OR回路 17,27 AND回路 18,28 AND回路 30 内部調停 100 ノード番号 101 リクエスト信号 102 許可信号 α, β Input / output control unit 4 Ordering management circuit 5 Node selection table 11, 21 Memory write buffer 12, 22 Node selection table 13, 23 Node number storage unit 14, 24 Preprocessing count control unit 15, 25 Comparator 16, 26 OR circuit 17, 27 AND circuit 18, 28 AND circuit 30 Internal arbitration 100 Node number 101 Request signal 102 Enable signal

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 中央演算処理部、メモリ、入出力制御
部、入出力デバイスを持つノードを複数接続してなる分
散共有メモリシステムにおけるオーダリング制御方法で
あって、 前記入出力デバイスが発行するメモリライトを、前記入
出力デバイス毎に保持する複数のメモリライトバッファ
を入出力制御部に設け、該メモリライトバッファ単位で
メモリライトのオーダリング管理を行い、 1つ前にメモリライトバッファから発行されたメモリラ
イトのノード番号を記憶しておき、これから発行するメ
モリライトのノード番号と比較し、既に前回のメモリラ
イトの書き込み完了通知を受信している場合は、メモリ
ライトを発行し、ノード番号が不一致となり、先行して
いるメモリライトの書き込み完了通知を受信してないと
き、これから発行しようとしていたメモリライトを抑止
することを特徴とするオーダリング制御方法。
1. An ordering control method in a distributed shared memory system in which a plurality of nodes having a central processing unit, a memory, an input / output control unit, and an input / output device are connected, the memory write issued by the input / output device Are provided in the input / output control unit, the ordering management of the memory write is performed in units of the memory write buffer, and the memory write buffer issued from the memory write buffer immediately before is provided. Is stored, and compared with the node number of the memory write to be issued from now on, if the write completion notice of the previous memory write has already been received, a memory write is issued, and the node numbers become inconsistent, If you have not received the write completion notification for the preceding memory write, let's issue it now Ordering control method characterized by inhibiting the memory write that was.
【請求項2】 中央演算処理部及びメモリを備えた、分
散共有メモリシステムにおけるノードであって、 さらに複数の入出力デバイスと、入出力制御部とを備
え、 該入出力制御部は、前記入出力デバイス毎に保持される
メモリライトを逐次格納するメモリライトバッファと、
処理先を決めるオーダリング管理回路と、いずれのノー
ドに対するメモリライトかを選択する比較データを持つ
ノード選択テーブルとを有し、 前記オーダリング管理回路は、 前回のメモリライトのノード番号を格納するノード番号
格納部と、 これらから出力されるノード番号を比較する比較器と、
実行中のメモリライトをカウントする前処理カウント制
御部と、 実行中のメモリライトがあった場合に出力するようにす
るためのOR回路と、該OR回路の出力と前記比較器か
ら出る信号とをandするAND回路と、 該AND回路の出力を反転させるためのインバータと、
該インバータから出る信号とリクエスト信号をandす
るAND回路と、 該AND回路からの出力の調停を行う内部調停とを有す
ることを特徴とするノード。
2. A node in a distributed shared memory system comprising a central processing unit and a memory, further comprising: a plurality of input / output devices; and an input / output control unit. A memory write buffer for sequentially storing memory writes held for each output device,
An ordering management circuit for determining a processing destination; and a node selection table having comparison data for selecting which node is a memory write. The ordering management circuit stores a node number for storing a node number of a previous memory write. And a comparator for comparing the node numbers output from them,
A pre-processing count control unit for counting a memory write being executed; an OR circuit for outputting when a memory write is being executed; and an output of the OR circuit and a signal output from the comparator. AND circuit to perform AND operation, an inverter for inverting the output of the AND circuit,
A node comprising: an AND circuit for ANDing a signal output from the inverter and a request signal; and an internal arbitrator for arbitrating output from the AND circuit.
【請求項3】 前記前処理カウント制御部は、加減算器
を有し、該加減算機は、メモリライトの実行につき前記
前処理カウント制御部の値に加算し、メモリライト完了
につき減算することを特徴とする請求項2記載のノー
ド。
3. The pre-processing count control unit includes an adder / subtractor, and the adder / subtracter adds the value to the pre-processing count control unit when performing a memory write, and subtracts when the memory write is completed. The node according to claim 2, wherein
【請求項4】 前記OR回路は、前記前処理カウント制
御部の3乃至5のいずれかに出力とIOデバイスからの
メモリライト実行の有無のORの演算結果を出力するこ
とを特徴とした請求項2又は、3に記載のノード。
4. The OR circuit outputs an output and an OR operation result indicating whether or not to execute a memory write from an IO device to any one of 3 to 5 of the pre-processing count control unit. The node according to 2 or 3.
【請求項5】 前記内部調停は、いずれのリクエストを
先に処理するかを決定し、許可信号を発することを特徴
とした請求項2乃至4のいずれかに記載のノード。
5. The node according to claim 2, wherein the internal arbitration determines which request is processed first, and issues a permission signal.
【請求項6】 請求項2乃至5のいずれかに記載の前記
ノードが複数接続されてなることを特徴とした分散共有
メモリシステム。
6. A distributed shared memory system, wherein a plurality of the nodes according to claim 2 are connected.
JP10101807A 1998-03-31 1998-03-31 Ordering control method and node Expired - Lifetime JP2972711B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10101807A JP2972711B2 (en) 1998-03-31 1998-03-31 Ordering control method and node

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10101807A JP2972711B2 (en) 1998-03-31 1998-03-31 Ordering control method and node

Publications (2)

Publication Number Publication Date
JPH11282748A JPH11282748A (en) 1999-10-15
JP2972711B2 true JP2972711B2 (en) 1999-11-08

Family

ID=14310418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10101807A Expired - Lifetime JP2972711B2 (en) 1998-03-31 1998-03-31 Ordering control method and node

Country Status (1)

Country Link
JP (1) JP2972711B2 (en)

Also Published As

Publication number Publication date
JPH11282748A (en) 1999-10-15

Similar Documents

Publication Publication Date Title
US5155854A (en) System for arbitrating communication requests using multi-pass control unit based on availability of system resources
US6895482B1 (en) Reordering and flushing commands in a computer memory subsystem
KR100679362B1 (en) Memory controller which increases bus utilization by reordering memory requests
JP2002530731A (en) Method and apparatus for detecting data collision on a data bus during abnormal memory access or performing memory access at different times
US6141713A (en) Bus arbitrator with a hierarchical control structure
JP2002530743A (en) Use the page tag register to track the state of a physical page in a memory device
JPH0728758A (en) And device for dynamic time loop arbitration
JP4642531B2 (en) Arbitration of data requests
JP2972711B2 (en) Ordering control method and node
JP4536189B2 (en) DMA transfer apparatus and DMA transfer system
JP2004500608A (en) Universal resource access controller
JPS6272041A (en) Cache memory controller
JPH0551933B2 (en)
JP2001154913A (en) Main storage control unit
JP3169878B2 (en) Memory control circuit
JP2776388B2 (en) Storage control method and storage device
JP2966038B2 (en) Digital data processing unit arbitration apparatus and method
JP2723412B2 (en) Main memory pre-port control method
KR20040045665A (en) Pipelined direct memory access controller
JPH0488537A (en) Information processing system
JP2004062414A (en) Memory sharing system
JPH11212900A (en) System controller
JP2694812B2 (en) Arbitration system
JP2000066946A (en) Memory controller
JP3574693B2 (en) Instruction processor