JP3472913B2 - Load balancing method for reconfigurable hardware - Google Patents

Load balancing method for reconfigurable hardware

Info

Publication number
JP3472913B2
JP3472913B2 JP31603798A JP31603798A JP3472913B2 JP 3472913 B2 JP3472913 B2 JP 3472913B2 JP 31603798 A JP31603798 A JP 31603798A JP 31603798 A JP31603798 A JP 31603798A JP 3472913 B2 JP3472913 B2 JP 3472913B2
Authority
JP
Japan
Prior art keywords
message
reconfigurable hardware
objects
duplicate
load balancing
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 - Fee Related
Application number
JP31603798A
Other languages
Japanese (ja)
Other versions
JP2000148707A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP31603798A priority Critical patent/JP3472913B2/en
Publication of JP2000148707A publication Critical patent/JP2000148707A/en
Application granted granted Critical
Publication of JP3472913B2 publication Critical patent/JP3472913B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Logic Circuits (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、再構成可能ハード
ウェアにおいて、自オブジェクトの複製オブジェクトを
生成することによりオブジェクトの処理負荷を動的に分
散させ、かつ再構成可能ハードウェアの資源を有効に利
用することができる負荷分散方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention, in reconfigurable hardware, dynamically distributes the processing load of an object by generating a duplicate object of its own object, and makes the resources of the reconfigurable hardware effective. The present invention relates to a load balancing method that can be used.

【0002】[0002]

【従来の技術】書き換え可能なハードウェアである再構
成可能ハードウェア(FPGA(Field Prog
rammable Gate Array)やPLD
(Programmable Logic Devic
e)等)はASIC(特定用途向けIC)等のスタティ
ックなLSIを作成する前の試作や少量のLSIを低コ
ストで作成するために用いられる場合が多かった。例え
ば、FPGAでは、ユーザが手元でプログラム可能な2
000ゲート〜数万ゲート程度の論理を実現することが
でき、ゲートアレイを設計するための論理検証用の試
作、あるいは1000個以下の少量生産等に利用されて
いた。また、PLDでは、ANDゲート群のアレイとO
Rゲート群のアレイからなり、ゲート間を接続するヒュ
ーズを切断することにより手軽に論理回路を実現してい
た。一方、その書き換え可能な利点を生かして、従来は
ソフトウェアの変更により実現していた機能の変更をハ
ードウェアの書き換えにより行うためにも用いられてき
ている。しかしながら、ハードウェアにより直接処理を
行う最大の利点は、任意の単位で他の処理と並列に処理
できる点である。この点に着目し、再構成可能なハード
ウェアであるPCA(Plastic Cell Ar
chitecture)上で一種の組み合わせ問題であ
る制約充足問題(CSP:ConstrainSati
sfaction Problem)を解く方法が提案
されている(塩澤、小栗、永見、伊藤、小西、“汎用計
算機構を実現する再構成可能LSIアーキテクチャ”電
子情報通信学会技術研究報告〔VLSI設計技術〕、VL
D97-114、1998年3月参照)。
2. Description of the Related Art Reconfigurable hardware that is rewritable hardware (FPGA (Field Program)
RAMMABLE GATE ARRAY) and PLD
(Programmable Logic Device
e) and the like) are often used for prototyping before making a static LSI such as an ASIC (application-specific IC) or for making a small amount of LSI at low cost. For example, in an FPGA, the user can program 2
Logic of about 000 to tens of thousands of gates can be realized, and it has been used for a prototype for logic verification for designing a gate array, or for small-scale production of 1000 or less. Further, in the PLD, an array of AND gate groups and O
The logic circuit is easily realized by cutting the fuse connecting the gates, which is composed of an array of R gate groups. On the other hand, by taking advantage of the rewritability, it is also used to rewrite the hardware to change the function that was conventionally realized by changing the software. However, the greatest advantage of performing processing directly by hardware is that it can be processed in parallel with other processing in arbitrary units. Focusing on this point, PCA (Plastic Cell Ar) that is reconfigurable hardware
Constraint Satisfaction Problem (CSP: Constrain Satin)
A method for solving the saction problem has been proposed (Shiozawa, Oguri, Nagami, Ito, Konishi, "Reconfigurable LSI architecture realizing general-purpose computing mechanism" IEICE Technical Report [VLSI design technology], VL.
D97-114, March 1998).

【0003】制約充足問題を述べる前に、この問題で利
用する再構成可能なハードウェアであるPCAの概略に
ついて述べる。図7に示すように、PCAは、相互に接
続された均一なセル(Cell)10で構成され、各セ
ルは組み込み部11とプラスティック部12とから成
る。組み込み部11は予め定義された固定機能からな
り、隣接セル間の組み込み部11とラインを介して相互
に接続されている。プラスティック部12は、セル単位
での書き換えが可能なプログラマブル論理であり、隣接
したセル10のプラスティック部12と相互に接続さ
れ、論理ゲートや記憶素子として使用可能な論理回路で
ある(図11参照)。このPCAが従来のPLD、FP
GA等と異なる点は、プラスティック部12の書き換え
がPCA自身により自律的かつ並列に行われることであ
る。これにより、プロセッサの介在による書き換えのオ
ーバヘッドが削減される利点のみならず、書き換えがP
CAの内部で並列に実現できる利点もある。PCAの書
き換えにより実現される機能の単位をオブジェクトと呼
ぶ。
Before describing the constraint satisfaction problem, an outline of PCA, which is reconfigurable hardware used in this problem, will be described. As shown in FIG. 7, the PCA includes uniform cells 10 connected to each other, and each cell includes a built-in part 11 and a plastic part 12. The built-in unit 11 has a predefined fixed function and is connected to the built-in unit 11 between adjacent cells via a line. The plastic section 12 is a programmable logic that can be rewritten in cell units, is a logic circuit that is connected to the plastic section 12 of the adjacent cell 10 and can be used as a logic gate or a storage element (see FIG. 11). . This PCA is a conventional PLD, FP
The difference from GA and the like is that the rewriting of the plastic part 12 is carried out autonomously and in parallel by the PCA itself. This not only has the advantage of reducing the overhead of rewriting due to the intervention of the processor, but also rewriting P
There is also an advantage that it can be realized in parallel inside the CA. A unit of function realized by rewriting PCA is called an object.

【0004】図8は、PCA内部におけるオブジェクト
の生成から消滅までのサイクルを示す図である。PCA
では、新たにオブジェクトを生成する時、各セルの組み
込み部11間で伝搬/反射するメッセージを用いて矩形
空き領域を探索する。空き領域が見つかると、領域を確
保し(ステップ21)、その領域に回路の構成情報をメ
ッセージとして送信し、回路情報の書き込みおよび回路
の起動を行う(ステップ22)。これにより、オブジェ
クトの生成が完了する。生成されたオブジェクトは、他
のオブジェクトとメッセージのやりとりを行いながら
(ステップ24)、内部状態を遷移させ(ステップ2
5)、必要に応じて処理結果を他のオブジェクトにメッ
セージ送信する(ステップ24)。オブジェクトは、領
域解放メッセージを受信することにより停止して、オブ
ジェクトを構成しているセル領域を順次解放する(ステ
ップ26)。このように、PCAでは、組み込み部11
に予め用意された機能を用いてオブジェクトの生成/消
滅を自律的に行い、生成されたオブジェクトは独立して
動作可能なハードウェア機能ブロックとなる。
FIG. 8 is a diagram showing a cycle from the generation of an object to its disappearance inside the PCA. PCA
Then, when a new object is generated, a rectangular empty area is searched using a message propagated / reflected between the embedding units 11 of each cell. When a vacant area is found, the area is secured (step 21), the circuit configuration information is transmitted to the area as a message, and the circuit information is written and the circuit is activated (step 22). This completes the generation of the object. The generated object transits its internal state while exchanging messages with other objects (step 24) (step 2).
5) If necessary, the processing result is sent as a message to another object (step 24). When the object receives the area release message, the object stops and sequentially releases the cell areas forming the object (step 26). Thus, in the PCA, the built-in unit 11
Objects are autonomously created / erased using the functions prepared in advance, and the created objects become hardware functional blocks that can operate independently.

【0005】以下、再構成可能ハードウェア上で複数の
オブジェクトがメッセージを送受信しながら処理を行う
ことを、制約充足問題(CSP)を解く例を用いて説明
する。制約充足問題(CSP)は、人工知能処理や自然
言語理解等の多くの問題を定式化する問題であり、前述
の電子情報通信学会技術研究報告で示されているよう
に、次のように定義される。n(≧1)個の変数x
12,・・xCがあり、その値となる有限集合がそれぞ
れD12,・・DCで与えられた時、以下で与えられる
制約に基づきn個の変数に値を割り当てる。2つ以上の
変数から成る変数組tO=(xI,・・xI)(1≦i
<j≦n)に対して割り当て可能な値の組が制約RO=
{(u,・・・v)∈DI×・・×DI|(u,・・・
v)}で与えられた時、全ての制約RO(1≦k≦m)
に対して{(d1,d2,・・dC)∈D1×D2×・・・
×Dn|(dI,・・dI)∈RO}を満足する組(d
1,d2,・・dC)を求める問題である。tOとROの
組(tO,RO)を特に制約条件と呼ぶ。
In the following, a case where a plurality of objects perform processing while transmitting and receiving a message on reconfigurable hardware will be described using an example of solving a constraint satisfaction problem (CSP). The constraint satisfaction problem (CSP) is a problem that formulates many problems such as artificial intelligence processing and natural language understanding, and is defined as follows, as shown in the Technical Report of the Institute of Electronics, Information and Communication Engineers mentioned above. To be done. n (≧ 1) variables x
1 x 2, there is · · xC, finite set each D 1 D 2 as the value, when given in · · DC, assign values to n variables based on the constraints given below. Variable set tO = (xI, ... xI) (1 ≦ i
The set of values that can be assigned to <j ≦ n) is the constraint RO =
{(U, ... v) ∈DI × ·· × DI | (u, ...
v)}, all constraints RO (1 ≦ k ≦ m)
For {(d 1 , d 2 , ..., dC) ∈ D 1 × D 2 × ...
× Dn | (dI, ... dI) εRO} satisfying the set (d
It is a problem to obtain 1 , d 2 , ..., dC). A set of tO and RO (tO, RO) is particularly called a constraint condition.

【0006】制約充足問題(CSP)には、全ての組を
求める(全解探索)場合と1つの解を求める(単一探
索)場合とがある。制約充足問題(CSP)の例とその
全ての解を以下に示す。 〔制約充足問題(CSP)の例〕 変数: x1,x2,x3,x4,x5 値域: D1=D2=D3=D4=D5={a,b,c,d,e} 制約条件:t1=(x1,x2),t2=(x1,x3,x4), t3=(x2,x4),t4=(x2,x5) R1={(a,b),(b,a),(b,e)} R2={(b,b,e),(b,c,a),(c,b,e)} R3={(e,a),(a,d),(a,e)} R4={(e,d),(a,d),(d,a)} 解: (b,a,b,c,d)および(b,e,c,a,d)
The constraint satisfaction problem (CSP) includes a case of obtaining all pairs (all solution search) and a case of obtaining one solution (single search). An example of the Constraint Satisfaction Problem (CSP) and all its solutions are given below. [Example of Constraint Satisfaction Problem (CSP)] Variables: x 1 , x 2 , x 3 , x 4 , x 5 Range: D 1 = D 2 = D 3 = D 4 = D 5 = {a, b, c, d, e} Constraints: t 1 = (x 1 , x 2 ), t 2 = (x 1 , x 3 , x 4 ), t 3 = (x 2 , x 4 ), t 4 = (x 2 , x 5 ) R 1 = {(a, b), (b, a), (b, e)} R 2 = {(b, b, e), (b, c, a), (c, b, e)} R 3 = {(e, a), (a, d), (a, e)} R 4 = {(e, d), (a, d), (d, a)} Solution: ( b, a, b, c, d) and (b, e, c, a, d)

【0007】図9は、再構成可能ハードウェアに構成さ
れた5個のオブジェクトによって制約充足問題例を解く
例を示す図である。再構成可能ハードウェア上でCPS
を解く場合、開始オブジェクト(オブジェクト10
1)、および各制約条件(t1,R1),(t2,R2),
・・(tU,RU)毎に生成される制約オブジェクトを
生成する。図9の矢印は、オブジェクト間でのメッセー
ジの転送方向を示す。第k番目の制約オブジェクトは第
k−1番目の制約オブジェクトから変数に対して値が割
り当てられた組(d1,d2,・・,dC)をメッセージ
として受信する。ただし、各変数に対応する値には不定
値(‘u’)が割り当てられている場合もある。第k番
目の制約オブジェクトは自オブジェクトの制約条件に矛
盾しないように不定値となっている変数に値を割り当て
る。そのような割り当てが存在すれば、新たに得られた
組(d1’,d2’,・・,dC’)をメッセージとして
第k+1番目の制約オブジェクトに送信する。変数に対
して制約条件を満足する値の割り当てが存在しない場合
には、受信したメッセージを破棄する(オブジェクト1
03)。開始オブジェクトは、最初の制約オブジェクト
に全ての変数に対して不定値が割り当てられている組を
送信し、その後に終了メッセージを送信する(オブジェ
クト101)。最後の制約オブジェクトである第m番目
の制約オブジェクトからは、開始オブジェクトに組(d
1’,d2’,・・,dC’)が送信される(オブジェク
ト105)。また、終了メッセージを受信した制約オブ
ジェクトは、次のオブジェクトへ終了メッセージを転送
する。
FIG. 9 shows the configuration of reconfigurable hardware.
Solves the constraint satisfaction problem example with 5 objects
It is a figure which shows an example. CPS on reconfigurable hardware
To solve the starting object (object 10
1) and each constraint condition (t1, R1), (T2, R2),
..A constraint object generated for each (tU, RU)
To generate. The arrows in Fig. 9 indicate messages between objects.
Indicates the transfer direction of the data. The kth constraint object is the
The value is assigned to the variable from the (k-1) th constraint object.
Assigned group (d1, D2, ..., dC) message
To receive as. However, the value corresponding to each variable is undefined
A value ('u') may be assigned. No. k
The eye constraint object has a constraint on its own object.
Assign a value to a variable that has an indefinite value so as not to shield
It If such an assignment exists, it is newly obtained
Set (d1’, D2', ..., dC') as a message
Send to the (k + 1) th constraint object. For variables
And there is no value assignment that satisfies the constraint
To discard the received message (Object 1
03). Start object is the first constraint object
A set in which indeterminate values are assigned to all variables
Send and then send the end message (object
101). The last constraint object, mth
From the constraint object of (d
1’, D2', ..., dC') is transmitted (object
105). Also, the constraint object that received the end message
JECT forwards the end message to the next object
To do.

【0008】開始オブジェクトは、組(d1’,d2’,
・・,dC’)を受信した時、求める解が単一解探索で
あれば他のオブジェクトを消滅させ、全解探索であれ
ば、終了メッセージを受信した時点で停止する。また、
組を受信することなく、終了メッセージを受信した場合
には解無しとなる。ここでは、与えられた問題の部分問
題をそれぞれ並列に動作可能なオブジェクト(制約オブ
ジェクト)に割り当てて処理を行い、最終的に全体に矛
盾しない変数の割り当てを得ることができる。この方法
によれば、各制約オブジェクトに割り当てられた部分問
題は並列に処理されるが、制約条件のROのサイズが大
きい場合、その制約オブジェクトでの処理に時間がかか
り、並列性が充分に引き出せないという問題が生じる。
そこで、このような負荷の不均一を解消する方法とし
て、部分問題を分割して並列に動作可能なオブジェクト
に割り当てる方法が、前述の電子情報通信学会技術研究
報告では提案されている。図10は、再構成可能ハード
ウェア上に構成された5つのオブジェクトで負荷の分散
を行う従来技術の例を示す図である。ここでは、上記C
SPの例で、R3を2つに分割してR3’およびR3”と
することにより、負荷を分散させている。
The starting object is the set (d 1 ', d 2 ',
.., dC '), if the solution to be sought is a single solution search, the other object is deleted, and if it is a full solution search, it stops when the end message is received. Also,
If the end message is received without receiving the pair, there is no answer. Here, the sub-problems of the given problem are assigned to objects (constraint objects) that can operate in parallel, and processing is performed, and finally variable assignments that do not contradict each other can be obtained. According to this method, the subproblems assigned to each constraint object are processed in parallel, but when the size of the RO of the constraint condition is large, it takes time to process with the constraint object, and parallelism can be sufficiently drawn out. There is a problem that there is no.
Therefore, as a method of eliminating such uneven load, a method of dividing a partial problem and assigning it to objects that can operate in parallel has been proposed in the above-mentioned technical report of the Institute of Electronics, Information and Communication Engineers. FIG. 10 is a diagram showing an example of a conventional technique in which a load is distributed by five objects configured on reconfigurable hardware. Here, the above C
In the SP example, the load is distributed by dividing R 3 into two to form R 3 ′ and R 3 ″.

【0009】[0009]

【発明が解決しようとする課題】前述のように、再構成
可能ハードウェア上で制約充足問題を解く例および負荷
分散の例を説明したが、図11に示すように、再構成可
能なハードウェア上に構成された複数のオブジェクトが
メッセージを相互にやりとりしながら一連の処理を実行
する方法は、従来の処理にも見ることができる(例え
ば、特願平10−98657号明細書および図面参
照)。例えば、通信や交通における経路選択で、2点間
に存在する複数のルートから経路を選択するような問題
で、現在の使用(混雑)状況、工事等による一時的な規
制およびコスト等の制約から現時点で最適な経路を選択
するような場合、状況や規制を制約オブジェクトとし、
その結果から得られた経路のコストを計算するオブジェ
クトを更に設けることで問題を解くことができる。図1
1の場合には、セル31を含む20個のセルからなるオ
ブジェクト1と、セル35を含む6個のセルからなるオ
ブジェクト2とが存在する。この例では、オブジェクト
1のセル31からオブジェクト2のセル35との間に通
信経路を確保し、オブジェクト1からオブジェクト2に
メッセージを送信する場合が示されている。セル31か
らセル32に対しては、左側のセルを選択するW、次に
下側のセルを選択するSSSSS、次に右側のセルを選
択するEEEEの順番で経路指定情報およびメッセージ
が順次出力される。セル32は、選択Wの情報を除去し
て、セル32からの経路指定情報のみを送出する。この
ようにして、セル33,34でも、経路情報を使用して
順次セル35に対してオブジェクト1からのメッセージ
を送信することができる。
As described above, an example of solving the constraint satisfaction problem and an example of load balancing on reconfigurable hardware have been described. However, as shown in FIG. 11, reconfigurable hardware can be used. A method in which a plurality of objects configured as described above perform a series of processes while exchanging messages with each other can be seen in conventional processes (see, for example, Japanese Patent Application No. 10-98657 and drawings). . For example, when selecting a route for communication or transportation, there is a problem of selecting a route from a plurality of routes existing between two points. Due to the current usage (congestion) condition, temporary restrictions due to construction, etc., and cost constraints. When selecting the most suitable route at the moment, the situation and regulations are used as constraint objects,
The problem can be solved by further providing an object for calculating the cost of the route obtained from the result. Figure 1
In the case of 1, there is an object 1 made up of 20 cells including the cell 31 and an object 2 made up of 6 cells including the cell 35. In this example, a case where a communication path is secured between the cell 31 of the object 1 and the cell 35 of the object 2 and a message is transmitted from the object 1 to the object 2 is shown. From cell 31 to cell 32, routing information and messages are output sequentially in the order of W selecting the left cell, then SSSSS selecting the lower cell, and EEEE selecting the right cell. It Cell 32 removes the information of selection W and sends out only the routing information from cell 32. In this way, the cells 33 and 34 can also sequentially transmit the message from the object 1 to the cell 35 by using the route information.

【0010】しかしながら、前述したように負荷分散を
行うための従来の方法では、部分問題に対応するオブジ
ェクトを分割することにより行われるため、確率的に負
荷を分散させることができるが、どのように分割すれば
最も負荷を分散できるのかについて、予め予測すること
は難しい。特に、上記の制約充足問題(CSP)の例で
も、部分解の候補ROが列挙型で明示的に与えられてい
る場合には、部分解の候補の集合ROを分割すれば一応
の負荷分散を図ることが可能であるが、条件式(例え
ば、t3に対してR3がx2≠x4となる全ての値というよ
うな条件式)で与えられた場合には、条件を分割して負
荷分散を図ることは難しい。また、分割や過負荷状態が
解消した後の結合を行うためには、オブジェクトで実行
中の処理を一時中断する必要があるという問題もある。
そこで、本発明の目的は、このような問題を解決し、再
構成可能ハードウェア上に構成されるオブジェクトの分
割によらず、オブジェクトの複製により負荷を分散し、
また処理の中断を発生させることなく、過負荷となった
処理に対して有効に再構成可能ハードウェアの資源を割
り当てることが可能な再構成可能なハードウェアにおけ
る負荷分散方法を提供することにある。
However, as described above, in the conventional method for performing load distribution, the load is stochastically distributed because it is performed by dividing the object corresponding to the subproblem. It is difficult to predict in advance whether the load can be distributed most by dividing it. In particular, even in the above example of the constraint satisfaction problem (CSP), when the partial decomposition candidate RO is explicitly given as an enumeration type, if the partial decomposition candidate set RO is divided, a tentative load distribution is achieved. Although it can be achieved, if given by a conditional expression (for example, a conditional expression such that all values of R 3 are x 2 ≠ x 4 with respect to t 3 ), the conditions are divided. It is difficult to balance the load. In addition, there is a problem that it is necessary to suspend the processing being executed by the object in order to perform the division or the combination after the overloaded state is resolved.
Therefore, an object of the present invention is to solve such a problem, to distribute the load by duplicating objects instead of dividing the objects configured on the reconfigurable hardware,
Another object of the present invention is to provide a load balancing method for reconfigurable hardware that can effectively allocate resources of reconfigurable hardware to an overloaded process without causing interruption of the process. .

【0011】[0011]

【課題を解決するための手段】上記目的を達成するた
め、本発明による再構成可能なハードウェアにおける負
荷分散方法では、(1)再構成可能ハードウェア上に複
数のオブジェクトを回路として構成し、各オブジェクト
がそれぞれ行う処理結果をメッセージとして他のオブジ
ェクトに転送することにより、一連の処理を実行する再
構成可能なハードウェアにおける負荷分散方法におい
て、上記オブジェクトは過負荷状態を検出する手段を用
い、該検出手段により過負荷状態を検出した場合、再構
成可能ハードウェア上の空き領域自オブジェクトに固
有のオブジェクト構成情報を送信することで、自オブジ
ェクトの複製オブジェクトを生成し、自オブジェクトで
処理待ちになっているメッセージの一部または全部を新
たに生成した上記複製オブジェクトに転送して、該複製
オブジェクトで実行させる。 (2)前記(1)の方法において、過負荷状態検出手段
の代りに、オブジェクトは過負荷状態が解消されたこと
を検出する手段を用い、該手段により過負荷状態が解消
したことを検出すると、自オブジェクトの複製オブジェ
クトを削除する。 (3)前記(1)または(2)の方法において、前記
製オブジェクトが存在するオブジェクトは、過負荷状態
の解消を検出した場合または他のオブジェクトから削除
メッセージを受信した場合、複製オブジェクトが存在す
るときには自オブジェクトが生成した複製オブジェクト
を削除するメッセージを送信し、複製オブジェクトが存
在しないオブジェクトは、他のオブジェクトから削除メ
ッセージを受信した場合、自オブジェクトが削除された
旨を削除メッセージ送信元のオブジェクトに通知した
後、自オブジェクトを削除する。
In order to achieve the above object, in a load balancing method for reconfigurable hardware according to the present invention, (1) a plurality of objects are configured as circuits on the reconfigurable hardware, In the load balancing method in the reconfigurable hardware that executes a series of processes by transferring the processing result performed by each object as a message to another object, the object uses a means for detecting an overload state, When the overload state is detected by the detection means, the own object is fixed in the free area on the reconfigurable hardware.
By sending object configuration information Yu, and transferred to the own object to generate a replication object, newly generated the duplicated objects some or all of the message that is to wait for work own objects, the Run it on a duplicate object. (2) In the method of (1) above, instead of the overload state detecting means, a means for detecting that the object is overloaded is used, and the object detects that the overloaded state is cleared. , Delete the duplicate object of the self object. (3) In the method of (1) or (2) above , when the object in which the composite object exists detects the cancellation of the overload condition or receives a deletion message from another object, When a duplicate object exists, it sends a message to delete the duplicate object created by itself, and if the duplicate object does not exist, deletes it from other objects.
When the message is received, the object that has sent the delete message is notified that the object has been deleted, and then the object is deleted.

【0012】[0012]

【発明の実施の形態】以下、本発明の実施例を、図面に
より詳細に説明する。図1は、本発明の第1の実施例を
示すオブジェクトの機能的ブロック図である。図1にお
いて、401は再構成可能ハードウェア上のオブジェク
ト、402は他のオブジェクトとの間で通信を行うため
のメッセージ送受信部、403はこのオブジェクトでの
処理が過負荷状態になったことを検出する過負荷検出
部、404はこのオブジェクトと同等の処理を再構成ハ
ードウェア上の未使用領域に生成するための処理を行う
複製生成部、405はこのオブジェクトの固有の処理を
行うオブジェクト処理部である。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described in detail below with reference to the drawings. FIG. 1 is a functional block diagram of an object showing a first embodiment of the present invention. In FIG. 1, reference numeral 401 is an object on reconfigurable hardware, 402 is a message transmitting / receiving unit for communicating with other objects, and 403 is an overloaded state of processing by this object. An overload detection unit 404 performs a process for generating a process equivalent to this object in an unused area on the reconfigurable hardware, and a reference number 405 denotes an object processing unit that performs a process unique to this object. is there.

【0013】図2は、図1に示すオブジェクトで負荷分
散を行うための処理フローチャートである。他のオブジ
ェクトから受信したメッセージは、メッセージ送受信部
402を介してオブジェクト処理部405に通知され
る。オブジェクト処理部405は、メッセージ送受信部
402から通知されたメッセージを処理可能であれば、
メッセージ送受信部402にメッセージを受け取った旨
を通知すると同時に、受信したメッセージの内容に応じ
た処理を行う。メッセージ送受信部402は、その時点
で外部から受信したメッセージの中でオブジェクト処理
部405からメッセージを受け取った旨の通知が未受信
であるメッセージ(処理待ちメッセージ)の数を過負荷
検出部403に通知する(ステップ501)。
FIG. 2 is a processing flowchart for performing load distribution with the objects shown in FIG. The message received from another object is notified to the object processing unit 405 via the message transmitting / receiving unit 402. If the object processing unit 405 can process the message notified from the message transmitting / receiving unit 402,
At the same time as notifying that the message has been received to the message transmitting / receiving unit 402, processing corresponding to the content of the received message is performed. The message transmission / reception unit 402 notifies the overload detection unit 403 of the number of messages (process waiting messages) for which the notification that the message has been received from the object processing unit 405 has not been received among the messages received from the outside at that time. (Step 501).

【0014】過負荷検出部403は、メッセージ送受信
部402から通知される処理待ちメッセージの数が予め
定められた数を越えた時点で、このオブジェクトが過負
荷であると判断し(ステップ502)、複製生成部40
4に対してこのオブジェクトの複製を生成するように通
知する。複製生成部404は、再構成可能ハードウェア
上の資源を管理している特別なオブジェクトである空き
領域管理オブジェクトに対して、再構成可能ハードウェ
ア上の空き領域からこのオブジェクトの複製を生成可能
な領域の確保を要求する(ステップ503)。空き領域
の確保に成功した場合には(ステップ504)、確保し
た空き領域にオブジェクトに共通する部分であるオブジ
ェクト共通部(例えば、メッセージ送受信部402、過
負荷検出部403、複製生成部404等、オブジェクト
に共通する部分。ただし、オブジェクト共通部に含まれ
る範囲は、オブジェクトのどの範囲を再構成可能とする
かにより異なる)の生成を指示する(ステップ50
5)。
The overload detection unit 403 determines that this object is overloaded when the number of processing waiting messages notified from the message transmission / reception unit 402 exceeds a predetermined number (step 502). Copy generation unit 40
4 tell it to create a duplicate of this object. The copy generation unit 404 can generate a copy of this object from a free area on the reconfigurable hardware for a free area management object that is a special object that manages resources on the reconfigurable hardware. A request is made to secure an area (step 503). If the free space is successfully secured (step 504), the object common unit (for example, the message transmission / reception unit 402, the overload detection unit 403, the copy generation unit 404, etc.) that is a part common to the objects in the secured free space, A part that is common to the objects, but the range included in the object common part is instructed to generate (step 50).
5).

【0015】さらに、オブジェクトに固有のオブジェク
ト構成情報をオブジェクト処理部405から読み出し、
複製オブジェクトにこのオブジェクト処理部405の構
成情報を転送する(ステップ506)。複製オブジェク
トでは、複製生成部404がメッセージの形式で前記の
確保した領域にこれを書き込むことにより、オブジェク
トの複製を生成する。オブジェクトの複製が生成された
後、メッセージ送受信部402にある処理待ちメッセー
ジの一部を新たに生成されたオブジェクトに転送する
(ステップ507)。この例では、過負荷検出部403
で処理待ちメッセージの数が予め定められた数を越えた
時にこのオブジェクトが過負荷であると判断している
が、極く短時間の過負荷状態で新しいオブジェクトが生
成されることにより再構成可能ハードウェアの領域を浪
費しないように、カウンタ等を過負荷検出部403内に
設けて、カウンタの周期の期間継続して処理待ちメッセ
ージの数が予め定められた数を越えている場合に、過負
荷と判定する方法もある。また、本実施例では、過負荷
の検出を他のオブジェクトからの処理待ちメッセージ数
により行っているが、自オブジェクト内での処理過程で
発生する待ち状態となった処理の数を他のオブジェクト
からの処理待ちメッセージの数と同様に扱うことで、自
オブジェクトに起因する過負荷状態を検出することも可
能である。
Further, the object configuration information unique to the object is read from the object processing unit 405,
The configuration information of the object processing unit 405 is transferred to the duplicate object (step 506). For the duplicate object, the duplicate generating unit 404 writes this in the secured area in the form of a message to generate a duplicate of the object. After the copy of the object is generated, a part of the message waiting to be processed in the message transmitting / receiving unit 402 is transferred to the newly generated object (step 507). In this example, the overload detection unit 403
It judges that this object is overloaded when the number of pending messages exceeds the predetermined number, but it can be reconfigured by creating a new object in an overloaded state for an extremely short time. In order not to waste the hardware area, a counter or the like is provided in the overload detection unit 403, and when the number of messages waiting to be processed exceeds the predetermined number continuously for the period of the counter, There is also a method of determining the load. Further, in this embodiment, the overload is detected by the number of messages waiting to be processed from other objects. However, the number of processes in the waiting state occurring in the processing process in the own object is calculated from other objects. It is also possible to detect the overload state caused by the own object by handling it in the same manner as the number of processing waiting messages.

【0016】以上説明した第1の実施例の方法を用いる
ことにより、各オブジェクトが固有に行う処理に対して
オブジェクトが過負荷状態となった場合、自オブジェク
トの処理を分割するのではなく、過負荷状態となったオ
ブジェクトの複製を生成することにより、処理待ち状態
となっている負荷を分散することが可能となるため、オ
ブジェクトの分割を行わずに負荷を分散させることがで
きる。また、オブジェクト処理部405の構成情報を動
作中も複製生部404から読み出し可能な構成とするこ
とにより(例えば、ハードウェア構成情報を2ポートメ
モリ構成とする)、オブジェクトでの処理を中断するこ
となく複製オブジェクトを生成することも可能である。
By using the method of the first embodiment described above, when an object is overloaded with respect to the processing uniquely performed by each object, the processing of its own object is not divided but overloaded. By generating a copy of the object in the loaded state, the load in the processing waiting state can be distributed, so that the load can be distributed without dividing the object. In addition, by disposing the configuration information of the object processing unit 405 so that it can be read from the copy generation unit 404 during operation (for example, the hardware configuration information has a 2-port memory configuration), the processing on the object is interrupted. It is also possible to create a duplicate object instead.

【0017】図3は、本発明の第2の実施例を示すオブ
ジェクトの機能的ブロック図である。図3において、6
01は再構成可能ハードウェア上のオブジェクト、60
2は他のオブジェクトと通信を行うためのメッセージ送
受信部、603はこのオブジェクトで行われる処理に対
する過負荷状態が解消されたことを検出する過負荷解消
検出部、604はオブジェクトを削除して再構成ハード
ウェア上の未使用領域とするための処理を行う消滅処理
部、605はこのオブジェクトの固有の処理を行うオブ
ジェクト処理部である。このオブジェクトは、過負荷状
態が解消した場合に複製されたオブジェクトを消滅させ
るオブジェクトである。
FIG. 3 is a functional block diagram of an object showing a second embodiment of the present invention. In FIG. 3, 6
01 is an object on reconfigurable hardware, 60
2 is a message transmitting / receiving unit for communicating with another object, 603 is an overload elimination detecting unit for detecting that an overload condition for processing performed by this object has been eliminated, and 604 is an object reconfiguration by deleting the object. An annihilation processing unit that performs processing for setting an unused area on the hardware, and an object processing unit 605 that performs processing unique to this object. This object is an object that causes the duplicated object to disappear when the overloaded state is resolved.

【0018】図4は、図3における過負荷状態が解消し
たオブジェクトを消滅させるための処理フローチャート
である。他のオブジェクトから受信したメッセージは、
メッセージ送受信部602を介してオブジェクト処理部
605に通知され、オブジェクト処理部605はメッセ
ージ送受信部602から通知されたメッセージが処理可
能であれば、メッセージ送受信部602に対してメッセ
ージを受け取った旨を通知すると同時に、受信したメッ
セージの内容に応じた処理を行う。メッセージ送受信部
602は、処理待ちメッセージの数を過負荷解消検出部
603に通知する(ステップ701)。過負荷解消検出
部603は、カウンタ等で測定される一定時間の間メッ
セージ送受信部602から通知される処理待ちメッセー
ジの数が予め定められた数を越えない場合に、このオブ
ジェクトの過負荷状態が解消されたと判断し(ステップ
702)、このオブジェクトの複製オブジェクトを消滅
させるように消滅処理部604に通知する。消滅処理部
604は、メッセージ送受信部602を介して空き領域
管理オブジェクトに複製オブジェクトを一意に特定可能
な情報とともに削除する旨のメッセージを通知する。
FIG. 4 is a processing flowchart for extinguishing the object whose overloaded state in FIG. 3 has been resolved. Messages received from other objects are
The object processing unit 605 is notified via the message transmitting / receiving unit 602, and if the object processing unit 605 can process the message notified from the message transmitting / receiving unit 602, the object processing unit 605 notifies the message transmitting / receiving unit 602 that the message has been received. At the same time, the processing according to the content of the received message is performed. The message transmission / reception unit 602 notifies the number of processing waiting messages to the overload elimination detection unit 603 (step 701). The overload elimination detection unit 603 determines that the overload state of this object is determined when the number of process waiting messages notified from the message transmission / reception unit 602 does not exceed a predetermined number for a certain period of time measured by a counter or the like. It is determined that the object has been resolved (step 702), and the disappearance processing unit 604 is notified to erase the duplicated object of this object. The disappearance processing unit 604 notifies the empty area management object via the message transmission / reception unit 602 of a message to delete the duplicate object together with information that can uniquely identify the duplicate object.

【0019】本実施例では、過負荷状態が解消されたこ
との検出を他のオブジェクトからの処理待ちメッセージ
数により行っているが、自オブジェクト内での処理過程
で発生する待ち状態となった処理の数を他のオブジェク
トからの処理待ちメッセージの数と同様に扱うことによ
り、自オブジェクトに起因する過負荷状態の解消を検出
し、空き領域管理オブジェクトに自オブジェクトを削除
するように指示することも可能である。以上説明したよ
うに、第2の実施例の方法を用いることにより、過負荷
状態を解消するために第1の実施例の方法で生成された
複製オブジェクトを過負荷状態が解消した時点で削除す
ることが可能となるため、不要となったオブジェクトを
削除して、再構成可能ハードウェア上で必要なオブジェ
クトを生成するための資源を有効に利用することができ
る。
In the present embodiment, the detection of the elimination of the overload state is carried out by the number of process waiting messages from other objects. However, the process in the waiting state occurring in the processing process in the own object It is also possible to detect the elimination of the overload state caused by the own object and to instruct the free space management object to delete the own object by treating the number of the same as the number of messages waiting to be processed from other objects. It is possible. As described above, by using the method of the second embodiment, the duplicate object generated by the method of the first embodiment in order to eliminate the overloaded state is deleted when the overloaded state is eliminated. Therefore, it is possible to effectively use the resources for deleting the unnecessary objects and generating the necessary objects on the reconfigurable hardware.

【0020】図5は、本発明の第3の実施例を示すオブ
ジェクトの機能的ブロック図である。図5において、8
02は他のオブジェクトと通信を行うためのメッセージ
送受信部、803はこのオブジェクトで行われる処理に
対する過負荷状態が解消されたことを検出する過負荷解
消検出部、804はオブジェクトを削除して再構成ハー
ドウェア上の未使用領域とするための処理を行う消滅処
理部、805はこのオブジェクトの固有の処理を行うオ
ブジェクト処理部、806はこのオブジェクトの複製オ
ブジェクトが存在している場合に値「1」となり存在し
ていない場合には、値「0」を格納する複製状態情報で
ある。複製状態情報806は、最初にオブジェクトが生
成された時点では初期値として値「0」が設定されてお
り、第1の実施例に示すような方法で複製オブジェクト
が生成されると、値「1」が格納される。
FIG. 5 is a functional block diagram of an object showing a third embodiment of the present invention. In FIG. 5, 8
Reference numeral 02 denotes a message transmitting / receiving unit for communicating with another object, 803 denotes an overload elimination detecting unit for detecting that an overload state for processing performed by this object has been eliminated, and 804 deletes the object and reconfigures it. An extinction processing unit that performs processing for making an unused area on hardware, 805 is an object processing unit that performs unique processing of this object, and 806 is a value “1” when a duplicate object of this object exists. If it does not exist, the copy status information stores the value “0”. The copy state information 806 has a value "0" set as an initial value at the time when the object is first generated. When the copy object is generated by the method as described in the first embodiment, the value "1" is set. Is stored.

【0021】図6は、図5に示すオブジェクトにより負
荷分散を行うための処理フローチャートである。他のオ
ブジェクトから受信したメッセージは、メッセージ送受
信部802を介してオブジェクト処理部805に通知さ
れる。オブジェクト処理部805は、メッセージ送受信
部802から通知されたメッセージが処理可能であれ
ば、メッセージ送受信部802にメッセージを受け取っ
た旨を通知すると同時に、受信したメッセージの内容に
応じた処理を行う。メッセージ送受信部802は、処理
待ちメッセージの数を過負荷解消検出部803に通知す
る(ステップ903)。過負荷解消検出部803は、カ
ウンタ等で測定される一定時間の間メッセージ送受信部
802から通知される処理待ちメッセージの数が予め定
められた数を越えない場合には、このオブジェクトの過
負荷状態が解消されたと判断し(ステップ904)、こ
のオブジェクトが生成した複製オブジェクトを消滅させ
るように消滅処理部804に通知する。
FIG. 6 is a processing flowchart for performing load distribution by the objects shown in FIG. The message received from another object is notified to the object processing unit 805 via the message transmitting / receiving unit 802. If the message notified from the message transmitting / receiving unit 802 can be processed, the object processing unit 805 notifies the message transmitting / receiving unit 802 that the message has been received, and at the same time, performs processing according to the content of the received message. The message transmission / reception unit 802 notifies the overload elimination detection unit 803 of the number of processing waiting messages (step 903). If the number of processing waiting messages notified from the message transmission / reception unit 802 does not exceed a predetermined number during a certain period of time measured by a counter or the like, the overload elimination detection unit 803 determines the overload state of this object. Is determined to have been eliminated (step 904), and the disappearance processing unit 804 is notified to erase the duplicate object generated by this object.

【0022】消滅処理部804は、過負荷解消検出部8
03から過負荷状態が解消した旨の通知を受け、複製状
態情報に値「1」が格納されている(自オブジェクトが
生成した複製オブジェクトが存在する)場合には(ステ
ップ905)、メッセージ送受信部802を介して複製
オブジェクトに対してオブジェクトを削除する旨の削除
メッセージを通知し(ステップ906)、複製状態情報
806に値「0」が格納されている(自オブジェクトが
生成した複製オブジェクトが存在しない)場合には、こ
れを無視する。一方、オブジェクトは、他のオブジェク
トから削除メッセージを受信した場合(ステップ90
2)、メッセージ送受信部802は複製状態情報806
に値「1」が格納されていれば(ステップ905)、複
製オブジェクトに対してオブジェクトを削除する旨の削
除メッセージを通知する(ステップ906)。他方、メ
ッセージ送受信部802は、複製状態情報806に値
「0」が格納されていれば(ステップ905)、削除メ
ッセージの送信元であるオブジェクトに削除が行われた
旨を通知し(ステップ908)、空き領域管理オブジェ
クト等に自オブジェクトを一意に特定可能な情報ととも
に削除する旨のメッセージを通知する(ステップ90
9)。複製オブジェクトに削除メッセージを送信したオ
ブジェクトは、その削除メッセージに対して削除が行わ
れた旨の削除確認メッセージを受信すると(ステップ9
01)、複製状態情報806に格納されている値「0」
とし(ステップ910)、受信した削除確認メッセージ
を削除する(ステップ911)。
The disappearance processing unit 804 includes an overload elimination detecting unit 8
When the notification that the overload state has been canceled is received from 03 and the value “1” is stored in the copy state information (there is a copy object generated by the own object) (step 905), the message transmitting / receiving unit A deletion message for deleting the object is sent to the duplicate object via 802 (step 906), and the value “0” is stored in the duplicate status information 806 (the duplicate object generated by the own object does not exist. ), Ignore it. On the other hand, the object receives a delete message from another object (step 90).
2), the message transmitting / receiving unit 802 displays the copy status information 806.
If the value "1" is stored in (step 905), the deletion object is notified of the deletion message (step 906). On the other hand, if the copy status information 806 stores the value “0” (step 905), the message transmitting / receiving unit 802 notifies the object that is the transmission source of the deletion message that the deletion has been performed (step 908). , Notifies the free space management object and the like of a message indicating that the self object is deleted together with the information that can uniquely identify it (step 90).
9). The object that has transmitted the deletion message to the duplicate object receives the deletion confirmation message indicating that the deletion has been performed for the deletion message (step 9).
01), the value “0” stored in the replication status information 806
Then, the received deletion confirmation message is deleted (step 911).

【0023】以上の第3実施例の方法を用いることによ
り、過負荷を解消するために最初のオブジェクトから順
次生成された複製オブジェクトに関して、過負荷状態が
解消した時点で生成した順序とは逆の順序で矛盾無く複
製オブジェクトを削除することができ、各オブジェクト
が近接したり、ソースを連続的に利用可能な状態を維持
することが可能になるため、再構成可能ハードウェア上
でオブジェクトを生成するための資源を有効に利用する
ことができる。また、第3の実施例に示す方法では、過
負荷解消検出部803は最初に生成されるオブジェクト
にのみ有るだけでも制御可能であり、複製オブジェクト
のハードウェア量を削減することも可能となる。
By using the method of the third embodiment described above, with respect to the duplicate objects sequentially generated from the first object in order to eliminate the overload, the order in which the duplicate objects are generated at the time when the overload state is eliminated is opposite. Duplicate objects can be deleted in a consistent order, allowing each object to be in close proximity and keep its source continuously available, thus creating objects on reconfigurable hardware Resources can be effectively used. Further, in the method shown in the third embodiment, the overload elimination detection unit 803 can be controlled even if it is present only in the object that is initially generated, and the hardware amount of the duplicate object can be reduced.

【0024】[0024]

【発明の効果】以上説明したように、本発明によれば、
再構成可能ハードウェア上に生成される独立に動作可能
なオブジェクトで過負荷となるオブジェクトが存在する
場合には、過負荷となるオブジェクトの分割による負荷
分散でなく、オブジェクトの複製により負荷を分散する
ので、分割が難しいオブジェクトに対しても負荷分散を
可能にする。そして、負荷分散のために動作中の処理を
中断させることなく、また過負荷状態が解消したオブジ
ェクトが使用している資源を効率よく解放して、有効に
再構成可能ハードウェアの資源を割り当てることができ
る。
As described above, according to the present invention,
When there is an overloaded object that is generated independently on reconfigurable hardware and is overloaded, the load is distributed not by dividing the overloaded object but by duplicating the object. Therefore, load distribution is possible even for objects that are difficult to divide. Then, without interrupting the processing in operation for load balancing, and efficiently releasing the resources used by the object whose overloaded state has been resolved, and effectively allocating the resources of the reconfigurable hardware. You can

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

【図1】本発明の第1の実施例を示すオブジェクトの機
能的ブロック図である。
FIG. 1 is a functional block diagram of an object showing a first embodiment of the present invention.

【図2】図1に示すオブジェクトにより負荷分散を行う
ための処理フローチャートである。
FIG. 2 is a processing flowchart for performing load distribution by the object shown in FIG.

【図3】本発明の第2の実施例を示すオブジェクトの機
能的ブロック図である。
FIG. 3 is a functional block diagram of an object showing a second embodiment of the present invention.

【図4】図3に示すオブジェクトで過負荷状態が解消し
たオブジェクトを消滅させるための処理フローチャート
である。
FIG. 4 is a processing flowchart for extinguishing an object whose overloaded state has been resolved in the objects shown in FIG. 3;

【図5】本発明の第3の実施例を示すオブジェクトの機
能的ブロック図である。
FIG. 5 is a functional block diagram of an object showing a third embodiment of the present invention.

【図6】図5に示すオブジェクトにより負荷分散を行う
ための処理フローチャートである。図5における配信リ
スト生成部のブロック構成図である。
FIG. 6 is a processing flowchart for performing load distribution by the objects shown in FIG. 6 is a block configuration diagram of a distribution list generation unit in FIG. 5. FIG.

【図7】PCAの概念的構成図である。FIG. 7 is a conceptual configuration diagram of PCA.

【図8】オブジェクトのライフサイクルを示すフローチ
ャートである。
FIG. 8 is a flowchart showing the life cycle of an object.

【図9】再構成可能ハードウェアで制約充足問題を解く
例を示すフローチャートである。
FIG. 9 is a flowchart showing an example of solving a constraint satisfaction problem with reconfigurable hardware.

【図10】再構成可能ハードウェアで負荷の分散を行う
従来技術の例を示すフローチャートである。
FIG. 10 is a flowchart showing an example of a conventional technique for distributing loads with reconfigurable hardware.

【図11】再構成可能ハードウェア上に構成されたオブ
ジェクトとメッセージ通信の例を示す図である。
FIG. 11 is a diagram showing an example of message communication with an object configured on reconfigurable hardware.

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

401,601,801…オブジェクト、403…過負
荷検出部、402,602,802…メッセージ送受信
部、404…複製生成部、405,605,805…オ
ブジェクト処理部、604,804…消滅処理部、80
6…複製状態情報、11…組み込み部、12…プラステ
ィック部、10…セル、31〜35…セル。
401, 601, 801 ... Object, 403 ... Overload detection section, 402, 602, 802 ... Message transmission / reception section, 404 ... Copy generation section, 405, 605, 805 ... Object processing section, 604, 804 ... Extinction processing section, 80
6 ... Duplication status information, 11 ... Built-in part, 12 ... Plastic part, 10 ... Cell, 31-35 ... Cell.

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平5−233562(JP,A) 塩澤恒道外,汎用計算機構を実現する 再構成可能LSIアーキテクチャ,電子 情報通信学会技術研究報告,社団法人電 子情報通信学会,1998年 3月 5日, 第97巻,第576号,p.9−16 (58)調査した分野(Int.Cl.7,DB名) G06F 15/177 G06F 9/46 G06F 15/80 ─────────────────────────────────────────────────── ─── Continuation of the front page (56) Reference Japanese Patent Laid-Open No. 5-233562 (JP, A) Tsunemichi Shiozawa, Reconfigurable LSI architecture that realizes general-purpose computing mechanism, IEICE technical report, IEICE Child and Information Communication Society, March 5, 1998, Vol. 97, No. 576, p. 9-16 (58) Fields surveyed (Int.Cl. 7 , DB name) G06F 15/177 G06F 9/46 G06F 15/80

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 再構成可能ハードウェア上に複数のオブ
ジェクトを回路として構成し、各オブジェクトがそれぞ
れ行う処理結果をメッセージとして他のオブジェクトに
転送することにより、一連の処理を実行する再構成可能
なハードウェアにおける負荷分散方法において、 上記オブジェクトは過負荷状態を検出する手段を用い、
該検出手段により過負荷状態を検出した場合、再構成可
能ハードウェア上の空き領域自オブジェクトに固有の
オブジェクト構成情報を送信することで、自オブジェク
の複製オブジェクトを生成し、 自オブジェクトで処理待ちになっているメッセージの一
部または全部を新たに生成した上記複製オブジェクトに
転送して、該複製オブジェクトで実行させることを特徴
とする再構成可能なハードウェアにおける負荷分散方
法。
1. A reconfigurable device that executes a series of processes by configuring a plurality of objects as a circuit on reconfigurable hardware and transferring the processing results of each object to other objects as a message. In the load balancing method in hardware, the object uses a means for detecting an overload state,
When the overload state is detected by the detection means , the unique area of the own object is set in the empty area on the reconfigurable hardware .
By sending object configuration information to generate a replication object of the own object, and transfer the newly generated the duplicated objects some or all of the message that is to wait for work own object, said replication objects A load balancing method for reconfigurable hardware, characterized in that it is executed by.
【請求項2】 請求項1に記載の再構成可能なハードウ
ェアにおける負荷分散方法において、 前記オブジェクトは過負荷状態が解消されたことを検出
する手段を用い、該手段により過負荷状態が解消したこ
とを検出すると、自オブジェクトの複製オブジェクトを
削除することを特徴とする再構成可能なハードウェアに
おける負荷分散方法。
2. The load balancing method for reconfigurable hardware according to claim 1, wherein the object uses means for detecting that the overloaded state has been resolved, and the overloaded state has been resolved by the means. A load balancing method in reconfigurable hardware, characterized by deleting a duplicate object of its own object when it is detected.
【請求項3】 請求項1または2に記載の再構成可能な
ハードウェアにおける負荷分散方法において、 前記複製オブジェクトが存在するオブジェクトは、過負
荷状態の解消を検出した場合または他のオブジェクトか
ら削除メッセージを受信した場合、複製オブジェクトが
存在するときには自オブジェクトが生成した複製オブジ
ェクトを削除するメッセージを送信し、 複製オブジェクトが存在しないオブジェクトは、他のオ
ブジェクトから削除メッセージを受信した場合、自オブ
ジェクトが削除された旨を削除メッセージ送信元のオブ
ジェクトに通知した後、自オブジェクトを削除すること
を特徴とする再構成可能なハードウェアにおける負荷分
散方法。
3. The load balancing method for reconfigurable hardware according to claim 1, wherein an object in which the duplicate object exists detects a cancellation of an overload state or a delete message from another object. When a duplicate object exists, it sends a message to delete the duplicate object created by itself, and if the duplicate object does not exist , another object
A load balancing method in reconfigurable hardware, characterized in that, when a delete message is received from an object , the object that has sent the delete message is notified to the object that sent the delete message, and then the own object is deleted.
JP31603798A 1998-11-06 1998-11-06 Load balancing method for reconfigurable hardware Expired - Fee Related JP3472913B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31603798A JP3472913B2 (en) 1998-11-06 1998-11-06 Load balancing method for reconfigurable hardware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31603798A JP3472913B2 (en) 1998-11-06 1998-11-06 Load balancing method for reconfigurable hardware

Publications (2)

Publication Number Publication Date
JP2000148707A JP2000148707A (en) 2000-05-30
JP3472913B2 true JP3472913B2 (en) 2003-12-02

Family

ID=18072566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31603798A Expired - Fee Related JP3472913B2 (en) 1998-11-06 1998-11-06 Load balancing method for reconfigurable hardware

Country Status (1)

Country Link
JP (1) JP3472913B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100440879C (en) 2001-01-25 2008-12-03 株式会社东芝 Mobile radio communication device suitable for multiple radio communication system
JP4737382B2 (en) * 2004-03-09 2011-07-27 セイコーエプソン株式会社 Information processing system, information processing apparatus and management server, information processing apparatus control program and management server control program, information processing apparatus control method and management server control method
JP5359142B2 (en) * 2008-09-18 2013-12-04 富士通株式会社 Transmission equipment
JP5051327B1 (en) * 2012-03-22 2012-10-17 富士ゼロックス株式会社 Image processing apparatus and program
JP6705401B2 (en) * 2017-03-13 2020-06-03 富士通株式会社 Information processing apparatus, information processing apparatus control method, and information processing apparatus control program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
塩澤恒道外,汎用計算機構を実現する再構成可能LSIアーキテクチャ,電子情報通信学会技術研究報告,社団法人電子情報通信学会,1998年 3月 5日,第97巻,第576号,p.9−16

Also Published As

Publication number Publication date
JP2000148707A (en) 2000-05-30

Similar Documents

Publication Publication Date Title
Karlin et al. Parallel hashing: An efficient implementation of shared memory
Mahmoud et al. Optimal allocation of resources in distributed information networks
Balsamo et al. Analysis of queueing networks with blocking
CN100429636C (en) Method, system and device for managing address spaces in shared I/O fabrics
Crainic et al. A first multilevel cooperative algorithm for capacitated multicommodity network design
CN109074362A (en) Fractionation and moving range in distributed system
US20180198729A1 (en) Resource usage management in a stream computing environment
US10585932B1 (en) Methods and apparatus for generating causality matrix and impacts using graph processing
CN103827723A (en) Large scale storage system
CN107315760A (en) The platform for updating and calculating for sequential chart
CN108038201B (en) A kind of data integrated system and its distributed data integration system
EP3528117A1 (en) Remotely managing execution of jobs in a cluster computing framework
CN109656742A (en) Node exception handling method and device and storage medium
CN106605217B (en) For the method and system for being moved to another website from a website will to be applied
CN110049091A (en) Date storage method and device, electronic equipment, storage medium
CN109582459A (en) The method and device that the trustship process of application is migrated
JP3472913B2 (en) Load balancing method for reconfigurable hardware
US20230281179A1 (en) Load Balancing For A Storage System
Itai et al. Symmetry breaking in distributed networks
Rust et al. Resilient distributed constraint optimization in physical multi-agent systems
Baldo et al. Performance models for master/slave parallel programs
WO2016209459A1 (en) Devices and/or methods to provide a query response based on ephemeral data
CN103136043B (en) The moving method of a kind of asynchronous IO, System and Network node
US10078638B2 (en) Secure hyper transfer of large files
CN111782336A (en) Cloud migration method and device of hybrid cloud and computer-storable medium

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080919

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080919

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090919

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090919

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100919

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100919

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110919

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120919

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130919

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees