(57)【特許請求の範囲】
【請求項１】
フロアプラン作成部（２１）と、
前記フロアプラン作成部（２１）で作成されたフロアプランから、予め定められた複数の着目要素を抽出する着目要素抽出部（２）と、
前記着目要素抽出部（２）で抽出された前記複数の着目要素に基づいて、複数の個別評価項目の各々に関する個別評価値を求める個別評価値算出部（３）と、
前記個別評価値算出部（３）で求められた複数の個別評価値に基づいて、前記フロアプランに関する総合評価値を算出する総合評価値算出部（４）と、
複数のフロアプランに関する複数の個別評価値及び複数の総合評価値を記憶する記憶部（１１）と、
前記記憶部（１１）に記憶されているデータに基づき、各個別評価項目に関する個別評価値が、各個別評価項目に対応する複数の個別評価値の中の最適値に近づくように、前記複数の個別評価項目の中から修正対象となる個別評価項目を選択する修正項目選択部（１２）と、
前記修正項目選択部（１２）で選択された前記個別評価項目に関してフロアプランを修正するフロアプラン修正部（２２）と
を備える、フロアプラン作成装置。
【請求項２】
前記複数の個別評価項目の各々には、重要度を設定可能であり、
前記修正項目選択部（１２）は、設定された重要度が高い個別評価項目ほど優先して、前記修正対象となる個別評価項目として選択する、請求項１に記載のフロアプラン作成装置。
【請求項３】
前記複数の着目要素には、
ＩＯバッファセルの重心位置（ＩＳ１〜ＩＳ８）、
ハードマクロセルが配置されている領域（ＨＡ１〜ＨＡ４）、
ハードマクロセルの重心位置（ＨＳ１〜ＨＳ４）、
論理モジュールが配置されている領域（ＭＡ１〜ＭＡ４）、
論理モジュールの重心位置（ＭＳ１〜ＭＳ４）、
ＩＯバッファセルの重心位置と論理モジュールの重心位置とを接続する仮想線（ＮＩ１〜ＮＩ１０）、
論理モジュールの重心位置同士を接続する仮想線（ＮＭ１〜ＮＭ６）、
ハードマクロセルの重心位置と論理モジュールの重心位置とを接続する仮想線（ＮＨ１〜ＮＨ４）、
ハードマクロセルのグループ、
論理モジュールのグループ、
ＩＯバッファセルと論理モジュールとのグループ、及び
論理モジュールとハードマクロセルとのグループ、
のうちの二つ以上が含まれる、請求項１に記載のフロアプラン作成装置。
【請求項４】
前記複数の個別評価値には、
ＩＯバッファセルの重心位置と論理モジュールの重心位置とを接続する仮想線の線長（Ｌｉｏ）、
論理モジュールの重心位置同士を接続する仮想線の線長（Ｌｍｏｄ）、
ハードマクロセルの重心位置と論理モジュールの重心位置とを接続する仮想線の線長（Ｌｈｍ）、
ＩＯバッファセルの重心位置と論理モジュールの重心位置とを接続する仮想線同士の交差数（Ｃｉｏ）、
論理モジュールの重心位置同士を接続する仮想線同士の交差数（Ｃｍｏｄ）、
ＩＯバッファセルの重心位置と論理モジュールの重心位置とを接続する仮想線と、論理モジュールの重心位置同士を接続する仮想線との交差数（Ｃｉｏｍｏｄ）、
論理モジュールが配置されている領域同士の重複面積（Ｏｍｏｄ）、
一の論理モジュール上を通過する、ＩＯバッファセルの重心位置と他の論理モジュールの重心位置とを接続する仮想線、及び他の論理モジュールの重心位置同士を接続する仮想線の本数（Ｔｍｏｄ）、
ハードマクロセルが配置されている領域同士の重複面積（Ｏｈｍ）、
ハードマクロセル上を通過する、ＩＯバッファセルの重心位置と論理モジュールの重心位置とを接続する仮想線、及び論理モジュールの重心位置同士を接続する仮想線の本数（Ｔｈｍ）、
同一グループに属するハードマクロセルが配置されている領域の面積（Ｇｈｍ）、
同一グループに属する論理モジュールが配置されている領域の面積（Ｇｍｏｄ）、
同一グループに属するＩＯバッファセルと論理モジュールとが配置されている領域の面積（Ｇｉｏｍｏｄ）、及び
同一グループに属する論理モジュールとハードマクロセルとが配置されている領域の面積（Ｇｍｏｄｈｍ）、
のうちの二つ以上が含まれる、請求項１に記載のフロアプラン作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フロアプラン評価方法及びこれを実行するプログラム、フロアプラン修正方法及びこれを実行するプログラム、フロアプラン評価装置、並びにフロアプラン作成装置に関する。
【背景技術】
【０００２】
従来は、人手又は自動によりフロアプランを作成し、作成されたフロアプランに基づいて詳細な配置配線を行った後に、タイミングや混雑度等の問題の有無についての確認が行われていた。また、確認の結果、問題があれば、人手によってフロアプランが修正されていた。
【０００３】
なお、従来のフロアプラン作成装置及び作成方法に関する技術は、例えば下記特許文献１，２に開示されている。
【０００４】
【特許文献１】特開２００４−１３４３２号公報
【特許文献２】特開２００４−３３４５６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
現在、作成されたフロアプラン自身を定量的に評価する手法が存在しない。従って、フロアプランの良否を大まかに評価したい場合であっても、詳細な配置配線を行った後にタイミング解析等を実施する必要があり、評価のために多くの時間が必要になるという問題がある。
【０００６】
また、評価の結果、フロアプランを修正する必要がある場合にも、設計者が試行錯誤によって問題点を割り出し、フロアプランを修正していたため、効率が悪いという問題もある。
【０００７】
本発明は、上記のような問題を解決するために成されたものであり、作成されたフロアプラン自身を定量的に評価し得る、フロアプラン評価方法及びこれを実行するプログラム、並びにフロアプラン評価装置を得ることを目的とする。また、フロアプランを効率良く修正し得る、フロアプラン修正方法及びこれを実行するプログラム、並びにフロアプラン作成装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係るフロアプラン作成装置は、フロアプラン作成部（２１）と、前記フロアプラン作成部（２１）で作成されたフロアプランから、予め定められた複数の着目要素を抽出する着目要素抽出部（２）と、前記着目要素抽出部（２）で抽出された前記複数の着目要素に基づいて、複数の個別評価項目の各々に関する個別評価値を求める個別評価値算出部（３）と、前記個別評価値算出部（３）で求められた複数の個別評価値に基づいて、前記フロアプランに関する総合評価値を算出する総合評価値算出部（４）と、複数のフロアプランに関する複数の個別評価値及び複数の総合評価値を記憶する記憶部（１１）と、前記記憶部（１１）に記憶されているデータに基づき、各個別評価項目に関する個別評価値が、各個別評価項目に対応する複数の個別評価値の中の最適値に近づくように、前記複数の個別評価項目の中から修正対象となる個別評価項目を選択する修正項目選択部（１２）と、前記修正項目選択部（１２）で選択された前記個別評価項目に関してフロアプランを修正するフロアプラン修正部（２２）とを備える。
【発明の効果】
【０００９】
本発明に係るフロアプラン作成装置によれば、フロアプランを効率良く修正することができる。
【発明を実施するための最良の形態】
【００１０】
実施の形態１．
本発明の実施の形態１に係るフロアプラン評価方法は、例えばフロアプランナによって自動で作成されたフロアプランのデータから、予め定められた複数の主要な構成要素（以下「着目要素」と称す）を抽出する第１ステップと、第１ステップで抽出された複数の着目要素に基づいて、複数の個別評価項目の各々に関する個別評価値を求める第２ステップと、第２ステップで求められた複数の個別評価値に基づいて、フロアプランに関する総合評価値を算出する第３ステップとを備える。個別評価項目、個別評価値、及び総合評価値の詳細については後述する。そして、本実施の形態１に係るフロアプラン評価方法では、複数のフロアプランを対象として第１〜第３ステップを実行することによって得られた複数の総合評価値を比較することにより、複数のフロアプランが相対的に評価される。
【００１１】
図１４は、本実施の形態１に係るフロアプラン評価装置１の構成を示す機能ブロック図である。フロアプラン評価装置１は、本実施の形態１に係るフロアプラン評価方法を実行するためにＣＰＵ（図示しない）が参照するプログラムの機能として実現される。
【００１２】
以下、本実施の形態１に係るフロアプラン評価方法について、図面を用いて詳細に説明する。
【００１３】
まず、フロアプランのデータから複数の着目要素を抽出するステップ（上記第１ステップ）について説明する。図１４に示したフロアプラン評価装置１が有する着目要素抽出部２は、図示しないフロアプラン作成部から入力されたフロアプランのデータＤ１に基づいて、第１ステップを実行する。
【００１４】
図１は、第１ステップを説明するための模式図である。図１に示した例では、大別して、（Ｘ）配置情報と、（Ｙ）接続情報と、（Ｚ）グループ情報とが、着目要素として抽出されている。
【００１５】
（Ｘ）配置情報
配置情報としては、ＩＯバッファセルの重心位置ＩＳ１〜ＩＳ８と、ハードマクロセルが配置されている領域ＨＡ１〜ＨＡ４と、ハードマクロセルの重心位置ＨＳ１〜ＨＳ４と、論理モジュールが配置されている領域ＭＡ１〜ＭＡ４と、論理モジュールの重心位置ＭＳ１〜ＭＳ４とが抽出されている。図１に示した例では、説明の簡単化のため、領域ＨＡ１〜ＨＡ４，ＭＡ１〜ＭＡ４がいずれも長方形として近似されている。従って、重心位置ＨＳ１〜ＨＳ４，ＭＳ１〜ＭＳ４はいずれも、各々の長方形が有する２本の対角線の交点として定義される。
【００１６】
なお、重心位置ＩＳ１〜ＩＳ８，ＨＳ１〜ＨＳ４，ＭＳ１〜ＭＳ４の代わりに、各ＩＯバッファセル、各ハードマクロセル、及び各論理モジュールを代表する任意の代表点を抽出してもよい。但し本実施の形態１及び後述の実施の形態２では、代表点として重心位置ＩＳ１〜ＩＳ８，ＨＳ１〜ＨＳ４，ＭＳ１〜ＭＳ４を抽出する場合を例にとり説明する。また、図１には示されていないが、論理モジュール及びハードマクロセルと同様に、ＩＯバッファセルが配置されている領域を、着目要素として抽出してもよい。
【００１７】
（Ｙ）接続情報
接続情報としては、ＩＯバッファセルの重心位置ＩＳ１〜ＩＳ８と論理モジュールの重心位置ＭＳ１〜ＭＳ４とを接続する仮想線（一般的に「フライライン」とも称されている）ＮＩ１〜ＮＩ１０と、論理モジュールの重心位置ＭＳ１〜ＭＳ４同士を接続する仮想線ＮＭ１〜ＮＭ６と、ハードマクロセルの重心位置ＨＳ１〜ＨＳ４と論理モジュールの重心位置ＭＳ１〜ＭＳ４とを接続する仮想線ＮＨ１〜ＮＨ４とが抽出されている。例えば、仮想線ＮＩ１は重心位置ＩＳ１と重心位置ＭＳ１とを接続し、仮想線ＮＭ１は重心位置ＭＳ１と重心位置ＭＳ２とを接続し、仮想線ＮＨ１は重心位置ＨＳ１と重心位置ＭＳ２とを接続している。
【００１８】
（Ｚ）グループ情報
グループ情報としては、フロアプランを作成する際に同一のグループに属する複数のハードマクロセルが指定されている場合に、その指定に関する情報に基づいて、同一のグループに属する複数のハードマクロセルがフロアプランから抽出される。図１に示した例では、領域ＨＡ１〜ＨＡ４に対応する４個のハードマクロセルが、同一のグループに属するハードマクロセルとして抽出される（後述の図６参照）。
【００１９】
グループ情報には、ハードマクロセルグループのほかに、論理モジュールのグループ、ＩＯバッファセルと論理モジュールとのグループ、及び論理モジュールとハードマクロセルとのグループが含まれてもよい。論理モジュールのグループとしては、フロアプランを作成する際に同一のグループに属する複数の論理モジュールが指定されている場合に、その指定に関する情報に基づいて、同一のグループに属する複数の論理モジュールがフロアプランから抽出される。同様に、ＩＯバッファセルと論理モジュールとのグループとしては、フロアプランを作成する際に同一のグループに属する一又は複数のＩＯバッファセル及び一又は複数の論理モジュールが指定されている場合に、その指定に関する情報に基づいて、同一のグループに属するＩＯバッファセル及び論理モジュールがフロアプランから抽出される。同様に、論理モジュールとハードマクロセルとのグループとしては、フロアプランを作成する際に同一のグループに属する一又は複数の論理モジュール及び一又は複数のハードマクロセルが指定されている場合に、その指定に関する情報に基づいて、同一のグループに属する論理モジュール及びハードマクロセルがフロアプランから抽出される。但し、説明の簡単化のため、本実施の形態１に係るフロアプラン評価方法では、論理モジュールのグループ、ＩＯバッファセルと論理モジュールとのグループ、及び論理モジュールとハードマクロセルとのグループは、いずれも指定されていないものとする。
【００２０】
次に、上記第１ステップで抽出された複数の着目要素に基づいて、複数の個別評価項目の各々に関する個別評価値を求めるステップ（上記第２ステップ）について説明する。図１４に示したフロアプラン評価装置１が有する個別評価値算出部３は、着目要素抽出部２から入力された着目要素に関するデータＤ２に基づいて、第２ステップを実行する。
【００２１】
図２〜６は、図１に対応させて、第２ステップを説明するための模式図である。本実施の形態１に係るフロアプラン評価方法において想定されている個別評価項目は、（Ａ）仮想線の線長、（Ｂ）仮想線同士の交差数、（Ｃ）論理モジュール関係、（Ｄ）ハードマクロセル関係、及び（Ｅ）グループ領域の面積に大別される。以下、これらの個別評価項目について、順番に説明する。
【００２２】
（Ａ）仮想線の線長
図２を参照して、ＩＯバッファセルの重心位置ＩＳ１〜ＩＳ８と論理モジュールの重心位置ＭＳ１〜ＭＳ４とを接続する仮想線ＮＩ１〜ＮＩ１０のトータルの線長が算出され、これにより、仮想線ＮＩ１〜ＮＩ１０の線長についての個別評価項目Ｌｉｏの値が得られる。なお、本明細書においては、個別評価項目の値を「個別評価値」と定義し、個別評価値の符号には、個別評価項目と同一の符号を用いる。つまり、個別評価項目Ｌｉｏの値は個別評価値Ｌｉｏである。後述する全ての個別評価項目及び個別評価値についても同様である。
【００２３】
なお、本実施の形態１に係るフロアプラン評価方法では、仮想線ＮＩ１〜ＮＩ１０がいずれも１ビットの単線である場合を想定しているが、仮想線ＮＩ１〜ＮＩ１０が複数ビットの束線である場合には、ビット数を考慮して個別評価値Ｌｉｏが算出される。例えば、仮想線ＮＩ１〜ＮＩ１０がいずれも１０ビットの束線である場合の個別評価値Ｌｉｏは、いずれも単線である場合の個別評価値Ｌｉｏの１０倍となる。後述する個別評価値Ｌｍｏｄ，Ｌｈｍについても同様である。
【００２４】
同様に、論理モジュールの重心位置ＭＳ１〜ＭＳ４同士を接続する仮想線ＮＭ１〜ＮＭ６のトータルの線長が算出され、これにより、仮想線ＮＭ１〜ＮＭ６の線長に関する個別評価値Ｌｍｏｄが得られる。
【００２５】
同様に、ハードマクロセルの重心位置ＨＳ１〜ＨＳ４と論理モジュールの重心位置ＭＳ２とを接続する仮想線ＮＨ１〜ＮＨ４のトータルの線長が算出され、これにより、仮想線ＮＨ１〜ＮＨ４の線長に関する個別評価値Ｌｈｍが得られる。
【００２６】
（Ｂ）仮想線同士の交差数
図３を参照して、ＩＯバッファセルの重心位置ＩＳ１〜ＩＳ８と論理モジュールの重心位置ＭＳ１〜ＭＳ４とを接続する仮想線ＮＩ１〜ＮＩ１０同士の交差数が求められ、これにより、個別評価値Ｃｉｏが得られる。図３に示した例では、仮想線ＮＩ６と仮想線ＮＩ７との交差点ＣＩ１のみが存在するため、個別評価値Ｃｉｏは「１」となる。なお、仮想線ＮＩ１〜ＮＩ１０が複数ビットの束線である場合には、ビット数を考慮して個別評価値Ｃｉｏが求められる。例えば、仮想線ＮＩ６，ＮＩ７がいずれも１０ビットの束線である場合の個別評価値Ｃｉｏは、「１００」（＝１０×１０）となる。後述する個別評価値Ｃｍｏｄ，Ｃｉｏｍｏｄについても同様である。
【００２７】
同様に、論理モジュールの重心位置ＭＳ１〜ＭＳ４同士を接続する仮想線ＮＭ１〜ＮＭ６同士の交差数が求められ、これにより、個別評価値Ｃｍｏｄが得られる。図３に示した例では、仮想線ＮＭ５と仮想線ＮＭ６との交差点ＣＭ１のみが存在するため、個別評価値Ｃｍｏｄは「１」となる。
【００２８】
同様に、ＩＯバッファセルの重心位置ＩＳ１〜ＩＳ８と論理モジュールの重心位置ＭＳ１〜ＭＳ４とを接続する仮想線ＮＩ１〜ＮＩ１０と、論理モジュールの重心位置ＭＳ１〜ＭＳ４同士を接続する仮想線ＮＭ１〜ＮＭ６との交差数が求められ、これにより、個別評価値Ｃｉｏｍｏｄが得られる。図３に示した例では、仮想線ＮＩ６と仮想線ＮＭ５との交差点ＣＩＭ１と、仮想線ＮＩ６と仮想線ＮＭ３との交差点ＣＩＭ２とが存在するため、個別評価値Ｃｉｏｍｏｄは「２」となる。
【００２９】
（Ｃ）論理モジュール関係
図４を参照して、論理モジュールが配置されている領域ＭＡ１〜ＭＡ４同士の重複面積が算出され、これにより、個別評価値Ｏｍｏｄが得られる。図４に示した例では、領域ＭＡ１と領域ＭＡ４とが重複している領域ＯＭ１の面積が、個別評価値Ｏｍｏｄとして算出される。
【００３０】
なお、ＩＯバッファセルが配置される領域が着目要素として抽出される場合には、論理モジュール同士の重複面積と同様に、ＩＯバッファセルと論理モジュールとの重複面積を個別評価項目として追加してもよい。この場合、ＩＯバッファセルが配置される領域と論理モジュールが配置される領域ＭＡ１〜ＭＡ４との重複面積が算出され、追加の個別評価値が得られる。
【００３１】
また、一の論理モジュール上を通過する、ＩＯバッファセルの重心位置ＩＳ１〜ＩＳ８と他の論理モジュールの重心位置ＭＳ１〜ＭＳ４とを接続する仮想線ＮＩ１〜ＮＩ１０の本数と、一の論理モジュール上を通過する、他の論理モジュールの重心位置ＭＳ１〜ＭＳ４同士を接続する仮想線ＮＭ１〜ＮＭ６の本数との合計が求められ、これにより、個別評価値Ｔｍｏｄが得られる。図４に示した例では、仮想線ＮＩ６の部分ＴＭ１が領域ＭＡ３上を通過し、仮想線ＮＭ５の部分ＴＭ２が領域ＭＡ１上を通過しているため、個別評価値Ｔｍｏｄは「２」となる。なお、仮想線ＮＩ６，ＮＭ５が複数ビットの束線である場合には、ビット数を考慮して個別評価値Ｔｍｏｄが求められる。例えば、仮想線ＮＩ６，ＮＭ５がいずれも１０ビットの束線である場合の個別評価値Ｔｍｏｄは、「２０」（＝２×１０）となる。
【００３２】
（Ｄ）ハードマクロセル関係
図５を参照して、ハードマクロセルが配置されている領域ＨＡ１〜ＨＡ４同士の重複面積が算出され、これにより、個別評価値Ｏｈｍが得られる。図５に示した例では、領域ＨＡ１と領域ＨＡ２とが重複している領域ＯＨ１の面積が、個別評価値Ｏｈｍとして算出される。
【００３３】
なお、ＩＯバッファセルが配置される領域が着目要素として抽出される場合には、ハードマクロセル同士の重複面積と同様に、ＩＯバッファセルとハードマクロセルとの重複面積を個別評価項目として追加してもよい。この場合、ＩＯバッファセルが配置される領域とハードマクロセルが配置される領域ＨＡ１〜ＨＡ４との重複面積が算出され、追加の個別評価値が得られる。
【００３４】
また、ハードマクロセル上を通過する、ＩＯバッファセルの重心位置ＩＳ１〜ＩＳ８と論理モジュールの重心位置ＭＳ１〜ＭＳ４とを接続する仮想線ＮＩ１〜ＮＩ１０の本数と、ハードマクロセル上を通過する、論理モジュールの重心位置ＭＳ１〜ＭＳ４同士を接続する仮想線ＮＭ１〜ＮＭ６の本数との合計が求められ、これにより、個別評価値Ｔｈｍが得られる。図５に示した例では、仮想線ＮＭ１の部分ＴＨ１が領域ＨＡ３上を通過し、仮想線ＮＭ１の部分ＴＨ２が領域ＨＡ２上を通過し、仮想線ＮＭ５の部分ＴＨ３が領域ＨＡ４上を通過しているため、個別評価値Ｔｈｍは「３」となる。なお、仮想線ＮＭ１，ＮＭ５が複数ビットの束線である場合には、ビット数を考慮して個別評価値Ｔｈｍが求められる。例えば、仮想線ＮＭ１，ＮＭ５がいずれも１０ビットの束線である場合の個別評価値Ｔｈｍは、「３０」（＝３×１０）となる。
【００３５】
（Ｅ）グループ領域の面積
上記の通り、本実施の形態１に係るフロアプラン評価方法では、フロアプランを作成する際に、領域ＨＡ１〜ＨＡ４に対応する４個のハードマクロセルが、同一のグループに属するハードマクロセルとして指定されている。そして、フロアプランから着目要素を抽出する上記第１ステップにおいては、領域ＨＡ１〜ＨＡ４に対応する４個のハードマクロセルが、同一のグループに属するハードマクロセルとして抽出される。
【００３６】
図６を参照して、領域ＨＡ１〜ＨＡ４に基づいて矩形状の領域ＧＨ１が求められ、領域ＧＨ１の面積が算出される。これにより、ハードマクロセルグループの面積に関する個別評価値Ｇｈｍが得られる。領域ＧＨ１の上辺の一部は領域ＨＡ１の上辺に重なり、領域ＧＨ１の左辺の一部は領域ＨＡ３の左辺に重なり、領域ＧＨ１の下辺の一部は領域ＨＡ４の下辺に重なり、領域ＧＨ１の右辺の一部は領域ＨＡ２，ＨＡ４の右辺に重なっている。本明細書においては、領域ＨＡ１〜ＨＡ４と領域ＧＨ１との位置関係を、領域ＧＨ１に内包される領域ＨＡ１〜ＨＡ４の辺が領域ＧＨ１の辺に接するという意味で、領域ＧＨ１は領域ＨＡ１〜ＨＡ４に「内接している」と定義する。なお、領域ＨＡ１〜ＨＡ４に内接する領域ＧＨ１の代わりに、重心位置ＨＳ１〜ＨＳ４上を通る矩形状の領域ＧＨ２を求め、領域ＧＨ２の面積を算出してもよい。後述の個別評価値Ｇｍｏｄ，Ｇｉｏｍｏｄ，Ｇｍｏｄｈｍについても同様である。
【００３７】
ハードマクロセルグループと同様に、論理モジュールのグループが指定されている場合には、同一グループに属する論理モジュールが配置されている領域の面積が個別評価項目Ｇｍｏｄとして追加され、その面積の値が個別評価値Ｇｍｏｄとして算出される。
【００３８】
また、ＩＯバッファセルと論理モジュールとのグループが指定されている場合には、同一グループに属するＩＯバッファセル及び論理モジュールが配置されている領域の面積が個別評価項目Ｇｉｏｍｏｄとして追加され、その面積の値が個別評価値Ｇｉｏｍｏｄとして算出される。
【００３９】
さらに、論理モジュールとハードマクロセルとのグループが指定されている場合には、同一グループに属する論理モジュール及びハードマクロセルが配置されている領域の面積が個別評価項目Ｇｍｏｄｈｍとして追加され、その面積の値が個別評価値Ｇｍｏｄｈｍとして算出される。
【００４０】
以上、上記第１ステップで抽出された複数の着目要素に基づいて求められた個別評価値Ｌｉｏ，Ｌｍｏｄ，Ｌｈｍ，Ｃｉｏ，Ｃｍｏｄ，Ｃｉｏｍｏｄ，Ｏｍｏｄ，Ｔｍｏｄ，Ｏｈｍ，Ｔｈｍ，Ｇｈｍ，Ｇｍｏｄ，Ｇｉｏｍｏｄ，Ｇｍｏｄｈｍについて説明したが、必ずしもこれらの個別評価値の全てを求める必要はなく、予め指定された一部の複数の個別評価値を求めてもよい。
【００４１】
次に、上記第２ステップで求められた複数の個別評価値に基づいて、フロアプランに関する総合評価値を算出するステップ（上記第３ステップ）について説明する。図１４に示したフロアプラン評価装置１が有する総合評価値算出部４は、個別評価値算出部３から入力された個別評価値に関するデータＤ３に基づいて、第３ステップを実行する。
【００４２】
下記の式（１）に示すように、第３ステップでは、上記第２ステップで求められた個別評価値Ｌｉｏ，Ｌｍｏｄ，Ｌｈｍ，Ｃｉｏ，Ｃｍｏｄ，Ｃｉｏｍｏｄ，Ｏｍｏｄ，Ｔｍｏｄ，Ｏｈｍ，Ｔｈｍ，Ｇｈｍ，Ｇｍｏｄ，Ｇｉｏｍｏｄ，Ｇｍｏｄｈｍを加算することにより、評価対象となっているフロアプランに関する総合評価値（以下「全体スコア」と称す）Ｓが算出される。
【００４３】
Ｓ＝Ｌｉｏ×Ｗ１＋Ｌｍｏｄ×Ｗ２＋Ｌｈｍ×Ｗ３＋Ｃｉｏ×Ｗ４＋Ｃｍｏｄ×Ｗ５＋Ｃｉｏｍｏｄ×Ｗ６＋Ｏｍｏｄ×Ｗ７＋Ｔｍｏｄ×Ｗ８＋Ｏｈｍ×Ｗ９＋Ｔｈｍ×Ｗ１０＋Ｇｈｍ×Ｗ１１＋Ｇｍｏｄ×Ｗ１２＋Ｇｉｏｍｏｄ×Ｗ１３＋Ｇｍｏｄｈｍ×Ｗ１４・・・（１）
式（１）におけるＷ１〜Ｗ１４は、各個別評価項目の重要度に応じた重み付けの値であり、重要度が高いほど値は大きく設定される。
【００４４】
本実施の形態１に係るフロアプラン評価方法においては、複数のフロアプランを対象として上記第１〜第３ステップを実行することによって、複数のフロアプランの各々に関して全体スコアＳを得る。図１４に示したフロアプラン評価装置１が有する総合評価値算出部４は、全体スコアＳに関するデータＤ４を出力する。そして、得られた複数の全体スコアＳの値を比較することにより、全体スコアＳの値が小さいフロアプランほど優れていると評価される。
【００４５】
以下、簡単なフロアプランを用いて、全体スコアＳの算出の実例について説明する。
【００４６】
図７は、フロアプランＦＰａから着目要素が抽出された状況を示す模式図である。図７に示した例では、ハードマクロセルが配置されている領域ＨＡａ，ＨＡｂと、論理モジュールの重心位置ＭＳａ〜ＭＳｄと、論理モジュールの重心位置ＭＳａ〜ＭＳｄ同士を接続する仮想線ＮＭａ〜ＮＭｄと、領域ＨＡａ，ＨＡｂに対応するハードマクロセルグループとが、着目要素として抽出されている。なお、仮想線ＮＭａ〜ＮＭｄは、いずれも１ビットの単線であるものとする。
【００４７】
図８は、フロアプランＦＰａに関して個別評価値を求める状況を示す模式図である。仮想線ＮＭａ〜ＮＭｄのトータルの線長である個別評価値Ｌｍｏｄは、「４．８２」（＝１．００＋１．００＋１．４１＋１．４１）となる。仮想線ＮＭｂと仮想線ＮＭｃとの交差点ＣＭａが存在するため、個別評価値Ｃｍｏｄは「１」となる。領域ＨＡａと領域ＨＡｂとが重複している領域ＯＨａの面積である個別評価値Ｏｈｍは、「０．０８」（＝０．２×０．４）となる。領域ＨＡａ，ＨＡｂに内接する領域ＧＨａの面積である個別評価値Ｇｈｍは、「０．７２」（＝０．６×１．２）となる。従って、フロアプランＦＰａに関する全体スコアＳは、「６．６２」（＝４．８２＋１＋０．０８＋０．７２）となる。なお、上記の式（１）に示した各個別評価値Ｌｍｏｄ，Ｃｍｏｄ，Ｏｈｍ，Ｇｈｍの重み付けＷ２，Ｗ５，Ｗ９，Ｗ１１，は、全て「１」に設定されている。
【００４８】
図９は、フロアプランＦＰａに類似するフロアプランＦＰｂに関して、個別評価値を求める状況を示す模式図である。仮想線ＮＭａ〜ＮＭｄのトータルの線長である個別評価値Ｌｍｏｄは、「４．００」（＝１．００＋１．００＋１．００＋１．００）となる。仮想線ＮＭａ〜ＮＭｄは互いに交差していないため、個別評価値Ｃｍｏｄは「０」となる。領域ＨＡａと領域ＨＡｂとは互いに重複していないため、個別評価値Ｏｈｍは、「０．００」となる。領域ＨＡａ，ＨＡｂに内接する領域ＧＨａの面積である個別評価値Ｇｈｍは、「０．６４」（＝０．８×０．８）となる。従って、フロアプランＦＰｂに関する全体スコアＳは、「４．６４」（＝４．００＋０＋０．００＋０．６４）となる。
【００４９】
フロアプランＦＰａに関する全体スコアＳ（＝６．６２）よりも、フロアプランＦＰｂに関する全体スコアＳ（＝４．６４）のほうが小さいため、フロアプランＦＰａよりもフロアプランＦＰｂのほうが優れていると評価される。
【００５０】
このように本実施の形態１に係るフロアプラン評価方法によれば、第１ステップにおいてフロアプランから複数の着目要素が抽出され、第２ステップにおいて複数の個別評価値が求められ、第３ステップにおいて全体スコアＳが算出される。そして、複数のフロアプランを対象として第１〜第３ステップを実行することによって得られた複数の全体スコアＳの値を比較することにより、複数のフロアプランが相対的に評価される。従って、フロアプランの評価のために詳細な配置配線を行うまでもなく、作成されたフロアプラン自身を全体スコアＳの値によって定量的に評価することが可能となり、ひいては、設計期間を大幅に短縮することができる。
【００５１】
また、個別評価項目の中に仮想線の線長が含まれているため、タイミング等の問題を考慮したフロアプランの定量的評価が可能となる。また、個別評価項目の中に、仮想線同士の交差数、論理モジュール関係、及びハードマクロセル関係が含まれているため、配線混雑等の問題を考慮したフロアプランの定量的評価が可能となる。また、個別評価項目の中にグループ領域の面積が含まれているため、消費電力等の製品性能の問題を考慮したフロアプランの定量的評価が可能となる。
【００５２】
実施の形態２．
本実施の形態２では、上記実施の形態１に係るフロアプラン評価方法を利用したフロアプラン修正方法について説明する。
【００５３】
図１５は、本実施の形態２に係るフロアプラン作成装置３０の構成を示す機能ブロック図である。フロアプラン作成装置３０は、フロアプラン評価部２０、フロアプラン作成部２１、及びフロアプラン修正部２２を有している。フロアプラン評価部２０及びフロアプラン修正部２２は、本実施の形態２に係るフロアプラン修正方法を実行するためにＣＰＵ（図示しない）が参照するプログラムの機能として実現される。
【００５４】
図１０は、本実施の形態２に係るフロアプラン修正方法における処理の流れを示すフローチャートであり、図１１，１２は、フロアプランＦＰ１，ＦＰ２に関して個別評価値を求める状況を示す模式図である。図１０に示したフローチャートにおけるステップＳＰ１からステップＳＰ４までの処理は、上記実施の形態１と同様である。
【００５５】
まず、ステップＳＰ１において、図１５に示したフロアプラン作成装置３０が有するフロアプラン作成部２１によって複数のフロアプランを作成する。ここでは、説明の簡単化のため、図１１，１２に示した２個のフロアプランＦＰ１，ＦＰ２が作成されたものとする。
【００５６】
次に、上記第１ステップに相当するステップＳＰ２において、フロアプランＦＰ１，ＦＰ２のそれぞれに関して、予め定められた複数の着目要素を抽出する。図１５に示したフロアプラン作成装置３０が有する着目要素抽出部２は、フロアプラン作成部２１から入力されたフロアプランのデータＤ１に基づいて、ステップＳＰ２を実行する。
【００５７】
図１１，１２に示した例では、ハードマクロセルが配置されている領域ＨＡａ，ＨＡｂと、論理モジュールの重心位置ＭＳａ〜ＭＳｄと、論理モジュールの重心位置ＭＳａ〜ＭＳｄ同士を接続する仮想線ＮＭａ〜ＮＭｄと、領域ＨＡａ，ＨＡｂに対応するハードマクロセルグループとが、着目要素として抽出されている。なお、仮想線ＮＭａ〜ＮＭｄは、いずれも１ビットの単線であるものとする。
【００５８】
次に、上記第２ステップに相当するステップＳＰ３において、フロアプランＦＰ１，ＦＰ２のそれぞれに関して、ステップＳＰ２で抽出された複数の着目要素に基づいて複数の個別評価値を求める。図１５に示したフロアプラン作成装置３０が有する個別評価値算出部３は、着目要素抽出部２から入力された着目要素に関するデータＤ２に基づいて、ステップＳＰ３を実行する。
【００５９】
図１１に示したフロアプランＦＰ１に関して、仮想線ＮＭａ〜ＮＭｄのトータルの線長である個別評価値Ｌｍｏｄは、「４．００」となる。仮想線ＮＭａ〜ＮＭｄは互いに交差していないため、個別評価値Ｃｍｏｄは「０」となる。領域ＨＡａと領域ＨＡｂとが重複している領域ＯＨａの面積である個別評価値Ｏｈｍは、「０．０８」となる。領域ＨＡａ，ＨＡｂに内接する領域ＧＨａの面積である個別評価値Ｇｈｍは、「０．７２」となる。
【００６０】
図１２に示したフロアプランＦＰ２に関して、仮想線ＮＭａ〜ＮＭｄのトータルの線長である個別評価値Ｌｍｏｄは、「４．８２」となる。仮想線ＮＭｂと仮想線ＮＭｃとの交差点ＣＭａが存在するため、個別評価値Ｃｍｏｄは「１」となる。領域ＨＡａと領域ＨＡｂとは互いに重複していないため、個別評価値Ｏｈｍは、「０．００」となる。領域ＨＡａ，ＨＡｂに内接する領域ＧＨａの面積である個別評価値Ｇｈｍは、「０．６４」となる。
【００６１】
次に、上記第３ステップに相当するステップＳＰ４において、フロアプランＦＰ１，ＦＰ２のそれぞれに関して、ステップＳＰ３で求められた複数の個別評価値に基づいて全体スコアＳを算出する。図１５に示したフロアプラン作成装置３０が有する総合評価値算出部４は、個別評価値算出部３から入力された個別評価値に関するデータＤ３に基づいて、ステップＳＰ４を実行する。
【００６２】
図１１に示したフロアプランＦＰ１に関する全体スコアＳは、「４．８０」（＝４．００＋０＋０．０８＋０．７２）となる。図１２に示したフロアプランＦＰ２に関する全体スコアＳは、「６．４６」（＝４．８２＋１＋０．００＋０．６４）となる。なお、上記の式（１）に示した各個別評価値Ｌｍｏｄ，Ｃｍｏｄ，Ｏｈｍ，Ｇｈｍの重み付けＷ２，Ｗ５，Ｗ９，Ｗ１１，は、全て「１」に設定されている。
【００６３】
次に、ステップＳＰ５において、フロアプランＦＰ１，ＦＰ２のそれぞれに関して、ステップＳＰ２で求められた複数の個別評価値と、ステップＳＰ３で求められた全体スコアＳとを、データベースに登録する。図１５を参照して、個別評価値算出部３から出力された個別評価値に関するデータＤ３と、総合評価値算出部４から出力された総合評価値に関するデータＤ４とは、上記データベースに相当する記憶部１１に入力される。なお、図１５では記憶部１１がフロアプラン作成装置３０の内部に配置されている例を示したが、記憶部１１はフロアプラン作成装置３０の外部に配置されていてもよい。
【００６４】
図１３は、データＤ３，Ｄ４に基づいて作成され、データベースに登録されたデータＤ５を示す図である。データベースには、フロアプランＦＰ１，ＦＰ２のそれぞれに関して、個別評価項目Ｌｍｏｄ，Ｃｍｏｄ，Ｏｈｍ，Ｇｈｍと、個別評価値Ｌｍｏｄ，Ｃｍｏｄ，Ｏｈｍ，Ｇｈｍと、全体スコアＳとが記憶されている。
【００６５】
次に、ステップＳＰ６において、データベースに記憶されている図１３に示したデータＤ５の内容に基づき、個別評価項目Ｌｍｏｄ，Ｃｍｏｄ，Ｏｈｍ，Ｇｈｍの中から、修正すべき一又は複数の個別評価項目を選択する。図１５に示したフロアプラン作成装置３０が有する修正項目選択部１２は、記憶部１１から入力されたデータＤ５に基づいて、ステップＳＰ６を実行する。
【００６６】
図１３を参照して、フロアプランＦＰ２に関する全体スコアＳ（＝６．４６）よりも、フロアプランＦＰ１に関する全体スコアＳ（＝４．８０）のほうが小さいため、全体的にはフロアプランＦＰ２よりもフロアプランＦＰ１のほうが優れていると評価される。しかし、フロアプランＦＰ１の個別評価値Ｏｈｍ，ＧｈｍはフロアプランＦＰ２の個別評価値Ｏｈｍ，Ｇｈｍよりも大きいため、フロアプランＦＰ１の個別評価項目Ｏｈｍ，Ｇｈｍは改善できる余地がある。そこで、フロアプランＦＰ１の個別評価項目Ｏｈｍ，Ｇｈｍが、修正すべき個別評価項目として選択される。
【００６７】
つまり、図１３に示した例では、個別評価項目０ｈｍの最適値（最小値）はフロアプランＦＰ２の「０．００」であり、個別評価項目Ｇｈｍの最適値はフロアプランＦＰ２の「０．６４」である。そこで、フロアプランＦＰ１の個別評価値Ｏｈｍ（＝０．０８）及び個別評価値Ｇｈｍ（＝０．７２）が、最適値であるフロアプランＦＰ２の個別評価値Ｏｈｍ（＝０．００）及び個別評価値Ｇｈｍ（＝０．６４）となるように、修正対象となる個別評価項目が選択される。
【００６８】
但し、図１３では説明の簡単化のために２個のフロアプランＦＰ１，ＦＰ２及び４個の個別評価項目Ｌｍｏｄ，Ｃｍｏｄ，Ｏｈｍ，Ｇｈｍのみを想定したが、実際にはフロアプランの個数及び個別評価項目の個数はさらに多数である。従って、特定の個別評価値が最適値となるような修正をすると、他の個別評価値が増大し、結果として全体スコアＳが増大してしまう場合もある。そこで、このような場合には、特定の個別評価値が最適値となるような修正は不適切である。
【００６９】
よって、図１３に示した例を用いて、修正対象となる個別評価項目の選択手法を一般化すると、フロアプランＦＰ１の個別評価値Ｏｈｍ，Ｇｈｍが、最適値であるフロアプランＦＰ２の個別評価値Ｏｈｍ，Ｇｈｍに近づくように、修正対象となる個別評価項目が選択される、ということになる。
【００７０】
また、複数の個別評価項目を同時に修正できない場合や、複数の個別評価項目を修正すると全体スコアＳが増大してしまうような場合には、個別評価項目Ｌｍｏｄ，Ｃｍｏｄ，Ｏｈｍ，Ｇｈｍの各々に予め重要度を設定しておき、設定された重要度が高い個別評価項目ほど優先して、修正対象となる個別評価項目として選択してもよい。
【００７１】
図１３に示した例では、修正対象となる個別評価項目として選択される候補は、フロアプランＦＰ１の個別評価項目Ｏｈｍ，Ｇｈｍである。ここで、ハードマクロセル同士の重複は許されないという制約がある場合には、個別評価項目Ｏｈｍの重要度は、個別評価項目Ｇｈｍの重要度よりも高く設定されている。従って、この場合は、フロアプランＦＰ１の個別評価項目Ｏｈｍが、修正対象となる個別評価項目として最初に選択される。
【００７２】
このように、複数の個別評価項目の各々に重要度を設定しておき、設定された重要度が高い個別評価項目ほど優先して修正対象とすることにより、製品レイアウトの制約等のユーザの様々な事情を考慮して、修正項目を自動的に選択することが可能となり、ユーザの利便性の向上を図ることができる。
【００７３】
図１０に示したフローチャートの説明に戻る。ステップＳＰ６で修正対象となる個別評価項目が選択されると、続くステップＳＰ７において、フロアプランの修正が必要か否かが判定される。例えば、修正の繰り返し回数の最大値や、修正作業に要する所要時間の最大値が予め設定されており、現在の繰り返し回数や所要時間が最大値に到達していなければ、フロアプランの修正が必要であると判定される。
【００７４】
フロアプランの修正が必要である場合（ステップＳＰ７における判定の結果が「ＹＥＳ」である場合）は、ステップＳＰ８に進み、ステップＳＰ６で選択された修正項目に関して、フロアプランが修正される。図１５に示したフロアプラン作成装置３０が有するフロアプラン修正部２２は、修正項目選択部１２から入力された修正項目に関するデータＤ６に基づいて、ステップＳＰ７を実行する。例えばフロアプランＦＰ１の個別評価項目Ｏｈｍ，Ｇｈｍが修正対象である場合には、図１１に示したフロアプランＦＰ１における領域ＨＡａ，ＨＡｂの代わりに、図１２に示したフロアプランＦＰ２における領域ＨＡａ，ＨＡｂが採用されるように、フロアプランＦＰ１が修正される。
【００７５】
その後、フロアプランＦＰ１を修正することによって作成された新たなフロアプランを対象として、ステップＳＰ２以降の処理が実行される。図１５を参照して、フロアプラン修正部２２から出力された修正後のフロアプランのデータＤ７は、着目要素抽出部２に入力される。
【００７６】
フロアプランの修正が不要である場合（ステップＳＰ７における判定の結果が「ＮＯ」である場合）は、処理が終了する。
【００７７】
なお、本実施の形態２に係るフロアプラン修正方法を実現するためのツールは、フロアプランナの機能の一部としてフロアプランナ内に装備しても良いし、フロアプランナとは別のフロアプラン修正ツールとして装備してもよい。フロアプラン修正ツールとして装備される場合には、図１０に示したフローチャートにおけるステップＳＰ１，ＳＰ８はフロアプランナによって行われ、ステップＳＰ２〜ＳＰ７はフロアプラン修正ツールによって行われることになる。
【００７８】
このように本実施の形態２に係るフロアプラン修正方法によれば、複数のフロアプランに関する複数の個別評価値と複数の全体スコアＳとが、データベースに記憶される。そして、データベースの記憶内容に基づいて、修正すべき一又は複数の個別評価項目が自動的に選択され、選択された個別評価項目を対象としてフロアプランが自動的に修正される。従って、設計者が試行錯誤によって問題点を割り出してフロアプランを修正する必要がないため、フロアプランを効率良く修正することができ、高品質のフロアプランを短期間で生成することが可能となる。
【００７９】
本発明は詳細に説明されたが、上記した説明は、全ての局面において、例示であって、本発明がそれに限定されるものではない。例示されていない無数の変形例が、本発明の範囲から外れることなく想定され得るものと解される。
【図面の簡単な説明】
【００８０】
【図１】本発明の実施の形態１に係るフロアプラン評価方法において、複数の着目要素を抽出するステップを説明するための模式図である。
【図２】本発明の実施の形態１に係るフロアプラン評価方法において、複数の個別評価項目の各々に関する個別評価値を求めるステップを説明するための模式図である。
【図３】本発明の実施の形態１に係るフロアプラン評価方法において、複数の個別評価項目の各々に関する個別評価値を求めるステップを説明するための模式図である。
【図４】本発明の実施の形態１に係るフロアプラン評価方法において、複数の個別評価項目の各々に関する個別評価値を求めるステップを説明するための模式図である。
【図５】本発明の実施の形態１に係るフロアプラン評価方法において、複数の個別評価項目の各々に関する個別評価値を求めるステップを説明するための模式図である。
【図６】本発明の実施の形態１に係るフロアプラン評価方法において、複数の個別評価項目の各々に関する個別評価値を求めるステップを説明するための模式図である。
【図７】本発明の実施の形態１に係るフロアプラン評価方法において、第１のフロアプランから着目要素が抽出された状況を示す模式図である。
【図８】本発明の実施の形態１に係るフロアプラン評価方法において、第１のフロアプランに関して個別評価値を求める状況を示す模式図である。
【図９】本発明の実施の形態１に係るフロアプラン評価方法において、第２のフロアプランに関して個別評価値を求める状況を示す模式図である。
【図１０】本発明の実施の形態２に係るフロアプラン修正方法における処理の流れを示すフローチャートである。
【図１１】本発明の実施の形態２に係るフロアプラン修正方法において、第１のフロアプランに関して個別評価値を求める状況を示す模式図である。
【図１２】本発明の実施の形態２に係るフロアプラン修正方法において、第２のフロアプランに関して個別評価値を求める状況を示す模式図である。
【図１３】本発明の実施の形態２に係るフロアプラン修正方法において、データベースに登録されたデータを示す図である。
【図１４】本発明の実施の形態１に係るフロアプラン評価装置の構成を示すブロック図である。
【図１５】本発明の実施の形態２に係るフロアプラン作成装置の構成を示すブロック図である。
【符号の説明】
【００８１】
２  着目要素抽出部、３  個別評価値算出部、４  総合評価値算出部、１１  記憶部、１２  修正項目選択部、２０  フロアプラン評価部、２１  フロアプラン作成部、２２  フロアプラン修正部、３０  フロアプラン作成装置。
【図１】
0004255983.tif 000002
【図２】
0004255983.tif 000003
【図３】
0004255983.tif 000004
【図４】
0004255983.tif 000005
【図５】
0004255983.tif 000006
【図６】
0004255983.tif 000007
【図７】
0004255983.tif 000008
【図８】
0004255983.tif 000009
【図９】
0004255983.tif 000010
【図１０】
0004255983.tif 000011
【図１１】
0004255983.tif 000012
【図１２】
0004255983.tif 000013
【図１３】
0004255983.tif 000014
【図１４】
0004255983.tif 000015
【図１５】
0004255983.tif 000016