JPH06236415A - Scheduling method for processing operation in semiconductor integrated circuit - Google Patents

Scheduling method for processing operation in semiconductor integrated circuit

Info

Publication number
JPH06236415A
JPH06236415A JP5020377A JP2037793A JPH06236415A JP H06236415 A JPH06236415 A JP H06236415A JP 5020377 A JP5020377 A JP 5020377A JP 2037793 A JP2037793 A JP 2037793A JP H06236415 A JPH06236415 A JP H06236415A
Authority
JP
Japan
Prior art keywords
control step
allocation
scheduling method
arithmetic processing
allocatable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5020377A
Other languages
Japanese (ja)
Other versions
JP3180984B2 (en
Inventor
Mitsuro Ikeda
充郎 池田
Toshiaki Miyazaki
敏明 宮崎
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 JP02037793A priority Critical patent/JP3180984B2/en
Publication of JPH06236415A publication Critical patent/JPH06236415A/en
Application granted granted Critical
Publication of JP3180984B2 publication Critical patent/JP3180984B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To provide a scheduling method capable of evading the same kind of computation from being concentrated in the same control step. CONSTITUTION:This method is the scheduling method to perform the design of a semiconductor integrated circuit in which temporal partial order relation is regulated between arithmetic processings performed in either control step and a control step directly following the control step within a range of supplied number of control steps, and the arithmetic processing is allocated to each control step one by one within a range of allocatable number (c)(steps S2, S3). The arithmetic processing in which a degree of freedom of allocation is not reduced is selected (steps S4, S5). When the arithmetic processing of unallocatable kind within the allocatable number occurs, the allocatable number is increased by one (step S6), and the allocation of remaining arithmetic processing without being allocated is repeated.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は半導体集積回路におい
て、順次実行されるべき総制御ステップ数が与えられ、
いずれかの制御ステップで行なわれる演算処理と、前記
制御ステップに後続する制御ステップで行なわれる演算
処理との間には時間的な半順序関係が規定されている場
合の半導体集積回路の設計を行なうためのスケジューリ
ング方法に関する。
BACKGROUND OF THE INVENTION The present invention provides a total number of control steps to be sequentially executed in a semiconductor integrated circuit,
A semiconductor integrated circuit is designed in the case where a temporal partial order relation is defined between the arithmetic processing performed in any control step and the arithmetic processing performed in the control step subsequent to the control step. Scheduling method for.

【0002】[0002]

【従来の技術】従来、この種のスケジューリング方法に
おいては、スケジュールが決定されると、決定されたス
ケジュールに従う一連の処理手続きを実現するために必
要な時間および演算器の数が決定される。よって、スケ
ジューリング方法は、合成される半導体集積回路の処理
速度および規模を左右することとなる。
2. Description of the Related Art Conventionally, in this type of scheduling method, when a schedule is determined, the time and the number of arithmetic units required to realize a series of processing procedures according to the determined schedule are determined. Therefore, the scheduling method influences the processing speed and scale of the semiconductor integrated circuit to be synthesized.

【0003】有限個の制御ステップに一連の演算をそれ
ぞれ割り当てるスケジューリング方法の代表的なものを
挙げれば、『ピー.ジー.ポーリンとジェー.ピー.ナ
イトによる”ASIC'sのビヘイヴィオラル・シンセ
シスのためのフォースダイレクティドスケジューリング
法”1989年6月発行のCADに関するIEEE報
告書の第8巻第6号(P.G.Paulin and
J.P.Knight,“Force−Directe
d Scheduling for theBehav
ioral Synthesis of ASIC'
s”IEEETansactions on CAD,
VOl.8 NO.6,June 1989.)』に示
されるフォースダイレクテイドスケジューリング法と呼
ばれるものがある。フォースダイレクティドスケジュー
リング法は各制御ステップでの演算の存在確率分布をも
とに、最終的に必要となる演算器の個数を少なく抑える
方法である。
A typical scheduling method for allocating a series of operations to a finite number of control steps is "P. Gee. Paulin and J. Pee. Knight's "Force Directed Scheduling for ASIC's Behavioral Synthesis," June 1989, IEEE Report on CAD, Volume 8, Issue 6 (PG Paulin and
J. P. Knight, "Force-Directe"
d Scheduling for the Behav
ioral Synthesis of ASIC '
s "IEEE Transactions on CAD,
VOL. 8 NO. 6, June 1989. ) ”Is a force-directed scheduling method. The force-directed scheduling method is a method of reducing the number of finally required arithmetic units based on the existence probability distribution of arithmetic operations at each control step.

【0004】[0004]

【発明が解決しようとする課題】与えられた有限個の制
御ステップに一連の演算を割り当てる場合、各制御ステ
ップに割り当てられた演算数の最大値を小さく抑えるこ
とが重要であるが、従来のフォースダイレクティドスケ
ジューリング法では、割り当ての早い段階で制御ステッ
プが決定された演算によって、あとに残された演算を割
り当てることのできる制御ステップが制限され、同一制
御ステップに演算が集まることがある。最終的に必要と
なる演算器は、各制御ステップに割り当てられた演算器
数の最大値になるため、同一ステップに同一種類の演算
が集中すると、必要となる演算器数が多くなることとな
る。
When assigning a series of operations to a given finite number of control steps, it is important to keep the maximum value of the number of operations assigned to each control step small. In the directed scheduling method, an operation in which a control step is determined in an early stage of allocation may limit a control step to which an operation left behind may be assigned, and the operation may be concentrated in the same control step. Since the final required arithmetic unit is the maximum value of the number of arithmetic units assigned to each control step, if the same type of arithmetic operations are concentrated in the same step, the required number of arithmetic units will increase. .

【0005】本発明は上記問題点に鑑み、同一制御ステ
ップに同一種類の演算が集中することを回避するスケジ
ューリング方法を提供することを目的とする。
In view of the above problems, it is an object of the present invention to provide a scheduling method that avoids concentration of the same type of operations in the same control step.

【0006】[0006]

【課題を解決するための手段】本発明のスケジューリン
グ方法は、時間の経過に従って順次実行されるべく与え
られた制御ステップ数の範囲で、いずれかの制御ステッ
プで行なわれる演算処理と、前記制御ステップに後続す
る制御ステップで行なわれる演算処理との間には時間的
な半順序関係が規定されている半導体集積回路の設計を
行なうスケジューリング方法において、前記演算処理の
うち同一の制御ステップで実行される同一種類の演算処
理の数は最小となるように、前記演算処理を各制御ステ
ップに配分する割り当て手順を有する。
A scheduling method according to the present invention comprises a calculation process performed in any control step within the range of a given control step to be sequentially executed as time passes, and the control step. In a scheduling method for designing a semiconductor integrated circuit in which a temporal partial order relation is defined between the arithmetic processing to be performed in the control step subsequent to and the arithmetic processing to be performed in the same control step among the arithmetic processing. There is an allocation procedure for distributing the arithmetic processing to each control step so that the number of arithmetic processing of the same type is minimized.

【0007】好ましくは、前記割り当て手順において
は、前記半順序関係を維持しつつ同一種類の演算を、前
記配分の自由度を減少させない順に従い、また、与えら
れた割り当て可能数の範囲で、各制御ステップに各演算
を配分し、割り当て可能数の範囲では配分不可能な種類
の演算が発生したときは、割り当て可能数を1増加さ
せ、配分されずに残された演算の配分を繰り返す。ま
た、前記割り当て手順において与えられる割り当て可能
数の初期値は1とするのも好ましい。
Preferably, in the allocation procedure, operations of the same type are maintained in the order of not decreasing the degree of freedom of the allocation while maintaining the partial order relation, and within the range of a given allocatable number. Each operation is allocated to the control step, and when an operation of a type that cannot be allocated occurs in the range of the allocatable number, the allocatable number is increased by 1, and the allocation of the remaining unallocated operations is repeated. It is also preferable that the initial value of the allocatable number given in the above-mentioned allocation procedure is 1.

【0008】[0008]

【作用】割り当て手順においては、演算が割り当てられ
ていない制御ステップに割り当て配分することが可能な
演算は必ず割り当てることにより、同じ制御ステップに
演算が集中することが回避される。また、可能な割り当
ての中から演算の自由度の減少が最小になる割り当てを
選択することにより、割り当ての早い段階で自由度を制
限することもなく演算の配分は可能な限り自由にされ
る。
In the assigning procedure, the operations that can be assigned to the control steps to which the operations are not assigned are always assigned so that the operations are not concentrated on the same control step. Further, by selecting an allocation that minimizes the reduction in the degree of freedom of calculation from the possible allocations, the distribution of operations can be made as free as possible without limiting the degree of freedom at an early stage of allocation.

【0009】[0009]

【実施例】次に、本発明の実施例について図面を参照し
て説明する。図1は本発明のスケジューリング方法の一
実施例が適用されたスケジュール決定システムを示すブ
ロック図である。入力装置101は、与えられる制御ス
テップ数および一連の処理すべき演算に関する指示を受
け取る。スケジュール決定装置102は、処理すべき各
演算がどの制御ステップにおいて実行されるべきかを決
定する。結果出力装置103は、スケジュール決定装置
102が決定したスケジュールを表示器104に表示す
る。
Embodiments of the present invention will now be described with reference to the drawings. FIG. 1 is a block diagram showing a schedule determination system to which an embodiment of the scheduling method of the present invention is applied. The input device 101 receives instructions regarding a given number of control steps and a series of operations to be processed. The schedule determination device 102 determines in which control step each operation to be processed should be performed. The result output device 103 displays the schedule determined by the schedule determination device 102 on the display device 104.

【0010】図2は、図1の入力装置101に与えられ
た一連の処理すべき演算の具体例を模式的に示すデータ
フローグラフである。円で示されたノードは演算を表
し、円の中の記号は演算の種類を表す。例えば、”*”
は乗算を、”+”は加算を、”−”は減算を、”>”は
比較をそれぞれ示している。円の側方に記載された数字
は演算番号を表している。また、有向エッジは制御ステ
ップに関する半順序関係および有向エッジの起点となる
ノードの演算により出力される変数であって、有向エッ
ジの終点となるノードの入力となる変数を示している。
すなわち、ある演算は先行する直前の演算が終了するま
で自己の演算は実行できない。図3は、図2の関係を与
えられた制御ステップ1〜4に各演算をいかに配置して
スケジュールを決定するかを説明するための表形式の図
である。各演算は1制御ステップで実行されるものとす
る。
FIG. 2 is a data flow graph schematically showing a specific example of a series of operations to be processed, which is given to the input device 101 of FIG. Nodes indicated by circles represent operations, and symbols in the circles represent types of operations. For example, "*"
Indicates multiplication, “+” indicates addition, “−” indicates subtraction, and “>” indicates comparison. The numbers on the sides of the circle represent the operation numbers. In addition, the directed edge is a variable that is output by the partial order relation regarding the control step and the calculation of the node that is the starting point of the directed edge, and is the variable that is the input of the node that is the end point of the directed edge.
That is, a certain calculation cannot execute its own calculation until the calculation immediately before the preceding calculation is completed. FIG. 3 is a tabular diagram for explaining how each operation is arranged in the control steps 1 to 4 given the relationship of FIG. 2 to determine the schedule. Each calculation shall be executed in one control step.

【0011】したがって、各演算は図3において斜線を
施した制御ステップ内で実行されなければならない。す
なわち、ひとつの列がひとつの演算を表し、その列にお
いて斜線を施した行が、その演算を割り当てることがで
きる制御ステップを表している。ある列における斜線区
間の数は、その列に対応する演算の自由度を示してい
る。自由度の総和は図3における斜線区画の総数であ
り、図3の例においては自由度の総和は21である。
Therefore, each operation must be performed within the control steps shaded in FIG. That is, one column represents one operation, and the shaded row in that column represents the control step to which the operation can be assigned. The number of shaded sections in a certain column indicates the degree of freedom of calculation corresponding to that column. The total degree of freedom is the total number of shaded sections in FIG. 3, and in the example of FIG. 3, the total degree of freedom is 21.

【0012】上述の自由度の総和は、スケジュールが決
定していくにしたがって減少していく。例えば、図3の
乗算8を制御ステップ3に割り当てたとすると、加算9
は制御ステップ4に割り当てられるので、乗算8および
加算9はそれぞれ自由度を2ずつ減少させ、自由度の総
和は21から4減少して17となる。
The total degree of freedom described above decreases as the schedule is determined. For example, if the multiplication 8 in FIG. 3 is assigned to the control step 3, the addition 9
Is assigned to control step 4, so multiplication 8 and addition 9 each reduce the degree of freedom by 2 and the total degree of freedom is reduced by 4 from 21 to 17.

【0013】以下、割り当てられる制御ステップが決定
されていない演算と、定められた半順序関係を破壊せず
にその演算を割り当てることができる制御ステップとの
組を割り当ての組と呼び、例えば、演算lを制御ステッ
プlに割り当てることを示す割り当ての組を、(演算
1,制御ステップl)と表すことにする。
Hereinafter, a set of an operation whose control step to be assigned is not determined and a control step to which the operation can be assigned without breaking the defined partial order relation is called an assignment set. A set of assignments indicating that l is assigned to the control step l will be represented as (operation 1, control step l).

【0014】本実施例においては、割り当ての組を選択
する際に、自由度の総和の減少がもっとも少ない割り当
てを優先的に選択する。ただし、同一制御ステップに割
り当てることができる同一種類(例えば、乗算)の演算
の個数の限度(以下、割り当て可能個数と呼ぶ)を定
め、これを越える割り当ては行なわない。しかし、割り
当て可能個数を増加しないと割り当てができなくなった
場合のみ、割り当て可能個数を順次1だけ増加させて再
度割り当てを行なう。このことを図2および図3を参照
して説明する。
In this embodiment, when selecting a set of allocations, the allocation with the smallest decrease in the total degree of freedom is selected preferentially. However, the limit of the number of operations of the same type (for example, multiplication) that can be assigned to the same control step (hereinafter, referred to as the allocatable number) is set, and the allocation beyond this is not performed. However, only when the allocatable number cannot be allocated unless the allocatable number is increased, the allocatable number is sequentially increased by 1 and allocation is performed again. This will be described with reference to FIGS. 2 and 3.

【0015】まず、割り当て可能個数をlとする。この
初期状態において割り当ての組は2l通り存在し、いず
れの割り当ての組を選択した場合も、割り当て可能個数
を上回ることはない。そのうち、自由度の総和の減少が
もつとも小さい割り当ての組は、(乗算1,制御ステッ
プl),(乗算2,制御ステップl),(乗算3,制御
ステップ2),(減算4,制御ステップ3),(減算
7,制御ステップ4)の5通りある。なお、これらの割
り当てのうちのいずれかひとつを行った時の自由度の総
和の減少は零である。本例のように自由度の総和の減少
がもっとも小さい割り当てが複数存在した場合、任意の
ひとつを選択する。ここでは、(乗算1,制御ステップ
1)の割り当てを選択することとする。
First, the allocatable number is set to 1. In this initial state, there are 2l combinations of allocations, and no matter which allocation group is selected, the number of allocations does not exceed the number that can be allocated. Among them, the set of allocations that has the smallest reduction in the total sum of degrees of freedom is (multiplication 1, control step 1), (multiplication 2, control step 1), (multiplication 3, control step 2), (subtraction 4, control step 3). ), (Subtraction 7, control step 4). It should be noted that the reduction in the total degree of freedom when performing any one of these allocations is zero. When there are a plurality of allocations with the smallest decrease in the total degree of freedom as in this example, an arbitrary one is selected. Here, the allocation of (multiplication 1, control step 1) is selected.

【0016】この割り当てを決定した後、残りの割り当
ての組は20通り存在する。しかし、このうち(乗算
2,制御ステツプl),(乗算5,制御ステップ1),
(乗算8,制御ステップ1)の割り当ては、制御ステッ
プlに乗算が既に一つ割り当てられており、これらのい
ずれかの割り当てを行なった場合、割り当て可能個数の
lを越える割り当てとなるため、これらの割り当ての組
は選択しない。よって、割り当て可能個数の限度を越え
ない割り当てはl7通りである。このうち、自由度の総
和の減少がもっとも少ない割り当ては、(乗算3,制御
ステップ2),(減算4,制御ステップ3),(減算
7,制御ステップ4)の3通りであり、これらの中から
選択する。ここでは、(乗算3,制御ステップ2)の割
り当てを選択することとする。
After determining this assignment, there are 20 remaining sets of assignments. However, among these, (multiplication 2, control step 1), (multiplication 5, control step 1),
As for the allocation of (multiplication 8, control step 1), one multiplication has already been allocated to the control step l, and if any of these allocations is performed, the allocation exceeds the allocatable number of l. Do not select the allocation set of. Therefore, there are 17 allocations that do not exceed the limit of the allocatable number. Of these, there are three types of allocations with the smallest reduction in the total degree of freedom: (multiplication 3, control step 2), (subtraction 4, control step 3), (subtraction 7, control step 4). Select from. Here, the allocation of (multiplication 3, control step 2) is selected.

【0017】以下、同様に、(減算4,制御ステップ
3),(減算7,制御ステップ4)の割り当てを選択す
る。以上の割り当てが終った状熊において、残りの割り
当ての組はl7通り存在する。このうち、割り当て可能
個数の限度を越えない割り当ては(乗算6,制御ステッ
プ3),(乗算8,制御ステップ3),(加算9,制御
ステップ2),(加算9,制御ステップ3),(加算
9,制御ステップ4),(加算l0,制御ステップ
1),(加算l0,制御ステップ2),(加算l0,制
御ステップ3),(比較演算l1,制御ステップ2),
(比較演算l1,制御ステップ3),(比較演算l1,
制御ステップ4)のll通りである。このうち、自由度
の総和の減少が最も少ない割り当ては、(乗算6,制御
ステップ3)である。この割り当てを行った時の自由度
の総和の減少はlである。
Similarly, the allocation of (subtraction 4, control step 3) and (subtraction 7, control step 4) is selected. In the state bear that has completed the above assignment, there are 17 remaining sets of assignments. Of these, allocations that do not exceed the limit of the allocatable number are (multiplication 6, control step 3), (multiplication 8, control step 3), (addition 9, control step 2), (addition 9, control step 3), ( Addition 9, control step 4), (addition l0, control step 1), (addition l0, control step 2), (addition l0, control step 3), (comparison operation l1, control step 2),
(Comparison calculation l1, control step 3), (Comparison calculation l1,
There are 11 ways of control step 4). Of these, the allocation with the smallest decrease in the total degree of freedom is (multiplication 6, control step 3). The reduction in the total degree of freedom when this allocation is performed is l.

【0018】このとき、乗算6は制御ステップ2に割り
当てたとしても、演算5,6,7の間の半順序関係を壊
すことはない。しかし、制御ステップ2には既に乗算が
一つ割り当てられているために、乗算6は制御ステップ
2に割り当てられることなく、制御ステップ3に割り当
てられる。このように本実施例においては、各制御ステ
ップに同一種類の演算は可能な限り一つずつ割り当てて
いくため、ひとつの制御ステップに同一種類の演算が集
中することが避けられ、最終的に必要な演算器の個数を
少なく抑えることがてきる。
At this time, even if the multiplication 6 is assigned to the control step 2, the partial order relation among the operations 5, 6 and 7 is not broken. However, since one multiplication is already assigned to control step 2, multiplication 6 is assigned to control step 3 without being assigned to control step 2. As described above, in the present embodiment, since the same type of calculation is assigned to each control step as much as possible one by one, it is possible to avoid concentration of the same type of calculation in one control step, and it is finally necessary. It is possible to reduce the number of special arithmetic units.

【0019】以下同様に、(加算9,制御ステップ
4),(加算l0,制御ステップl),(比較演算l
1,制御ステップ4)の割り当てを選択する。以上の割
り当てが終った状熊において、残りの割り当ての組は
(乗算2,制御ステップl),(乗算5,制御ステップ
l),(乗算5,制御ステップ2),(乗算8,制御ス
テップl),(乗算8,制御ステップ2),(乗算8,
制御ステップ3)の6通り存在する。しかし、これらの
乗算の割り当てはいずれも割り当て可能個数1の限度を
越えるものであるので割り当てられない。このように、
割り当てられる制御ステップが決定されていない演算が
存在し、かつ、割り当て可能個数(現在の場合には割り
当て可能個数1)を越えない割り当ての組が存在しない
場合には、割り当て可能個数にlを加える(現在の場合
には割り当て個数2とする)。このとき、前述の6通り
の割り当ての組はいずれの割り当てを行なった場合に
も、割り当て可能個数の限度を越えることはない。そこ
で、この6通りのうち、自由度の総和の減少が最も少な
い、(乗算2,制御ステップl)の割り当てを選択す
る。以下同様にして、(乗算5,制御ステップ2),
(乗算8,制御ステップ3)の順に割り当てを選択し、
図4に示すように演算処理を各制御ステップに配置しス
ケジュール決定の処理を終了する。
Similarly, (addition 9, control step 4), (addition l0, control step l), (comparison operation l)
1, the allocation of control step 4) is selected. After the above allocation, the remaining allocation pairs are (multiplication 2, control step 1), (multiplication 5, control step 1), (multiplication 5, control step 2), (multiplication 8, control step 1). ), (Multiplication 8, control step 2), (multiplication 8,
There are 6 types of control step 3). However, the allocation of these multiplications exceeds the limit of the allocatable number of 1 and therefore cannot be allocated. in this way,
If there is an operation for which the control step to be assigned is not determined and there is no set of assignments that does not exceed the allocatable number (in the present case, the allocatable number 1), add 1 to the allocatable number. (In the present case, the allocation number is 2). At this time, the above-mentioned six sets of allocations do not exceed the limit of the allocatable number in any allocation. Therefore, of these six ways, the assignment of (multiplication 2, control step 1) that causes the smallest decrease in the total degree of freedom is selected. Similarly, (multiplication 5, control step 2),
Select the allocation in the order of (multiplication 8, control step 3),
As shown in FIG. 4, arithmetic processing is arranged in each control step, and the schedule determination processing ends.

【0020】次に図1のスケジュール決定装置102の
一般的な動作について図5のフローチャートを参照して
さらに説明する。ただし各記号は下記のことを表す。
Next, the general operation of the schedule determination device 102 of FIG. 1 will be further described with reference to the flowchart of FIG. However, each symbol represents the following.

【0021】i ・・・・・・ 演算の番号 j ・・・・・・ 演算の種類の番号 k ・・・・・・ 制御ステップの番号 f(i)・・・・ 番号iで示される演算の種類 c ・・・・・・ 同一制御ステップに割り当てる同一
種類の演算の個数の限度 xjk ・・・・・ k番目の制御ステップに割り当てら
れたj番目の種類の演算の個数 (i,j)・・・ 番号iの演算を制御ステップkに割
り当てる割り当ての組 最初に、c=lに設定し、すべてのj,kに対するxjk
を0とする(ステップS1)。割り当てられる制御ステ
ップが決定されていない演算が存在するか否かを判定す
る(ステップS2)。割り当てられる制御ステップが決
定されていない演算が存在する場合には、さらにx
f(i)k≦cなる割り当ての組(i,k)が存在するか否
か判定する(ステップS3)。xf(i)k≦cなる割り当
ての組(i,k)が存在する場合には、xf(i)k≦cな
るすべての割り当ての組(i,k)に対し、その割り当
てを選択したときの自由度の減少を計算し(ステップS
4)、その中から、自由度の減少がもっとも少なくなる
割り当ての組を選択し、選択した割り当ての組(i,
k)についてxf(i)kにlを加え(ステップS5)、ス
テップS2に戻る。
I .. Calculation number j .. Calculation type number k .. Control step number f (i) .. Calculation shown by number i The number of operations of the same type assigned to the same control step x jk ... The number of operations of the jth type assigned to the kth control step (i, j ) ... A set of assignments that assigns the operation of the number i to the control step k, first set c = 1 and x jk for all j, k
Is set to 0 (step S1). It is determined whether or not there is an operation for which the control step to be assigned is not determined (step S2). If there is an operation for which the control step to be assigned has not been determined, further x
It is determined whether or not there is an assignment set (i, k) such that f (i) k ≦ c (step S3). if x f (i) k ≦ c becomes allocation set (i, k) are present, with respect to x f (i) k ≦ c becomes the set of all assignments (i, k), selects the assignment Calculate the reduction of the degree of freedom when
4) From among them, the set of assignments with the smallest reduction in the degree of freedom is selected, and the selected set of assignments (i,
For k), l is added to xf (i) k (step S5), and the process returns to step S2.

【0022】ステップS3において、割り当てられる制
御ステップが決定されていない演算が存在し、xf(i)k
≦cなる割り当ての組(i,k)が存在しないときは、
cにlを加え(ステップS6)、ステップS1に戻り、
前述の処理を繰り返す。ステップS2において、割り当
てられる制御ステップが決定されていない演算が存在し
ないときには、スケジュール決定の処理を終了する。
In step S3, there is an operation for which the control step to be assigned is not determined, and x f (i) k
When there is no allocation set (i, k) such that ≦ c,
l is added to c (step S6), the process returns to step S1,
The above process is repeated. In step S2, when there is no calculation for which the control step to be assigned has not been determined, the schedule determination process ends.

【0023】[0023]

【発明の効果】以上説明したように本発明は、同一制御
ステップに配分される同一演算処理の数は最小とされて
いることにより、演算器はその最小の数に合わせればよ
く最小となる。また、可能な限り各制御ステップに同一
種類の演算をひとつずつ割り当てていくという手順があ
るため、同じ制御ステップに演算が集中することが回避
されている。さらに、制御ステップに割り当てることが
できる演算が複数あるときは、演算の自由度の減少が可
能な限り小さくなるような割り当てを優先的に行なうこ
とにより、割り当ての早い段階で演算の自由度を制限し
やむなく同一ステップに演算が集まってしまうというこ
とを積極的に回避できる。これらのことから明らかなよ
うに、本発明は、同一制御ステップに演算が集中するこ
とを回避でき、最終的に必要となる演算器数を低く抑え
るスケジューリング方法を提供できる。
As described above, according to the present invention, the number of the same arithmetic processing distributed to the same control step is minimized, so that the arithmetic unit can be minimized by matching the minimum number. Further, since there is a procedure in which the same type of calculation is assigned to each control step as much as possible, concentration of calculations on the same control step is avoided. Furthermore, when there are multiple operations that can be assigned to a control step, priority is given to assignments that reduce the degree of freedom in computation as much as possible, thereby limiting the degree of freedom in computation at an early stage of assignment. It is possible to positively prevent the calculation from being gathered in the same step. As is clear from these facts, the present invention can provide a scheduling method that can avoid the concentration of computations in the same control step and keep the number of computing units finally required low.

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

【図1】本発明のスケジューリング方法の一実施例が適
用されたスケジュール決定システムを示すブロック図で
ある。
FIG. 1 is a block diagram showing a schedule determination system to which an embodiment of a scheduling method of the present invention is applied.

【図2】図1の入力装置に与えられた一連の処理すべき
演算の具体例を模式的に示すデータフローグラフであ
る。
FIG. 2 is a data flow graph schematically showing a specific example of a series of operations to be processed given to the input device of FIG.

【図3】図2のデータフローグラフを自由度を含めて表
形式で示した図である。
FIG. 3 is a diagram showing the data flow graph of FIG. 2 in tabular form including degrees of freedom.

【図4】図2のデータフローグラフで示された各演算
が、本発明の実施例により各制御ステップに配分された
結果を表形式で示した図である。
FIG. 4 is a diagram showing, in a tabular form, a result in which each operation shown in the data flow graph of FIG. 2 is distributed to each control step according to the embodiment of the present invention.

【図5】本発明のスケジューリング方法の一実施例を示
すフローチャートである。
FIG. 5 is a flowchart showing an embodiment of the scheduling method of the present invention.

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

101 入力装置 102 スケジュール決定装置 103 結果出力装置 104 表示装置 S1〜S6 ステップ 101 Input Device 102 Schedule Determination Device 103 Result Output Device 104 Display Device S1 to S6 Steps

Claims (3)

【特許請求の範囲】 [Claims] 【請求項1】 時間の経過に従って順次実行されるべき
制御ステップについて、その総数が与えられ、制御ステ
ップで実行される演算処理には時間的な半順序関係が規
定されている半導体集積回路の設計を行なうスケジュー
リング方法において、 前記演算処理のうち同一の制御ステップで実行される同
一種類の演算処理の数が最小となるように、前記演算処
理を各制御ステップに配分する割り当て手順を有するこ
とを特徴とするスケジューリング方法。
1. A design of a semiconductor integrated circuit in which a total number of control steps to be sequentially executed over time is given, and a temporal partial order relation is defined for arithmetic processing executed in the control steps. In the scheduling method for carrying out the method, the method further comprises an allocation procedure for distributing the arithmetic processing to each control step so that the number of arithmetic processing of the same type executed in the same control step is minimized. Scheduling method.
【請求項2】 前記割り当て手順においては、前記半順
序関係を維持しつつ同一種類の演算を、前記配分の自由
度を減少させない順に従い、また、与えられた割り当て
可能数の範囲で、各制御ステップに各演算を配分し、割
り当て可能数の範囲では配分不可能な種類の演算が発生
したときは、割り当て可能数を1増加させ、配分されず
に残された演算の配分を繰り返す請求項1記載のスケジ
ューリング方法。
2. In the assigning procedure, the same type of operations are performed in the order in which the degree of freedom of the allocation is not reduced while maintaining the partial order relation, and within a given assignable number range. 3. When each operation is allocated to a step, and when an operation of a type that cannot be allocated occurs within the range of the allocatable number, the allocatable number is increased by 1 and the allocation of the remaining arithmetic operations is repeated. The described scheduling method.
【請求項3】 前記割り当て手順において与えられる割
り当て可能数の初期値は1である請求項1記載のスケジ
ューリング方法。
3. The scheduling method according to claim 1, wherein the initial value of the allocatable number given in the allocation procedure is 1.
JP02037793A 1993-02-08 1993-02-08 Scheduling method of processing operation in semiconductor integrated circuit Expired - Fee Related JP3180984B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP02037793A JP3180984B2 (en) 1993-02-08 1993-02-08 Scheduling method of processing operation in semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02037793A JP3180984B2 (en) 1993-02-08 1993-02-08 Scheduling method of processing operation in semiconductor integrated circuit

Publications (2)

Publication Number Publication Date
JPH06236415A true JPH06236415A (en) 1994-08-23
JP3180984B2 JP3180984B2 (en) 2001-07-03

Family

ID=12025363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02037793A Expired - Fee Related JP3180984B2 (en) 1993-02-08 1993-02-08 Scheduling method of processing operation in semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP3180984B2 (en)

Also Published As

Publication number Publication date
JP3180984B2 (en) 2001-07-03

Similar Documents

Publication Publication Date Title
JP3416877B2 (en) Apparatus and method for parallel processing of tasks
Castanón et al. Distributed algorithms for dynamic reassignment
CN109544347B (en) Tail difference distribution method, computer readable storage medium and tail difference distribution system
Zhao et al. Due date assignment and single machine scheduling with deteriorating jobs to minimize the weighted number of tardy jobs
CN112292748A (en) Using a graphics processing unit for substrate routing and throughput modeling
JPH06236415A (en) Scheduling method for processing operation in semiconductor integrated circuit
Adé et al. Buffer memory requirements in DSP applications
JP2008171153A (en) Task management apparatus
JP2020135748A (en) Optimization device, optimization method, and program
CN115016947A (en) Load distribution method, device, equipment and medium
CN114020469A (en) Edge node-based multi-task learning method, device, medium and equipment
JP3092550B2 (en) Processing flow progress management system and processing flow progress management method
JP3323738B2 (en) Volume data calculation method and apparatus, and volume data visualization method and apparatus
JPH0981605A (en) Calculation method for arithmetic cost in high level synthesis and scheduling method
CN111836139B (en) OTN (optical transport network) ring network service optimization method, computer system and server
JP2806262B2 (en) Process allocation method for multiprocessor system
US20100030836A1 (en) Adder, Synthesis Device Thereof, Synthesis Method, Synthesis Program, and Synthesis Program Storage Medium
JP3017300B2 (en) Fuzzy inference device
JPH05165397A (en) Scheduling device
Parpalea et al. Minimum parametric flow in time-dependent dynamic networks
JP4470110B2 (en) High-level synthesis method and system
JPH0782440B2 (en) Logic synthesis operation allocation method
JP3964483B2 (en) Integrated circuit logic simulation method
JPH04360262A (en) Method and device for parallel simulation
JP2734622B2 (en) Tabular reverse inference method

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees