JP2014112331A - 設計支援装置、設計支援方法及び設計支援プログラム - Google Patents

設計支援装置、設計支援方法及び設計支援プログラム Download PDF

Info

Publication number
JP2014112331A
JP2014112331A JP2012266776A JP2012266776A JP2014112331A JP 2014112331 A JP2014112331 A JP 2014112331A JP 2012266776 A JP2012266776 A JP 2012266776A JP 2012266776 A JP2012266776 A JP 2012266776A JP 2014112331 A JP2014112331 A JP 2014112331A
Authority
JP
Japan
Prior art keywords
power supply
wiring
supply wiring
sections
crosstalk noise
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012266776A
Other languages
English (en)
Inventor
Yoichiro Ishikawa
陽一郎 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012266776A priority Critical patent/JP2014112331A/ja
Priority to US14/037,483 priority patent/US8843866B2/en
Priority to EP13187344.0A priority patent/EP2741221A2/en
Publication of JP2014112331A publication Critical patent/JP2014112331A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/10Noise analysis or noise optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】レイアウト設計の負担を軽減すること。
【解決手段】設計支援装置10は、複数の区間のそれぞれについて、電源配線が並走していない場合のクロストークノイズ値を算出する。また、設計支援装置10は、複数の区間のそれぞれについて、区間における2本の信号線と電源配線との相対的な位置関係に基づいて、2本の信号線間の領域に含まれる電源配線の領域が小さくなるほど、大きくなるような係数Fshieldを算出する。また、設計支援装置10は、複数の区間のそれぞれについて、区間に対応する係数Fshieldを用いて、区間に対応するクロストークノイズ値を補正する。また、設計支援装置10は、複数の区間のそれぞれに対応する補正されたクロストークノイズ値の合計を2本の信号配線間のクロストークノイズ値として算出する。
【選択図】図4

Description

本発明は、設計支援装置、設計支援方法及び設計支援プログラムに関する。
近年、LSI(Large Scale Integration)等の半導体集積回路の微細化及び高密度化が進んでいる。半導体集積回路のレイアウト設計方法としては、例えば、階層設計が一般的である。階層設計では、例えば、機能毎に複数のブロックに割り振られた回路が階層化され、それぞれの階層毎に複数の設計者によりレイアウト設計が行われる。そして、その後、レイアウト設計のデータを集めて全体のレイアウト設計が行われる。
また、上述したように、半導体集積回路では、微細化及び高密度化が進んでおり、信号配線間の距離が短くなっている。そのため、信号配線間のクロストークノイズが半導体集積回路に与える影響が強くなっており、クロストークノイズの影響を抑制する各種の技術がある。例えば、半導体集積回路において、信号配線の周囲(8方位)に電源配線を挿入したり、2本の信号配線間に並走する電源配線を挿入することでクロストークノイズをシールドしたりする技術がある。
国際公開第2007/077623号 特開2004−186257号公報
しかしながら、上記の技術では、クロストークノイズをシールドするために電源配線を挿入させることは、レイアウトの自由度を下げることもあり、また、挿入が困難な場所も存在する。また、格子状(メッシュ状)に配設されるグローバル電源配線などの挿入させることが困難な電源配線もある。さらに、膨大な数の配線すべてに対してシールドすることを目的として、電源配線を並走させることは実現が困難である。
すなわち、上記の電源配線を挿入させる技術を半導体集積回路に適用する場合には、すべての配線に対して電源配線を並走させることは実現が困難であり、実際には、電源配線が並走する部分と並走しない部分とが混在することとなる。
ここで、電源配線が並走する部分と並走しない部分とが混在する半導体集積回路におけるクロストークノイズチェックでは、電源配線が並走する部分が存在しても、電源配線によるクロストークノイズを抑制する効果を無視する。すなわち、電源配線によってクロストークノイズが抑制されていないものとして、クロストークノイズ値が算出され、クロストークノイズ値と所定の制限値とが比較され、エラー判定が行われる。このように、電源配線によるクロストークノイズの抑制を無視する理由の一例としては、たとえば、高速に処理を行うためという理由が挙げられる。上述したように、電源配線によるクロストークノイズの抑制が無視されているため、クロストークノイズチェックにおいて算出されるクロストークノイズ値は、実際の値よりも大きくなる。そのため、かかるクロストークノイズチェックでは、エラー判定が増えることとなる。この場合、半導体集積回路のレイアウト設計では、エラー判定のたびに、配線間の距離を広くするなどの作業が行われるため、レイアウト設計の負担が大きいという問題がある。
1つの側面では、レイアウト設計の負担を軽減することができる設計支援装置、設計支援方法及び設計支援プログラムを提供することを目的とする。
本願の開示する設計支援装置は、一つの態様において、回路における2本の信号配線間に電源配線が並走する場合に、並走する電源配線の位置に基づいて、2本の信号配線が延びる方向を複数の区間に分割する分割部を有する。設計支援装置は、複数の区間のそれぞれについて、区間における2本の信号線と電源配線との相対的な位置関係に基づいて、2本の信号線間の領域に含まれる電源配線の領域が小さくなるほど、大きくなるような係数を算出する第1の算出部を有する。設計支援装置は、複数の区間のそれぞれについて、電源配線が並走していない場合のクロストークノイズ値を算出する第2の算出部を有する。設計支援装置は、複数の区間のそれぞれについて、区間に対応する係数を用いて、区間に対応するクロストークノイズ値を補正する補正部を有する。
設計支援装置、設計支援方法及び設計支援プログラムの一つの態様によれば、レイアウト設計の負担を軽減することができる。
図1は、LSIモデルの一例を示す図である。 図2Aは、LSI設計の処理フローの一例を示す図である。 図2Bは、各サブチップでの設計について説明するための図である。 図3は、各サブチップでの設計の見直し方法の一例を説明するための図である。 図4は、実施例に係る設計支援装置の機能構成の一例を示す図である。 図5は、Aggressorネットの抽出方法の一例について説明するための図である。 図6Aは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図6Bは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図6Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図7は、「D/W」の値と、Fshieldとの関係の一例を示すグラフである。 図8Aは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図8Bは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図8Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図9Aは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図9Bは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図9Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図10は、実施例に係るクロストークノイズチェック処理の手順を示すフローチャートである。 図11は、実施例に係る配線間ノイズ値算出処理の手順を示すフローチャートである。 図12Aは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図12Bは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図12Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。 図13は、設計支援プログラムを実行するコンピュータを示す図である。
以下に、本願の開示する設計支援装置、設計支援方法及び設計支援プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
本実施例の設計支援装置は、複数の階層を有する半導体集積回路のレイアウト設計を行う装置である。以下、半導体集積回路として、LSIを例に挙げて説明する。
ここで、本実施例の設計支援装置によりレイアウト設計が行われるLSIのモデル(LSIモデル)の一例について説明する。図1は、LSIモデルの一例を示す図である。図1の例に示すLSIモデル2は、後述の階層分割によって、3つの階層を有することとなった場合を示す。図1の例のLSIモデル2は、最上位の階層である1番目の階層に属する複数のチップ(chip)を有する。また、LSIモデル2は、1番目の階層の1つ下位の階層である2番目の階層に属するサブチップ(subchip)を有する。また、LSIモデル2は、2番目の階層の1つ下位の階層である3番目の階層に属するサブチップ(subchip)を有する。例えば、図1に示すように、LSIモデル2は、1番目の階層に属するチップ2aを有する。また、チップ2aは、2番目の階層に属するサブチップ2bを有する。また、チップ2bは、3番目の階層に属するサブチップ2cを有する。なお、チップ及びサブチップは、LSIを構成するモジュールである。
次に、LSI設計の処理フローの一例を説明する。図2Aは、LSI設計の処理フローの一例を示す図である。
[ステップS1]まず、設計者は、所望の機能を実現するために予め決めたアーキテクチャ(構造)に基づき、Verilog HDL(Hardware Description Language)またはVHDL(VHSIC HDL)などの記述言語による記述によってLSIを設計する。これはRTL(Register Transfer Level)設計と呼ばれるものであり、LSI設計の処理フローの最初の工程になる。但し、動作モデル等を用いた動作設計が事前に行われる場合もあるが、説明の簡略化のため省略している。かかる動作設計では、クロック周期やレイテンシなどの制約を与えて動作合成が実行される。なお、図2Aでは省略されているが、RTL設計の段階では、RTLで記述されたLSIの論理検証も行い、回路の不具合が無くなるまでRTL記述を修正する。
[ステップS2]次に、RTL設計が終了した後に論理合成を行う。論理合成は、RTL記述から実際の回路素子により構成される回路情報であるネットリストを作成するための処理である。論理合成では、適切なタイミング制約等の合成制約の条件を設定し、生成したネットリストからなる回路が所望の動作周波数で動作するように合成を行う。論理合成が終了すると、生成したネットリストを用いてステップS3以降の処理でレイアウト設計を行う。
[ステップS3]設計者は、主要なLSIを構成する各モジュールのおおよその配置を決めるフロアプランを行う。フロアプランでは、レイアウトを行うモジュール単位で階層分割し、分割した各モジュールについて、レイアウトするエリア内のどの辺りに配置するかを決定する。ここで、階層分割した際の下位階層のモジュールを「サブチップ」と呼ぶ。この階層分割により、後述するステップS5においてサブチップ内のクロストークの見積もりを独立して行うことができる。その後、ステップS4に遷移する。
[ステップS4]フロアプラン、階層分割が終了すると、階層毎に分割した各サブチップでの設計に入っていく。
ここで、図2Bを参照して、ステップS4の各サブチップでの設計について説明する。図2Bは、各サブチップでの設計について説明するための図である。
[ステップS11]図2Bに示すように、各サブチップの設計では、まず設計者は、後述する設計支援装置10を操作して、LSIのセル配置・配線を行う。その後、ステップS12に遷移する。
[ステップS12]設計者は、実際の配線を行った結果に対してクロストークノイズチェックをサブチップ毎に行わせるために、クロストークノイズチェックを実行する指示を設計支援装置10に入力する。これに加えて、設計者は、サブチップのネットに関するデータを含む設計データを設計支援装置10に入力する。その後、ステップS13に遷移する。なお、クロストークノイズチェック以外のレイアウト検証やタイミング検証については、図2Bのフローでは省略している。
[ステップS13]設計支援装置10がクロストークノイズチェックを実行した結果、設計者は、設計支援装置10からエラーが存在する旨の通知を受ければ(S13肯定)、再度、ステップS11に遷移してセルの配置および配線を見直す。そして、設計支援装置10からエラーが存在しない旨の通知を受ければ(S13否定)、図2Aに示すステップS5に遷移する。このように、設計者は、サブチップ毎にクロストークノイズチェックのエラーが出なくなるまで見直しを行いながら、クロストークノイズの影響を抑制するようなサブチップの再設計を行う。例えば、設計者は、2本の信号配線間に電源配線などのシールド配線を配置したり、信号配線に信号を送信するドライバセルの信号出力の強度を調整したりする。
[ステップS5]設計者は、サブチップ毎の設計を完了し、サブチップ単位でのクロストークノイズのエラーの発生を抑制した上で、LSIの全体設計を行う。LSIの全体設計では、各サブチップを含む上位階層における配置・配線処理が行われる。
[ステップS6]全体設計が終了すると、設計者は、クロストークノイズチェックを行う。本ステップでのクロストークノイズチェックは、階層間でのクロストークノイズを含むチェックを行う。具体的には、設計者は、各サブチップにおける設計が終了した時点で、または、一部のサブチップについて設計が完了していない時点で、設計支援装置10にクロストークノイズチェックを実行する指示を入力する。これに加えて、設計者は、チップ全体(LSI全体)のネットに関するデータを含む設計データを設計支援装置10に入力する。また、設計支援装置10は、設計が完了していないサブチップをブラックボックスとして扱い、クロストークノイズチェックを行う。
[ステップS7]設計支援装置10がクロストークノイズチェックを行った結果、チップ全体でエラーが存在すれば(S7肯定)、ステップS4に遷移して再度各サブチップでの設計を見直す。図3は、各サブチップでの設計の見直し方法の一例を説明するための図である。図3は、サブチップ5を有するチップ6を示す。図3に示すように、例えば、設計者は、2本の信号配線3a、3b間に電源配線などのシールド配線3cを配置したり、信号配線3d、3eに信号を送信するドライバセル3f、3gの信号出力の強度を調整したりする。また、設計者は、サブチップ5の境界3h近辺には信号配線が存在するかもしれないため、サブチップ5が属する階層よりも1つ上の階層に属するチップ6において、サブチップ5の境界3hから所定距離離れるように、信号配線3iを配置する。また、設計者は、サブチップ5の境界3h近辺には信号配線が存在するかもしれないため、チップ6において、サブチップ5の境界3h近辺の領域に対応する領域3jを信号配線を禁止する配線禁止領域として設定する。そして、再度チップ全体でクロストークノイズチェックのエラーが存在しなければ(S7否定)、ステップS8に遷移する。
[ステップS8]設計者は、LSI全体でクロストークノイズチェックのエラーが存在しなくなった時点でLSIを製造するデータを作成して、実際の入図に入ってLSIの製造に進む。
なお、ステップS12のクロストークノイズチェックは省略することもできる。この場合、各サブチップ内のクロストークノイズチェックもステップS6で行う。
以下、クロストークノイズチェックを実行する設計支援装置10について説明する。なお、設計支援装置10は、設計者などの操作によってLSIのセル配置や配線なども行うことができる。
[設計支援装置の構成]
実施例に係る設計支援装置10について説明する。図4は、実施例に係る設計支援装置の機能構成の一例を示す図である。図4に示すように、設計支援装置10は、入力部11と、出力部12と、記憶部13と、制御部14とを有する。
入力部11は、制御部14に各種の情報を入力する。例えば、入力部11は、クロストークノイズチェックを実行する指示を設計者から受け付けて、制御部14に、かかる指示を入力する。また、入力部11は、サブチップのネットに関するデータ、または、チップ全体のネットに関するデータを含む設計データを設計者から受け付けて、受け付けた設計データを制御部14に入力する。入力部11のデバイスの一例としては、キーボードやマウスなどが挙げられる。
出力部12は、各種の情報を出力する。例えば、出力部12は、後述の出力制御部14hの制御によって、後述するチェック結果13bの内容を表示する。出力部12のデバイスの一例としては、モニターや液晶ディスプレイなどを含む表示装置が挙げられる。
記憶部13は、制御部14で実行される各種プログラムを記憶する。また、記憶部13には、後述の登録部14aにより、設計データ13aが格納される。また、記憶部13は、チェック結果ファイル13bを記憶する。
設計データ13aについて説明する。例えば、設計データ13aは、サブチップの各ネットに関するデータを含むデータ、または、チップ全体の各ネットに関するデータを含むデータである。設計データ13aには、各ネットの2つの端子および2つの端子に接続される信号配線の位置を示す座標データなどが含まれる。また、かかる2つの端子の一例としては、信号配線に信号を送信するドライバセル、及び、信号配線に送信されたデータを受信するレシーバセルが挙げられる。また、設計データ13aには、各信号配線の種類、例えば、電源配線などの種類を示すデータが含まれる。
チェック結果ファイル13bについて説明する。例えば、チェック結果ファイル13bは、後述の判定部14gによるクロストークノイズチェックのチェック結果が登録されるファイルである。
記憶部13は、例えば、フラッシュメモリなどの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部13は、上記の種類の記憶装置に限定されるものではなく、RAM(Random Access Memory)、ROM(Read Only Memory)であってもよい。
制御部14は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部14は、登録部14aと、分割部14bと、第1の算出部14cと、第2の算出部14dと、補正部14eと、第3の算出部14fと、判定部14gと、出力制御部14hとを有する。
登録部14aは、各種の情報を登録する。例えば、登録部14aは、入力部11から設計データ13aが入力されると、入力された設計データ13aを記憶部13に格納して、設計データ13aを登録する。
分割部14bは、LSIにおける2本の信号配線間に電源配線が並走する場合に、並走する電源配線の位置に基づいて、2本の信号配線が延びる方向を複数の区間に分割する。分割部14bの一態様について説明する。分割部14bは、まず、記憶部13から設計データ13aを取得する。そして、分割部14bは、取得した設計データ13aに含まれる各ネットのうち、Victimネットとして未選択のネットがあるか否かを判定する。ここで、「Victimネット」とは、クロストークノイズの影響を受ける信号配線を有するネットを指す。また、分割部14bは、後述の判定部14gによりチェック結果がチェック結果ファイル13bに登録されるたびに、取得した設計データ13aに含まれる各ネットのうち、Victimネットとして未選択のネットがあるか否かを判定する。
Victimネットとして未選択のネットがある場合には、分割部14bは、Victimネットとして未選択のネットを1つ選択する。そして、分割部14bは、選択したVictimネットの各Victim配線のうち、未選択のVictim配線があるか否かを判定する。ここで、「Victim配線」とは、Victimネットのクロストークノイズの影響を受ける信号配線を指す。未選択のVictim配線がある場合には、分割部14bは、未選択のVictim配線を1つ選択する。
続いて、分割部14bは、設計データ13aに含まれる選択したVictimネット以外の各ネットの中から、選択したVictimネットに対応するAggressorネットを抽出する。ここで、「Aggressorネット」とは、クロストークノイズの影響を与える信号配線を有するネットを指す。なお、設計データ13aに含まれる各ネットは、VictimネットにもAggressorネットにもなり得る。
Aggressorネットの抽出方法の一例について説明する。例えば、分割部14bは、選択したVictim配線から所定範囲内に存在する信号配線を有するネットを、Victimネットに対応するAggressorネットとして抽出する。図5は、Aggressorネットの抽出方法の一例について説明するための図である。図5の例は、ドライバセル21a、レシーバセル21b、並びに、ドライバセル21a及びレシーバセル21bに接続された信号配線21cを有するVictimネット21を示す。図5の例において、まず、分割部14bは、信号配線21cからの距離が「d」以下となる区間を有する信号配線を特定する。そして、分割部14bは、特定した信号配線、及び、特定した信号配線に接続された端子を有するネットをAggressorネットとして抽出する。例えば、図5の例において、分割部14bは、信号配線21cからの距離が「d1」(≦「d」)である区間A1、及び、信号配線21cからの距離が「d2」(≦「d」)である区間A2を有する信号配線22cを特定する。そして、分割部14bは、特定した信号配線22c、並びに、信号配線22cに接続されたドライバセル22a及びレシーバセル22bを有するネット22をAggressorネットとして抽出する。また、図5の例において、分割部14bは、信号配線21cからの距離が「d3」(≦「d」)である区間A3を有する信号配線23cを特定する。そして、分割部14bは、特定した信号配線23c、並びに、信号配線23cに接続されたドライバセル23a及びレシーバセル23bを有するネット23をAggressorネットとして抽出する。
続いて、分割部14bは、抽出したAggressorネットのうち、未選択のAggressorネットがあるか否かを判定する。未選択のAggressorネットがない場合には、分割部14bは、選択したVictimネットの各Victim配線のうち未選択のVictim配線があるか否かを判定する上述した処理を再び行う。そして、分割部14bは、かかる処理以降の処理を再び行う。また、分割部14bは、後述の第3の算出部14fにより、Aggressorノイズ値が内部メモリに格納された場合にも、抽出したAggressorネットのうち、未選択のAggressorネットがあるか否かを判定する。
一方、未選択のAggressorネットがある場合には、分割部14bは、未選択のAggressorネットを1つ選択する。その後、分割部14bは、選択したAggressorネットの各Aggressor配線のうち、未選択のAggressor配線があるか否かを判定する。ここで、「Aggressor配線」とは、Aggressorネットのクロストークノイズの影響を与える信号配線を指す。また、後述の第3の算出部14fにより、Aggressorノイズ値に配線間ノイズ値が加算されるたびに、分割部14bは、選択したAggressorネットの各Aggressor配線のうち、未選択のAggressor配線があるか否かを判定する。
未選択のAggressor配線がある場合には、分割部14bは、未選択のAggressor配線を1つ選択する。
そして、分割部14bは、設計データ13aの内容に基づいて、選択したVictim配線及び選択したAggressor配線の2本の信号配線間に、電源配線が存在するか否かを判定する。より具体的には、分割部14bは、選択したVictim配線及び選択したAggressor配線の互いに所定範囲内に存在する区間の間に、電源配線が存在するか否かを判定する。電源配線が存在する場合には、分割部14bは、電源配線が2本の信号配線のうち少なくとも1本の信号配線を100%覆うか否かを判定する。ここで、かかる判定方法の一例について図6A及び図6Bを参照して説明する。
図6A及び図6Bは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。図6Aは、選択したVictim配線30及び選択したAggressor配線31の間に、電源配線32が存在する場合のVictim配線30、Aggressor配線31及び電源配線32の平面図である。図6Bは、選択したVictim配線30及び選択したAggressor配線31の間に、電源配線32が存在する場合のVictim配線30、Aggressor配線31及び電源配線32の断面図である。
図6A及び図6Bの場合において、分割部14bは、各階層が並ぶ方向34を法線ベクトルとする面に、方向34と直交する方向のVictim配線30の線幅Dv(nm)を投影させる。また、各階層が並ぶ方向34を法線ベクトルとする面に、方向34と直交する方向の電源配線32の線幅を投影させる。そして、分割部14bは、面に投影された電源配線32の線幅に、面に投影されたVictim配線30の線幅Dvが全て含まれるか否かを判定する。分割部14bは、面に投影された電源配線32の線幅に、面に投影されたVictim配線30の線幅Dvが全て含まれる場合には、電源配線32がVictim配線30を100%覆うと判定する。一方、分割部14bは、面に投影された電源配線32の線幅に、面に投影されたVictim配線30の線幅Dvが全て含まれない場合には、電源配線32がVictim配線30を100%覆わないと判定する。
そして、分割部14bは、電源配線がVictim配線を100%覆わないと判定した場合には、選択したAggressor配線に対しても同様の方法で、電源配線がAggressor配線を100%覆うか否かを判定する。電源配線が、Victim配線及びAggressor配線のうち少なくとも1本の信号配線を100%覆うと判定した場合には、分割部14bは、次の処理を行う。すなわち、分割部14bは、電源配線の位置に基づいて、2本の信号配線が互いに所定範囲内に存在する区間の信号配線が延びる方向を、電源配線が存在しない区間及び電源配線が存在する区間の複数の区間に分割する。複数の区間に分割する処理の一例について図6Cを参照して説明する。図6Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。図6Aに示す場合において、分割部14bは、図6Cに示すように、信号配線30、31が所定範囲内に存在する区間の信号配線30、31が延びる方向を、電源配線32が存在しない区間35、37及び電源配線32が存在する区間36の複数の区間に分割する。
そして、分割部14bは、選択したVictim配線及び選択したAggressor配線の組み合わせごとに、上述したような、信号配線が延びる方向を、電源配線が存在しない区間及び電源配線が存在する区間の複数の区間に分割する。
図4の説明に戻る。第1の算出部14cは、分割部14bにより分割された複数の区間のそれぞれについて、電源配線が並走していない場合のクロストークノイズ値を算出する。第1の算出部14cの一態様について説明する。第1の算出部14cは、まず、分割部14bにより分割された複数の区間の全区間を選択済みであるか否かを判定する。また、第1の算出部14cは、後述の第3の算出部14fにより、配線間ノイズ値に、補正されたクロストークノイズ値が加算された場合にも、分割部14bにより分割された複数の区間の全区間を選択済みであるか否かを判定する。
選択済みでない場合には、第1の算出部14cは、未選択の区間を1つ選択する。例えば、図6Cの場合において、区間35〜37のいずれの区間も未選択である場合には、区間35を選択する。そして、第1の算出部14cは、選択した区間に、電源配線がないものとして、クロストークノイズ値(区間ノイズ値)を算出する。例えば、第1の算出部14cは、長さLと、係数Kと、値Cとの積の値を区間のクロストークノイズ値(区間ノイズ値)として算出する。ここで、長さLは、区間の信号配線の線分の長さである。また、係数Kは、Victimネット及びAggressorネットのドライバセルの信号を送信する強度に基づいた係数である。また、値Cは、VictimネットとAggressorネットとの距離、容量及び抵抗に基づいた緩和関数から導出される値である。
そして、第1の算出部14cは、分割された区間ごとに、電源配線が並走していない場合のクロストークノイズ値(区間ノイズ値)を算出する。
図4の説明に戻る。第2の算出部14dは、分割された複数の区間のそれぞれについて、区間における2本の信号線と電源配線との相対的な位置関係に基づいて、2本の信号線間の領域に含まれる電源配線の領域が小さくなるほど、大きくなるような係数Fshieldを算出する。第2の算出部14dの一態様について説明する。第2の算出部14dは、まず、第1の算出部14cにより選択された区間において、次のような処理を行う。すなわち、第2の算出部14dは、各階層が並ぶ方向を法線ベクトルとする面に、2本の信号配線のうち、電源配線が100%覆うと判定された信号配線以外の信号配線の線幅であって、各階層が並ぶ方向と直交する方向の線幅を投影させる。また、第2の算出部14dは、第1の算出部14cにより選択された区間において、各階層が並ぶ方向を法線ベクトルとする面に、電源配線の線幅であって、各階層が並ぶ方向と直交する方向の線幅を投影させる。そして、第2の算出部14dは、面に投影された信号配線の線幅W(nm)に含まれる、面に投影された電源配線の線幅の長さD(nm)を算出する。例えば、図6Bが示す電源配線が存在する区間において、第2の算出部14dは、面に投影されたAggressor配線31の線幅W(nm)に含まれる、面に投影された電源配線32の線幅の長さD(nm)を算出する。なお、第1の算出部14cにより選択された区間が、電源配線が存在しない区間である場合には、第2の算出部14dは、電源配線が存在しないため、長さDとして「0」を算出する。
続いて、第2の算出部14dは、係数Fshieldを下記の式(1)によって算出する。
Fshield=1−D/W・・・(1)
なお、図6Bの場合では、D=Wであるため、Fshield=1−1=0となる。また、第1の算出部14cにより選択された区間が、電源配線が存在しない区間である場合には、D=0であるため、Fshield=1−0=1となる。図7は、「D/W」の値と、Fshieldとの関係の一例を示すグラフである。上記の式(1)において、「D/W」の値は、0以上1以下の値となるため、Fshieldの値は、図7に示すように、0以上1以下となる。また、図7のグラフから、「D/W」の値に応じて求まるFshieldの関数は、線形性を有するともいえる。
そして、第2の算出部14dは、第1の算出部14cにより選択された区間ごとに、すなわち、分割された区間ごとに、係数Fshieldを算出する。
ここで、図8A〜8C、及び、図9A〜9Cを参照して、D=Wでない場合のFshieldの値について説明する。図8A及び図8Bは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。図8Aは、選択したVictim配線40及び選択したAggressor配線41の間に、電源配線42が存在する場合のVictim配線40、Aggressor配線41及び電源配線42の平面図である。図8Bは、選択したVictim配線40及び選択したAggressor配線41の間に、電源配線42が存在する場合のVictim配線40、Aggressor配線41及び電源配線42の断面図である。
図8A及び図8Bの場合において、分割部14bは、各階層が並ぶ方向を法線ベクトルとする面に、かかる方向と直交する方向のVictim配線40の線幅を投影させる。また、各階層が並ぶ方向を法線ベクトルとする面に、かかる方向と直交する方向の電源配線42の線幅を投影させる。そして、分割部14bは、面に投影された電源配線42の線幅に、面に投影されたVictim配線40の線幅が全て含まれるか否かを判定する。図8A及び図8Bの場合、分割部14bは、面に投影された電源配線42の線幅に、面に投影されたVictim配線40の線幅が全て含まれると判定することで、電源配線42がVictim配線40を100%覆うと判定する。図8Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。図8Aの場合において、分割部14bは、図8Cに示すように、信号配線40、41が所定範囲内に存在する区間の信号配線40、41が延びる方向を、電源配線42が存在しない区間45、47及び電源配線42が存在する区間46の複数の区間に分割する。
そして、第2の算出部14dは、区間45、47については、D=0であるため、Fshield=1−0=1を算出する。また、第2の算出部14dは、区間46については、0<D<Wであるため、0<D/W<1となり、0より大きく1未満となるFshield=1−D/Wを算出する。
図9A及び図9Bは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。図9Aは、選択したVictim配線50及び選択したAggressor配線51の間に、電源配線51が存在する場合のVictim配線50、Aggressor配線51及び電源配線52の平面図である。図9Bは、選択したVictim配線50及び選択したAggressor配線51の間に、電源配線52が存在する場合のVictim配線50、Aggressor配線51及び電源配線52の断面図である。
図9A及び図9Bの場合において、分割部14bは、各階層が並ぶ方向を法線ベクトルとする面に、かかる方向と直交する方向のVictim配線50の線幅を投影させる。また、各階層が並ぶ方向を法線ベクトルとする面に、かかる方向と直交する方向の電源配線52の線幅を投影させる。そして、分割部14bは、面に投影された電源配線52の線幅に、面に投影されたVictim配線50の線幅が全て含まれるか否かを判定する。図9A及び図9Bの場合、分割部14bは、面に投影された電源配線52の線幅に、面に投影されたVictim配線50の線幅が全て含まれると判定することで、電源配線52がVictim配線50を100%覆うと判定する。図9Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。図9Aの場合において、分割部14bは、図9Cに示すように、信号配線50、51が所定範囲内に存在する区間の信号配線50、51が延びる方向を、電源配線52が存在しない区間55、57及び電源配線52が存在する区間56の複数の区間に分割する。
そして、第2の算出部14dは、区間55、57については、D=0であるため、Fshield=1−0=1を算出する。また、第2の算出部14dは、区間56については、D=0であるため、Fshield=1−0=1を算出する。
図4の説明に戻り、補正部14eは、分割された複数の区間のそれぞれについて、区間に対応する係数Fshieldを用いて、第1の算出部14cにより算出された、区間に対応するクロストークノイズ値を補正する。補正部14eの一態様について説明する。例えば、補正部14eは、下記の式(2)に示すように、第1の算出部14cにより算出された、区間に対応するクロストークノイズ値Nと、区間に対応するFshieldとの積を新たなクロストークノイズ値とすることにより、クロストークノイズ値を補正する。
クロストークノイズ値=クロストークノイズ値N×Fshield・・・(2)
そして、補正部14eは、分割された区間ごとに、上述のように、クロストークノイズ値を補正する。
第3の算出部14fは、分割された複数の区間のそれぞれに対応する補正されたクロストークノイズ値の合計を2本の信号配線間のクロストークノイズ値として算出する。例えば、第3の算出部14fは、Victim配線とAggressor配線との組み合わせ毎の複数の配線間ノイズ値のうち、選択されたVictim配線と選択されたAggressor配線との組み合わせに対応する配線間ノイズ値に対して次の処理を行う。すなわち、第3の算出部14fは、補正部14eによりクロストークノイズ値が補正されるたびに、かかる配線間ノイズ値に、補正されたクロストークノイズ値を加算する。このようにして、第3の算出部14fは、選択されたVictim配線及び選択されたAggressor配線間の配線間ノイズ値を算出し、算出した配線間ノイズ値をクロストークノイズ値として算出する。
また、分割部14bにより電源配線が存在しないと判定された場合、及び、分割部14bにより電源配線が2本の信号配線の両信号線を100%覆わないと判定された場合には、第3の算出部14fは、次の処理を行う。すなわち、第3の算出部14fは、選択されたVictim配線と選択されたAggressor配線との組み合わせに対応する配線間ノイズ値を算出する。例えば、第3の算出部14fは、上述した長さLと、係数Kと、値Cとの積の値をクロストークノイズ値として算出し、算出したクロストークノイズ値を配線間ノイズ値として算出する。
そして、第3の算出部14fは、配線間ノイズ値が算出されるたびに、Aggressorノイズ値に、配線間ノイズ値を加算する。ここで、VictimネットとAggressorネットとの組み合わせ毎の複数のAggressorノイズ値のうち、次のようなAggressorノイズ値に対して配線間ノイズ値が加算される。すなわち、選択されたVictimネットと選択されたAggressorネットとの組み合わせに対応するAggressorノイズ値に対して配線間ノイズ値が加算される。このようにして、第3の算出部14fは、選択されたVictimネット及び選択されたAggressorネットのAggressorノイズ値を算出する。そして、第3の算出部14fは、算出したAggressorノイズ値を選択されたVictimネット及び選択されたAggressorネットのクロストークノイズ値として算出する。
また、分割部14bにより未選択のAggressor配線がないと判定された場合には、第3の算出部14fは、選択されたVictimネットと選択されたAggressorネットとの組み合わせに対応するAggressorノイズ値を内部メモリに格納する。
図4の説明に戻る。判定部14gは、クロストークノイズチェックを行う。判定部14gの一態様について説明する。例えば、判定部14gは、分割部14bにより未選択のVictim配線がないと判定された場合には、次の処理を行う。すなわち、判定部14gは、選択されたVictimネットと選択されたAggressorネットとの組み合わせに対応するAggressorノイズ値と、所定の制限値とを比較する。そして、判定部14gは、Aggressorノイズ値が、所定の制限値以下である場合には、問題がないという判定を行う。一方、判定部14gは、Aggressorノイズ値が、所定の制限値以下でない場合には、エラーと判定する。そして、判定部14gは、判定結果(チェック結果)をチェック結果ファイル13bに登録する。
出力制御部14hは、出力部12の出力を制御する。例えば、出力制御部14hは、分割部14bによりVictimネットとして未選択のネットがないと判定された場合には、チェック結果ファイル13bに登録されたチェック結果を表示するように出力部12の表示を制御する。
制御部14は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路またはCPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
[処理の流れ]
次に、本実施例に係る設計支援装置10の処理の流れを説明する。図10は、実施例に係るクロストークノイズチェック処理の手順を示すフローチャートである。このクロストークノイズチェック処理の実行タイミングとしては様々なタイミングが考えられる。例えば、クロストークノイズチェック処理は、クロストークノイズチェックを実行する指示が入力部11から入力された場合に、制御部14により実行される。
図10に示すように、登録部14aは、入力された設計データ13aを記憶部13に格納して、設計データ13aを登録する(S100)。そして、分割部14bは、記憶部13から設計データ13aを取得する(S101)。そして、分割部14bは、取得した設計データ13aに含まれる各ネットのうち、Victimネットとして未選択のネットがあるか否かを判定する(S102)。
Victimネットとして未選択のネットがある場合(S102肯定)には、分割部14bは、Victimネットとして未選択のネットを1つ選択する(S103)。そして、分割部14bは、選択したVictimネットの各Victim配線のうち、未選択のVictim配線があるか否かを判定する(S104)。未選択のVictim配線がある場合(S104肯定)には、分割部14bは、未選択のVictim配線を1つ選択する(S105)。
続いて、分割部14bは、設計データ13aに含まれる選択したVictimネット以外の各ネットの中から、選択したVictimネットに対応するAggressorネットを抽出する(S106)。続いて、分割部14bは、抽出したAggressorネットのうち、未選択のAggressorネットがあるか否かを判定する(S107)。未選択のAggressorネットがない場合(S107否定)には、S104に戻る。
一方、未選択のAggressorネットがある場合(S107肯定)には、分割部14bは、未選択のAggressorネットを1つ選択する(S108)。その後、分割部14bは、選択したAggressorネットの各Aggressor配線のうち、未選択のAggressor配線があるか否かを判定する(S109)。
未選択のAggressor配線がある場合(S109肯定)には、分割部14bは、未選択のAggressor配線を1つ選択する(S110)。そして、分割部14bなどは、後述する配線間ノイズ値算出処理を実行する(S111)。そして、第3の算出部14fは、配線間ノイズ値算出処理により算出された配線間ノイズ値をAggressorノイズ値に加算し(S112)、S109に戻る。
また、未選択のAggressor配線がない場合(S109否定)には、第3の算出部14fは、選択されたVictimネットと選択されたAggressorネットとの組み合わせに対応するAggressorノイズ値を内部メモリに格納する(S113)。そして、S107に戻る。
また、未選択のVictim配線がない場合(S104否定)には、判定部14gは、次の処理を行う。すなわち、判定部14gは、選択されたVictimネットと選択されたAggressorネットとの組み合わせに対応するAggressorノイズ値と、所定の制限値とを比較する。そして、判定部14gは、Aggressorノイズ値が、所定の制限値以下である場合には、問題がないという判定を行う。一方、判定部14gは、Aggressorノイズ値が、所定の制限値以下でない場合には、エラーと判定する(S114)。そして、判定部14gは、判定結果(チェック結果)をチェック結果ファイル13bに登録し(S115)、S102に戻る。
また、Victimネットとして未選択のネットがない場合(S102否定)には、出力制御部14hは、チェック結果ファイル13bに登録されたチェック結果を表示するように出力部12の表示を制御し(S116)、処理を終了する。
図11は、実施例に係る配線間ノイズ値算出処理の手順を示すフローチャートである。図11に示すように、分割部14bは、設計データ13aの内容に基づいて、選択したVictim配線及び選択したAggressor配線の2本の信号配線間に、電源配線が存在するか否かを判定する(S201)。電源配線が存在する場合(S201肯定)には、分割部14bは、電源配線が2本の信号配線のうち少なくとも1本の信号配線を100%覆うか否かを判定する(S202)。
電源配線が、Victim配線及びAggressor配線のうち少なくとも1本の信号配線を100%覆う場合(S202肯定)には、分割部14bは、次の処理を行う。すなわち、分割部14bは、電源配線の位置に基づいて、2本の信号配線が互いに所定範囲内に存在する区間の信号配線が延びる方向を、電源配線が存在しない区間及び電源配線が存在する区間の複数の区間に分割する(S203)。
そして、第1の算出部14cは、分割部14bにより分割された複数の区間の全区間を選択済みであるか否かを判定する(S205)。選択済みである場合には、第1の算出部14cは、処理結果を内部メモリに格納して、リターンする。選択済みでない場合(S205否定)には、第1の算出部14cは、未選択の区間を1つ選択する(S206)。そして、第1の算出部14cは、選択した区間に、電源配線がないものとして、区間ノイズ値を算出する(S207)。
そして、第2の算出部14dは、各階層が並ぶ方向を法線ベクトルとする面に、2本の信号配線のうち、電源配線が100%覆うと判定された信号配線以外の信号配線の線幅であって、各階層が並ぶ方向と直交する方向の線幅を投影させる。また、第2の算出部14dは、各階層が並ぶ方向を法線ベクトルとする面に、電源配線の線幅であって、各階層が並ぶ方向と直交する方向の線幅を投影させる。そして、第2の算出部14dは、面に投影された信号配線の線幅W(nm)に含まれる、面に投影された電源配線の線幅の長さD(nm)を算出する(S208)。なお、第2の算出部14dは、電源配線が存在しない区間では、D=0を算出する。
続いて、第2の算出部14dは、係数Fshieldを上記の式(1)によって算出する(S209)。
そして、補正部14eは、上記の式(2)に示すように、区間に対応するクロストークノイズ値Nと、区間に対応するFshieldとの積を新たなクロストークノイズ値とすることにより、クロストークノイズ値を補正する(S210)。
そして、第3の算出部14fは、Victim配線とAggressor配線との組み合わせ毎の複数の配線間ノイズ値のうち、選択されたVictim配線と選択されたAggressor配線との組み合わせに対応する配線間ノイズ値に対して次の処理を行う。すなわち、第3の算出部14fは、配線間ノイズ値に、補正されたクロストークノイズ値を加算し(S211)、S205に戻る。
また、電源配線が存在しない場合(S201否定)、及び、電源配線が2本の信号配線の両信号線を100%覆わない場合(S202否定)には、第3の算出部14fは、次の処理を行う。すなわち、第3の算出部14fは、選択されたVictim配線と選択されたAggressor配線との組み合わせに対応する配線間ノイズ値を算出し(S204)、処理結果を内部メモリに格納し、リターンする。
上述してきたように、本実施例に係る設計支援装置10は、LSIにおける2本の信号配線間に電源配線が並走する場合に、並走する電源配線の位置に基づいて、2本の信号配線が延びる方向を複数の区間に分割する。また、設計支援装置10は、分割された複数の区間のそれぞれについて、電源配線が並走していない場合のクロストークノイズ値を算出する。また、設計支援装置10は、分割された複数の区間のそれぞれについて、区間における2本の信号線と電源配線との相対的な位置関係に基づいて、2本の信号線間の領域に含まれる電源配線の領域が小さくなるほど、大きくなるような係数Fshieldを算出する。また、設計支援装置10は、分割された複数の区間のそれぞれについて、区間に対応する係数Fshieldを用いて、区間に対応するクロストークノイズ値を補正する。また、設計支援装置10は、分割された複数の区間のそれぞれに対応する補正されたクロストークノイズ値の合計を2本の信号配線間のクロストークノイズ値として算出する。このように、本実施例では、係数Fshieldを算出し、係数Fshieldを用いて、クロストークノイズ値を補正した上で、2本の信号配線間のクロストークノイズ値を算出する。このため、本実施例において算出されるクロストークノイズチェック値は、精度の高いものとなり、実際の値に近づくと考えられる。そのため、本実施例におけるクロストークノイズチェックでは、エラー判定の増加が抑制される。これにより、本実施例に係る設計支援装置10によれば、エラー判定のたびに、配線間の距離を広くするなどの作業が行われる回数が抑制されるため、レイアウト設計の負担を軽減することができる。
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。例えば、上記の実施例では、階層方向に並んだ信号配線に対して上記の各処理が行われる場合について説明したが、開示の装置はこれに限定されない。図12A〜図12Cは、実施例に係る設計支援装置が実行する処理の一例について説明するための図である。図12Aは、同一の階層内において、選択したVictim配線60及び選択したAggressor配線61の間に、電源配線62が存在する場合のVictim配線60、Aggressor配線61及び電源配線62の平面図である。図12Bは、同一の階層内において、選択したVictim配線60及び選択したAggressor配線61の間に、電源配線62が存在する場合のVictim配線60、Aggressor配線61及び電源配線62の断面図である。図12A及び図12Bの場合において、上記の実施例と同様に、開示の装置は、図12Cに示すように、複数の区間65、66、67に分割し、各区間65、66、67でFshieldを算出することができる。この場合、設計データ13aには、端子や信号配線の高さの情報が含まれる。
また、上記では、式(1)を用いて係数Fshieldを算出する場合について例示したが、開示の装置はこれに限定されない。例えば、開示の装置は、下記の式(3)によって係数Fshieldを算出することもできる。
Fshield=1−α・(D/W)・・・(3)
ただし、αは、所定の係数である。
また、実施例などにおいて説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。
また、各種の負荷や使用状況などに応じて、実施例などにおいて説明した各処理の各ステップでの処理を任意に細かくわけたり、あるいはまとめたりすることができる。また、ステップを省略することもできる。
また、各種の負荷や使用状況などに応じて、実施例などにおいて説明した各処理の各ステップでの処理の順番を変更できる。
また、図示した装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
[設計支援プログラム]
また、上記の設計支援装置の各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、図13を用いて、上記の設計支援装置と同様の機能を有する設計支援プログラムを実行するコンピュータの一例を説明する。
図13は、設計支援プログラムを実行するコンピュータを示す図である。図13に示すように、コンピュータ300は、CPU(Central Processing Unit)310、ROM(Read Only Memory)320、HDD(Hard Disk Drive)330、RAM(Random Access Memory)340を有する。これら300〜340の各部は、バス350を介して接続される。
HDD330には、上記の実施例で示す各部14a〜14hと同様の機能を発揮する設計支援プログラム330aが予め記憶される。なお、設計支援プログラム330aについては、適宜分離しても良い。
そして、CPU310が、設計支援プログラム330aをHDD330から読み出して実行する。
そして、HDD330には、設計データ及びチェック結果ファイルが設けられる。
そして、CPU310は、設計データ及びチェック結果ファイルを読み出してRAM340に格納する。さらに、CPU310は、RAM340に格納された設計データ及びチェック結果ファイルを用いて、設計支援プログラム330aを実行する。なお、RAM340に格納される各データは、常に全てのデータがRAM340に格納されなくともよく、全てのデータのうち処理に用いられるデータのみがRAM340に格納されれば良い。
なお、上記した設計支援プログラム330aについては、必ずしも最初からHDD330に記憶させなくともよい。
例えば、コンピュータ300に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ300がこれらからプログラムを読み出して実行するようにしてもよい。
さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータ300に接続される「他のコンピュータ(またはサーバ)」などにプログラムを記憶させておく。そして、コンピュータ300がこれらからプログラムを読み出して実行するようにしてもよい。
10 設計支援装置
13a 設計データ
13b チェック結果ファイル
14b 分割部
14c 第1の算出部
14d 第2の算出部
14e 補正部
14f 第3の算出部

Claims (6)

  1. 回路における2本の信号配線間に電源配線が並走する場合に、並走する該電源配線の位置に基づいて、前記2本の信号配線が延びる方向を複数の区間に分割する分割部と、
    前記複数の区間のそれぞれについて、前記電源配線が並走していない場合のクロストークノイズ値を算出する第1の算出部と、
    前記複数の区間のそれぞれについて、該区間における前記2本の信号線と前記電源配線との相対的な位置関係に基づいて、前記2本の信号線間の領域に含まれる前記電源配線の領域が小さくなるほど、大きくなるような係数を算出する第2の算出部と、
    前記複数の区間のそれぞれについて、該区間に対応する前記係数を用いて、該区間に対応する前記クロストークノイズ値を補正する補正部と、
    前記複数の区間のそれぞれに対応する前記補正部により補正された前記クロストークノイズ値の合計を前記2本の信号配線間のクロストークノイズ値として算出する第3の算出部と
    を有することを特徴とする設計支援装置。
  2. 前記第2の算出部は、前記複数の区間のそれぞれについて、所定面に前記2本の信号配線及び前記電源配線を投影させた場合に、前記2本の信号配線の前記所定面への2つの投影領域のうち、一方の撮影領域の全領域が前記電源配線の前記所定面への投影領域に含まれるときに、他方の撮影領域に含まれる前記電源配線の前記所定面への投影領域の割合が小さくなるほど、大きくなるような前記係数を算出する
    ことを特徴とする請求項1に記載の設計支援装置。
  3. 前記第2の算出部は、前記複数の区間のそれぞれについて、前記他方の撮影領域に前記電源配線の前記所定面への投影領域が含まれていない場合には、前記係数として、該係数の最大値を算出する
    ことを特徴とする請求項2に記載の設計支援装置。
  4. 前記第2の算出部は、前記複数の区間のそれぞれについて、前記他方の撮影領域の全領域に前記電源配線の前記所定面への投影領域が含まれている場合には、前記係数として、該係数の最小値を算出する
    ことを特徴とする請求項3に記載の設計支援装置。
  5. コンピュータが、
    回路における2本の信号配線間に電源配線が並走する場合に、並走する該電源配線の位置に基づいて、前記2本の信号配線が延びる方向を複数の区間に分割し、
    前記複数の区間のそれぞれについて、前記電源配線が並走していない場合のクロストークノイズ値を算出し、
    前記複数の区間のそれぞれについて、該区間における前記2本の信号線と前記電源配線との相対的な位置関係に基づいて、前記2本の信号線間の領域に含まれる前記電源配線の領域が小さくなるほど、大きくなるような係数を算出し、
    前記複数の区間のそれぞれについて、該区間に対応する前記係数を用いて、該区間に対応する前記クロストークノイズ値を補正し、
    前記複数の区間のそれぞれに対応する補正された前記クロストークノイズ値の合計を前記2本の信号配線間のクロストークノイズ値として算出する
    各処理を実行することを特徴とする設計支援方法。
  6. コンピュータに、
    回路における2本の信号配線間に電源配線が並走する場合に、並走する該電源配線の位置に基づいて、前記2本の信号配線が延びる方向を複数の区間に分割し、
    前記複数の区間のそれぞれについて、前記電源配線が並走していない場合のクロストークノイズ値を算出し、
    前記複数の区間のそれぞれについて、該区間における前記2本の信号線と前記電源配線との相対的な位置関係に基づいて、前記2本の信号線間の領域に含まれる前記電源配線の領域が小さくなるほど、大きくなるような係数を算出し、
    前記複数の区間のそれぞれについて、該区間に対応する前記係数を用いて、該区間に対応する前記クロストークノイズ値を補正し、
    前記複数の区間のそれぞれに対応する補正された前記クロストークノイズ値の合計を前記2本の信号配線間のクロストークノイズ値として算出する
    各処理を実行させることを特徴とする設計支援プログラム。
JP2012266776A 2012-12-05 2012-12-05 設計支援装置、設計支援方法及び設計支援プログラム Pending JP2014112331A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012266776A JP2014112331A (ja) 2012-12-05 2012-12-05 設計支援装置、設計支援方法及び設計支援プログラム
US14/037,483 US8843866B2 (en) 2012-12-05 2013-09-26 Support apparatus, design support method, and computer-readable recording medium
EP13187344.0A EP2741221A2 (en) 2012-12-05 2013-10-04 Apparatus, method, and program for crosstalk computation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012266776A JP2014112331A (ja) 2012-12-05 2012-12-05 設計支援装置、設計支援方法及び設計支援プログラム

Publications (1)

Publication Number Publication Date
JP2014112331A true JP2014112331A (ja) 2014-06-19

Family

ID=49274566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012266776A Pending JP2014112331A (ja) 2012-12-05 2012-12-05 設計支援装置、設計支援方法及び設計支援プログラム

Country Status (3)

Country Link
US (1) US8843866B2 (ja)
EP (1) EP2741221A2 (ja)
JP (1) JP2014112331A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015095132A (ja) * 2013-11-13 2015-05-18 富士通株式会社 情報処理システム、情報処理システムの制御方法及び管理装置の制御プログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4777622A (en) * 1985-11-26 1988-10-11 Max-Planck-Gesellschaft Zur Foerderung Der Wissenschaften E.V. Associative data storage system
US5397861A (en) * 1992-10-21 1995-03-14 Mupac Corporation Electrical interconnection board
TW525070B (en) * 1999-11-30 2003-03-21 Nec Corp Power model for EMI simulation to semiconductor integrated circuit, method of designing the power model, EMI simulator, power model preparation computer program, and storage medium storing the same as
JP2002304434A (ja) * 2001-04-06 2002-10-18 Nec Corp Emiシミュレーション用半導体集積回路電源モデルの作成方法、装置及びプログラム
JP2004013552A (ja) * 2002-06-07 2004-01-15 Fujitsu Ltd 集積回路装置の配線設計方法,そのシステムおよびそのプログラム
JP2004186257A (ja) 2002-11-29 2004-07-02 Matsushita Electric Ind Co Ltd 半導体集積回路および遅延計算方法
US20060100830A1 (en) * 2004-11-05 2006-05-11 Chang Gung University Moment computations of nonuniform distributed coupled RLC trees with applications to estimating crosstalk noise
WO2007077623A1 (ja) 2006-01-04 2007-07-12 Fujitsu Limited 半導体集積回路におけるシールド線の配置方法、半導体集積回路の設計装置、及び半導体集積回路の設計プログラム
US7519927B1 (en) * 2008-07-02 2009-04-14 International Business Machines Corporation Wiring methods to reduce metal variation effects on launch-capture clock pairs in order to minimize cycle-time overlap violations

Also Published As

Publication number Publication date
EP2741221A2 (en) 2014-06-11
US8843866B2 (en) 2014-09-23
US20140157219A1 (en) 2014-06-05

Similar Documents

Publication Publication Date Title
US8020121B2 (en) Layout method and layout apparatus for semiconductor integrated circuit
US10318686B2 (en) Methods for reducing delay on integrated circuits by identifying candidate placement locations in a leveled graph
US8954912B2 (en) Structured placement of latches/flip-flops to minimize clock power in high-performance designs
CN107066681B (zh) 集成电路和制造集成电路的计算机实现方法
US8904326B2 (en) Semiconductor device design method, system and computer program product
US8479136B2 (en) Decoupling capacitor insertion using hypergraph connectivity analysis
US8375345B1 (en) Soft-bounded hierarchical synthesis
US9009645B2 (en) Automatic clock tree routing rule generation
US20150286766A1 (en) Method and system for automated design of an integrated circuit using configurable cells
US8707230B1 (en) Method and system for semiconductor simulation
JP4368641B2 (ja) 電源パッドの数及び位置見積もり方法、チップサイズ見積もり方法及び設計装置
KR20090077692A (ko) 반도체 장치의 제조 방법, 반도체 장치의 제조 프로그램 및반도체 장치의 제조 시스템
US8966429B2 (en) Bit slice elements utilizing through device routing
JP4195821B2 (ja) 半導体集積回路の設計方法
JP2014112331A (ja) 設計支援装置、設計支援方法及び設計支援プログラム
Cong et al. An analytical placer for mixed-size 3D placement
US9293450B2 (en) Synthesis of complex cells
US8947120B2 (en) Latch array utilizing through device connectivity
JP3705737B2 (ja) 半導体集積回路のレイアウト方法
Xiong et al. Extended global routing with RLC crosstalk constraints
US20170061063A1 (en) Integrated circuit with reduced routing congestion
Osler et al. Design closure
Jenila et al. Implementation of Routing-denser PnR Flow for an Efficient IC Block Level Design
JP4824785B2 (ja) コアサイズ見積もり方法、チップサイズ見積もり方法及び設計装置
Lu et al. Incremental register placement for low power CTS