(57)【要約】【課題】チップ間を接続する伝送線路を備えた半導体装置のタイミング検証時の、誤差を少なくする。【解決手段】プロセッサ２が、記憶部３に記憶されている、半導体チップ間の伝送線路の形状ごとの伝送線路の抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延の中から、解析対象の半導体装置５に含まれるチップ６とチップ７の間の伝送線路８の形状と、伝送線路８の抵抗値、インダクタンス及び容量値に対応した伝送遅延を選択する。また、プロセッサ２が、チップ６とチップ７のそれぞれの内部遅延を算出し、内部遅延及び選択した伝送遅延に基づき、半導体装置５のタイミング解析を行う。【選択図】図１
2016134080.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサが、記憶部に記憶されている、半導体チップ間の伝送線路の形状ごとの前記伝送線路の抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延の中から、解析対象の半導体装置に含まれる第１の半導体チップと第２の半導体チップの間の第１の伝送線路の形状と、前記第１の伝送線路の第１の抵抗値、第１のインダクタンス及び第１の容量値に対応した第１の伝送遅延を選択し、
前記プロセッサが、前記第１の半導体チップと前記第２の半導体チップのそれぞれの内部遅延を算出し、
前記プロセッサが、前記内部遅延及び前記第１の伝送遅延に基づき、前記半導体装置のタイミング解析を行う、
ことを特徴とする設計方法。
【請求項２】
前記プロセッサは、前記半導体装置のネットリストとレイアウトデータとを対応づけて前記第１の伝送線路の形状及び、前記第１の抵抗値、前記第１のインダクタンス及び前記第１の容量値を特定する、ことを特徴とする請求項１に記載の設計方法。
【請求項３】
前記複数の伝送遅延は、前記伝送線路の長さまたは幅を変えたときの前記抵抗値、前記インダクタンス及び前記容量値に基づき算出される、ことを特徴とする請求項１または２に記載の設計方法。
【請求項４】
前記伝送線路の形状、長さまたは幅は、オングリッド設計で前記第１の伝送線路の配置配線処理を行う際のグリッド単位で設定されていることを特徴とする請求項３に記載の設計方法。
【請求項５】
半導体チップ間の伝送線路の形状ごとの前記伝送線路の抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延を記憶する記憶部と、
前記複数の伝送遅延の中から、解析対象の半導体装置に含まれる第１の半導体チップと第２の半導体チップの間の第１の伝送線路の形状と、前記第１の伝送線路の第１の抵抗値、第１のインダクタンス及び第１の容量値に対応した第１の伝送遅延を選択する伝送遅延選択部と、
前記第１の半導体チップと前記第２の半導体チップのそれぞれの内部遅延を算出する内部遅延算出部と、
前記内部遅延及び前記第１の伝送遅延に基づき、前記半導体装置のタイミング解析を行うタイミング解析部と、
を有することを特徴とする設計装置。
【請求項６】
記憶部に記憶されている、半導体チップ間の伝送線路の形状ごとの前記伝送線路の抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延の中から、解析対象の半導体装置に含まれる第１の半導体チップと第２の半導体チップの間の第１の伝送線路の形状と、前記第１の伝送線路の第１の抵抗値、第１のインダクタンス及び第１の容量値に対応した第１の伝送遅延を選択し、
前記第１の半導体チップと前記第２の半導体チップのそれぞれの内部遅延を算出し、
前記内部遅延及び前記第１の伝送遅延に基づき、前記半導体装置のタイミング解析を行う、
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計方法、設計装置及びプログラムに関する。
【背景技術】
【０００２】
ＳｉＰ（System in a Package）のように、複数の半導体チップ（以下単にチップという）を備えたシステムＬＳＩ（Large Scale Integrated circuit）では、チップ間での信号伝送のために、Ｓｉ（Silicon）インターポーザと呼ばれる伝送線路が用いられる。
【０００３】
従来、このようなシステムＬＳＩの設計時におけるタイミング検証の際、各チップと伝送線路とが別々に検証されていた。チップに対しては、ＳＴＡ（Static Timing Analysis）が行われ、伝送線路に対しては、Ｓｐｉｃｅなどの回路シミュレーションによる過渡解析が行われる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２７５９８１号公報
【特許文献２】特開平１１−２８８４３１号公報
【特許文献３】特開平４−１１４２８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
チップの多ピン化が進む近年、Ｓｉインターボーザのような伝送線路も多ピン化が進み、配線レイアウトが複雑化し、解析対象の信号が多くなってきており、上記のような過渡解析を行うと、計算時間が非常に長くなる。そのため、チップ内部の配線の抵抗値及び容量値に基づき伝送遅延を計算する手法（ＮＬＤＭ（Non-Linear Delay Model），ＣＣＳ（Composite Current Source Model）など）を、伝送線路についても適用してタイミング解析を行うことが考えられる。
【０００６】
しかしながら、チップ間の伝送線路はチップ内の配線と比べて伝送距離が長く、配線幅も太い傾向があるとともに、伝搬する信号の周波数はチップ内の信号の周波数よりもかなり高くなる場合がある。そのため、チップ内部の配線の伝送遅延を計算する手法を、チップ間の伝送線路に対して使用すると、誤差が大きくなってしまうという問題があった。
【０００７】
このため、チップ間を接続する伝送線路を備えた半導体装置のタイミング検証時の、誤差を少なくすることが課題である。
【課題を解決するための手段】
【０００８】
発明の一観点によれば、プロセッサが、記憶部に記憶されている、半導体チップ間の伝送線路の形状ごとの前記伝送線路の抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延の中から、解析対象の半導体装置に含まれる第１の半導体チップと第２の半導体チップの間の第１の伝送線路の形状と、前記第１の伝送線路の第１の抵抗値、第１のインダクタンス及び第１の容量値に対応した第１の伝送遅延を選択し、前記プロセッサが、前記第１の半導体チップと前記第２の半導体チップのそれぞれの内部遅延を算出し、前記プロセッサが、前記内部遅延及び前記第１の伝送遅延に基づき、前記半導体装置のタイミング解析を行う、設計方法が提供される。
【０００９】
また、発明の一観点によれば、半導体チップ間の伝送線路の形状ごとの前記伝送線路の抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延を記憶する記憶部と、前記複数の伝送遅延の中から、解析対象の半導体装置に含まれる第１の半導体チップと第２の半導体チップの間の第１の伝送線路の形状と、前記第１の伝送線路の第１の抵抗値、第１のインダクタンス及び第１の容量値に対応した第１の伝送遅延を選択する伝送遅延選択部と、前記第１の半導体チップと前記第２の半導体チップのそれぞれの内部遅延を算出する内部遅延算出部と、前記内部遅延及び前記第１の伝送遅延に基づき、前記半導体装置のタイミング解析を行うタイミング解析部と、を有する設計装置が提供される。
【００１０】
また、発明の一観点によれば、記憶部に記憶されている、半導体チップ間の伝送線路の形状ごとの前記伝送線路の抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延の中から、解析対象の半導体装置に含まれる第１の半導体チップと第２の半導体チップの間の第１の伝送線路の形状と、前記第１の伝送線路の第１の抵抗値、第１のインダクタンス及び第１の容量値に対応した第１の伝送遅延を選択し、前記第１の半導体チップと前記第２の半導体チップのそれぞれの内部遅延を算出し、前記内部遅延及び前記第１の伝送遅延に基づき、前記半導体装置のタイミング解析を行う、処理をコンピュータに実行させるプログラムが提供される。
【発明の効果】
【００１１】
開示の設計方法、設計装置及びプログラムによれば、チップ間を接続する伝送線路を備えた半導体装置のタイミング検証時の、誤差を少なくできる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態の設計方法及び設計装置の一例を示す図である。
【図２】第１の実施の形態の設計装置の一例の機能ブロック図である。
【図３】チップ間の伝送線路のＲＬＣ成分に基づき算出した伝送遅延に対する、Ｌ成分を考慮せずＲＣ成分に基づき算出した伝送遅延の誤差の例を説明する図である。
【図４】第２の実施の形態の設計装置の一例を示す図である。
【図５】第２の実施の形態の設計方法の一例の処理の流れを示すフローチャートである。
【図６】Ｓｉインターポーザの伝送遅延の算出処理の一例の流れを示すフローチャートである。
【図７】Ｓｉインターポーザの３つのパターンの配線形状の例を示す図である。
【図８】配置配線処理で使用されるＳｉインターポーザの配線パターンの例を示す図である。
【図９】Ｓｉインターポーザでの伝送遅延を計算するためのシミュレーションモデルの一例を示す図である。
【図１０】遅延情報ライブラリの一例を示す図である。
【図１１】Ｓｉインターポーザの一例を示す図である。
【図１２】Ｓｉインターポーザのレイアウト例である。
【図１３】パスライブラリの一例を示す図である。
【図１４】Ｓｉインターポーザの他のレイアウト例である。
【図１５】パスライブラリの他の例を示す図である。
【発明を実施するための形態】
【００１３】
以下、発明を実施するための形態を、図面を参照しつつ説明する。
（第１の実施の形態）
図１は、第１の実施の形態の設計方法及び設計装置の一例を示す図である。
【００１４】
また、図２は、第１の実施の形態の設計装置の一例の機能ブロック図である。
設計装置１は、たとえば、コンピュータであり、プロセッサ２と記憶部３を有している。プロセッサ２は、記憶部３に記憶されているデータ及びプログラムに基づき、図２に示すような、伝送遅延選択部２ａ、内部遅延算出部２ｂ、タイミング解析部２ｃの機能を実現する。記憶部３は、プロセッサ２が実行するプログラムや、半導体装置の設計データや、伝送線路の遅延情報ライブラリ（以下単に遅延情報ライブラリという）１０、ネットリスト１１、レイアウトデータ１２などの各種データを記憶する。
【００１５】
遅延情報ライブラリ１０には、チップ間の伝送線路の形状ごとの伝送線路の抵抗、インダクタンス及び容量に基づく複数の伝送遅延を示す遅延情報が含まれる。
図１に示す遅延情報ライブラリ１０には、異なる形状である３つのパターンＡ，Ｂ，Ｃのそれぞれについて、抵抗値、インダクタンス及び容量値に基づく複数の伝送遅延を示す遅延情報１０ａ，１０ｂ，１０ｃが示されている。
【００１６】
遅延情報１０ａには、長方形のパターンＡにおいて、パターンＡの長さＬｅｎ１、幅Ｗ１を変えて、インダクタンス、抵抗値及び容量値を変化させたときの伝送遅延の情報が含まれている。遅延情報１０ｂには、パターンＢにおいて、パターンＢの長さＬｅｎ２、幅Ｗ２を変えて、インダクタンス、抵抗値及び容量値を変化させたときの伝送遅延の情報が含まれている。遅延情報１０ｃには、パターンＣにおいて、パターンＣの長さＬｅｎ３、幅Ｗ３を変えて、インダクタンス、抵抗値及び容量値を変化させたときの伝送遅延の情報が含まれている。
【００１７】
以下、上記のような設計装置１を用いた設計方法の一例を、図１、図２を用いて説明する。
伝送遅延選択部２ａは、記憶部３に記憶されている複数の遅延情報を含む遅延情報ライブラリ１０から、解析対象の半導体装置に含まれるチップ間の伝送線路の形状と抵抗値、インダクタンス及び容量値に対応した遅延情報を抽出する（ステップＳ１）。これによって、その伝送線路に対応した伝送遅延が選択される。
【００１８】
なお、伝送線路の抵抗値、インダクタンス及び容量値については、ネットリスト１１及びレイアウトデータ１２からＲＬＣエクストラクタツールなどにより得られ、伝送線路の形状については、レイアウトデータ１２から特定される。
【００１９】
図１には、解析対象の半導体装置５の一例が示されている。半導体装置５は、たとえば、ＳｉＰであり、チップ６，７と伝送線路（たとえば、Ｓｉインターポーザ）８を有している。チップ６，７間は、伝送線路８で接続されている。
【００２０】
伝送線路８は、図１の例では、配線幅の異なる２つの平行な配線パターン８ａ，８ｂを有している。配線パターン８ａ，８ｂの形状は、パターンＡに対応するため、遅延情報１０ａが抽出される。また、配線パターン８ａ，８ｂの長さや幅に対応した抵抗値、インダクタンス及び容量値もネットリスト１１及びレイアウトデータ１２から抽出される。そして、抽出された値に応じた伝送遅延が選択される。
【００２１】
たとえば、伝送線路８の配線パターン８ａのインダクタンスが１ｎＨ、容量値が１００００ｆＦ、抵抗値が２００ｏｈｍである場合には、伝送遅延として、４００ｐｓが選択される。
【００２２】
複数のパターンＡ，Ｂ，Ｃが組み合わさったような（または同じパターンが複数組み合わさったような）伝送線路の場合には、各パターンに対応して抽出された遅延情報から得られる伝送遅延の値が足し合わされて、伝送線路のトータルの伝送遅延が算出される。これにより、チップ間の伝送遅延が得られる。
【００２３】
なお、伝送遅延選択部２ａは、たとえば、図１に示したような配線パターン８ａ，８ｂ間の配線間容量をネットリスト１１とレイアウトデータ１２に基づき抽出して、配線間容量に基づくクロストークの影響による伝送遅延を算出するようにしてもよい。
【００２４】
一方、内部遅延算出部２ｂは、各チップの内部遅延を算出する（ステップＳ２）。ステップＳ２の処理は、ＮＬＤＭやＣＣＳなど、チップ内部の配線の伝送遅延を計算する手法を用いて行われる。
【００２５】
その後、タイミング解析部２ｃは、各チップの内部遅延及び伝送線路の伝送遅延に基づきタイミング解析（ＳＴＡ）を行う（ステップＳ３）。図示を省略しているが、ＳＴＡ後は、解析結果に基づき、たとえば、レイアウト修正や、マスクデータ作成処理などが行われる。
【００２６】
なお、上記のステップＳ２の処理は、ステップＳ１の処理の前に行ってもよいし、ステップＳ１の処理と並列に行ってもよい。
以上のような、設計方法及び設計装置１では、チップ間の伝送線路のＲＬＣ（抵抗、インダクタ、容量）成分に基づく遅延情報を伝送線路の形状ごとにライブラリ化しておき、そのライブラリに基づき伝送遅延が求められる。
【００２７】
チップ間を接続するような伝送線路は、チップ内の配線と比べて伝送距離が長く、配線幅も太い傾向があるとともに、伝搬する信号の周波数はチップ内の信号の周波数よりもかなり高くなる場合がある。そのため、チップの内部遅延を算出する際に適用されるＲＣ成分に基づく遅延計算では、誤差が大きくなる。
【００２８】
図３は、チップ間の伝送線路のＲＬＣ成分に基づき算出した伝送遅延に対する、Ｌ成分を考慮せずＲＣ成分に基づき算出した伝送遅延の誤差の例を説明する図である。
横軸は、チップ間の伝送線路に含まれる配線の配線幅［μｍ］を示し、縦軸は、遅延誤差比［％］を示している。遅延誤差比は、ＲＬＣ成分に基づき算出された伝送遅延ΔＴｐｄ１とＲＣ成分に基づき算出された伝送遅延ΔＴｐｄ２との差を、ΔＴｐｄ２で割った値に１００を掛けた値である。
【００２９】
図３において、特性１５は、チップ間の伝送線路に含まれる配線を駆動するバッファ（入力または出力バッファ）の駆動能力が３２ｍＡのときの、配線幅と遅延誤差比との関係を示している。特性１６は、駆動能力が８ｍＡのときの、配線幅と遅延誤差比との関係を示している。なお、特性１５，１６は、配線の配線長が２ｃｍであり、平行配線がある場合（たとえば、図１参照）について計算されたものである。
【００３０】
図３からわかるように、遅延誤差比を５％以下とするためには、配線幅を５μｍ程度以下にすることになる。しかし、チップ間の伝送線路は比較的高い駆動能力が求められるため、配線幅が５μｍ程度以下とすることは望ましくない。したがって、Ｌ成分を考慮しないで伝送遅延を算出することは望ましくない。
【００３１】
本実施の形態の設計方法及び設計装置１では、算出される伝送遅延にＬ成分が反映されるため、上記のような傾向があるＳｉインターポーザなどの伝送線路の伝送遅延が精度良く算出できる。これによって、タイミング解析の精度が向上する。
【００３２】
また、遅延情報ライブラリ１０は予め記憶部３に格納されており、解析対象の半導体装置５の伝送線路８の形状及びＲＬＣ成分に基づいて、遅延情報が抽出され、伝送遅延が求められる。そのため、Ｓｐｉｃｅなどによる過渡解析で伝送遅延をその都度計算するよりも、解析時間を短縮できる。
【００３３】
（第２の実施の形態）
以下、第２の実施の形態の設計方法及び設計装置の一例を示す。
図４は、第２の実施の形態の設計装置の一例を示す図である。
【００３４】
設計装置は、たとえば、コンピュータ２０であり、プロセッサ２１によって装置全体が制御されている。プロセッサ２１には、バス２９を介してＲＡＭ（Random Access Memory）２２と複数の周辺機器が接続されている。プロセッサ２１は、マルチプロセッサであってもよい。プロセッサ２１は、たとえばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ２１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００３５】
ＲＡＭ２２は、コンピュータ２０の主記憶装置として使用される。ＲＡＭ２２には、プロセッサ２１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ２２には、プロセッサ２１による処理に必要な各種データが格納される。
【００３６】
バス２９に接続されている周辺機器としては、ＨＤＤ（Hard Disk Drive）２３、グラフィック処理装置２４、入力インタフェース２５、光学ドライブ装置２６、機器接続インタフェース２７及びネットワークインタフェース２８がある。
【００３７】
ＨＤＤ２３は、内蔵したディスクに対して、磁気的にデータの書き込み及び読み出しを行う。ＨＤＤ２３は、コンピュータ２０の補助記憶装置として使用される。ＨＤＤ２３には、ＯＳのプログラム、アプリケーションプログラム、及び各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。
【００３８】
グラフィック処理装置２４には、モニタ２４ａが接続されている。グラフィック処理装置２４は、プロセッサ２１からの命令にしたがって、画像をモニタ２４ａの画面に表示させる。モニタ２４ａとしては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置などがある。
【００３９】
入力インタフェース２５には、キーボード２５ａとマウス２５ｂとが接続されている。入力インタフェース２５は、キーボード２５ａやマウス２５ｂから送られてくる信号をプロセッサ２１に送信する。なお、マウス２５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００４０】
光学ドライブ装置２６は、レーザ光などを利用して、光ディスク２６ａに記録されたデータの読み取りを行う。光ディスク２６ａは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク２６ａには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。
【００４１】
機器接続インタフェース２７は、コンピュータ２０に周辺機器を接続するための通信インタフェースである。たとえば機器接続インタフェース２７には、メモリ装置２７ａやメモリリーダライタ２７ｂを接続することができる。メモリ装置２７ａは、機器接続インタフェース２７との通信機能を搭載した記録媒体である。メモリリーダライタ２７ｂは、メモリカード２７ｃへのデータの書き込み、またはメモリカード２７ｃからのデータの読み出しを行う装置である。メモリカード２７ｃは、カード型の記録媒体である。
【００４２】
ネットワークインタフェース２８は、ネットワーク２８ａに接続されている。ネットワークインタフェース２８は、ネットワーク２８ａを介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００４３】
以上のようなハードウェア構成によって、第２の実施の形態の処理機能を実現することができる。なお、図１に示した第１の実施の形態の設計装置１も、図４に示したコンピュータ２０と同様のハードウェアにより実現することができる。
【００４４】
コンピュータ２０は、たとえばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第２の実施の形態の処理機能を実現する。コンピュータ２０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。たとえば、コンピュータ２０に実行させるプログラムをＨＤＤ２３に格納しておくことができる。プロセッサ２１は、ＨＤＤ２３内のプログラムの少なくとも一部をＲＡＭ２２にロードし、プログラムを実行する。またコンピュータ２０に実行させるプログラムを、光ディスク２６ａ、メモリ装置２７ａ、メモリカード２７ｃなどの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、たとえばプロセッサ２１からの制御により、ＨＤＤ２３にインストールされた後、実行可能となる。またプロセッサ２１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００４５】
（設計方法の一例）
図５は、第２の実施の形態の設計方法の一例の処理の流れを示すフローチャートである。
【００４６】
コンピュータ２０において、プロセッサ２１は、ＨＤＤ２３に格納されたプログラムを読み出してＲＡＭ２２上に展開して、たとえば、図５に示すような各ステップの処理を実行する。なお、以下では、チップ間の伝送線路として、Ｓｉインターポーザを用いた場合について説明する。
【００４７】
設計処理の１工程であるタイミング解析処理が開始すると、プロセッサ２１は、たとえば、まず、Ｓｉインターポーザの伝送遅延を算出し、伝送遅延情報３０を生成する（ステップＳ１０）。ステップＳ１０の処理例については後述する。
【００４８】
プロセッサ２１は、さらに、各チップの内部遅延を算出し、内部遅延情報３１を生成する（ステップＳ１１）。
ステップＳ１１の処理では、プロセッサ２１は、チップ内の各セルの入力端子から出力端子までの遅延（Ｐｉｎ  ｔｏ  Ｐｉｎの遅延）を求める。Ｐｉｎ  ｔｏ  Ｐｉｎの遅延を求める際、プロセッサ２１は、セルに含まれるトランジスタを抵抗と容量を含むネットリストで表し、トランジスタの過渡特性をＳｐｉｃｅなどの回路シミュレーションで抽出して遅延テーブルを作成する。たとえば、プロセッサ２１は、入力スルーレートなどの条件を変えて、遅延変化量をテーブル化する。
【００４９】
ステップＳ１０の処理で生成される伝送遅延情報３０と、ステップＳ１１の処理で生成される内部遅延情報３１は、たとえば、ＳＤＦ（Standard Delay Format）で記述されたファイルとして、ＨＤＤ２３に格納される。
【００５０】
その後、プロセッサ２１は、伝送遅延情報３０及び内部遅延情報３１に基づき、解析対象のシステム全体（ＳｉＰなどの半導体装置全体）のＳＴＡを行う（ステップＳ１２）。そして、プロセッサ２１は、たとえば、図４に示したようなグラフィック処理装置２４を制御して、ＳＴＡの解析結果を、たとえば、図４に示したようなモニタ２４ａに出力（表示）させる（ステップＳ１３）。
【００５１】
また、プロセッサ２１は、ＳＴＡの解析結果が、所定のタイミング制約を満たしているか否かを判定する（ステップＳ１４）。プロセッサ２１は、タイミング制約が満たされていないと判定したときには、設計修正処理を行い、タイミング制約が満たされていると判定したときには、タイミング解析処理を終え、その後、マスクデータの生成処理などを行う。
【００５２】
なお、上記の各ステップの順序は一例であり、上記の例に限定されるものではない。たとえば、ステップＳ１１の処理は、ステップＳ１０の処理の前に行ってもよいし、ステップＳ１０の処理と並列に行ってもよい。
【００５３】
以下、ステップＳ１０の処理の一例を説明する。
（Ｓｉインターポーザの伝送遅延の算出処理）
図６は、Ｓｉインターポーザの伝送遅延の算出処理の一例の流れを示すフローチャートである。
【００５４】
まず、プロセッサ２１は、たとえば、ＨＤＤ２３に格納されている、Ｓｉインターポーザのネットリスト３２、レイアウトデータ３３及び遅延情報ライブラリ３４のデータを読み込む（ステップＳ２０）。
【００５５】
次に、プロセッサ２１は、ネットリスト３２から、Ｓｉインターポーザに含まれる各配線（ネット）のネット名を抽出する（ステップＳ２１）。
そして、プロセッサ２１は、レイアウトデータ３３から、各ネットに対応したレイアウトパターンを抽出し（ステップＳ２２）、ネット名とレイアウトパターンを関連付けたパスライブラリを生成する（ステップＳ２３）。ステップＳ２３の処理の例については、後述する。
【００５６】
その後、プロセッサ２１は、パスライブラリ３５に基づき、遅延情報ライブラリ３４から、各ネットに対応した遅延情報を選択し（ステップＳ２４）、選択した遅延情報からチップ間の伝送遅延を算出する（ステップＳ２５）。これによって、伝送遅延情報３０が生成される。
【００５７】
以下、遅延情報ライブラリ３４の作成方法を説明する。なお、以下では、タイミング解析処理を行うコンピュータ２０が、遅延情報ライブラリ３４を作成するものとして説明するが、他のコンピュータが遅延情報ライブラリ３４を作成するようにしてもよい。
【００５８】
（遅延情報ライブラリ３４の作成方法）
遅延情報ライブラリ３４の作成の際、Ｓｉインターポーザは、たとえば、以下に示すような３つのパターンの配線形状で規定される。
【００５９】
図７は、Ｓｉインターポーザの３つのパターンの配線形状の例を示す図である。
図７には、直線状のパターンＡの他、斜めに折り曲げられたパターンＢ、直角に折り曲げられたパターンＣが示されている。そしてパターンＡ〜Ｃごとに、長さＬｅｎ１，Ｌｅｎ２，Ｌｅｎ３、幅Ｗ１，Ｗ２，Ｗ３の範囲が設定される。
【００６０】
たとえば、長さＬｅｎ１〜Ｌｅｎ３については、１０，１５，２０，４０，５０［ｍｍ］の５種類の長さが設定され、幅Ｗ１〜Ｗ３については、１０，２０，３０［μｍ］の３種類の幅が設定される。
【００６１】
なお、Ｓｉインターポーザの配置配線処理においても上記の３つのパターンの配線形状が用いられる。自動配置配線を行うと、冗長な配線間容量と相互インダクタンスとが増加し、ノイズの影響が分析しづらいため（特に遠端クロストークの影響の予想が難しい）ため、配線形状は、オングリッド設計により固定パターンとすることで、分析を容易にできる。
【００６２】
図８は、配置配線処理で使用されるＳｉインターポーザの配線パターンの例を示す図である。
図８には、図７のパターンＡに対応した配線パターン３６ａ、パターンＢに対応した配線パターン３６ｂ、パターンＣに対応した配線パターン３６ｃが、グリッド単位で設定されている。
【００６３】
図７の配線形状、長さＬｅｎ１〜Ｌｅｎ３または幅Ｗ１〜Ｗ３も、オングリッド設計で検証対象の半導体装置のＳｉインターポーザの配置配線処理を行う際のグリッド単位で設定されている。
【００６４】
図９は、Ｓｉインターポーザでの伝送遅延を計算するためのシミュレーションモデルの一例を示す図である。
シミュレーションモデル４０は、Ｓｉインターポーザを示している。図９に示す例では、Ｓｉインターポーザを、それぞれ３つの抵抗Ｒ１，Ｒ２，Ｒ３、容量Ｃ１，Ｃ２，Ｃ３、インダクタＬ１，Ｌ２，Ｌ３を含む回路で表しているが、３つに限定されない。
【００６５】
Ｓｉインターポーザの一端の端子４１には、所定の値（たとえば、１００ｏｈｍ）の抵抗Ｒ０を介して、電圧Ｖｉｎが印加される。プロセッサ２１は、このようなシミュレーションモデル４０を用いて、Ｓｉインターポーザの他端の端子４２と端子４１間での伝送遅延を算出する。
【００６６】
プロセッサ２１は、シミュレーションモデル４０の各パラメータの値を、前述の３つのパターンＡ〜Ｃごと、所定の範囲の長さＬｅｎ１〜Ｌｅｎ３、幅Ｗ１〜Ｗ３に基づいて変化させて、伝送遅延を算出する。なお、パターンＡ〜Ｃの厚さは、一定値とする。
【００６７】
たとえば、パターンＡにおいて、幅Ｗ１が１０［μｍ］で、Ｌ＝４００［ｎＨ／ｍ］、Ｃ＝２０［ｐＦ／ｍ］、Ｒ＝２００［ｏｈｍ／ｍ］であるとき、抵抗Ｒ１〜Ｒ３の各値は、２００×Ｌｅｎ１／３［ｏｈｍ］となる。また、上記の条件のとき、容量Ｃ１〜Ｃ３の各値は、２０×Ｌｅｎ１／３［ｐＦ］、インダクタＬ１〜Ｌ３の各値は、４００×Ｌｅｎ１／３［ｎＨ］となる。
【００６８】
そして、プロセッサ２１は、長さＬｅｎ１を変えて（たとえば、１０，１５，２０，４０，５０［ｍｍ］と変化させる）、伝送遅延を算出する。
プロセッサ２１は、幅Ｗ１が２０，３０［μｍ］の場合も同様の処理で伝送遅延を算出する。これによって、パターンＡについての伝送遅延が算出される。パターンＢ，Ｃについても同様の処理で伝送遅延が算出される。
【００６９】
プロセッサ２１は、以上のような処理で算出した伝送遅延から、たとえば、以下のような遅延情報ライブラリ３４を生成する。
図１０は、遅延情報ライブラリの一例を示す図である。
【００７０】
図１０の遅延情報ライブラリ３４において、テーブル３４ａ，３４ｂには、パターンＡにおいて、長さＬｅｎ１＝１０，１５，２０，３０，４０，５０ｎｍ、幅Ｗ１＝１０，２０，３０μｍと変化させたときの、伝送遅延の情報が含まれている。
【００７１】
パターンＢ，Ｃについても同様のテーブルが作成される。
次に、ステップＳ２３のパスライブラリ３５の生成処理の一例を説明する。
（パスライブラリ３５の生成方法）
プロセッサ２１は、ネットリスト３２とレイアウトデータ３３とを対応づけたパスライブラリ３５を生成する。
【００７２】
図１１は、Ｓｉインターポーザの一例を示す図である。
図１１には、チップ５１とチップ５２とを接続するＳｉインターポーザ５３の例が示されている。Ｓｉインターポーザ５３は、端子５３ａ，５３ｂ間に接続された配線５３ｃと、端子５３ｄ，５３ｅ間に接続された配線５３ｆを有している。
【００７３】
端子５３ａは、チップ５１の出力バッファ５１ａに接続されており、端子５３ｂは、チップ５２の入力バッファ５２ａに接続されている。
端子５３ｄは、チップ５１の入力バッファ５１ｂに接続されており、端子５３ｅは、チップ５２の出力バッファ５２ｂに接続されている。
【００７４】
ネットリスト３２では、配線５３ｃ，５３ｆに、ネット名が割り当てられている。以下の説明では、配線５３ｃに、ネット名“Ｎｅｔ−Ａ”、配線５３ｆに、ネット名“Ｎｅｔ−Ｂ”が割り当てられているものとする。
【００７５】
図１２は、Ｓｉインターポーザのレイアウト例である。
配線パターン６０は、図１１の配線５３ｃに対応し、配線パターン６１は、図１１の配線５３ｆに対応している。
【００７６】
プロセッサ２１は、ネットリスト３２に記述されている論理情報とレイアウトデータ３３に記述されている物理情報とをマージして、各配線パターン６０，６１に、論理情報を割り当て、以下に示すようなパスライブラリを生成する。
【００７７】
図１３は、パスライブラリの一例を示す図である。
パスライブラリ３５には、ネット名“Ｎｅｔ−Ａ”の配線５３ｃに接続される端子５３ａ（Ｉｎｐｕｔ）の端子名“ＰＩＮ−Ａ”、端子５３ｂ（Ｏｕｔｐｕｔ）の端子名“ＰＩＮ−Ｂ”、配線５３ｃがどのくらいの電流で駆動されるかが記述されている。さらに、配線５３ｃに対応する配線パターン６０に割り当てられたネット名“Ｎｅｔ−Ａ−１”と、配線パターン６０の長さＬｅｎ、幅Ｗｉｄ、ＲＬＣの各値が記述されている。
【００７８】
ＲＬＣの各値は、ネットリスト３２とレイアウトデータ３３から、ＲＬＣエクストラツールを用いて抽出できる。パスライブラリ３５には、ネット名“Ｎｅｔ−Ｂ”の配線５３ｆに関しても同様の情報が記述されている。
【００７９】
さらに、パスライブラリ３５には、配線パターン６０，６１間の距離（Ｓ）と、配線パターン６０，６１による配線間容量（Ｃａｐ）の値が記述されている。
なお、Ｓｉインターポーザ５３のレイアウトは、前述したパターンＡが複数組み合わせられたものであってもよい。
【００８０】
図１４は、Ｓｉインターポーザの他のレイアウト例である。
配線パターン６２，６３，６４は、図１１の配線５３ｃに対応し、配線パターン６５，６６，６７は、図１１の配線５３ｆに対応している。各配線パターン６２〜６７は、前述したパターンＡの形状となっている。このようなレイアウトに対応したパスライブラリは、たとえば、以下のようになる。
【００８１】
図１５は、パスライブラリの他の例を示す図である。
パスライブラリ３５ａには、ネット名“Ｎｅｔ−Ａ”の配線５３ｃに接続される端子５３ａ（Ｉｎｐｕｔ）の端子名“ＰＩＮ−Ａ”、端子５３ｂ（Ｏｕｔｐｕｔ）の端子名“ＰＩＮ−Ｂ”、配線５３ｃがどのくらいの電流で駆動されるかが記述されている。さらに、配線５３ｃに対応する配線パターン６２〜６４に割り当てられたネット名“Ｎｅｔ−Ａ−１”，“Ｎｅｔ−Ａ−２”，“Ｎｅｔ−Ａ−３”と、配線パターン６２〜６４の長さＬｅｎ、幅Ｗｉｄ、ＲＬＣの各値が記述されている。パスライブラリ３５ａには、ネット名“Ｎｅｔ−Ｂ”の配線５３ｆに関しても同様の情報が記述されている。
【００８２】
さらに、パスライブラリ３５ａには、配線パターン６２，６５間、配線パターン６３，６６間及び配線パターン６４，６７間の距離（Ｓ）と、各パターン対による配線間容量（Ｃａｐ）の値が記述されている。
【００８３】
プロセッサ２１は、以上のようなパスライブラリ３５（またはパスライブラリ３５ａ）の情報を生成することで、Ｓｉインターポーザの形状及びＲＬＣの各値を特定する。そして、プロセッサ２１は、前述したステップＳ２４の処理で、遅延情報ライブラリ３４から、各ネットに対応した遅延情報を選択する。そして、プロセッサ２１は、選択した遅延情報からチップ間の伝送遅延を算出する。
【００８４】
上記のようなタイミング解析方法では、算出される伝送遅延にＬ成分が反映されるため、Ｓｉインターポーザの伝送遅延が精度良く算出できる。これによって、タイミング解析の精度が向上する。
【００８５】
また、遅延情報ライブラリ３４は、たとえば、予めＨＤＤ２３に格納されており、解析対象の半導体装置の伝送線路の形状及びＲＬＣ成分に基づいて、遅延情報が抽出され、伝送遅延が求められる。そのため、Ｓｐｉｃｅなどによる過渡解析で伝送遅延をその都度計算するよりも、解析時間を短縮できる。
【００８６】
また、従来では、異なるプロセス（２８ｎｍプロセス、６５ｎｍプロセス、９０ｎｍプロセスなど）で作成されるチップを含むＳｉＰでは、各チップ及びＳｉインターポーザで、ＳＴＡが行われており、ＳｉＰ全体でＳＴＡが実施されなかった。そのため、プロセスの違いによるＳＴＡツールのバージョンの差異などによって、計算結果に誤差が生じる可能性があった。
【００８７】
これに対し、本実施の形態の設計方法では、Ｓｉインターポーザの伝送遅延を示す伝送遅延情報３０と、各チップの内部遅延を示す内部遅延情報３１に基づき、システム全体のＳＴＡが行われるため、そのような誤差が生じにくい。
【００８８】
また、ネットリスト３２とレイアウトデータ３３とを対応づけたパスライブラリ３５を作成して、Ｓｉインターポーザの形状及びＲＬＣ成分を特定することで、遅延情報ライブラリ３４からの伝送遅延の選択が容易になる。
【００８９】
また、遅延情報ライブラリ３４作成時に設定されるＳｉインターポーザの形状、長さまたは幅は、オングリッド設計で解析対象の半導体装置のＳｉインターポーザの配置配線処理を行う際のグリッドに合わせて設定されているため、計算量を減らせる。
【００９０】
以上、実施の形態に基づき、本発明の設計方法、設計装置及びプログラムの一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
【符号の説明】
【００９１】
１  設計装置（コンピュータ）
２  プロセッサ
３  記憶部
５  半導体装置
６，７  チップ
８  伝送線路（Ｓｉインターポーザ）
８ａ，８ｂ  配線パターン
１０  遅延情報ライブラリ
１０ａ，１０ｂ，１０ｃ  遅延情報
１１  ネットリスト
１２  レイアウトデータ
【図１】
2016134080.tif 000003
【図２】
2016134080.tif 000004
【図３】
2016134080.tif 000005
【図４】
2016134080.tif 000006
【図５】
2016134080.tif 000007
【図６】
2016134080.tif 000008
【図７】
2016134080.tif 000009
【図８】
2016134080.tif 000010
【図９】
2016134080.tif 000011
【図１０】
2016134080.tif 000012
【図１１】
2016134080.tif 000013
【図１２】
2016134080.tif 000014
【図１３】
2016134080.tif 000015
【図１４】
2016134080.tif 000016
【図１５】
2016134080.tif 000017