"コンピュータが,プログラムの動作記述をレジスタトランスファーレベル記述に変換する動作合成を実行する動作合成方法であって,前記コンピュータが,処理対象となる動作記述を解析して,該動作記述のオペレーションを演算単位に分割し,前記分割した分割オペレーションの実行順序を特定し,各演算単位の処理時間を定義する演算ライブラリ情報を参照して,該分割オペレーション各々の処理時間を算出するオペレーション分割ステップと,前記分割オペレーションの処理順序をもとに前記動作記述のオペレーションのパスを特定し,該パスから選択した1パスごとに,前記分割オペレーションの総処理時間と前記パイプライン処理の制約として与えられたステージ数とをもとに,1ステージ内に配置可能なオペレーションの総処理時間を示すステージ内処理時間を計算し,前記選択したパスでの分割オペレーションの実行順序にもとづいて前記分割オペレーションを順にステージに割り当て,前記割り当てた分割オペレーションの処理時間の合計が前記ステージ内処理時間を超えたときに該ステージに割り当てている分割オペレーションを,該ステージに配置するステージ割当ステップとを,実行することを特徴とする動作合成方法。前記コンピュータは,前記ステージ割当ステップにおいて,前記分割オペレーションの処理時間の代わりに,該処理時間に所定のマージン時間を加算した時間を用いて分割オペレーションを配置することを特徴とする請求項1に記載の動作合成方法。前記コンピュータは,前記ステージ割当ステップにおいて,前記オペレーション分割ステップで算出された前記分割オペレーションの処理時間が所定の時間範囲内である場合に,前記選択した1パスごとに,前記分割オペレーションの総処理時間の代わりに総数と前記ステージ数とをもとに,1ステージ内に配置可能なオペレーションの総数を示すステージ内配置数を計算し,前記選択したパスでの分割オペレーションの実行順序にもとづいて,分割オペレーションを順にステージに割り当て,前記割り当てた分割オペレーションの合計数が前記ステージ内配置数を超えたときに該ステージに割り当てている分割オペレーションを,該ステージに配置することを特徴とする請求項1に記載の動作合成方法。前記コンピュータは,前記動作記述をレジスタトランスファーレベル記述へ変更し,前記分割オペレーションのステージへの配置をもとに,異なるステージに配置される分割オペレーション間にレジスタの記述を挿入するRTL生成処理ステップを,実行することを特徴とする請求項1ないし請求項3のいずれか一項に記載の動作合成方法。プログラムの動作記述をレジスタトランスファーレベル記述に変換する動作合成装置であって,動作記述に含まれるオペレーションの各演算単位の処理時間を定義する演算ライブラリ情報を記憶する演算ライブラリ情報記憶部と,前記動作記述のパイプライン処理の制約であって,パイプライン処理のステージ数を含む情報を記憶する制約情報記憶部と,処理対象となる動作記述を解析して,該動作記述のオペレーションを演算単位に分割し,前記分割した分割オペレーションの実行順序を特定し,前記ライブラリ情報を参照して,該分割オペレーション各々の処理時間を算出するオペレーション分割部と,前記分割オペレーションの実行順序をもとに前記動作記述のオペレーションのパスを特定し,該パスから選択した1パスごとに,前記分割オペレーションの総処理時間と前記制約が含むステージ数とをもとに,1ステージ内に配置可能なオペレーションの総処理時間を示すステージ内処理時間を計算し,前記選択したパスでの分割オペレーションの実行順序にもとづいて前記分割オペレーションを順にステージに割り当て,前記割り当てた分割オペレーションの処理時間の合計が前記ステージ内処理時間を超えたときに該ステージに割り当てている分割オペレーションを,該ステージに配置するステージ割当部とを,備えることを特徴とする動作合成装置。コンピュータに,プログラムの動作記述をレジスタトランスファーレベル記述に変換する動作合成を実行させるための動作合成プログラムであって,前記コンピュータに,処理対象となる動作記述を解析して,該動作記述のオペレーションを演算単位に分割し,前記分割した分割オペレーションの実行順序を特定し,各演算単位の処理時間を定義する演算ライブラリ情報を参照して,該分割オペレーション各々の処理時間を算出する処理と,前記分割オペレーションの実行順序をもとに前記動作記述のオペレーションのパスを特定し,該パスから選択した1パスごとに,前記分割オペレーションの総処理時間と前記パイプライン処理の制約として与えられたステージ数とをもとに,1ステージ内に配置可能なオペレーションの総処理時間を示すステージ内処理時間を計算し,前記選択したパスでの分割オペレーションの実行順序にもとづいて前記分割オペレーションを順にステージに割り当て,前記割り当てた分割オペレーションの処理時間の合計が前記ステージ内処理時間を超えたときに該ステージに割り当てている分割オペレーションを,該ステージに配置する処理とを,実行させることを特徴とする動作合成プログラム。従来技術では,動作記述のオペレーションを,1サイクル内に演算単位の処理時間が収まる分のオペレーションに要する時間実行順序に従って,1サイクル内に,処理に必要な時間が収まるオペレーションを全て1つのステージ内に割り当てていく。すなわち,演算単位に分割されたオペレーションが,処理時間にもとづいてパイプライン処理の最初のステージから順に割り当てられていくため,パイプライン処理の前寄りのパイプライン処理の入口に近いステージには,総処理時間が1サイクルに近くなるような数のオペレーションが配置され,一方で,後寄りのパイプライン処理の出口に近いステージには,オペレーションが1つも配置されないというような偏りが生じる。パイプライン処理のステージ間で割り当てられるオペレーション数に偏りが生じると,パイプライン処理全体としては処理時間が十分であるにもかかわらず,前寄りのステージでの処理完了のタイミングがクリティカルになってしまうという問題が生じていた。また,1ステージ内に割り当てられたオペレーション数が多くなることは,回路のレイアウト設計でステージを区切るレジスタ間に配置されるオペレーション演算に対応する論理回路数が多くなるため,レジスタ間の配線長が長くなる状態が生じやすく,上記のタイミングがクリティカルになるというおそれがあった。具体的には,RTL記述上では,ステージ内に配置された演算の総処理時間が1サイクル内に収まるが,実際の回路配置では,配線長の影響によるタイミング遅延が生じ,1サイクル内で処理が完了しない状態が生じるおそれがあった。本発明の目的は,その一態様として,動作記述をパイプライン処理する場合に,制約として与えられたステージ数の各ステージに,演算単位に分割されたオペレーションを,偏りなく自動的に各ステージに配置できる動作合成を,コンピュータが実行する処理方法を提供することである。さらに,本発明の目的は,別の一態様として,上記動作合成を実行する動作合成装置,および,上記動作合成をコンピュータに実行させるための動作合成プログラムを提供することである。本願において開示される動作合成方法は,コンピュータが,プログラムの動作記述をレジスタトランスファーレベル記述に変換する動作合成を実行する処理方法であって,前記コンピュータが,1処理対象となる動作記述を解析して,該動作記述のオペレーションを演算単位に分割し,前記分割した分割オペレーションの実行順序を特定し,各演算単位の処理時間を定義する演算ライブラリ情報を参照して,該分割オペレーション各々の処理時間を算出するオペレーション分割ステップと,2前記分割オペレーションの処理順序をもとに前記動作記述のオペレーションのパスを特定し,該パスから選択した1パスごとに,前記分割オペレーションの総処理時間と前記パイプライン処理の制約として与えられたステージ数とをもとに,1ステージ内に配置可能なオペレーションの総処理時間を示すステージ内処理時間を計算し,前記選択したパスでの分割オペレーションの実行順序にもとづいて前記分割オペレーションを順にステージに割り当て,前記割り当てた分割オペレーションの処理時間の合計が前記ステージ内処理時間を超えたときに該ステージに割り当てている分割オペレーションを,該ステージに配置するステージ割当ステップとを,実行するものである。上記開示した動作合成方法によれば,動作記述をパイプライン処理する場合に,パイプライン処理の各ステージにオペレーションを偏りなく配置したRTL記述を提供することができる。以下,本発明の一態様として開示する動作合成装置について説明する。図1は,本発明の一実施形態における動作合成装置の構成例を示す図である。動作合成装置1は,トランザクションレベルTLの動作記述を,レジスタトランスファーレベルRTL記述へ変換する動作合成を実行する装置である。動作合成装置1は,入力部11,制約条件記憶部13,演算ライブラリ情報記憶部14,動作記述記憶部15,オペレーション分割部16,ステージ割当部17,および出力部18を備える。入力部11は,パイプライン処理の制約条件を受け付けて制約条件記憶部13に格納する。制約条件は,パイプライン処理の制約として定められたステージ数段数,および1サイクルのクロック周波数が設定された情報である。入力部11は,動作記述を受け付けて動作記述記憶部15に格納する。動作記述は,例えばsystemCのトランザクションレベルの記述言語による,パイプライン回路の動作記述である。入力部11は,演算ライブラリ情報を受け付けて演算ライブラリ情報記憶部14に格納する。演算ライブラリ情報は,動作記述に記述されたオペレーションの演算種別ごとに,演算処理に必要とされる処理時間の定義情報である。オペレーション分割部16は,動作記述記憶部15に格納されている動作記述を解析して,動作記述のオペレーションを演算単位に分割する。分割された演算単位のオペレーションを,分割オペレーションと呼ぶ。オペレーション分割部16は,動作記述の分割オペレーションの実行順序を解析して,演算ライブラリ情報記憶部14に記憶されている演算ライブラリ情報にもとづいて,動作記述から抽出した分割オペレーションの処理時間を算出する。ステージ割当部17は,分割オペレーションの実行順序をもとに,1つの入力から出力までのオペレーションであるパスを解析する。そして,ステージ割当部17は,各パスについて,パスに含まれる分割オペレーションの総処理時間を,制約条件で定義されたステージ数で割って,1ステージ内に配置されるオペレーションの処理時間の平均を示すステージ内処理時間を計算する。ステージ割当部17は,パス内の分割オペレーションの実行順序にもとづいて,分割オペレーションを順にステージに割り当て,割り当てた分割オペレーションの処理時間の合計がステージ内処理時間を超えたときにそのステージに割り当てている分割オペレーションを,そのステージに配置する。さらに,ステージ割当部17は,分割オペレーションの処理時間に所定のマージン時間を加算し,加算した処理時間を用いて分割オペレーションの配置を決定する。マージン時間は,制約条件に含まれるものとする。また,ステージ割当部17は,各分割オペレーションの処理時間が,所定の時間範囲内であるかを判定して,分割オペレーションの処理時間が所定の時間範囲内である場合に,パス内の分割オペレーションの総数とステージ数とをもとに,1ステージ内に配置可能なオペレーションの総数を示すステージ内配置数を計算し,そのパスでの分割オペレーションの実行順序にもとづいて,分割オペレーションを順にステージに割り当て,割り当てた分割オペレーションの合計数がステージ内配置数を超えたときにそのステージに割り当てている分割オペレーションを,そのステージに配置する。出力部18は,ステージ割当部17で処理された,各ステージへの分割オペレーションの配置をもとに,パスの分割オペレーションを,動作記述からレジスタトランスファーレベルRTL2に変換する。以下,動作合成装置1の処理の流れを説明する。図2は,開示する動作合成装置1の一実施形態における処理フローを示す図である。ステップS1:情報入力処理動作合成装置1の入力部11は,制約条件,演算ライブラリ情報,動作記述の入力を受け付けて,それぞれ,制約条件記憶部13,演算ライブラリ情報記憶部14,動作記述記憶部15に格納する。図3および図4は,動作記述の例を示す図である。図3は,システム設計用言語SystemCで記述された動作記述のヘッダファイル例であって,システムの動作を定義するモジュールとコンストラクタが記述される。図4は,同じ動作記述のソースファイル例であって,プロセスのアーキテクチャが記述される。ステップS2:オペレーション分割処理オペレーション分割部16は,動作記述記憶部15に格納された動作記述を解析して,動作記述に記述されたオペレーションを演算単位に分割する。図3および図4に示す動作記述の例において,オペレーションのパスでは,データ入力する演算op1からデータ出力する演算op7までの7つの演算で構成されることが分かる。オペレーション分割部16によって,データの入力から出力までの1つのオペレーションのパスのオペレーションが7つの演算単位に分割され,分割オペレーションとして特定される。さらに,オペレーション分割部16は,動作記述をもとに,分割オペレーションの実行順序を特定する。図5は,分割オペレーションの例を模式的に示す図である。図5に示すように,図3および図4に示す動作記述の例では,あるパスで,分割オペレーション演算op1~op7が特定され,また,分割オペレーション演算が,op1,op2,op3,op4,op5,op6,op7の順に実行されることが特定される。さらに,オペレーション分割部16は,演算ライブラリ情報記憶部14の演算ライブラリ情報をもとに,各分割オペレーションの処理時間を計算する。例えば,分割オペレーションop1の処理時間が,10ピコ秒と計算される。ステップS3:ステージ割当処理ステージ割当部17は,制約条件記憶部13の制約条件から,パイプライン処理のステージ数および1サイクルのクロック周波数を取得する。そして,ステージ割当部17は,選択したパスの分割オペレーション例えば,op1~op7の総処理時間をステージ数で除算して,1ステージあたりの分割オペレーションの処理時間であるステージ内処理時間を求める。さらに,ステージ割当部17は,パイプライン処理のステージを入り口から1つずつ選択し,動作記述から解析した分割オペレーションの実行順序にもとづいて,分割オペレーションを,選択したステージに順に割り当て,割り当てた分割オペレーションの処理時間の合計を求める。ステージ割当部17は,割り当てている分割オペレーションの処理時間の合計がステージ内処理時間を超えた時点で,選択したステージに割り当てている分割オペレーションに対し,選択したステージを配置ステージとして決定する。ステージ割当部17は,動作記述の全ての分割オペレーションについて配置ステージを決定する。ステップS4:RTL生成処理出力部18は,動作記述をRTL記述に変換する。その際に,出力部18は,分割オペレーションの配置ステージにもとづいて,分割オペレーションの実行順序において配置ステージが異なる分割オペレーション間に,レジスタ記述を挿入する。出力部18は,変換したRTL記述のデータRTL2を出力する。図6~図9は,開示する動作合成装置1および従来技術によるRTLを比較するための図である。図6は,動作合成装置1によるRTL例を示す図であり,図7は,図6に示すRTLを模式的に示す図である。図8は,従来技術によるRTL例を示す図であり,図9は,図8に示すRTLを模式的に示す図である。図6に示すように,動作合成装置1によれば,パスの分割オペレーションop1~op7について,分割オペレーションop1,op2の配置ステージ=1,分割オペレーションop3,op4の配置ステージ=2,分割オペレーションop5,op6の配置ステージ=3,分割オペレーションop7の配置ステージ=4と決定される。そして,同じ配置ステージに決定された分割オペレーション群の最後尾の分割オペレーションの後にレジスタFFが挿入される。すなわち,図7に示すように,分割オペレーションop2,op4,op6,op7の後にレジスタ記述が挿入される。一方,図8に示すように,従来技術によれば,パスの分割オペレーションop1~op7について,処理時間の合計が1サイクルに収まる分の分割オペレーションがそのステージに配置される。その結果,図9Aに示すように,分割オペレーションop3,op5,op6,op7の後にレジスタFFが挿入されたり,図9Bに示すように,ステージ4に分割オペレーションが配置されず,分割オペレーションop3,op6,op7の後にレジスタFFが挿入されたりする。したがって,従来技術によれば,パイプライン処理の前寄りのステージに配置される分割オペレーション数が多く,後寄りのステージに配置される分割オペレーション数が少なくなるという,配置の偏りが生じている。これに対し,開示する動作合成装置1によれば,各ステージに1または2の分割オペレーションが配置され,配置の偏りが少ないことがわかる。以下に,ステージ割当処理ステップS3の具体例を説明する。ステージ割当部17は,図10~図12の処理フロー例として示すステージ割当処理の具体例のいずれかを実行することができる。図10は,第1のステージ割当処理の処理フロー例を示す図である。第1のステージ割当処理では,分割オペレーションの処理時間を用いて配置ステージを決定する。ステージ割当部17は,処理前に,オペレーション分割部16から,各分割オペレーションの分割オペレーション番号op_numおよび処理時間delay:op_d[op_num]を取得している。ステージ割当部17は,動作記述のオペレーションのパスを1つ選択しステップS11,選択したパスが含む分割オペレーションの処理時間delayの総計を,制約条件に定義されているステージ数で除算してステージ内処理時間nを求め,さらに,選択したパスの分割オペレーション総数op_totalを求めるステップS12。次に,ステージ割当部17は,初期化として,現在のステージ数curr_st=1,現在の分割オペレーション番号curr_op_num=1と設定するステップS13。さらに,ステージ割当部17は,現在のステージcurr_stが配置ステージop_st[op_num]であるとして分割オペレーションの処理時間delayの合計m=0とするステップS14。次に,ステージ割当部17は,現在の分割オペレーション番号curr_op_numである分割オペレーション番号を持つ分割オペレーションを選択するステップS15。そして,ステージ割当部17は,現在のステージ数curr_stを配置ステージop_st[op_num]とし,処理時間delayの合計mに,選択した分割オペレーションの処理時間op_d[op_num]を加算するステップS16。ステージ割当部17は,現在の分割オペレーション番号curr_op_numが,分割オペレーション総数op_totalより小さい場合にステップS17のY,ステップS18の処理へ進み,現在の分割オペレーション番号curr_op_numが分割オペレーション総数op_totalより小さくない場合にステップS17のN,ステップS112の処理へ進む。ステージ割当部17は,現在の分割オペレーション番号curr_op_numに1を加算してステップS18,処理時間delayの合計mが,ステージ内処理時間nを超過したらステップS19のY,ステップS110の処理へ進み,超過していなければステップS19のN,ステップS15の処理へ戻る。ステージ割当部17は,現在のステージ数curr_stがステージ数より小さければステップS110のY,現在のステージ数curr_stに1を加算してステップS111,ステップS14の処理へ戻り,現在のステージ数curr_stがステージより小さくなければステップS110のN,ステップS112の処理へ進む。そして,ステージ割当部17は,全ての分割オペレーションについて処理が完了していなければステップS112のN,ステップS11の処理へ戻り,全ての分割オペレーションについて処理が完了していればステップS112のY,処理を終了する。以上の処理によって,各分割オペレーションの配置ステージop_st[op_num]が決定される。パスに含まれる分割オペレーションの総処理時間にもとづくステージの平均処理時間ステージ内処理時間を基準にして,1ステージ内に配置する分割オペレーションを決定するため,各ステージに偏りなく分割オペレーションを配置することが可能となる。図11は,第2のステージ割当処理の処理フロー例を示す図である。第2のステージ割当処理では,分割オペレーションの処理時間に所定のマージン時間を加算した時間を用いて配置ステージを決定する。図11に示す処理フロー例では,ステージ割当部17は,処理前に,処理時間delay:op_d[op_num]に加算するマージン時間op_m[op_num]を取得している。図11に示す処理フローは,図10に示す処理フローと同様であり,図11の処理フローのステップS21~S212の処理は,ステップS26を除き,図10に示す処理フローのステップS11~S112の各ステップの処理に対応している。したがって,説明を簡略にするため,ステップS26についてのみ説明する。ステップS26の処理では,ステージ割当部17は,現在のステージ数curr_stを配置ステージop_st[op_num]とし,処理時間delayの合計mに,処理時間op_d[op_num]とマージン時間op_m[op_num]とを加算する。以上の処理により,任意のマージン時間を考慮した処理時間にもとづいて,各分割オペレーションの配置ステージが決定される。よって,タイミングの余裕を任意の時間幅で確保しつつ,各ステージに偏りなく分割オペレーションを配置することが可能となる。図12は,第3のステージ割当処理の処理フロー例を示す図である。第3のステージ割当処理では,パス内の分割オペレーションの処理時間が同一であるとみなせる場合に,パス内の分割オペレーション数を用いてステージへの配置を決定する。ステージ割当部17は,オペレーション分割部16から,各分割オペレーションの分割オペレーション番号op_numのみを取得している。各分割オペレーションの処理時間delay:op_d[op_num]は不要である。ステージ割当部17は,動作記述のオペレーションのパスを1つ選択しステップS31,選択したパスが含む分割オペレーションの総数を,制約条件に定義されたステージ数で除算してステージ内配置数n′を求め,さらに,選択したパスの分割オペレーション総数op_totalを求めるステップS32。次に,ステージ割当部17は,現在のステージ数curr_st=1,現在の分割オペレーション番号curr_op_num=1と設定するステップS33。さらに,ステージ割当部17は,初期化として,現在のステージ数curr_stが分割オペレーションの配置ステージop_st[op_num]であるとして分割オペレーションの合計数m′=0とするステップS34。次に,ステージ割当部17は,現在の分割オペレーション番号curr_op_numである分割オペレーション番号op_numを持つ分割オペレーションを選択しステップS35,現在のステージ数curr_stを配置ステージop_st[op_num]として,合計数m′に1を加算するステップS36。ステージ割当部17は,現在の分割オペレーション番号curr_op_numが分割オペレーション総数op_totalより小さい場合にステップS37のY,ステップS38の処理へ進み,現在の分割オペレーション番号curr_op_numが分割オペレーション総数op_totalより小さくない場合にステップS37のN,ステップS312の処理へ進む。ステージ割当部17は,現在の分割オペレーション番号curr_op_numに1を加算してステップS38,分割オペレーションの合計数m′がステージ内配置数n′を超過したらステップS39のY,ステップS310の処理へ進み,分割オペレーションの合計数m′がステージ内配置数n′を超過していなければステップS39のN,ステップS34の処理へ戻す。ステージ割当部17は,現在のステージ数curr_stがステージ数より小さければステップS310のY,現在のステージ数curr_stに1を加算してステップS311,ステップS34の処理へ戻り,現在のステージ数curr_stがステージ数より小さくなければステップS310のN,ステップS312の処理へ進む。ステージ割当部17は,全ての分割オペレーションについて処理が完了していなければステップS312のN,ステップS31の処理へ戻り,全ての分割オペレーションについて処理が完了していればステップS312のY,処理を終了する。以上の処理により,分割オペレーションの処理時間にばらつきがなく同一とみなせる場合に,パスに含まれる分割オペレーション総数にもとづいて,各分割オペレーションの配置ステージが決定される。よって,分割オペレーションの処理時間を用いることなく,より少ない情報で,各ステージに偏りなく分割オペレーションを配置することが可能となる。図13は,RTL生成処理図2:ステップS4のより詳細な処理フロー例を示す図である。出力部18は,動作記述のオペレーションのパスを1つ選択しステップS41,選択したパスの分割オペレーション総数op_totalを求め,現在の分割オペレーション番号curr_op_num=1と設定するステップS42。次に,出力部18は,現在の分割オペレーション番号curr_op_numである分割オペレーション番号op_numを持つ分割オペレーションを選択しステップS43,選択した分割オペレーションを動作記述からRTL記述に変換するステップS44。そして,出力部18は,現在の分割オペレーション番号curr_op_numが分割オペレーション総数op_totalより小さい場合にステップS45のY,ステップS46の処理へ進み,現在の分割オペレーション番号curr_op_numが分割オペレーション総数op_totalより小さくない場合にステップS45のN,ステップS47の処理へ進む。ステップS46の処理で,出力部18は,変換したRTL記述にFFを挿入し,ステップS410の処理へ進む。ステップS47の処理で,出力部18は,配置ステージop_st[op_num]が,その値に1を加算した値と等しくなければステップS47のN,変換したRTL記述にFFを挿入しステップS48,配置ステージop_st[op_num]が,その値に1を加算した値と等しければステップS47のY,現在の分割オペレーション番号curr_op_numに1を加算してステップS49,ステップS43の処理へ戻る。出力部18は,全ての分割オペレーションについて処理が完了していなければステップS410のN,ステップS41の処理へ戻り,全ての分割オペレーションについて処理が完了していればステップS410のY,処理を終了する。以上説明した動作合成装置1は,CPUおよびメモリ等を有するハードウェアと,ソフトウェアプログラムとを備えるコンピュータシステム,または専用ハードウェアによって実現することができる。すなわち,動作合成装置1は,演算装置CPU,一時記憶装置DRAM,フラッシュメモリ等および永続性記憶装置HDD,フラッシュメモリ等を有し,外部とデータの入出力をするコンピュータによって実施できる。また,動作合成装置1は,このコンピュータが実行可能なプログラムによっても実施することができる。この場合に,動作合成装置1が有すべき機能の処理内容を記述したプログラムが提供される。提供されたプログラムを上記コンピュータが実行することによって,上記説明した動作合成装置1の処理機能がコンピュータ上で実現される。なお,上記コンピュータは,可搬型記録媒体から直接プログラムを読み取り,そのプログラムに従った処理を実行することもできる。さらに,上記プログラムは,コンピュータで読み取り可能な記録媒体に記録しておくことができる。以上,一実施形態として説明したように,開示する動作合成装置によれば,動作合成結果を解析し制約を与える手間を解消し,タイミングに偏りの少ないRTL記述を自動的に生成することが可能となる。"