説明

集積回路設計方法

【課題】設計開発期間が短い集積回路設計方法を提供すること。
【解決手段】集積回路設計方法は、動作記述及び機能記述のコードから論理セルをマッピングする論理設計ステップと、論理セルを配置するセル配置ステップと、論理セルの配置情報及び論理セルに接続される入出力ピンの本数に基づいて、配線が混雑する箇所を推定する配線混雑推定ステップと、配線の経路を決定する配線ステップと、を有し、配線混雑推定ステップを配線ステップの前に行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、集積回路の設計開発期間が短い集積回路設計方法に関する。
【背景技術】
【0002】
特開平9−045776号公報が開示するLSIの設計方法では、図11に示すように、ネットリスト1及びライブラリ2に基づいて仮のセル配置処理4を行い、各セルを半導体チップに対応する領域に配置する。次に、概略配線処理を行った後、配線の混雑度を予測する配線混雑度予測処理5を行う。次に、配線の混雑度を緩和する配線混雑度緩和処理6を行う。配線混雑度緩和処理6では、例えば、セル列の位置を移動することにより配線チャネルの幅を再設定したり、混雑度の高い箇所に配線リソースセル(ダミーセル)を挿入する。配線混雑度緩和処理6が終了後、図11に示す配線処理7に進み、概略配線処理を再度行って、配線混雑度が許容値以下であれば詳細配線処理を行う。
【0003】
【特許文献1】特開平9−045776号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
上記説明した設計方法では、セルの配置処理及び概略の配線処理を行った後、配線混雑度を予測している。この場合、混雑緩和のためのイタレーションの度に概略配線処理を行う必要がある。しかし、大規模な論理回路の設計では、概略の配線処理を行うだけでも膨大な工数を必要とするため、設計開発期間が長期化してしまう可能性がある。また、概略の配線処理を行った後に予測された配線の混雑度から混雑の根本的な原因を特定することは困難である。このため、混雑の原因を特定するための解析を行い、解析結果に応じた混雑緩和のためのイタレーションを行う必要がある。その結果、設計開発期間が長期化してしまう可能性がある。
【0005】
本発明の目的は、設計開発期間が短い集積回路設計方法を提供することである。
【課題を解決するための手段】
【0006】
本発明は、動作記述及び機能記述のコードから論理セルをマッピングする論理設計ステップと、論理セルを配置するセル配置ステップと、前記論理セルの配置情報及び前記論理セルに接続される入出力ピンの本数に基づいて、配線が混雑する箇所を推定する配線混雑推定ステップと、配線の経路を決定する配線ステップと、を有し、前記配線混雑推定ステップを前記配線ステップの前に行う集積回路設計方法を提供する。
【0007】
上記集積回路設計方法では、前記配線混雑推定ステップは、セル配置領域を格子状に区分けするステップと、格子状の1つの領域に存在する論理セルに接続される入出力ピンの本数を格子状の領域毎にカウントするステップと、格子状の領域毎に、カウントした数をしきい値と比較して、前記カウントした数が前記しきい値以上であった格子状の領域に対しては配線混雑対策処理を行うと判断するステップと、を含む。
【0008】
上記集積回路設計方法では、格子状の領域毎の前記カウントした値をグラデーション又は色分けして表示する。
【0009】
上記集積回路設計方法では、前記配線混雑推定ステップは、セル配置領域を格子状に区分けするステップと、格子状の1つの領域に存在し特定の条件を満たす論理セルの数をカウントするステップと、格子状の領域毎に、カウントした論理セルの数をしきい値と比較して、前記カウントした数が前記しきい値以上である格子状の領域に対しては配線混雑対策処理を行うと判断するステップと、を含む。
【0010】
上記集積回路設計方法では、前記特定の条件は、格子状の1つの領域に存在する論理セルの面積に対する当該論理セルに接続される入出力ピンの本数を論理セル毎にカウントして、カウントした値がしきい値以上である。
【0011】
上記集積回路設計方法では、格子状の領域毎の前記カウントした数をグラデーション又は色分けして表示する。
【0012】
上記集積回路設計方法では、前記配線混雑対策処理では、配線が混雑する要因の論理セルを特定し、当該特定した論理セルの使用を制限し、前記配線混雑対策処理を行った後、前記論理設計ステップを行う。
【0013】
上記集積回路設計方法では、前記配線混雑対策処理では、配線が混雑する要因の論理セルを特定し、当該特定した論理セル内の仕様を制限し、前記配線混雑対策処理を行った後、前記配線ステップを行う。
【0014】
上記集積回路設計方法では、前記特定した論理セル内の仕様の制限では、電源配線幅を制限し、配線層及び配線ビアの使用を制限する。
【0015】
上記集積回路設計方法では、前記配線混雑推定ステップを行った後、前記配線混雑推定ステップで推定された配線が混雑する箇所への配線の制限情報を生成し、クロック信号を論理セルに入力するための配線を優先的に決定する。
【0016】
上記集積回路設計方法では、前記配線混雑推定ステップを行った後、前記配線混雑推定ステップで推定された配線が混雑する箇所に存在する論理セルを別の論理セルに変換する。
【0017】
上記集積回路設計方法では、前記配線混雑推定ステップで推定された配線混雑箇所に関する情報と、前記配線ステップで決定された配線に関する情報とに基づいて、配線の混雑の要因を特定する。
【0018】
上記集積回路設計方法では、前記論理設計ステップを行った後、前記論理設計ステップでマッピングされた論理セルの構成を確認し、前記配線混雑推定ステップで得られたパラメータを評価して、混雑が発生しそうな構成のモジュールに対しては論理セルの敷き詰め率を制約する。
【発明の効果】
【0019】
本発明に係る集積回路設計方法によれば、集積回路の設計開発期間を短くすることができる。
【発明を実施するための最良の形態】
【0020】
以下、本発明の実施形態について、図面を参照して説明する。以下説明する実施形態の集積回路設計方法は、記録媒体に格納されたプログラムをコンピュータが実行することによって行われる。なお、コンピュータには表示装置が接続され、集積回路設計方法を実行して得られた途中経過情報等がこの表示装置に表示されても良い。
【0021】
(第1の実施形態)
図1は、第1の実施形態の集積回路設計方法を示すフローチャートである。第1の実施形態の集積回路設計方法では、図1に示すように、コンピュータ等が、論理設計S100を行い、セル配置S101を行い、配線混雑推定処理S102を行い、概略配線S103を行い、詳細配線S104を行い、マスク設計S105を行う。
【0022】
論理設計S100では、動作記述及び機能記述のコードから論理セルをマッピングする。セル配置S101では、タイミング又は配線性(Routability)に重点をおきながら論理セルを配置する。セル配置S101が行われた後に行われる配線混雑推定処理S102では、配線が混雑する箇所を推定する。配線混雑推定処理S102についての詳細は後述する。概略配線S103では、配線のおおまかな経路を決定する。詳細配線S104では、配線の詳細な経路を決定する。マスク設計S105では、セル配置S101で配置された論理セル及びステップS104で決定された配線経路に基づいて、マスクデータを作成する。
【0023】
以下、配線混雑推定処理S102について、図2を参照して詳細に説明する。図2は、第1の実施形態で行われる配線混雑推定処理S102を示すフローチャートである。図2に示すように、配線混雑推定処理S102は、ステップS151〜S153の3つのステップを有する。ステップS151では、セル配置領域を格子状に区分けする。ステップS152では、格子状の1つの領域に存在するセルに接続される入出力ピンの本数を、パラメータAとして格子状の領域毎にカウントする。
【0024】
図3は、ステップS152でパラメータAをカウントする工程の一例を示す図である。図3に示すように、セル配置領域300が複数の格子状の領域に分割された後、格子状の領域毎に、領域内に存在するセルに接続される入出力ピンの本数をカウントする。図3に示す領域301では18本とカウントされるため、領域301のパラメータAは18である。なお、図3に示すような表示形態で、ステップS152でカウントされたパラメータAを表示装置が表示しても良い。この場合、パラメータAの数値に応じてグラデーションや色を変えて表示しても良い。
【0025】
ステップS153では、パラメータAとしきい値とを比較して、パラメータAがしきい値以上である格子状の領域に対しては配線混雑対策処理に進み、パラメータAがしきい値未満である格子状の領域に対しては概略配線S103に進む。なお、ステップS153では、パラメータAをしきい値と比較せずに、パラメータAの分布に基づいて、セル配置領域内の上位何割かの格子状の領域に対して配線混雑対策処理を行っても良い。
【0026】
配線混雑対策処理の一例として、図4に示すように、配線混雑対策処理S301では、配線が混雑する要因のセルを特定し、この特定したセル(混雑要因セル)の使用を制限する。配線混雑対策処理S301が行われた後、混雑要因セルの使用が制限されたネットリストが作成され、再度、セル配置S101が行われる。配線混雑対策処理S301によって配線混雑が緩和された状態で概略配線S104が行われるため、概略配線S104及び詳細配線S105での配線混雑回避処理の工数を削減することができる。
【0027】
また、配線混雑対策処理の他の例として、図5に示すように、配線混雑対策処理S302では、配線が混雑する要因のセルを特定し、混雑要因セル内の電源配線の幅を制限し、配線層及び配線ビアの使用を制限する。この制限によって、混雑が予想されるセルの電源配線による配線リソースが削減されるため、通常の信号配線のリソースが確保される。配線混雑対策処理S302が行われた後、概略配線S104が行われる。配線混雑対策処理S302によって通常の信号配線のリソースが確保されているため、配線混雑が発生することなく配線の経路を決定することができる。
【0028】
本実施形態の集積回路設計方法によれば、配線混雑推定処理は概略配線処理が行われる前に行われ、配線の混雑度はセル配置情報とセルのピンへの接続情報に基づいて推定されるため、短時間で配線の混雑度を推定することができる。その結果、設計開発期間を短くすることができる。
【0029】
(第2の実施形態)
第2の実施形態の集積回路設計方法では、第1の実施形態の集積回路設計方法が行う配線混雑推定処理S102の代わりに配線混雑推定処理S202をコンピュータが行う。この点以外は第1の実施形態と同様であり、図6において、図1と共通する構成要素には同じ参照符号が付されている。図6は、第2の実施形態で行われる配線混雑推定処理S202を示すフローチャートである。
【0030】
以下、配線混雑推定処理S202について、図6を参照して詳細に説明する。図6に示すように、配線混雑推定処理S202は、ステップS151並びにステップS252及びS253の3つのステップを有する。ステップS151では、第1の実施形態で説明したように、セル配置領域を格子状に区分けする。ステップS252では、格子状の1つの領域に存在するセルの面積に対する、当該セルに接続する入出力ピンの本数(入出力ピン本数/セル面積)をパラメータBとしてセル毎にカウントし、パラメータBがしきい値以上のセル数をパラメータCとしてカウントする。
【0031】
ステップS253では、パラメータCとしきい値とを比較して、パラメータCがしきい値以上である格子状の領域に対しては第1の実施形態で説明した配線混雑対策処理に進み、パラメータCがしきい値未満である格子状の領域に対しては概略配線S103に進む。なお、ステップS253では、パラメータCをしきい値と比較せずに、パラメータCの分布に基づいて、セル配置領域内の上位何割かの格子状の領域に対して配線混雑対策処理を行っても良い。
【0032】
本実施形態の集積回路設計方法によれば、第1の実施形態と同様に、配線混雑推定処理は概略配線処理が行われる前に行われ、配線の混雑度はセル配置情報とセルのピンへの接続情報に基づいて推定されるため、短時間で配線の混雑度を推定することができる。その結果、設計開発期間を短くすることができる。なお、ステップS252でカウントされたパラメータCを表示装置が表示しても良い。この場合、パラメータCの数値に応じてグラデーションや色を変えて表示しても良い。
【0033】
(第3の実施形態)
第3の実施形態の集積回路設計方法では、第1の実施形態の集積回路設計方法が有するステップS102とステップS103の間に、コンピュータがステップS401及びS402を行う。この点以外は第1の実施形態と同様であり、図7において、図1と共通する構成要素には同じ参照符号が付されている。図7は、第3の実施形態の集積回路設計方法を示すフローチャートである。
【0034】
ステップS401では、ステップS102で推定された配線混雑箇所への配線を禁止する制限情報を生成する。次に、ステップS402では、クロック信号をセルに入力するための配線を優先的に決定する。ステップS402の後、ステップS103に進む。
【0035】
本実施形態の集積回路設計方法によれば、配線倍幅や配線倍ピッチ等の特別な配線制限を行ったり、配線の混雑が予想される箇所を迂回してクロック配線を優先的に決定することにより、配線の混雑を予防できる。また、迂回して配線されたクロック配線の周辺には通常の配線があまりないことが予想されるため、クロック配線によるクロストークを予防することができる。
【0036】
(第4の実施形態)
第4の実施形態の集積回路設計方法では、第1の実施形態の集積回路設計方法が有するステップS102とステップS103の間に、コンピュータがステップS501を行う。この点以外は第1の実施形態と同様であり、図8において、図1と共通する構成要素には同じ参照符号が付されている。図8は、第4の実施形態の集積回路設計方法を示すフローチャートである。
【0037】
ステップS501では、ステップS102で推定された配線混雑箇所に存在するセルを、図示しないセル対応表を用いて、別のセルに変換する。セル対応表は、セルのドライブ強度を変更するためのデータベースや、第2の実施形態で説明したパラメータBから特定したセルに対応したデータベース等の複数種類のデータベースを含み、選択的に用いられる。
【0038】
本実施形態の集積回路設計方法によれば、配線処理の前に、配線混雑箇所にあるセルを変更するため、配線だけでなくセル配置も最適な状態で集積回路を設計することができる。
【0039】
(第5の実施形態)
第5の実施形態の集積回路設計方法では、配線混雑推定処理S102で得られた混雑パラメータと、概略配線S103で得られた概略配線後の混雑パラメータとに基づいて、双方の混雑パラメータを合成することによって、配線の混雑の要因を特定するステップS601を行う。この点以外は第1の実施形態と同様であり、図9において、図1と共通する構成要素には同じ参照符号が付されている。図9は、第5の実施形態の集積回路設計方法を示すフローチャートである。
【0040】
ステップS601を行うことによって、混雑箇所が一致しなかった場合、混雑の要因が区分けした格子状の領域外の上空配線が多いためであると推定できる。この結果、上空配線を緩和するようにセル配置処理にフィードバックがかかり、混雑対策を行うことができる。
【0041】
(第6の実施形態)
第6の実施形態の集積回路設計方法では、第1の実施形態の集積回路設計方法が有するステップS100とステップS101の間に、コンピュータがステップS701を行う。また、配線混雑推定処理S102は行わない。この点以外は第1の実施形態と同様であり、図10において、図1と共通する構成要素には同じ参照符号が付されている。図10は、第6の実施形態の集積回路設計方法を示すフローチャートである。
【0042】
ステップS701では、論理設計S100で生成されたネットリストに基づいてセル構成を確認し、第2の実施形態で説明したパラメータBを評価することにより、混雑が発生しそうな構成のモジュールに対してはセルの敷き詰め率を制約する。当該制約では、混雑が発生しそうな構成のモジュールには敷き詰め率を低くし、混雑が発生しそうにない構成のモジュールには敷き詰め率を高くする。このステップS701を行った後にセル配置S101を行うことにより、配線混雑が発生する確率の低いセルの配置を実現することができる。そのため、本実施形態では、第1の実施形態で行っていた配線混雑推定処理S102を行う必要がない。
【産業上の利用可能性】
【0043】
本発明に係る集積回路設計方法は、集積回路の設計方法等として有用である。
【図面の簡単な説明】
【0044】
【図1】第1の実施形態の集積回路設計方法を示すフローチャート
【図2】第1の実施形態で行われる配線混雑推定処理S102を示すフローチャート
【図3】図2に示すステップS152でパラメータAをカウントする工程の一例を示す図
【図4】配線混雑対策処理S301を含む集積回路設計方法を示すフローチャート
【図5】配線混雑対策処理S302を含む集積回路設計方法を示すフローチャート
【図6】第2の実施形態で行われる配線混雑推定処理S202を示すフローチャート
【図7】第3の実施形態の集積回路設計方法を示すフローチャート
【図8】第4の実施形態の集積回路設計方法を示すフローチャート
【図9】第5の実施形態の集積回路設計方法を示すフローチャート
【図10】第6の実施形態の集積回路設計方法を示すフローチャート
【図11】特開平9−045776号公報が開示するLSIの設計方法を示すフローチャート
【符号の説明】
【0045】
S100 論理設計
S101 セル配置
S102 配線混雑推定処理
S103 概略配線
S104 詳細配線
S105 マスク設計

【特許請求の範囲】
【請求項1】
動作記述及び機能記述のコードから論理セルをマッピングする論理設計ステップと、
論理セルを配置するセル配置ステップと、
前記論理セルの配置情報及び前記論理セルに接続される入出力ピンの本数に基づいて、配線が混雑する箇所を推定する配線混雑推定ステップと、
配線の経路を決定する配線ステップと、を有し、
前記配線混雑推定ステップを前記配線ステップの前に行うことを特徴とする集積回路設計方法。
【請求項2】
請求項1に記載の集積回路設計方法であって、
前記配線混雑推定ステップは、
セル配置領域を格子状に区分けするステップと、
格子状の1つの領域に存在する論理セルに接続される入出力ピンの本数を格子状の領域毎にカウントするステップと、
格子状の領域毎に、カウントした数をしきい値と比較して、前記カウントした数が前記しきい値以上であった格子状の領域に対しては配線混雑対策処理を行うと判断するステップと、
を含むことを特徴とする集積回路設計方法。
【請求項3】
請求項1に記載の集積回路設計方法であって、
格子状の領域毎の前記カウントした値をグラデーション又は色分けして表示することを特徴とする集積回路設計方法。
【請求項4】
請求項1に記載の集積回路設計方法であって、
前記配線混雑推定ステップは、
セル配置領域を格子状に区分けするステップと、
格子状の1つの領域に存在し特定の条件を満たす論理セルの数をカウントするステップと、
格子状の領域毎に、カウントした論理セルの数をしきい値と比較して、前記カウントした数が前記しきい値以上である格子状の領域に対しては配線混雑対策処理を行うと判断するステップと、
を含むことを特徴とする集積回路設計方法。
【請求項5】
請求項4に記載の集積回路設計方法であって、
前記特定の条件は、格子状の1つの領域に存在する論理セルの面積に対する当該論理セルに接続される入出力ピンの本数を論理セル毎にカウントして、カウントした値がしきい値以上であることを特徴とする集積回路設計方法。
【請求項6】
請求項4に記載の集積回路設計方法であって、
格子状の領域毎の前記カウントした数をグラデーション又は色分けして表示することを特徴とする集積回路設計方法。
【請求項7】
請求項2又は4に記載の集積回路設計方法であって、
前記配線混雑対策処理では、配線が混雑する要因の論理セルを特定し、当該特定した論理セルの使用を制限し、
前記配線混雑対策処理を行った後、前記論理設計ステップを行うことを特徴とする集積回路設計方法。
【請求項8】
請求項2又は4に記載の集積回路設計方法であって、
前記配線混雑対策処理では、配線が混雑する要因の論理セルを特定し、当該特定した論理セル内の仕様を制限し、
前記配線混雑対策処理を行った後、前記配線ステップを行うことを特徴とする集積回路設計方法。
【請求項9】
請求項8に記載の集積回路設計方法であって、
前記特定した論理セル内の仕様の制限では、電源配線幅を制限し、配線層及び配線ビアの使用を制限することを特徴とする集積回路設計方法。
【請求項10】
請求項1に記載の集積回路設計方法であって、
前記配線混雑推定ステップを行った後、
前記配線混雑推定ステップで推定された配線が混雑する箇所への配線の制限情報を生成し、
クロック信号を論理セルに入力するための配線を優先的に決定することを特徴とする集積回路設計方法。
【請求項11】
請求項1に記載の集積回路設計方法であって、
前記配線混雑推定ステップを行った後、
前記配線混雑推定ステップで推定された配線が混雑する箇所に存在する論理セルを別の論理セルに変換することを特徴とする集積回路設計方法。
【請求項12】
請求項1に記載の集積回路設計方法であって、
前記配線混雑推定ステップで推定された配線混雑箇所に関する情報と、前記配線ステップで決定された配線に関する情報とに基づいて、配線の混雑の要因を特定することを特徴とする集積回路設計方法。
【請求項13】
請求項2又は4に記載の集積回路設計方法であって、
前記論理設計ステップを行った後、
前記論理設計ステップでマッピングされた論理セルの構成を確認し、前記配線混雑推定ステップで得られたパラメータを評価して、混雑が発生しそうな構成のモジュールに対しては論理セルの敷き詰め率を制約することを特徴とする集積回路設計方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2008−71109(P2008−71109A)
【公開日】平成20年3月27日(2008.3.27)
【国際特許分類】
【出願番号】特願2006−249116(P2006−249116)
【出願日】平成18年9月14日(2006.9.14)
【出願人】(000005821)松下電器産業株式会社 (73,050)
【Fターム(参考)】