(57)【要約】【課題】    タイミング修正をセル挿入により改善する際、エラー対象のセル近傍配置を実施するが自動配置ではタイミング・配線性を両立させるセル配置が難しい。【構成】本発明は、タイミング情報、接続情報、物理情報を入力とし、重み付け決定工程により、セルが動く度合いを重み付けし、移動範囲決定工程からセルの移動可能範囲を決定し、セル配置可能領域有無の判断を行う。セル配置可能範囲の有無により、セルの移動可能領域拡大工程またはセル配置領域確保工程へ進み、セルの自動最適配置を実施する。【選択図】図１
2009020575.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路のタイミング設計方法において、タイミング情報と接続情報（以下ネットリストとする）を入力として、タイミングの余裕度が少ないセルを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第１の重み付け決定工程と、
前記第１の重み付け決定工程による重み付け結果に応じてセルを配置する工程を含む半導体集積回路の設計方法。
【請求項２】
請求項１に記載の半導体集積回路の設計方法であって、
物理情報から得られるマンハッタン距離が長いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第２の重み付け決定工程と、
前記第２の重み付け決定工程による重み付け結果に応じてセルを配置する工程を含む半導体集積回路の設計方法。
【請求項３】
請求項１または２に記載の半導体集積回路の設計方法であって
半導体集積回路の物理設計工程において、ネットリストから得られるファンアウト数が多いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第３の重み付け決定工程と、
前記第３の重み付け決定工程による重み付け結果に応じてセルを配置する工程を含む半導体集積回路の設計方法。
【請求項４】
請求項１乃至３のいずれかに記載の半導体集積回路の設計方法であって、
前記第１乃至第３の重み付け決定工程のうちの少なくともひとつによる重み付け結果に応じて、セルが移動可能な移動範囲を設定する工程を含む半導体集積回路の設計方法。
【請求項５】
請求項４に記載の半導体集積回路の設計方法であって、
前記設定する工程で設定された前記移動範囲を格納する工程と、
前記移動範囲の設定値内で、セルの敷詰率が最も少なくなる領域を探索することにより、配置混雑領域を回避して、セルの移動範囲を決定する工程を含む半導体集積回路の設計方法。
【請求項６】
請求項５に記載の半導体集積回路の設計方法であって、
ピンの密集度に応じて前記決定する工程で決定された前記移動範囲を変更する工程を含む半導体集積回路の設計方法。
【請求項７】
請求項６に記載の半導体集積回路の設計方法であって、
前記格納する工程と前記ピンの密集度に基づいて設定値を変更する工程から配置条件を満たす領域がなかった場合、セルの移動領域の範囲を一定の割合で広げ、セルの駆動能力に応じて移動領域の上限を設定する工程と、
前記上限の範囲内でセルの移動位置を決定する工程とを含む半導体集積回路の設計方法。
【請求項８】
請求項６に記載の半導体集積回路の設計方法であって、
前記変更する工程において配置条件を満たす領域があった場合、前記移動範囲を格納する工程で得られた領域からセルの駆動能力を決定し、駆動能力を変更することによって配置領域を確保する工程を含む半導体集積回路の設計方法。
【請求項９】
請求項１乃至８のいずれかに記載の半導体集積回路の設計方法であって、
混雑領域を配線が通過する場合は、受け側のセルをタイプダウンし、隣に適正な駆動能力のセルを配置する工程を含む半導体集積回路の設計方法。
【請求項１０】
請求項９に記載の半導体集積回路の設計方法であって、
タイミングの余裕度が高い場合は、リピータセルを挿入する工程を含む半導体集積回路の設計方法。
【請求項１１】
請求項９に記載の半導体集積回路の設計方法であって、
混雑箇所のタイミング余裕度が高いセルを優先して低駆動セルへの置換による面積縮小や論理圧縮を実施することで、配置混雑の緩和とセル領域を確保することを特徴とした半導体集積回路の設計方法。
【請求項１２】
タイミング情報と接続情報を入力として、タイミングの余裕度が少ないセルを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第１の重み付け決定部と、
前記第１の重み付け決定部による重み付け結果に応じてセルを配置するセル配置部とを含む半導体集積回路の設計装置。
【請求項１３】
請求項１２に記載の半導体集積回路の設計装置であって、
物理情報から得られるマンハッタン距離が長いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第２の重み付け決定部を含み、
前記セル配置部は、前記第１の重み付け決定部および前記第２の重み付け決定部による重み付け結果に応じてセルを配置する半導体集積回路の設計装置。
【請求項１４】
請求項１２または１３に記載の半導体集積回路の設計装置であって
ネットリストから得られるファンアウト数が多いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第３の重み付け決定部を含み、
前記セル配置部は、前記第３の重み付け決定部および、前記第１および第２の重み付け決定部の少なくとも一方との重み付け結果に応じてセルを配置する半導体集積回路の設計装置。
【請求項１５】
請求項１２乃至１４のいずれかに記載の半導体集積回路の設計装置であって、
前記第１乃至第３の重み付け決定部のうちの少なくともひとつによる重み付け結果に応じて、セルが移動可能な移動範囲を設定する移動範囲設定部を含む半導体集積回路の設計方法。
【請求項１６】
請求項１５に記載の半導体集積回路の設計装置であって、
前記移動範囲設定部で設定された前記移動範囲を格納する移動範囲格納部と、
前記移動範囲の設定値内で、セルの敷詰率が最も少なくなる領域を探索することにより、配置混雑領域を回避して、セルの移動範囲を決定する移動範囲決定部とを含む半導体集積回路の設計装置。
【請求項１７】
請求項１６に記載の半導体集積回路の設計装置であって、
ピンの密集度に応じて前記移動範囲決定部で決定された前記移動範囲を変更する移動範囲変更部を含む半導体集積回路の設計装置。
【請求項１８】
請求項１７に記載の半導体集積回路の設計装置であって、
前記移動範囲格納部が、前記移動範囲変更部の変更結果から配置条件を満たす領域がなかった場合、セルの移動領域の範囲を一定の割合で広げ、セルの駆動能力に応じて移動領域の上限を設定する移動範囲拡大部と、
前記上限の範囲内でセルの移動位置を決定する移動位置決定部とを含む半導体集積回路の設計装置。
【請求項１９】
請求項１７に記載の半導体集積回路の設計装置であって、
前記移動範囲変更部において配置条件を満たす領域があった場合、前記移動範囲を格納する工程で得られた領域からセルの駆動能力を決定し、駆動能力を変更することによって配置領域を確保するセル配置部を含む半導体集積回路の設計装置。
【請求項２０】
請求項１２乃至１９のいずれかに記載の半導体集積回路の設計装置であって、
前記セル配置部は、混雑領域を配線が通過する場合は、受け側のセルをタイプダウンし、隣に適正な駆動能力のセルを配置するようにした半導体集積回路の設計装置。
【請求項２１】
請求項２０に記載の半導体集積回路の設計装置であって、
前記セル配置部は、タイミングの余裕度が高い場合は、リピータセルを挿入する半導体集積回路の設計装置。
【請求項２２】
請求項２０に記載の半導体集積回路の設計装置であって、
混雑箇所のタイミング余裕度が高いセルを優先して低駆動セルへの置換による面積縮小や論理圧縮を実施することで、配置混雑の緩和とセル領域を確保する半導体集積回路の設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体集積回路の設計方法および設計装置にかかり、特にセル配置手法に関するものである。
【背景技術】
【０００２】
レイアウト設計時に半導体集積回路内でタイミング違反や入力トランジション違反が発生した場合、タイミング修正を実施する従来の手法は、タイミング制約を満たすために、回路修正、セル配置の変更情報を作成し、その後の作業は自動配置配線ツールを用いて行われていた。例えば、特許文献１に記載されている、各セルの配置位置を決定するカットライン分割によるセル配置の際に、カットラインを横切る配線数が最小となるように配置位置を決定し、クリティカルパスを抽出して、クリティカルパス上のセルやクリティカルパスに含まれるネットに接続するセルを移動させることでタイミング制約を満たす手法や、特許文献２に記載されている、接続情報に従って生成された配線の特定方向の配線長を基準長と比較することで重み係数を定め、その定めた重み係数と単位長辺りの抵抗値から算出した換算抵抗値を用いて、タイミング制約を満たす手法があった。
【０００３】
タイミングや入力トランジション違反をセル挿入により改善する場合、挿入前後のセルの重心や違反セルの近傍に、挿入すべきセルを配置すべきである。しかしながら、従来のタイミング修正時におけるセル配置手法では、セルを挿入すべき箇所に既にセルが密集しており、新規にセルの挿入が可能となるだけの空き領域がない場合、挿入すべき箇所を大きく外れてしまい、結果としてタイミングや配線性を悪化させる。そのため、配置状況を目視確認した後に、セルの駆動能力や配置情報の作成を手作業で対応している。
【０００４】
【特許文献１】特開平８−９６０１３号公報
【特許文献２】特開２００６−２６０２００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記の手法でタイミング修正を行う場合、配置状況の確認やセルの駆動能力を手作業にて対応するため、違反箇所が多い場合に膨大な時間がかかるという問題があった。更に、配置情報ファイルの作成ミスやセルの駆動能力の選択を誤るなどの原因により、後戻りが発生し、タイミングの収束時間および配線の収束期間が増大してしまう。また、近年の半導体プロセスの微細化に伴い、システムは大規模化する一方であり、タイミングと配線の収束期間は今後ますます重要な課題となることが予想される。
【０００６】
本発明は、前記実情に鑑みてなされたものであり、タイミング修正において、セル挿入を行う際に、タイミング情報とタイミング修正内容を記した情報、移動する際の優先順位となる重み付けの情報を与えて、それらの情報をレイアウト設計のセル配置時に適用することにより、配線混雑の回避とタイミング修正の容易化をはかることを目的とする。
【課題を解決するための手段】
【０００７】
本発明では、タイミング余裕度やセル間のマンハッタン距離からセル移動範囲の重み付け情報を与え、挿入されるセルの駆動能力などから、挿入すべき箇所に対し許容される挿入範囲を決定する。更に、移動先や挿入先の状況をセル敷詰率や配線混雑度を示すパラメータからアルゴリズムに判断させた上で配置を制御することによって、配線混雑の回避と意図した通りのタイミング修正を容易に実現することができる。
【０００８】
すなわち、本発明は、半導体集積回路のタイミング設計方法において、タイミング情報と接続情報（以下ネットリストとする）を入力として、タイミングの余裕度が少ないセルを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第１の重み付け決定工程と、前記第１の重み付け決定工程による重み付け結果に応じてセルを配置する工程を含む。
この構成により、配線とタイミングの収束を容易かつ短時間で可能となる。
【０００９】
また本発明は、上記半導体集積回路の設計方法において、物理情報から得られるマンハッタン距離が長いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第２の重み付け決定工程と、前記第２の重み付け決定工程による重み付け結果に応じてセルを配置する工程を含む。
【００１０】
また本発明は、上記半導体集積回路の設計方法において、半導体集積回路の物理設計工程において、ネットリストから得られるファンアウト数が多いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第３の重み付け決定工程と、前記第３の重み付け決定工程による重み付け結果に応じてセルを配置する工程を含む。
【００１１】
また本発明は、上記半導体集積回路の設計方法において、前記第１乃至第３の重み付け決定工程のうちの少なくともひとつによる重み付け結果に応じて、セルが移動可能な移動範囲を設定する工程を含む。
【００１２】
また本発明は、上記半導体集積回路の設計方法において、前記設定する工程で設定された前記移動範囲を格納する工程と、前記移動範囲の設定値内で、セルの敷詰率が最も少なくなる領域を探索することにより、配置混雑領域を回避して、セルの移動範囲を決定する工程とを含む。
【００１３】
また本発明は、上記半導体集積回路の設計方法において、ピンの密集度に応じて前記決定する工程で決定された前記移動範囲を変更する工程を含む。
【００１４】
また本発明は、上記半導体集積回路の設計方法において、前記格納する工程と前記ピンの密集度に基づいて設定値を変更する工程から配置条件を満たす領域がなかった場合、セルの移動領域の範囲を一定の割合で広げ、セルの駆動能力に応じて移動領域の上限を設定する工程と、前記上限の範囲内でセルの移動位置を決定する工程とを含む。
【００１５】
また本発明は、上記半導体集積回路の設計方法において、前記変更する工程において配置条件を満たす領域があった場合、前記移動範囲を格納する工程で得られた領域からセルの駆動能力を決定し、駆動能力を変更することによって配置領域を確保する工程を含む。
【００１６】
また本発明は、上記半導体集積回路の設計方法において、混雑領域を配線が通過する場合は、受け側のセルをタイプダウンし、隣に適正な駆動能力のセルを配置する工程を含む。
【００１７】
また本発明は、上記半導体集積回路の設計方法において、タイミングの余裕度が高い場合は、リピータセルを挿入する工程を含む。
【００１８】
また本発明は、上記半導体集積回路の設計方法において、混雑箇所のタイミング余裕度が高いセルを優先して低駆動セルへの置換による面積縮小や論理圧縮を実施することで、配置混雑の緩和とセル領域を確保するものを含む。
【００１９】
また本発明は、タイミング情報と接続情報を入力として、タイミングの余裕度が少ないセルを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第１の重み付け決定部と、前記第１の重み付け決定部による重み付け結果に応じてセルを配置するセル配置部とを含む。
【００２０】
また本発明は、上記半導体集積回路の設計装置において、物理情報から得られるマンハッタン距離が長いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第２の重み付け決定部を含み、前記セル配置部は、前記第１の重み付け決定部および前記第２の重み付け決定部による重み付け結果に応じてセルを配置するものを含む。
【００２１】
また本発明は、上記半導体集積回路の設計装置において、ネットリストから得られるファンアウト数が多いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う第３の重み付け決定部を含み、前記セル配置部は、前記第３の重み付け決定部および、前記第１および第２の重み付け決定部の少なくとも一方との重み付け結果に応じてセルを配置する。
【００２２】
また本発明は、上記半導体集積回路の設計装置において、前記第１乃至第３の重み付け決定部のうちの少なくともひとつによる重み付け結果に応じて、セルが移動可能な移動範囲を設定する移動範囲設定部を含む。
【００２３】
また本発明は、上記半導体集積回路の設計装置において、前記移動範囲設定部で設定された前記移動範囲を格納する移動範囲格納部と、前記移動範囲の設定値内で、セルの敷詰率が最も少なくなる領域を探索することにより、配置混雑領域を回避して、セルの移動範囲を決定する移動範囲決定部とを含む。
【００２４】
また本発明は、上記半導体集積回路の設計装置において、ピンの密集度に応じて前記移動範囲決定部で決定された前記移動範囲を変更する移動範囲変更部を含む。
【００２５】
また本発明は、上記半導体集積回路の設計装置において、前記移動範囲格納部が、前記移動範囲変更部の変更結果から配置条件を満たす領域がなかった場合、セルの移動領域の範囲を一定の割合で広げ、セルの駆動能力に応じて移動領域の上限を設定する移動範囲拡大部と、前記上限の範囲内でセルの移動位置を決定する移動位置決定部とを含む。
【００２６】
また本発明は、上記半導体集積回路の設計装置において、前記移動範囲変更部において配置条件を満たす領域があった場合、前記移動範囲を格納する工程で得られた領域からセルの駆動能力を決定し、駆動能力を変更することによって配置領域を確保するセル配置部を含む。
【００２７】
また本発明は、上記半導体集積回路の設計装置において、前記セル配置部は、混雑領域を配線が通過する場合は、受け側のセルをタイプダウンし、隣に適正な駆動能力のセルを配置するようにしたものを含む。
【００２８】
また本発明は、上記半導体集積回路の設計装置において、前記セル配置部は、タイミングの余裕度が高い場合は、リピータセルを挿入するものを含む。
【００２９】
また本発明は、上記半導体集積回路の設計装置において、混雑箇所のタイミング余裕度が高いセルを優先して低駆動セルへの置換による面積縮小や論理圧縮を実施することで、配置混雑の緩和とセル領域を確保するものを含む。
【発明の効果】
【００３０】
以上説明したように、本発明によれば、配線混雑の発生を防止した上で、タイミング修正を容易に実行することができる。また、対応工数の削減やマニュアル作業のミスによる後戻りを回避することで、従来に比べて短期間でタイミング収束の実現が可能となる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
（実施の形態１）
図１は本発明の実施の形態１にかかる半導体集積回路のセル配置方法を含む設計方法を示すフロー図である。この方法では、タイミング情報と接続情報（以下ネットリストとする）を入力として、タイミングの余裕度が少ないセルを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行う重み付け決定工程１０１と、この重み付け決定工程１０１による重み付け結果に応じてセルを配置する工程１０６を含むようにしたことを特徴とするものである。ここでは、タイミングの余裕度に加え、物理情報から得られるマンハッタン距離が長いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行うとともに、ネットリストから得られるファンアウト数が多いものを重みが高いものとし、重みが高いセルほど移動範囲が少ないように重み付けを行うなどの重み付けを組み合わせて、その重み付け結果に応じてセルを配置する工程を含む。
【００３２】
図1において、半導体集積回路の設計方法におけるセル配置は、タイミング情報、ネットリスト、物理情報を入力として、タイミング情報から得られるタイミング余裕度やネットリストや物理情報から得られるマンハッタン距離やファンアウト数に応じた重み付けを決定する重み付け決定工程１０１と、前記重み付け決定工程から得られる重み付けに応じてセルの移動可能な距離と範囲を決定する移動範囲決定工程１０２と、前記移動範囲決定工程から得られる移動範囲内にセルが配置可能か判断する配置判断工程１０３と、前記移動範囲内の領域をセルの駆動能力に応じて移動領域の距離や範囲を一定の割合で広げる領域拡大工程１０４と、低駆動セルへの置換による面積縮小や論理圧縮によって配置領域を確保する配置・配線領域確保工程１０５と配置処理を実行する配置工程１０６から構成される。ここではタイミング余裕度に基づく重み付けを第１の重み付け決定工程、マンハッタン距離に基づく重み付けを第２の重み付け決定工程、ファンアウト数に基づく重み付けを第３の重み付け決定工程とする。
【００３３】
ここでマンハッタン距離とは、セルの配置処理後に接続すべき端子の位置が決まれば、端子間を接続する信号の最短経路の距離を算出することができる。この距離を一般的にマンハッタン距離と呼んでいる。
図２はマンハッタン距離を説明するための図である。端子Ｔ１と端子Ｔ２を接続する際、それぞれの座標を(x1,y1)、(x2,y2)とするとマンハッタン距離Lは以下の式(1)で与えられる。
L=| x2- x1 | + | y2 - y1 |・・・式(1)
即ち、マンハッタン距離は配線グリッドを用いた配線手法での最短経路の長さとなる。しかしマンハッタン距離で接続される経路は図２にＰ１，Ｐ２，Ｐ３で示している１経路だけではない。
【００３４】
ここでこのフローを実行するための半導体集積回路設計装置は、図３に示すようにタイミング情報１０００Ａ、ネットリスト１０００Ｂ、物理情報１０００Ｃを入力として、タイミング情報から得られるタイミング余裕度やネットリストや物理情報から得られるマンハッタン距離やファンアウト数に応じた重み付けを決定する重み付け決定部１００１と、前記重み付け決定部から得られる重み付けに応じてセルの移動可能な距離と範囲を決定する移動範囲決定部１００２と、前記移動範囲決定部から得られる移動範囲内にセルが配置可能か判断する配置判断部１００３と、前記移動範囲内の領域をセルの駆動能力に応じて移動領域の距離や範囲を一定の割合で広げる領域拡大部１００４と、低駆動セルへの置換による面積縮小や論理圧縮によって配置領域を確保する配置・配線領域確保部１００５と配置処理を実行する配置部１００６とから構成される。
【００３５】
次に重み付け決定フローについて説明する。
図４は、本発明の実施の形態２にかかる重み付け決定フローを示す図である。図４において、重み付けを決定する手順は、到達時間から理想時間を減算したタイミング情報からタイミングの余裕度を算出する工程２０１と、ネットリストからファンアウト数を算出する工程２０２と、物理情報から接続前後のマンハッタン距離を算出する工程２０３と、前記２０１と前記２０２と前記２０３から重み付けを算出する工程２０４から構成される。
【００３６】
ここで重み付け決定工程１０１は、タイミング情報は理想的信号到達時間および実際の信号到達時間を具備しており、このタイミング情報から、セットアップ・ホールド余裕度を算出し、タイミングの余裕度を算出する。ここでタイミングの余裕度とは、実際の信号到達時間から理想的信号到達時間を減じたものをｎｓｅｃで表すものである。例えばタイミングの余裕度は図５を用いて説明すると以下に示すとおりである。Ft1とFt2の信号到達時間は近ければ早く、遠ければ遅くなるので、セットアップに関しては近ければ余裕度が高くなり遠ければ余裕度が低くなる。
【００３７】
また、ファンアウト数を算出する工程２０２は、ネットリストから図６に示すようにファンアウト数を算出する。この場合、端子Ｔ１に接続された配線Ｌ１を基準にしたときのファンアウト数は、Ｔ１１，Ｔ１２，Ｔ１３，Ｔ１４，Ｔ１５，Ｔ１６の６つであった。
【００３８】
図７は、移動範囲決定フローを示す図である。図７において、移動範囲を決定する手順は、物理情報から配線経路情報を抽出する工程３０１と、前記２０４と前記３０１から配置候補領域を決定する工程３０２と、前記３０２で決定された配置候補領域内の敷詰率を算出する工程３０３と、前記３０２で決定された配置候補領域内の配線混雑度を算出する工程３０４と、前記３０３と前記３０４の加算値が最小となる配置移動範囲を決定する工程３０５と、上記加算値に重なりがあるか否かを判断する工程３０６と、重なりがある場合は、前記３０５で決定された配置移動範囲内のピン密集度に応じて配置移動距離・範囲を選択する工程３０７から構成される。なお上記判断する工程３０６で重なりがないと判断された場合は終了となり、そのままの配置移動範囲で配置される。
【００３９】
このようにして移動距離・範囲を再設定した後セル移動領域拡大フローを実行する。図８は、本発明のセル移動領域拡大フローを示す図である。図８において、領域拡大を決定する手順は、前記３０６で決定された配置移動範囲から一定の割合で配置可能領域を拡大する工程４０１と、駆動セルによる限度範囲を判断する工程４０２と、前記４０１で決定した拡大領域をセルの配置領域に設定する工程４０３から構成される。
【００４０】
このようにして拡大領域をセルの配置領域に設定した後、配置・配線領域を確保する。
図９は、本発明の配置・配線領域確保フローを示す図である。図９において、領域確保を決定する手順は、前記３０６と前記４０３で決定したセル配置領域内のセルのタイミング余裕度があるか判断する工程５０１と、セルタイプの変更や論理圧縮により配置領域を削減する工程５０２と、セル配置領域の周囲で配線混雑領域が存在するかを判断する工程５０３と、前記５０３で配線混雑領域が存在する場合にセルタイプを変更する工程５０４と、配線混雑のない領域にリピータを挿入し、配線混雑領域を回避して配線する工程５０５から構成される。
【００４１】
図１０にセルの移動範囲を表すように、例えば図１０（ａ）に示すフリップフロップＦ１ｍとフリップフロップＦ２ｍの間にある対象セルＢｍのほうが，図１０（ｂ）に示すフリップフロップＦ１ｎとフリップフロップＦ２ｎの間にある対象セルＢｎよりもタイミング余裕度が小さい（マンハッタン距離が大きい）場合はそれぞれ、移動範囲Ｒｍは、Ｒｎよりも小さく設定する。このようにタイミングの余裕度から決定される重み付けにより、セルの移動範囲は変化する。具体的には重み付けの閾値を設け、ある閾値よりも大きいか小さいかで移動する範囲を決定する。
【００４２】
また、移動範囲決定の要素となるピンＰｍ１、・・・・Ｐｎ４の密集度を図１１に示す。図１１（ａ）は密集している場合を示し、図１１（ｂ）は密集度が低い場合を示す。
【００４３】
さらに、移動範囲拡大工程において一定の割合で移動範囲を拡大した状態を図１２に示す。例えば対象セルＢ０の移動範囲がＲ０であったとき、移動範囲をＲ２に拡大する。
【００４４】
また、図１３に示すように移動範囲拡大工程においてはセルタイプの違いにより拡大可能領域を変化させるのが望ましい。例えば対象セルＢ０１の移動範囲拡大後の移動範囲がＲ０１であったとき、対象セルＢ０２の移動範囲拡大後の移動範囲がＲ０２とするなど、対象セルの重み付けに従い制御する。
【００４５】
さらに配線確保工程において図１４（ａ）に示すように、フリップフロップＦ０１とフリップフロップＦ０２との間にあるＥＣＯ対象セルＢ０近傍の経路Ｌ上に配線混雑箇所Ｑが存在する場合、図１４（ｂ）に示すように、迂回線路Ｌｎを形成するとともにフリップフロップＦ０１側にタイプの低いセルＢ０Ｂを挿入する。このように受け側にタイプの低いセルを挿入するなどの方法により、経路の迂回を考慮した対策を行うことでより効率よい修正が可能となる。
【００４６】
また、配線確保工程において図１５（ａ）に示すように、フリップフロップＦ０１とフリップフロップＦ０２との間にあるＥＣＯ対象セルＢ０近傍の経路Ｌ上に配線混雑箇所Ｑが存在する場合、図１５（ｂ）に示すように、迂回線路Ｌｎを形成するとともに迂回線路上にリピータバッファセルＢＲを挿入する。このように迂回線路上にリピータバッファを挿入するなどの方法により、経路の迂回を考慮した対策を行うことでより効率よい修正が可能となる。
【００４７】
さらに配置確保工程において図１６に示すように配置混雑している領域Ａｒがある場合、図１７は配置混雑している箇所の領域を確保するために、セル削除を行った図である。
【００４８】
（実施の形態２）
次に本発明の実施の形態２について説明する。
前記実施の形態１では、タイミング余裕度、マンハッタン距離、ファンアウト数の３つについてそれぞれ重み付けを行い、この重みの加算をおこなうことによってセル配置を実現したが、本実施の形態ではタイミング余裕度についてのみ重み付けを行い、この重み付け結果に基づいて配置を行う場合について説明する。
【００４９】
図１８は、本実施の形態の重み付け決定フローを示す図である。図４に示した実施の形態１の重み付け決定フローと異なるのは、ファンアウト数を算出する工程２０２およびマンハッタン距離を算出する工程２０３がないのと、重み付けを決定する工程２０４の内容のみで他は実施の形態１と同様である。
図１８は、本発明の実施の形態２にかかる重み付け決定フローを示す図である。図１８において、重み付けを決定する手順は、到達時間から理想時間を減算したタイミング情報からタイミングの余裕度を算出する工程７０１と、前記工程７０１から重み付けを算出する工程７０４から構成される。
この構成により、処理が極めて簡単となる。
【００５０】
（実施の形態３）
次に本発明の実施の形態３について説明する。
前記実施の形態１では、タイミング余裕度、マンハッタン距離、ファンアウト数の３つについてそれぞれ重み付けを行い、この重みの加算をおこなうことによってセル配置を実現したが、本実施の形態ではタイミング余裕度とマンハッタン距離とについてのみ重み付けを行い、この重み付け結果に基づいて配置を行う場合について説明する。
【００５１】
図１９は、本実施の形態の重み付け決定フローを示す図である。図４に示した実施の形態１の重み付け決定フローと異なるのは、ファンアウト数を算出する工程がないのと、重み付けを決定する工程２０４の内容のみで他は実施の形態１と同様である。
図１９は、本発明の実施の形態３にかかる重み付け決定フローを示す図である。図１９において、重み付けを決定する手順は、到達時間から理想時間を減算したタイミング情報からタイミングの余裕度を算出する工程８０１と、物理情報から接続前後のマンハッタン距離を算出する工程８０３と、前記工程８０１と前記工程８０３から重み付けを算出する工程８０４から構成される。
【００５２】
（実施の形態４）
次に本発明の実施の形態４について説明する。
前記実施の形態１では、タイミング余裕度、マンハッタン距離、ファンアウト数の３つについてそれぞれ重み付けを行い、この重みの加算をおこなうことによってセル配置を実現したが、本実施の形態ではタイミング余裕度とファンアウト数とについてのみ重み付けを行い、この重み付け結果に基づいて配置を行う場合について説明する。
【００５３】
図２０は、本実施の形態の重み付け決定フローを示す図である。図４に示した実施の形態１の重み付け決定フローと異なるのは、マンハッタン距離を算出する工程２０３がないのと、重み付けを決定する工程２０４の内容のみで他は実施の形態１と同様である。
図２０は、本発明の実施の形態４にかかる重み付け決定フローを示す図である。図２０において、重み付けを決定する手順は、到達時間から理想時間を減算したタイミング情報からタイミングの余裕度を算出する工程９０１と、ネットリストからファンアウト数を算出する工程９０２と、前記工程９０１と前記工程９０２から重み付けを算出する工程９０４から構成される。
【００５４】
（実施の形態５）
次に本発明の実施の形態５について説明する。
前記実施の形態１では、タイミング余裕度、マンハッタン距離、ファンアウト数の３つについてそれぞれ重み付けを行い、この重みの加算をおこなうことによってセル配置を実現したが、本実施の形態ではタイミング余裕度についてのみ重み付けを行い、この重み付け結果に基づいて配置を行う場合について説明する。
【００５５】
図２０は、本実施の形態の重み付け決定フローを示す図である。図４に示した実施の形態１の重み付け決定フローと異なるのは、ファンアウト数を算出する工程２０２およびマンハッタン距離を算出する工程２０３がないのと、重み付けを決定する工程２０４の内容のみで他は実施の形態１と同様である。
図２０は、本発明の実施の形態３にかかる重み付け決定フローを示す図である。図２０において、重み付けを決定する手順は、到達時間から理想時間を減算したタイミング情報からタイミングの余裕度を算出する工程８０１と、前記工程８０１から重み付けを算出する工程４０４から構成される。
この構成により、処理が極めて簡単となる。
【産業上の利用可能性】
【００５６】
本発明は、多電源での配線経路制御、指定配線の通過領域制御、配線禁止領域制御、指定領域、指定配線の優先配線方向の制御を有し、配線収束性向上、タイミング修正の容易性等に有用である。本発明にかかる半導体集積回路の配置手法は、タイミング情報や物理情報から重み付けの決定、重み付けからセルの移動距離や範囲の決定、移動範囲内のセル配置可能性の確認、一定割合での範囲の拡大、配置領域の確保を有し、配線混雑の発生も防止した上で、タイミング修正の容易な実行等として有用である。また対応工数の削減やマニュアル作業のミスによる後戻りを回避することで、従来に比べて短期間でタイミング収束の実現等の用途にも応用できる。
【図面の簡単な説明】
【００５７】
【図１】本発明の、タイミングや配置・配線領域を考慮したＥＣＯセルの配置における概略フロー図である。
【図２】重み付け決定の要素となるセル間のマンハッタン距離を示す説明図である。
【図３】本発明の実施の形態１で用いられる設計装置を示すブロック図である。
【図４】図１の重み付け決定工程における詳細フロー図である。
【図５】重み付け決定の要素となるセル間のタイミング余裕度を示す説明図である。
【図６】重み付け決定の要素となるセル間のファンアウト数を示す説明図である。
【図７】図１の移動範囲決定工程における詳細フロー図である。
【図８】図１の移動範囲拡大工程における詳細フロー図である。
【図９】図1の配置・配線領域確保工程における詳細フロー図である。
【図１０】タイミングの余裕度から決定される重み付けにより、セルの移動範囲を表す          図である。
【図１１】移動範囲決定の要素となるピンの密集度を表す図である。
【図１２】移動範囲拡大工程において一定の割合で移動範囲を拡大した図である。
【図１３】移動範囲拡大工程においてセルタイプの違いにより拡大可能領域が変わることを表した図である。
【図１４】配線確保工程においてＥＣＯ対象セル前後の経路上に配線混雑箇所が存在する場合、経路の迂回を考慮した対策（受け側にタイプの低いセルを挿入）することを表した図である。
【図１５】配線確保工程においてＥＣＯ対象セル前後の経路上に配線混雑箇所が存在する場合、経路の迂回を考慮した対策（リピータバッファ挿入）することを表した図である。
【図１６】配置確保工程において配置混雑している領域がある場合、混雑領域を示した図である。
【図１７】図１６の混雑領域の領域確保するためにセル削除したことを表した図である。
【図１８】本発明の実施の形態２における重み付け決定工程における詳細フロー図である。
【図１９】本発明の実施の形態３における重み付け決定工程における詳細フロー図である。
【図２０】本発明の実施の形態４における重み付け決定工程における詳細フロー図である。
【符号の説明】
【００５８】
１０１ 重み付け決定工程
１０２ 移動範囲決定工程
１０３ 配置領域確認工程
１０４ 移動範囲拡大工程
１０５ 配置・配線領域確保工程
１０６ 配置
Ｂ０：重み付けにより移動範囲を表したＥＣＯ対象セル
Ｐ１, Ｐ２, Ｐ３：マンハッタン距離（経路）
Ｌ１：複数ファンアウトがある配線
Ｐｍ１-Ｐｎ４：セルに存在するピン
Ｒ０：移動範囲拡大領域
Ｒ０１,Ｒ０２：セルタイプにより駆動可能な領域
Ｌｎ：配線混雑により迂回した配線経路
Ｂ０ｓ：バッファ（受け側付近に低タイプセル挿入）
ＢＲ：リピートセル（配線迂回経路途中にセル挿入）
Ｑ：配置混雑領域
【図１】
2009020575.tif 000003
【図２】
2009020575.tif 000004
【図３】
2009020575.tif 000005
【図４】
2009020575.tif 000006
【図５】
2009020575.tif 000007
【図６】
2009020575.tif 000008
【図７】
2009020575.tif 000009
【図８】
2009020575.tif 000010
【図９】
2009020575.tif 000011
【図１０】
2009020575.tif 000012
【図１１】
2009020575.tif 000013
【図１２】
2009020575.tif 000014
【図１３】
2009020575.tif 000015
【図１４】
2009020575.tif 000016
【図１５】
2009020575.tif 000017
【図１６】
2009020575.tif 000018
【図１７】
2009020575.tif 000019
【図１８】
2009020575.tif 000020
【図１９】
2009020575.tif 000021
【図２０】
2009020575.tif 000022