(57)【要約】【課題】  レイアウト設計完了後においてリペアセルによる回路変更の実現可能性の高い、半導体集積回路装置のレイアウト設計方法を提供する。【解決手段】  論理セルをレイアウト領域内に配置した後にリペアセル配置調整工程１０６を実施し、このリペアセル配置調整工程が、レイアウト領域を複数個の配置エリアに分割し、ネットリストに従って各配線の配線経路の予測を行い、予測された仮想配線の配置エリア内での通過本数に応じて配置エリアの点数付けを行うリペアセル配置エリア優先順位付け工程１０４と、リペアセル配置エリア優先順位付け工程にて得られた配置エリアの点数付けの結果に基づいて配置エリアにリペアセルを配置するリペアセル移動工程１０５とを含む。このため、レイアウト設計完了後のリペアセルによる回路修正の実現可能性を大幅に向上させることができる。【選択図】  図１
2005202471.tif 000002
【特許請求の範囲】
【請求項１】
リペアセルおよび実動作に必要な論理セル群を含んだネットリストを自動配置配線ツール内部に読込み、前記論理セルをレイアウト領域内に配置し、前記ネットリストに従って前記論理セル間の配線を行う半導体集積回路装置のレイアウト設計方法であって、前記論理セルをレイアウト領域内に配置した後にリペアセル配置調整工程を実施し、前記リペアセル配置調整工程が、前記レイアウト領域を複数個の配置エリアに分割する配置エリア定義工程と、前記ネットリストに従って各配線の配線経路の予測を行う仮想配線工程と、前記仮想配線工程にて予測された仮想配線の前記配置エリア内での通過本数に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含むリペアセル配置エリア優先順位付け工程と、前記リペアセル配置エリア優先順位付け工程にて得られた前記配置エリアの点数付けの結果に基づいて前記配置エリアに前記リペアセルを配置するリペアセル移動工程とを含む半導体集積回路のレイアウト設計方法。
【請求項２】
前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程と、前記仮想配線結果から予測される仮想配線長に基づいてタイミング解析を実施し、その前記タイミング解析結果をもとに各パスのタイミングスラックを算出するタイミング解析工程と、前記タイミングスラックが任意の閾値以下となるパスに含まれる仮想配線の前記配置エリア内での通過本数に応じて前記配置エリアの点数付けを行う配線エリア評価工程とを含む請求項１記載の半導体集積回路装置のレイアウト設計方法。
【請求項３】
前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程と、任意の回路を指定するための回路インスタンス情報を受け取って、前記回路インスタンス情報に関連したパスに含まれる仮想配線の前記配置エリア内での通過本数に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含む請求項１記載の半導体集積回路装置のレイアウト設計方法。
【請求項４】
前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程および前記配置エリア評価工程の代わりに任意のｘ個（ｘは正の整数）の前記配置エリアで構成される配置エリアグループ毎の論理セルのセル敷き詰め率を算出するセル敷き詰め率解析工程と、前記配置エリアグループの前記セル敷き詰め率に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含む請求項１記載の半導体集積回路装置のレイアウト設計方法。
【請求項５】
前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程および前記配置エリア評価工程の代わりに任意のｙ個（ｙは正の整数）の前記配置エリアで構成される配置エリアグループ毎の消費電力値を論理セルの消費電力情報に基づいて算出する消費電力解析工程と、前記配置エリアグループの前記消費電力値に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含む請求項１記載の半導体集積回路装置のレイアウト設計方法。
【請求項６】
請求項１，２，３，４または５記載の半導体集積回路装置のレイアウト設計方法の前記配置エリアの点数付けのうち、いずれか２つ以上を用いて複数回の前記配置エリアの点数付けを行うリペアセル配置エリア優先順位付け工程と、前記複数回の配置エリアの点数付け結果に対してそれぞれ任意の重み付け処理を実施し、前記重み付け処理の結果に基づいて新たな配置エリアの点数付けの結果を算出する項目重み付け工程と、前記新たな配置エリアの点数付けの結果に基づいて前記配置エリアにリペアセルを配置するリペアセル移動工程とを含む半導体集積回路装置のレイアウト設計方法。
【請求項７】
前記リペアセル配置調整工程が、前記リペアセル配置エリア優先順位付け工程と、任意の閾値以上の点数を持つ配置エリアに対して前記リペアセルの個数が不足するときに、前記不足分を補うために前記リペアセルを前記不足分だけ複製するリペアセル自動生成工程と、前記リペアセル移動工程とを含む請求項１，２，３，４，５または６記載の半導体集積回路装置のレイアウト設計方法。
【請求項８】
前記リペアセル自動生成工程が、現時点で使用されている各論理セル毎の使用頻度を前記論理セルの使用個数に基づいて解析する論理セル使用頻度解析工程と、前記任意の閾値以上の点数を持つ配置エリアに対する前記リペアセルの不足個数を算出し、前記使用頻度の高い順に上位Ｎ種類（Ｎは正の整数）の論理セルを用いて前記不足個数を補うための新たなリペアセルを生成するリペアセル生成工程とを含む請求項７記載の半導体集積回路装置のレイアウト設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体集積回路装置のレイアウト設計方法に関し、特にレイアウト設計完了後における回路変更を容易に実施可能な半導体集積回路装置のレイアウト設計方法に関するものである。
【背景技術】
【０００２】
従来の半導体集積回路装置のレイアウト設計方法においては、レイアウト設計完了後における回路変更を配線修正のみで実施する為に、他の回路との接続情報を一切持たないリペアセルを予めネットリスト内に設け、このリペアセルをレイアウト領域内に均一もしくはランダムに分散させた配置を行っている（例えば、特許文献１参照）。
【特許文献１】特開平１１−１８６３９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
図２２は従来の半導体集積回路装置のレイアウト設計方法を示すフローチャートである。この従来のレイアウト設計方法では、リペアセルを予め含んだネットリストをネットリスト読込み工程１００にて自動配置配線ツール内に読み込んだ後、次のフロアプラン工程１０１にてリペアセルを事前にレイアウト領域内に固定配置させている。図２３にて前述のフロアプラン工程１０１にてレイアウト領域内にリペアセルを均一に配置させた場合のリペアセル配置状態を示す。また、フロアプラン実施後は、次の論理セル配置を行う配置工程１０２、回路接続情報に基づいて論理セル間の配線を行う配線工程１０３へと順次進んでいく。なお、前述のフロアプラン工程１０１にてリペアセルを配置する際は、実動作上必要な論理回路を構成する他のセル群の配置位置及びそれらを結ぶ配線状況を一切考慮せず、単にレイアウト領域に対して、予め準備されたリペアセル群をランダムもしくは均一に配置しているだけである。この為、実際にレイアウト設計完了後にリペアセルを用いた回路変更が発生した場合においては、リペアセルをレイアウト領域内に予め設けておいたとしても、回路変更箇所とリペアセルとの接続が配線混雑により困難であったり、あるいは配線できたとしてもリペアセルまでの配線距離が長くなり、新たなタイミング制約違反を起こしてしまう等、予め設けておいたリペアセル群を有効に利用できない問題が発生してしまう場合がある。
【０００４】
したがって、この発明の目的は、上記従来の問題点を解決するもので、レイアウト設計完了後においてリペアセルによる回路変更の実現可能性の高い、半導体集積回路装置のレイアウト設計方法を提供することである。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の半導体集積回路装置のレイアウト設計方法は、レイアウト領域を任意の個数の配置エリアに分割する配置エリア定義工程と、配置または仮想配線結果から算出された配線混雑度、あるいはタイミング解析結果、あるいはセル敷き詰め率、あるいは消費電力値、あるいは指定回路の仮想配線経路状況などの各評価項目に基づいて前述の配置エリアをそれぞれ点数化および優先順位付けを行う配置エリア評価工程と、上記の複数個の評価項目に対してそれぞれの項目毎に任意の重み付け処理を行う項目重み付け工程と、上記の各配置エリアの評価結果に基づいた最適な配置エリアに対してリペアセルを不足させること無く供給する為のリペアセル自動生成工程と、各リペアセルを上記の優先順位付けされた最適な配置エリアへと移動させるリペアセル移動工程とからなるリペアセル配置調整工程とを含むことを特徴とする。
【０００６】
具体的には、請求項１記載の半導体集積回路装置のレイアウト設計方法は、リペアセルおよび実動作に必要な論理セル群を含んだネットリストを自動配置配線ツール内部に読込み、前記論理セルをレイアウト領域内に配置し、前記ネットリストに従って前記論理セル間の配線を行う半導体集積回路装置のレイアウト設計方法であって、前記論理セルをレイアウト領域内に配置した後にリペアセル配置調整工程を実施し、前記リペアセル配置調整工程が、前記レイアウト領域を複数個の配置エリアに分割する配置エリア定義工程と、前記ネットリストに従って各配線の配線経路の予測を行う仮想配線工程と、前記仮想配線工程にて予測された仮想配線の前記配置エリア内での通過本数に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含むリペアセル配置エリア優先順位付け工程と、前記リペアセル配置エリア優先順位付け工程にて得られた前記配置エリアの点数付けの結果に基づいて前記配置エリアに前記リペアセルを配置するリペアセル移動工程とを含む。
【０００７】
請求項２記載の半導体集積回路装置のレイアウト設計方法は、請求項１記載の半導体集積回路装置のレイアウト設計方法において、前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程と、前記仮想配線結果から予測される仮想配線長に基づいてタイミング解析を実施し、その前記タイミング解析結果をもとに各パスのタイミングスラックを算出するタイミング解析工程と、前記タイミングスラックが任意の閾値以下となるパスに含まれる仮想配線の前記配置エリア内での通過本数に応じて前記配置エリアの点数付けを行う配線エリア評価工程とを含む。
【０００８】
請求項３記載の半導体集積回路装置のレイアウト設計方法は、請求項１記載の半導体集積回路装置のレイアウト設計方法において、前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程と、任意の回路を指定する為の回路インスタンス情報を受け取って、前記回路インスタンス情報に関連したパスに含まれる仮想配線の前記配置エリア内での通過本数に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含む。
【０００９】
請求項４記載の半導体集積回路装置のレイアウト設計方法は、請求項１記載の半導体集積回路装置のレイアウト設計方法において、前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程および前記配置エリア評価工程の代わりに任意のｘ個（ｘは正の整数）の前記配置エリアで構成される配置エリアグループ毎のセル敷き詰め率を算出する論理セルのセル敷き詰め率解析工程と、前記配置エリアグループの前記セル敷き詰め率に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含む。
【００１０】
請求項５記載の半導体集積回路装置のレイアウト設計方法は、請求項１記載の半導体集積回路装置のレイアウト設計方法において、前記リペアセル配置エリア優先順位付け工程が、前記配線エリア定義工程と、前記仮想配線工程および前記配置エリア評価工程の代わりに任意のｙ個（ｙは正の整数）の前記配置エリアで構成される配置エリアグループ毎の消費電力値を論理セルの消費電力情報に基づいて算出する消費電力解析工程と、前記配置エリアグループの前記消費電力値に応じて前記配置エリアの点数付けを行う配置エリア評価工程とを含む。
【００１１】
請求項６記載の半導体集積回路装置のレイアウト設計方法は、請求項１，２，３，４または５記載の半導体集積回路装置のレイアウト設計方法の前記配置エリアの点数付けのうち、いずれか２つ以上を用いて複数回の前記配置エリアの点数付けを行うリペアセル配置エリア優先順位付け工程と、前記複数回の配置エリアの点数付け結果に対してそれぞれ任意の重み付け処理を実施し、前記重み付け処理の結果に基づいて新たな配置エリアの点数付けの結果を算出する項目重み付け工程と、前記新たな配置エリアの点数付けの結果に基づいて前記配置エリアにリペアセルを配置するリペアセル移動工程とを含む。
【００１２】
請求項７記載の半導体集積回路装置のレイアウト設計方法は、請求項１，２，３，４，５または６記載の半導体集積回路装置のレイアウト設計方法において、前記リペアセル配置調整工程が、前記リペアセル配置エリア優先順位付け工程と、任意の閾値以上の点数を持つ配置エリアに対して前記リペアセルの個数が不足するときに、前記不足分を補うために前記リペアセルを前記不足分だけ複製するリペアセル自動生成工程と、前記リペアセル移動工程とを含む。
【００１３】
請求項８記載の半導体集積回路装置のレイアウト設計方法は、請求項７記載の半導体集積回路装置のレイアウト設計方法において、前記リペアセル自動生成工程が、現時点で使用されている各論理セル毎の使用頻度を前記論理セルの使用個数に基づいて解析する論理セル使用頻度解析工程と、前記任意の閾値以上の点数を持つ配置エリアに対する前記リペアセルの不足個数を算出し、前記使用頻度の高い順に上位Ｎ種類（Ｎは正の整数）の論理セルを用いて前記不足個数を補うための新たなリペアセルを生成するリペアセル生成工程とを含む。
【発明の効果】
【００１４】
この発明の請求項１記載の半導体集積回路装置のレイアウト設計方法によれば、リペアセル配置調整工程が、レイアウト領域を複数個の配置エリアに分割する配置エリア定義工程と、ネットリストに従って各配線の配線経路の予測を行う仮想配線工程と、仮想配線工程にて予測された仮想配線の配置エリア内での通過本数に応じて配置エリアの点数付けを行う配置エリア評価工程とを含むリペアセル配置エリア優先順位付け工程と、リペアセル配置エリア優先順位付け工程にて得られた配置エリアの点数付けの結果に基づいて配置エリアにリペアセルを配置するリペアセル移動工程とを含むので、リペアセルを配線混雑度の低い配置エリアに対して優先的に配置することが可能となる。これによりレイアウト設計完了後のリペアセルを用いた回路変更の実現可能性を大幅に向上させることができる。
【００１５】
請求項２では、リペアセル配置エリア優先順位付け工程が、配線エリア定義工程と、仮想配線工程と、仮想配線結果から予測される仮想配線長に基づいてタイミング解析を実施し、そのタイミング解析結果をもとに各パスのタイミングスラックを算出するタイミング解析工程と、タイミングスラックが任意の閾値以下となるパスに含まれる仮想配線の配置エリア内での通過本数に応じて配置エリアの点数付けを行う配線エリア評価工程とを含むので、リペアセルを、タイミングスラックが任意の閾値以下となるようなパスに含まれる仮想配線の通過本数が多い配置エリア、すなわちタイミングクリティカル回路のパスに近傍な配置エリアに対して優先的に配置することが可能となる。
【００１６】
請求項３では、リペアセル配置エリア優先順位付け工程が、配線エリア定義工程と、仮想配線工程と、任意の回路を指定するための回路インスタンス情報を受け取って、回路インスタンス情報に関連したパスに含まれる仮想配線の配置エリア内での通過本数に応じて配置エリアの点数付けを行う配置エリア評価工程とを含むので、リペアセルを任意の回路インスタンス情報によって指定された各回路のパスに近傍な配置エリアに対して優先的に配置することが可能となる。またこれにより、例えばネットリスト内の各回路毎の機能検証進行度合いに基づいて、その後の各回路に対するバグ（設計ミスによる動作不具合）の発生確率を予測し、このバグ発生確率の高い回路に対して予め優先的にリペアセルを近傍配置させておき、リペアセルを用いた回路変更の実現可能性を大幅に向上させることが可能となる。
【００１７】
請求項４では、リペアセル配置エリア優先順位付け工程が、配線エリア定義工程と、仮想配線工程および配置エリア評価工程の代わりに任意のｘ個（ｘは正の整数）の配置エリアで構成される配置エリアグループ毎の論理セルのセル敷き詰め率を算出するセル敷き詰め率解析工程と、配置エリアグループのセル敷き詰め率に応じて配置エリアの点数付けを行う配置エリア評価工程とを含むので、リペアセルを論理セルが密集していることで必然的にバグ発生確率が高くなる配置エリアに対して優先的に配置することが可能となる。
【００１８】
請求項５では、リペアセル配置エリア優先順位付け工程が、配線エリア定義工程と、仮想配線工程および配置エリア評価工程の代わりに任意のｙ個（ｙは正の整数）の配置エリアで構成される配置エリアグループ毎の消費電力値を論理セルの消費電力情報に基づいて算出する消費電力解析工程と、配置エリアグループの消費電力値に応じて配置エリアの点数付けを行う配置エリア評価工程とを含むので、リペアセルを総消費電力値の低い、すなわち電力供給不足による電圧降下の危険性の低い配置エリアに対して優先的に配置することが可能となる。
【００１９】
請求項６では、請求項１，２，３，４または５記載の半導体集積回路装置のレイアウト設計方法の配置エリアの点数付けのうち、いずれか２つ以上を用いて複数回の配置エリアの点数付けを行うリペアセル配置エリア優先順位付け工程と、複数回の配置エリアの点数付け結果に対してそれぞれ任意の重み付け処理を実施し、重み付け処理の結果に基づいて新たな配置エリアの点数付けの結果を算出する項目重み付け工程と、新たな配置エリアの点数付けの結果に基づいて配置エリアにリペアセルを配置するリペアセル移動工程とを含むので、それぞれに任意の重み付け処理が施された複数個の評価方法を用いて得られる配置エリアに対して、リペアセルを優先的に配置することが可能となる。
【００２０】
請求項７では、リペアセル配置調整工程が、リペアセル配置エリア優先順位付け工程と、任意の閾値以上の点数を持つ配置エリアに対してリペアセルの個数が不足するときに、不足分を補うためにリペアセルを不足分だけ複製するリペアセル自動生成工程と、リペアセル移動工程とを含むので、各配置エリアの評価結果に基づいた最適な配置エリアに対してリペアセルを不足させること無く供給することが可能となる。
【００２１】
請求項８では、リペアセル自動生成工程が、現時点で使用されている各論理セル毎の使用頻度を論理セルの使用個数に基づいて解析する論理セル使用頻度解析工程と、任意の閾値以上の点数を持つ配置エリアに対するリペアセルの不足個数を算出し、使用頻度の高い順に上位Ｎ種類（Ｎは正の整数）の論理セルを用いて不足個数を補うための新たなリペアセルを生成するリペアセル生成工程とを含むので、実際にネットリスト内で使用されている論理セルの使用頻度に応じた構成、すなわち実際の回路変更時に必要となる可能性の高い論理セルを優先的にリペアセルとして有効な箇所に不足させる事無く設けることが可能となる。
【発明を実施するための最良の形態】
【００２２】
この発明の第１の実施の形態を図１〜図５に基づいて説明する。図１は本発明の第１の実施形態における半導体集積回路装置のレイアウト設計方法の処理工程を示すフローチャートである。
【００２３】
まず、ネットリスト読込み工程１００にてリペアセルおよび実動作に必要な論理セル群を含んだネットリストを自動配置配線ツール内部に読込み、次にフロアプラン工程１０１にて電源ストラップ配線等を事前に行った後、配置工程１０２にて従来の配置工程と同様に各論理セルをレイアウト領域内に配置する。
【００２４】
その後は、リペアセル配置に有効な配置エリアを決定するリペアセル配置エリア優先順位付け工程１０４および前記優先順位付け結果に基づいて各配置エリアにリペアセルを配置するリペアセル移動工程１０５とで構成されるリペアセル配置調整工程１０６においてリペアセルを効果的なエリアに配置し、次の配線工程１０３にて従来の配線工程と同様にネットリストに従って実際に配線を実施する処理工程となっている。
【００２５】
図２は第１の実施形態において前記リペアセル配置エリア優先順位付け工程１０４の具体的な処理工程を示すフローチャートである。配置エリア定義工程１０７にてレイアウト領域を任意の個数の配置エリアに分割した後、仮想配線工程１０８にてネットリストに従って各配線の配線経路の予測を実施し、次の配置エリア評価工程１０９にて各配置エリアに対して前記仮想配線の通過本数に応じた点数付けを行う処理工程となっている。
【００２６】
また、図３は第１の実施形態において前記配置エリア定義工程１０７におけるレイアウト領域の分割方法を示す模式図である。本工程ではレイアウト領域２００をｎ×ｍ個（ｎ，ｍは正の整数）の領域に分割し、それらをＡＲＥＡ（１，１）〜ＡＲＥＡ（ｎ，ｍ）の配置エリアとして定義するものとする。
【００２７】
次に図４、図５を用いて具体的な配置エリアの点数付けについて説明する。図４は第１の実施形態での配置状況及び、仮想配線状況を示す模式図である。この場合、前記の仮想配線工程１０８後の、例えば配置エリアＡＲＥＡ（１，１）〜ＡＲＥＡ（９，６）における各論理セル６０１の配置状況及び、ネットリストに従って各論理セルの入力ピンＡと論理セルの出力ピンＹとを結ぶ仮想配線経路６００の配線状況を示す。
【００２８】
次に図５は第１の実施形態での各配置エリアの評価結果を示す図である。この場合、前記の配置エリア評価工程１０９での図４に対する各配置エリアの評価結果を示しており、ここでは例えば配置エリア内を仮想配線が１本通過する毎に１点ずつ減点していく方法により各配置エリアを点数付けした結果である。これによって仮想配線通過本数の少ない配置エリア、すなわち配線混雑度の低い配置エリアから順に高い優先順位付けがなされる事になる。なお、仮想配線本数１本当たりの減点数に関しては前記１点以外の任意の数値を減点数として指定しても良い。
【００２９】
以上より、本発明の第１の実施形態によれば、予めネットリスト内に準備されたリペアセルを配線混雑度の低い配置エリアに対して優先的に配置することが可能となる。
【００３０】
この発明の第２の実施の形態を図６〜図８に基づいて説明する。図６は本発明の第２の実施形態におけるリペアセル配置エリア優先順位付け工程１０４の処理工程を示すフローチャートである。
【００３１】
前記第１の実施形態において仮想配線工程１０８後に、仮想配線結果から予測される仮想配線長に基づいてタイミング解析を実施してそのタイミング解析結果をもとに各パス（フリップフロップ間の信号伝達経路）のタイミングスラック（タイミング制約に対する信号伝達時間の余裕度）を算出するタイミング解析工程８００を持ち、次の配置エリア評価工程１０９において、タイミングスラックが任意の閾値以下となるようなパスに含まれる仮想配線の通過本数に応じて各配置エリアの点数付け処理を行うことを特徴としている。
【００３２】
次に図７、図８を用いて具体的な配置エリアの点数付けについて説明する。図７は第２の実施形態での配置状況及び、仮想配線状況を示す模式図である。この場合、前記タイミング解析工程８００後の、例えば配置エリアＡＲＥＡ（１，１）〜ＡＲＥＡ（９，６）における各論理セル６０１の配置状況及び、ネットリストに従って各論理セルの入力ピンＡと論理セルの出力ピンＹとを結ぶ仮想配線経路６００の配線状況を示す。ここではタイミングクリティカル回路の仮想配線経路９００がタイミングスラックが任意の閾値以下となるようなパスに含まれる仮想配線を意味している。
【００３３】
次に図８は第２の実施形態での各配置エリアの評価結果を示す図である。この場合、配置エリア評価工程１０９での図７に対する各配置エリアの評価結果を示しており、ここでは例えば配置エリア内をタイミングクリティカル回路の仮想配線が１本通過する毎に２点ずつ加点していく方法により各配置エリアを点数付けした結果である。これによってタイミングクリティカル回路の仮想配線の通過本数が多い配置エリア、すなわちタイミングクリティカル回路のパスに近傍な配置エリアに対して高い優先順位付けがなされる事になる。なお、タイミングクリティカル回路の仮想配線本数１本当たりの加点数に関しては前記２点以外の任意の数値を加点数として指定しても良い。
【００３４】
以上より、本発明の第２の実施形態によれば、予めネットリスト内に準備されたリペアセルをタイミングクリティカル回路のパスに近傍な配置エリアに対して優先的に配置することが可能となる。
【００３５】
この発明の第３の実施の形態を図９〜図１１に基づいて説明する。図９は本発明の第３の実施形態におけるリペアセル配置エリア優先順位付け工程１０４の処理工程を示すフローチャートである。
【００３６】
前記第１の実施形態の配置エリア評価工程１０９に対して任意の回路を指定する為の回路インスタンス情報１１００を入力し、この回路インスタンス情報１１００に関連するパスに含まれる仮想配線の通過本数に応じて各配置エリアの点数付け処理を行うことを特徴としている。
【００３７】
次に図１０、図１１を用いて具体的な配置エリアの点数付けについて説明する。図１０は第３の実施形態での配置状況及び、仮想配線状況を示す模式図である。この場合、前記配置エリア評価工程１０９での、例えば配置エリアＡＲＥＡ（１，１）〜ＡＲＥＡ（９，６）における各論理セル６０１の配置状況及び、ネットリストに従って各論理セルの入力ピンＡと論理セルの出力ピンＹとを結ぶ仮想配線経路６００の配線状況を示す。ここでは指定回路の仮想配線経路１２００が前記回路インスタンス情報１１００に関連するパスに含まれる仮想配線を示している。
【００３８】
次に図１１は第３の実施形態での各配置エリアの評価結果を示す図である。この場合、配置エリア評価工程１０９での図１０に対する各配置エリアの評価結果を示しており、ここでは例えば配置エリア内を指定回路の仮想配線が１本通過する毎に１点ずつ加点していく方法により各配置エリアを点数付けした結果である。これによって指定回路の仮想配線の通過本数が多い配置エリア、すなわち入力された回路インスタンス情報１１００に基づく所望の回路のパスに近傍な配置エリアに対して高い優先順位付けがなされる事になる。なお、指定回路の仮想配線本数１本当たりの加点数に関しては前記１点以外の任意の数値を加点数として指定しても良い。
【００３９】
以上より、本発明の第３の実施形態によれば、予めネットリスト内に準備されたリペアセルを、任意の回路インスタンス情報によって指定された各回路のパスに近傍な配置エリアに対して優先的に配置することが可能となる。またこれにより、例えばネットリスト内の各回路毎の機能検証進行度合いに基づいて、その後の各回路に対するバグ（設計ミスによる動作不具合）の発生確率を予測し、このバグ発生確率の高い回路に対して予め優先的にリペアセルを近傍配置させておき、リペアセルを用いた回路変更の実現可能性を大幅に向上させることが可能となる。
【００４０】
この発明の第４の実施の形態を図１２〜図１４に基づいて説明する。図１２は本発明の第４の実施形態におけるリペアセル配置エリア優先順位付け工程１０４の処理工程を示すフローチャートである。
【００４１】
前記第１の実施形態において仮想配線工程１０８の代わりに、任意のｘ個（ｘは正の
整数）の配置エリアで構成される各配置エリアグループ毎の論理セルの敷き詰め率（配置エリアグループの面積に対する配置エリアグループ内部に存在する総論理セル面積の割合）を算出するセル敷き詰め率解析工程１４００を設け、次の配置エリア評価工程１０９において、各配置エリアグループのセル敷き詰め率に応じた各配置エリアの点数付け処理を行うことを特徴としている。
【００４２】
次に図１３、図１４を用いて具体的な配置エリアの点数付けについて説明する。図１３は第４の実施形態での配置状況を示す模式図である。この場合、前記セル敷き詰め率解析工程１４００での、例えば配置エリアＡＲＥＡ（１，１）〜ＡＲＥＡ（９，６）における各論理セル６０１の配置状況を示す。ここでは９個（３×３個）の配置エリアを１個の配置エリアグループとする敷き詰め率算出用配置エリアグループＡ＿ＧＲＯＵＰ（１，１）〜Ａ＿ＧＲＯＵＰ（３，２）を定義している。
【００４３】
次に図１４は第４の実施形態での各配置エリアの評価結果を示す図である。この場合、配置エリア評価工程１０９での図１３に対する各配置エリアの評価結果を示しており、ここでは例えば１個の配置エリアグループに対して１個の論理セル６０１が存在した場合のセル敷き詰め率に比例して１点ずつ加点していく方法により各配置エリアを点数付けした結果である。これによってセル敷き詰め率の高い配置エリア、すなわち論理セルが密集していることで必然的にバグ発生確率が高くなる配置エリアに対しては高い優先順位付けがなされる事になる。なお、任意のセル敷き詰め率当たりの加点数は前記１点以外の任意の数値を加点数として指定しても良い。
【００４４】
以上より、本発明の第４の実施形態によれば、予めネットリスト内に準備されたリペアセルを、論理セルが密集していることで必然的にバグ発生確率が高くなる配置エリアに対して優先的に配置することが可能となる。
【００４５】
この発明の第５の実施の形態を図１５〜図１７に基づいて説明する。図１５は本発明の第５の実施形態におけるリペアセル配置エリア優先順位付け工程１０４の処理工程を示すフローチャートである。
【００４６】
前記第４の実施形態においてセル敷き詰め率解析工程１４００の代わりに、任意のｙ個（ｙは正の整数）の配置エリアで構成される各配置エリアグループ毎の消費電力値を入力された論理セル消費電力情報１７０１に基づいて算出する消費電力解析工程１７００を設け、次の配置エリア評価工程１０９において、各配置エリアグループの消費電力値に応じた各配置エリアの点数付け処理を行うことを特徴としている。
【００４７】
次に図１６、図１７を用いて具体的な配置エリアの点数付けについて説明する。図１６は第５の実施形態での配置状況を示す模式図である。この場合、前記消費電力解析工程１７００での、例えば配置エリアＡＲＥＡ（１，１）〜ＡＲＥＡ（９，６）における各論理セル６０１の配置状況を示す模式図であり、ここでは、横軸方向に連続して並ぶ９個の配置エリアを１個の配置エリアグループとする消費電力算出用配置エリアグループＰ＿ＡＲＥＡ（１）〜Ｐ＿ＡＲＥＡ（６）を定義している。
【００４８】
次に図１７は第５の実施形態での各配置エリアの評価結果を示す図である。この場合、配置エリア評価工程１０９での図１６に対する各配置エリアの評価結果を示しており、ここでは例えば１個の配置エリアグループに対して１個の論理セル６０１が消費する場合の消費電力値に比例して１点ずつ減点していく方法により各配置エリアを点数付けした結果である。これによって消費電力値の低い配置エリアに対して高い優先順位付けがなされる事になる。
【００４９】
以上より、本発明の第５の実施形態によれば、予めネットリスト内に準備されたリペアセルを、総消費電力値の低い、すなわち電力供給不足による電圧降下の危険性の低い配置エリアに対して優先的に配置する事が可能となる。
【００５０】
この発明の第６の実施の形態を図１８および図１９に基づいて説明する。図１８は本発明の第６の実施形態における半導体集積回路装置のレイアウト設計方法の処理工程を示すフローチャートである。
【００５１】
前記第１〜第５の実施形態に示した内のいずれか２つ以上の評価方法によって複数回の配置エリアの評価を行うリペアセル配置エリア優先順位付け工程１０４後に、新たに項目重み付け工程２０００を設けて各評価方法に対して任意の重み付けを行うことで総合的な各配置エリアの評価結果を算出することを特徴としている。
【００５２】
図１８は第６の実施形態での各配置エリアの総合的な評価結果を示す図である。すなわち、前記第１〜第５の実施形態で示したすべての評価方法を用いて得られた各配置エリアの評価結果に対して重み付け処理を行った後の各配置エリアの総合的な評価結果を示す。ここでは例えば各評価方法が同じ重みとなるような重み付け処理を行った結果である。
【００５３】
以上より、本発明の第６の実施形態によれば、それぞれに任意の重み付け処理が施された複数個の評価方法を用いて得られる配置エリアに対して、予めネットリスト内に準備されたリペアセルを優先的に配置する事が可能となる。
【００５４】
この発明の第７の実施の形態を図２０に基づいて説明する。図２０は本発明の第７の実施形態における半導体集積回路装置のレイアウト設計方法の処理工程を示すフローチャートである。
【００５５】
前記第１〜６の実施形態においてリペアセル配置エリア優先順位付け工程１０４後に、新たにリペアセル自動生成工程２２００を設けて、任意の閾値以上の点数を持つ配置エリアに対して予めネットリスト内に準備されたリペアセルの個数が不足する場合においては、この不足分を補う為に予め準備されたリペアセルを必要分だけ複製することを特徴としている。
【００５６】
以上より、本発明の第７の実施形態によれば、各配置エリアの評価結果に基づいた最適な配置エリアに対してリペアセルを不足させること無く供給する事が可能となる。
【００５７】
この発明の第８の実施の形態を図２１に基づいて説明する。図２１は本発明の第８の実施形態におけるリペアセル自動生成工程２２００の処理工程を示すフローチャートである。
【００５８】
前記第７の実施形態において予めネットリスト内に準備されたリペアセルの個数が不足する場合、論理セル使用頻度解析工程２３００において現状使用されている各論理セル毎の使用頻度を各論理セルの使用個数より算出し、次の追加挿入数算出工程２３０１にて任意の閾値以上の点数を持つ配置エリアに対して予めネットリスト内に準備されたリペアセルが不足する個数を算出し、次のリペアセル生成工程２３０２にて前記の使用頻度の高い順に上位Ｎ種類(Ｎは正の整数)だけの論理セルを用いて必要個数分だけリペアセルとして生成することを特徴としている。また、予めネットリスト内にリペアセルを準備せずに、必要なリペアセルを全て、各論理セルの使用頻度に基づいて生成させても良い。
【００５９】
以上より、本発明の第８の実施形態によれば、実際にネットリスト内で使用されている論理セルの使用頻度に応じた構成、すなわち実際の回路変更時に必要となる可能性の高い論理セルを優先的にリペアセルとして有効な箇所に不足させる事無く設ける事が可能となる。
【産業上の利用可能性】
【００６０】
本発明に係る半導体集積回路装置のレイアウト設計方法は、上記の評価項目によって算出されたリペアセル配置に有効な各配置エリアに対して、優先的にリペアセルを設けておくことが可能とあり、これによりレイアウト設計完了後のリペアセルを用いた回路変更の実現可能性を大幅に向上させる方法として有用である。
【図面の簡単な説明】
【００６１】
【図１】本発明の実施形態１でのレイアウト設計方法を示すフローチャートである。
【図２】本発明の実施形態１でのリペアセル配置エリア優先順位付け工程のフローチャートである。
【図３】本発明の実施形態１でのレイアウト領域の分割方法を示す模式図である。
【図４】本発明の実施形態１での配置状況及び、仮想配線状況を示す模式図である。
【図５】本発明の実施形態１での各配置エリアの評価結果を示す図である。
【図６】本発明の実施形態２でのリペアセル配置エリア優先順位付け工程のフローチャートである。
【図７】本発明の実施形態２での配置状況及び、仮想配線状況を示す模式図である。
【図８】本発明の実施形態２での各配置エリアの評価結果を示す図である。
【図９】本発明の実施形態３でのリペアセル配置エリア優先順位付け工程のフローチャートである。
【図１０】本発明の実施形態３での配置状況及び、仮想配線状況を示す模式図である。
【図１１】本発明の実施形態３での各配置エリアの評価結果を示す図である。
【図１２】本発明の実施形態４でのリペアセル配置エリア優先順位付け工程のフローチャートである。
【図１３】本発明の実施形態４での配置状況を示す模式図である。
【図１４】本発明の実施形態４での各配置エリアの評価結果を示す図である。
【図１５】本発明の実施形態５でのリペアセル配置エリア優先順位付け工程のフローチャートである。
【図１６】本発明の実施形態５での配置状況を示す模式図である。
【図１７】本発明の実施形態５での各配置エリアの評価結果を示す図である。
【図１８】本発明の実施形態６でのレイアウト設計方法を示すフローチャートである。
【図１９】本発明の実施形態６での各配置エリアの総合的な評価結果を示す図である。
【図２０】本発明の実施形態７でのレイアウト設計方法を示すフローチャートである。
【図２１】本発明の実施形態８でのリペアセル自動生成工程を示すフローチャートである。
【図２２】従来のレイアウト設計方法を示すフローチャートである。
【図２３】従来のリペアセル配置状態を示す図である。
【符号の説明】
【００６２】
１００  ネットリスト読込み工程
１０１  フロアプラン工程
１０２  配置工程
１０３  配線工程
１０４  リペアセル配置エリア優先順位付け工程
１０５  リペアセル移動工程
１０６  リペアセル配置調整工程
１０７  配置エリア定義工程
１０８  仮想配線工程
１０９  配置エリア評価工程
２００  レイアウト領域
２０１  リペアセル
６００  仮想配線経路
６０１  論理セル
６０２  仮想配線分岐点
８００  タイミング解析工程
９００  タイミングクリティカル回路の仮想配線経路
１１００  回路インスタンス情報
１２００  指定回路の仮想配線経路
１４００  セル敷き詰め率解析工程
１７００  消費電力解析工程
１７０１  論理セル消費電力情報
２０００  項目重み付け工程
２２００  リペアセル自動生成工程
２３００  論理セル使用頻度解析工程
２３０１  追加挿入数算出工程
２３０２  リペアセル生成工程
Ａ  論理セルの入力ピン
Ｙ  論理セルの出力ピン
ＡＲＥＡ（１，１）〜ＡＲＥＡ（ｎ，ｍ）  配置エリア
ＡＲＥＡ（１，１）〜ＡＲＥＡ（９，６）  配置エリア
Ａ＿ＧＲＯＵＰ（１，１）〜Ａ＿ＧＲＯＵＰ（３，２）  敷き詰め率算出用配置エリアグループ
Ｐ＿ＡＲＥＡ（１）〜Ｐ＿ＡＲＥＡ（６）  消費電力算出用配置エリアグループ
【図１】
2005202471.tif 000003
【図２】
2005202471.tif 000004
【図３】
2005202471.tif 000005
【図４】
2005202471.tif 000006
【図５】
2005202471.tif 000007
【図６】
2005202471.tif 000008
【図７】
2005202471.tif 000009
【図８】
2005202471.tif 000010
【図９】
2005202471.tif 000011
【図１０】
2005202471.tif 000012
【図１１】
2005202471.tif 000013
【図１２】
2005202471.tif 000014
【図１３】
2005202471.tif 000015
【図１４】
2005202471.tif 000016
【図１５】
2005202471.tif 000017
【図１６】
2005202471.tif 000018
【図１７】
2005202471.tif 000019
【図１８】
2005202471.tif 000020
【図１９】
2005202471.tif 000021
【図２０】
2005202471.tif 000022
【図２１】
2005202471.tif 000023
【図２２】
2005202471.tif 000024
【図２３】
2005202471.tif 000025