(57)【要約】【課題】積層ＩＣのすべての階層を同時に設計することを可能とするＰＤＫの作成方法およびＰＤＫの作成プログラムを提供する。【解決手段】半導体装置に用いられる複数のチップに対応して、設計情報ライブラリを複数取得することＳ１０１と、設計情報ライブラリに含まれる文字列に、設計情報ライブラリごとに異なる識別子を付与することＳ１０２と、複数の設計情報ライブラリを統合することＳ１０３と、を備える。設計情報ライブラリに含まれる文字列に、設計情報ライブラリごとに異なる識別子を付与することにより、シミュレーションモデルの名称等を設計情報ライブラリごとに異なるものとすることができる。したがって、シミュレーションモデルの名称等の重複を回避しながら複数の設計情報ライブラリを統合することができる。そして、これにより作成された設計情報ライブラリを用いることで、積層ＩＣのすべての階層を同時に設計することが可能となる。【選択図】図４
2017156877.tif 000002
【特許請求の範囲】
【請求項１】
半導体装置に用いられる複数のチップに対応して、設計情報ライブラリを複数取得すること（Ｓ１０１）と、
前記設計情報ライブラリに含まれる文字列に、前記設計情報ライブラリごとに異なる識別子を付与すること（Ｓ１０２）と、
複数の前記設計情報ライブラリを統合すること（Ｓ１０３）と、を備える設計情報ライブラリの作成方法。
【請求項２】
半導体装置に用いられる複数のチップに対応して、設計情報ライブラリを複数取得する取得部（Ｓ１０１）、
前記設計情報ライブラリに含まれる文字列に、前記設計情報ライブラリごとに異なる識別子を付与する付与部（Ｓ１０２）、および、
複数の前記設計情報ライブラリを統合する統合部（Ｓ１０３）としてコンピュータを機能させる設計情報ライブラリの作成プログラム。
【請求項３】
前記複数のチップのうち少なくとも１つのチップに貫通ビア（２４、３４）が形成されており、
前記取得部は、前記貫通ビアに対応して設計情報ライブラリを取得する請求項２に記載の設計情報ライブラリの作成プログラム。
【請求項４】
前記付与部は、前記複数のチップそれぞれのテクノロジ情報を示す文字列に識別子を付与する請求項２または３に記載の設計情報ライブラリの作成プログラム。
【請求項５】
前記付与部は、前記設計情報ライブラリに含まれるファイル名に識別子を付与する請求項２ないし４のいずれか１つに記載の設計情報ライブラリの作成プログラム。
【請求項６】
前記付与部は、前記複数のチップそれぞれの定義ファイルに含まれる文字列に識別子を付与する請求項２ないし５のいずれか１つに記載の設計情報ライブラリの作成プログラム。
【請求項７】
前記付与部は、前記複数のチップそれぞれのレイアウトを検証するためのルールファイルに含まれる文字列に識別子を付与する請求項２ないし６のいずれか１つに記載の設計情報ライブラリの作成プログラム。
【請求項８】
前記付与部は、前記複数のチップそれぞれの接続を検証するためのルールファイルに含まれる文字列に識別子を付与する請求項２ないし７のいずれか１つに記載の設計情報ライブラリの作成プログラム。
【請求項９】
前記付与部は、前記複数のチップそれぞれの回路シミュレーションを行うためのモデルファイルに含まれる文字列に識別子を付与する請求項２ないし８のいずれか１つに記載の設計情報ライブラリの作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計情報ライブラリ（以下ＰＤＫ：Process Design Kit）の作成方法およびＰＤＫの作成プログラムに関するものである。
【背景技術】
【０００２】
複数のチップを備える半導体装置の製造では、半導体装置を設計する工程と、設計に基づいて半導体装置を構成する各チップを製造する前工程と、製造された各チップを加工し、複数のチップを接合する後工程とが行われる。
【０００３】
チップの製造、加工等を行うファウンドリは、チップの設計および検証を行うためのデータであるＰＤＫを設計者に提供している。そして、設計者は、提供されたＰＤＫと、このＰＤＫが対応している設計ツールとを用いて、半導体装置の設計および検証を行う。
【０００４】
ＰＤＫを用いた半導体装置の設計に関して、例えば特許文献１では、複数の半導体メーカ用ライブラリから選択したライブラリと、複数のツールから選択したツールとを組み合わせて利用するＬＳＩ設計用ＣＡＤシステムが提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−２６８０６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
半導体装置の製造においては、半導体装置を構成するすべてのチップが１つのファウンドリで製造されるとは限らず、複数のチップのうち１つのチップと、他の１つのチップとが、異なるファウンドリで製造される場合がある。
【０００７】
この場合、設計者は、各チップを製造するファウンドリから提供される２つ以上のＰＤＫを用いて半導体装置の設計を行う。ファウンドリがＰＤＫを作成する際には、通常、他のファウンドリから提供されるＰＤＫに含まれる文字列との重複等は考慮されない。そのため、複数のファウンドリから提供される複数のＰＤＫを単に統合すると、シミュレーションモデルの名称の重複等の問題が生じることがある。
【０００８】
したがって、現状では、各ファウンドリから提供されるＰＤＫを用いて各チップを個別に設計している。また、複数のチップが積層されてなる半導体装置である積層ＩＣ（集積回路）の設計では、積層ＩＣを構成するすべてのチップを設計した後、チップが有する端子間の位置合わせ等の積層処理を行っている。
【０００９】
このような設計方法では、積層ＩＣのすべての階層を同時に設計することができず、積層ＩＣの設計および検証が複雑かつ困難になっている。また、特許文献１に記載のＬＳＩ設計用ＣＡＤシステムを用いたとしても、同様である。
【００１０】
本発明は上記点に鑑みて、積層ＩＣのすべての階層を同時に設計することを可能とするＰＤＫの作成方法およびＰＤＫの作成プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、請求項１に記載の発明では、半導体装置に用いられる複数のチップに対応して、設計情報ライブラリを複数取得すること（Ｓ１０１）と、設計情報ライブラリに含まれる文字列に、設計情報ライブラリごとに異なる識別子を付与すること（Ｓ１０２）と、複数の設計情報ライブラリを統合すること（Ｓ１０３）と、を備える。
【００１２】
また、請求項２に記載の発明では、半導体装置に用いられる複数のチップに対応して、設計情報ライブラリを複数取得する取得部（Ｓ１０１）、設計情報ライブラリに含まれる文字列に、設計情報ライブラリごとに異なる識別子を付与する付与部（Ｓ１０２）、および、複数の設計情報ライブラリを統合する統合部（Ｓ１０３）としてコンピュータを機能させる。
【００１３】
複数のＰＤＫにおいてシミュレーションモデルの名称等が重複した場合にも、このように、ＰＤＫに含まれる文字列に、ＰＤＫごとに異なる識別子を付与することにより、シミュレーションモデルの名称等をＰＤＫごとに異なるものとすることができる。したがって、シミュレーションモデルの名称等の重複を回避しながら複数のＰＤＫを統合することができる。そして、複数のＰＤＫを統合することで作成されたＰＤＫを用いることにより、積層ＩＣのすべての階層を同時に設計することが可能となる。
【００１４】
なお、上記各手段の括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係の一例を示すものである。
【図面の簡単な説明】
【００１５】
【図１】第１実施形態が適用される半導体装置の断面図である。
【図２】第１実施形態が適用される半導体装置の製造方法を示す図である。
【図３】ＰＤＫの構成を示す図である。
【図４】統合ＰＤＫの作成方法を示すフローチャートである。
【図５】識別子の付与方法を示すフローチャートである。
【図６】レイヤ番号の定義方法を示すフローチャートである。
【図７】第１実施形態が適用されるテクノロジライブラリの統合方法を示す図である。
【図８】第１実施形態が適用されるtechfileを示す図である。
【図９】第１実施形態が適用されるtechfileを示す図である。
【図１０】第１実施形態が適用されるtechfileを示す図である。
【図１１】第１実施形態が適用される統合したtechfileを示す図である。
【図１２】第１実施形態が適用されるlayermap fileを示す図である。
【図１３】第１実施形態が適用されるlayermap fileを示す図である。
【図１４】第１実施形態が適用されるlayermap fileを示す図である。
【図１５】第１実施形態が適用される統合したlayermap fileを示す図である。
【図１６】第１実施形態が適用されるdisplay.drfを示す図である。
【図１７】第１実施形態が適用されるdisplay.drfを示す図である。
【図１８】第１実施形態が適用されるdisplay.drfを示す図である。
【図１９】第１実施形態が適用される統合したdisplay.drfを示す図である。
【図２０】第１実施形態が適用されるＤＲＣルールコードを示す図である。
【図２１】第１実施形態が適用されるＤＲＣルールコードを示す図である。
【図２２】第１実施形態が適用されるＤＲＣルールコードを示す図である。
【図２３】第１実施形態が適用される統合したＤＲＣルールコードを示す図である。
【図２４】第１実施形態が適用されるＬＶＳルールコードを示す図である。
【図２５】第１実施形態が適用されるＬＶＳルールコードを示す図である。
【図２６】第１実施形態が適用される統合したＬＶＳルールコードを示す図である。
【図２７】第１実施形態が適用されるＳＰＩＣＥモデルの統合方法を示す図である。
【図２８】半導体装置の従来の製造方法を示す図である。
【図２９】ＴＳＶに関する記述が追加されたＰＤＫの構成を示す図である。
【図３０】バンプに関する記述が追加されたＰＤＫの構成を示す図である。
【図３１】第２実施形態が適用される半導体装置の断面図である。
【図３２】第２実施形態が適用されるtechfileを示す図である。
【図３３】第２実施形態が適用されるtechfileを示す図である。
【図３４】第２実施形態が適用される統合したtechfileを示す図である。
【図３５】他の実施形態が適用される半導体装置の断面図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について図に基づいて説明する。なお、以下の各実施形態相互において、互いに同一もしくは均等である部分には、同一符号を付して説明を行う。
【００１７】
（第１実施形態）
本発明の第１実施形態について説明する。まず、本実施形態が適用される半導体装置について、図１を用いて説明する。図１に示す半導体装置１は、矩形板状のチップ２とチップ３とが積層されてなる２層の積層ＩＣであり、チップ２は、チップ２とチップ３との間に配置されたバンプ４を介して、チップ３と接続されている。
【００１８】
チップ２は、例えばＳｉ等により構成される基板の上に、配線層２１、２２、ビア２３が形成された構成とされている。図１に示すように、チップ２の内部に配線層２１が形成されており、チップ２の表面に配線層２２が形成されている。ビア２３は、配線層２１から配線層２２に至るように形成されており、配線層２１は、ビア２３を介して配線層２２と電気的に接続されている。
【００１９】
チップ２の裏面側には、シリコン貫通ビア（以下ＴＳＶ：Through-Silicon Via）２４が形成されている。ＴＳＶ２４は、チップ２の裏面から配線層２１に至るように形成されており、配線層２１は、ＴＳＶ２４を介して、バンプ４に接続されている。ＴＳＶ２４は、貫通ビアに相当する。
【００２０】
チップ３は、例えばＳｉ等により構成される基板の上に、配線層３１、３２、ビア３３が形成された構成とされている。図１に示すように、チップ３の内部に配線層３１が形成されており、チップ３の表面に配線層３２が形成されている。ビア３３は、配線層３１から配線層３２に至るように形成されており、配線層３１は、ビア３３を介して配線層３２と電気的に接続されている。
【００２１】
配線層３２の表面にはバンプ４が配置されており、配線層３２は、バンプ４と電気的に接続されている。これにより、配線層３２とＴＳＶ２４とが電気的に接続されている。
【００２２】
本実施形態における半導体装置１の製造方法について図２を用いて説明する。本実施形態では、チップ２をファウンドリであるＡ社で製造し、チップ３をＡ社とは異なるファウンドリであるＢ社で製造する。
【００２３】
半導体装置１の製造では、半導体装置１を設計する工程と、設計に基づいて半導体装置１を構成するチップ２、チップ３を製造する前工程と、製造された各チップに、Ａ社やＢ社とは異なるファウンドリでＴＳＶとバンプを形成し、チップ２とチップ３とを接合する後工程とが行われる。
【００２４】
図２に示すように、半導体装置１を設計する工程では、回路設計と、レイアウト設計とが行われる。回路設計では、チップ２、チップ３の仕様が検討された後、チップ２、チップ３の統合設計が行われる。そして、チップ２、チップ３の電気的接続の検証が行われる。
【００２５】
レイアウト設計では、チップ２、チップ３の統合レイアウト設計が行われ、その後、チップ２、チップ３の統合バックアノテーションが行われる。半導体装置１を設計する工程の詳細については、後述する。
【００２６】
チップ２、チップ３を製造する工程では、Ａ社、Ｂ社において、チップ２、チップ３の製造、ウエハ検査が行われる。
【００２７】
後工程では、ウエハの薄化、および、ＴＳＶ２４の形成が行われる。そして、チップ２の裏面にバンプ４が形成され、チップ２、チップ３が形成されたウエハがダイシングされた後、チップ２とチップ３が接合される。その後、積層検査、パッケージ、パッケージ検査、評価が行われる。
【００２８】
半導体装置１を設計する工程の詳細について説明する。本実施形態では、半導体装置の設計ツールであるＶｉｒｔｕｏｓｏ（登録商標）に対応したＰＤＫを用いて半導体装置１が設計される。
【００２９】
図３に示すように、ＰＤＫには、対応するチップのテクノロジ情報が含まれている。具体的には、ＰＤＫには、テクノロジライブラリ、検証ルールファイル、回路シミュレーションを行うためのモデルファイル、レイヤマップ等の定義ファイルが含まれている。また、検証ルールファイルには、対応するチップのレイアウトを検証するためのＤＲＣ（Design Rule Checker）ルールコード、対応するチップの接続を検証するためのＬＶＳ（Layout Versus Schematic）ルールコードが含まれている。
【００３０】
本実施形態では、Ａ社が提供するＰＤＫと、Ｂ社が提供するＰＤＫと、ＴＳＶプロセスを行うファウンドリが提供するＰＤＫとが統合され、これにより作成された統合ＰＤＫを用いて、半導体装置１の設計が行われる。
【００３１】
統合ＰＤＫの作成方法について、図４〜図２７を用いて説明する。本実施形態では、図４に示す各ステップを順に実行するＰＤＫの作成プログラムを用いて統合ＰＤＫが作成される。
【００３２】
図４に示すステップＳ１０１において、ＰＤＫの作成プログラムは、半導体装置１に用いられる複数のチップに対応して、あらかじめ用意されたＰＤＫを複数取得する。本実施形態では、Ａ社、Ｂ社が提供するＰＤＫと、ＴＳＶプロセスを行うファウンドリが提供するＰＤＫがあらかじめ用意される。そして、ＰＤＫの作成プログラムは、チップ２、チップ３に対応して、Ａ社のＰＤＫと、Ｂ社のＰＤＫとを読み込み、チップ２に形成されるＴＳＶ２４に対応して、ＴＳＶプロセスのＰＤＫを読み込む。
【００３３】
ステップＳ１０２では、ＰＤＫの作成プログラムは、各ＰＤＫに含まれる文字列に、ＰＤＫごとに異なる識別子を付与する。ステップＳ１０２では、具体的には、図５に示す処理が実行される。
【００３４】
まず、ＰＤＫの作成プログラムは、ステップＳ２０１においてｉ＝１とし、ステップＳ２０２においてｉ≦Ｎであるか否かを判定する。ここで、Ｎは半導体装置１を構成するチップの数である。本実施形態では、Ｎ＝２である。
【００３５】
ステップＳ２０２においてｉ≦Ｎであると判定した場合、ＰＤＫの作成プログラムは、ステップＳ２０３において、ｉ番目のチップのＰＤＫに含まれるレイヤ名、素子名、中間データ名等の文字列を、元の文字列の末尾に「＿Ｔ」とｉとを組み合わせた文字列を付与した文字列に置換する。例えば、ｉ＝１の場合には、元の文字列の末尾に「＿Ｔ１」が付与される。
【００３６】
なお、本実施形態では、チップ２を１番目のチップとし、チップ３を２番目のチップとする。したがって、チップ２のＰＤＫに含まれる文字列には、「＿Ｔ１」が付与され、チップ３のＰＤＫに含まれる文字列には、「＿Ｔ２」が付与される。
【００３７】
また、ＴＳＶのＰＤＫに含まれる文字列には、ＴＳＶが形成されるチップのＰＤＫと同じ識別子が付与される。本実施形態では、ＴＳＶ２４はチップ２に形成されるので、ＴＳＶのＰＤＫに含まれる文字列には、「＿Ｔ１」が付与される。
【００３８】
そして、ＰＤＫの作成プログラムは、ステップＳ２０４において、ｉ番目のチップのＰＤＫに含まれるセルデータを構成するファイル名あるいはディレクトリ名を、元のファイル名の末尾に「＿Ｔ」とｉとを組み合わせた文字列を付加したファイル名に置換する。その後、ＰＤＫの作成プログラムは、ステップＳ２０５においてｉに１を加算し、ステップＳ２０２へ進む。
【００３９】
ステップＳ２０２においてｉ≦Ｎでないと判定した場合、ＰＤＫの作成プログラムは、ステップＳ１０２の処理を終了する。
【００４０】
図４に示すステップＳ１０３では、ＰＤＫの作成プログラムは、ステップＳ１０２において識別子を付与された複数のＰＤＫを統合する。なお、ＰＤＫに含まれるファイルのうち、レイヤ番号を含むものについては、ステップＳ１０３において図６に示す処理が実行される。図６に示す処理では、必要に応じてレイヤ番号が変更され、レイヤ番号の重複が回避される。
【００４１】
ＰＤＫの作成プログラムは、図６に示すステップＳ３０１において、ｉ＝１とし、ステップＳ３０２において、ｉ≦Ｎであるか否かを判定する。
【００４２】
ステップＳ３０２においてｉ≦Ｎであると判定した場合、ＰＤＫの作成プログラムは、ステップＳ３０３においてｊ＝１として、ステップＳ３０４に進む。ステップＳ３０４では、ＰＤＫの作成プログラムは、ｊ≦Ｍであるか否かを判定する。
【００４３】
ここで、Ｍはｉ番目のチップが利用するテクノロジのレイヤ総数である。なお、各チップのレイヤ総数は、例えば２００程度あるが、後述する図８〜図２７では、一部のレイヤについての記述のみを記載している。
【００４４】
ステップＳ３０４においてｊ≦Ｍであると判定した場合、ＰＤＫの作成プログラムは、ステップＳ３０５において、元のＰＤＫにおけるｉ番目のチップのｊ番目のレイヤ番号を変数Ｌに格納し、ステップＳ３０６において、レイヤ番号Ｌが定義済みであるか否かを判定する。
【００４５】
ステップＳ３０６においてレイヤ番号Ｌが定義済みであると判定した場合、ＰＤＫの作成プログラムは、ステップＳ３０７において、未定義番号から選んだ１つの番号を、統合ＰＤＫにおけるｉ番目のチップのｊ番目のレイヤ番号とし、ステップＳ３０８に進む。未定義番号から選んだ１つの番号とは、例えば、定義済みのレイヤ番号のうち最も大きい番号に１を加算した番号である。
【００４６】
ステップＳ３０６においてレイヤ番号Ｌが定義済みでないと判定した場合、ＰＤＫの作成プログラムは、ステップＳ３０９において、統合ＰＤＫにおけるｉ番目のチップのｊ番目のレイヤ番号をＬとし、ステップＳ３０８に進む。
【００４７】
ステップＳ３０８では、ＰＤＫの作成プログラムは、ｊに１を加算し、ステップＳ３０４に進む。ステップＳ３０４においてｊ≦Ｍでないと判定した場合、ＰＤＫの作成プログラムは、ステップＳ３１０においてｉに１を加算し、ステップＳ３０２に進む。ステップＳ３０２においてｉ≦Ｎでないと判定した場合、ＰＤＫの作成プログラムは、ステップＳ１０３におけるレイヤ番号の重複を回避するための処理を終了する。
【００４８】
このような処理を実行することにより、図７〜図２７に示すように、テクノロジライブラリ、ＤＲＣルールコード、ＬＶＳルールコード、シミュレーション用モデルファイル等に識別子が付与される。そして、識別子が付与されたファイルが統合されて、統合ＰＤＫが作成される。
【００４９】
例えば、図７に示すように、各ＰＤＫのテクノロジライブラリについては、セル名、すなわち、セル情報ファイルの名称に識別子が付与される。具体的には、チップ２に対応するＡ社のＰＤＫにおけるセル名は、元のセル名である「ｎｃｈ」の末尾に「＿Ｔ１」が付与されたセル名である「ｎｃｈ＿Ｔ１」に置換される。また、チップ３に対応するＢ社のＰＤＫにおけるセル名は、元のセル名である「ｎｃｈ」の末尾に「＿Ｔ２」が付与されたセル名である「ｎｃｈ＿Ｔ２」に置換される。また、ＴＳＶのＰＤＫにおけるセル名は、元のセル名である「ＴＳＶ」の末尾に「＿Ｔ１」が付与されたセル名である「ＴＳＶ＿Ｔ１」に置換される。その後、図７に示すように、これらのＰＤＫのセルデータディレクトリが統合される。
【００５０】
図７に示すように、識別子が付与される前には、Ａ社のＰＤＫにおけるセル名と、Ｂ社のＰＤＫにおけるセル名とが重複している。これに対し、各セル名を、元のセル名の末尾にＰＤＫごとに異なる識別子を付与したセル名に置換することにより、これらのセル名が互いに異なるものとなる。これにより、複数のＰＤＫを統合したときに、セル名の重複が回避される。
【００５１】
同様に、図８に示すように、Ａ社のＰＤＫのtechfileに含まれるレイヤ名等の文字列は、元の文字列の末尾に「＿Ｔ１」を付与した文字列に置換される。なお、techfileとは、各チップに含まれるレイヤのレイヤ名、レイヤ番号を定義するためのデータである。
【００５２】
本実施形態では、配線層２１、２２、ビア２３の元のレイヤ名は「Ｍ１」、「Ｍ２」、「Ｖ１」である。ステップＳ１０２では、これらのレイヤ名の末尾に「＿Ｔ１」が付与されて、各レイヤ名が「Ｍ１＿Ｔ１」、「Ｍ２＿Ｔ１」、「Ｖ１＿Ｔ１」に置換される。
【００５３】
また、図９に示すように、Ｂ社のＰＤＫのtechfileに含まれるレイヤ名等の文字列は、元の文字列の末尾に「＿Ｔ２」を付与した文字列に置換される。本実施形態では、配線層３１、３２、ビア３３の元のレイヤ名は「Ｍ１」、「Ｍ２」、「Ｖ１」である。ステップＳ１０２では、これらのレイヤ名の末尾に「＿Ｔ２」が付与されて、各レイヤ名が「Ｍ１＿Ｔ２」、「Ｍ２＿Ｔ２」、「Ｖ１＿Ｔ２」に置換される。
【００５４】
また、図１０に示すように、ＴＳＶのＰＤＫのtechfileに含まれるレイヤ名等の文字列は、元の文字列の末尾に「＿Ｔ１」を付与した文字列に置換される。本実施形態では、ＴＳＶ２４、バンプ４の元のレイヤ名は「ＴＳＶ」、「ｕＢＵＭＰ」である。ステップＳ１０２では、これらのレイヤ名の末尾に「＿Ｔ１」が付与されて、各レイヤ名が「ＴＳＶ＿Ｔ１」、「ｕＢＵＭＰ＿Ｔ１」に置換される。
【００５５】
図８、図９に示すように、識別子が付与される前には、Ａ社のＰＤＫにおけるレイヤ名と、Ｂ社のＰＤＫにおけるレイヤ名とが重複している。これに対し、各レイヤ名を、元のレイヤ名の末尾にＰＤＫごとに異なる識別子を付与したレイヤ名に置換することにより、これらのレイヤ名が互いに異なるものとなる。これにより、図１１に示すように、複数のＰＤＫを統合したときに、レイヤ名の重複が回避される。
【００５６】
また、techfileにはレイヤ番号が含まれているので、techfileに関しては図６に示す処理が行われる。チップ２は１番目のチップであり、また、Ａ社のＰＤＫの中でレイヤ番号の重複がないので、チップ２については、すべてのレイヤについてステップＳ３０９の処理が行われ、元のレイヤ番号が統合ＰＤＫにおけるレイヤ番号となる。本実施形態では、図８に示すように、配線層２１、２２、ビア２３の元のレイヤ番号は３１、３２、３３であり、図１１に示すように、統合ＰＤＫにおけるこれらのレイヤ番号も３１、３２、３３となる。
【００５７】
そして、チップ３は２番目のチップであり、Ｂ社のＰＤＫにおけるレイヤ番号は、Ａ社のＰＤＫのレイヤ番号と重複しているので、チップ３については、ステップＳ３０７の処理が行われ、未定義の番号から選択された番号が統合ＰＤＫにおけるレイヤ番号となる。本実施形態では、図９に示すように、配線層３１、３２、ビア３３の元のレイヤ番号は３１、３２、３３であり、図１１に示すように、統合ＰＤＫにおけるこれらのレイヤ番号は、３４、３５、３６となる。
【００５８】
また、図１０に示すように、ＴＳＶ２４、バンプ４の元のレイヤ番号は１０００、１００１であり、チップ２、３の構成要素のレイヤ番号と重複しないので、図１１に示すように、統合ＰＤＫにおけるＴＳＶ２４、バンプ４のレイヤ番号も、１０００、１００１となる。
【００５９】
図８、図９に示すように、レイヤ番号が変更される前には、Ａ社のＰＤＫにおけるレイヤ番号と、Ｂ社のＰＤＫにおけるレイヤ番号とが重複しているが、上記の処理を実行することにより、これらのレイヤ番号が互いに異なるものとなる。これにより、複数のＰＤＫを統合したときに、レイヤ番号の重複が回避される。
【００６０】
図１２〜図１５に示すように、layermap fileについても、レイヤ名とレイヤ番号の変更が行われ、ＰＤＫを統合したときのレイヤ名およびレイヤ番号の重複が回避される。なお、layermap fileとは、各チップの設計に関するデータを、設計ツールであるＶｉｒｔｕｏｓｏに対応した形式から、ファウンドリであるＡ社、Ｂ社が扱うＧＤＳ形式へ変換するためのデータである。
【００６１】
図１６〜図１９に示すように、display.drfについても、パケット名に含まれるレイヤ名の末尾にＰＤＫごとに異なる識別子が付与され、パケット名の重複が回避される。また、図６に示すレイヤ番号に関する処理と同様の処理がスティップル番号について行われ、スティップル番号の重複が回避される。また、同様に、セルの輪郭線の色および塗りつぶしの色の重複が回避される。なお、display.drfとは、設計ツールであるＶｉｒｔｕｏｓｏ上での各レイヤの表示方法等を設定するためのデータである。
【００６２】
図２０〜２３に示すように、ＤＲＣルールコードについても、レイヤ名とレイヤ番号の変更が行われ、ＰＤＫを統合したときのレイヤ名およびレイヤ番号の重複が回避される。また、「ｄｒｃＭ１」等の変数名にも識別子が付与され、変数名の重複が回避される。なお、ＤＲＣルールコードとは、レイアウト検証において確認する各レイヤの配置等の条件が記載されたデータであり、ここでは、Assura Design Rule Checker（Cadence Design Systems社）に対応した形式とされている。
【００６３】
図２４〜図２６に示すように、ＬＶＳルールコードについても、レイヤ名とレイヤ番号の変更が行われ、ＰＤＫを統合したときのレイヤ名およびレイヤ番号の重複が回避される。なお、ＬＶＳルールコードとは、レイアウトと回路図の対応の検証において用いられるデータであり、ここでは、Assura Layout Versus Schematic（Cadence Design Systems社）に対応した形式とされている。
【００６４】
なお、ＬＶＳルールコードについては、複数のＬＶＳルールコードを統合した後、図２６に示すように、異なるテクノロジ間の接続に関する記述が加えられる。
【００６５】
図２７に示すように、ＳＰＩＣＥモデルについても、レイヤ名の変更が行われ、ＰＤＫを統合したときのレイヤ名およびレイヤ番号の重複が回避される。ＳＰＩＣＥモデルとは、回路のシミュレーションに用いられるデータであり、ここでは、ＨＳＰＩＣＥ（登録商標）に対応した形式とされている。
【００６６】
本実施形態では、このような方法で統合ＰＤＫが作成され、この統合ＰＤＫを用いてチップ２、チップ３の設計が行われる。
【００６７】
ファウンドリがＰＤＫを作成する際には、通常、他のファウンドリから提供されるＰＤＫに含まれる文字列との重複等は考慮されない。そのため、複数のファウンドリから提供される複数のＰＤＫを単に統合すると、シミュレーションモデルの名称の重複等の問題が生じることがある。そのため、従来、設計者は、各ファウンドリから提供されるＰＤＫを用いて各チップを個別に設計し、その後、チップが有する端子間の位置合わせ等の積層処理を行っている。
【００６８】
具体的には、設計者は、図２８に示すように、チップ２、チップ３の回路を個別に設計し、電気的接続検証の後、チップ２、チップ３のレイアウト設計、バックアノテーションを個別に行っている。さらに、設計者は、バックアノテーションの後、チップ２、チップ３を製造する工程の前に、チップ２、チップ３を積層した状態でのレイアウト検証等の３次元積層検証を行っている。
【００６９】
このような設計方法では、チップ２とチップ３とを同時に設計することができない。例えば、チップ２の設計中にチップ２に含まれるセルの位置を変更し、これに合わせて、チップ３に含まれるセルの位置を変更する場合、設計ツール上で、使用中のＰＤＫをＡ社のＰＤＫからＢ社のＰＤＫに切り替える必要がある。
【００７０】
また、従来の設計方法では、チップ２とチップ３とを通じて１つの機能をなす回路を構成する場合、この回路全体の接続検証ができず、チップ間の接続端子部の位置合わせ等を確認することしかできない。また、この場合、機能検証のシミュレーションの実行にあたり、チップ２とチップ３との接続情報をＰＤＫに手動で追加する手間が発生する。
【００７１】
このように、従来の設計方法では、半導体装置１の設計および検証が複雑かつ困難なものとなっている。
【００７２】
これに対し、本実施形態では、各ＰＤＫに含まれる文字列に、ＰＤＫごとに異なる識別子を付与し、既存プロセスやＴＳＶ、バンプのＰＤＫを再定義している。したがって、シミュレーションモデルの名称等の重複を回避しながら複数のＰＤＫを統合することができる。そして、複数のＰＤＫを統合することで作成されたＰＤＫを用いることにより、半導体装置１のすべての階層を同時に設計することが可能となる。
【００７３】
例えば、設計中のチップをチップ２からチップ３に切り替える場合、設計ツール上で、使用中のＰＤＫを切り替える必要がなく、設計中のチップの切り替えをシームレスに行うことができる。
【００７４】
また、従来、半導体装置にＴＳＶ、バンプを形成する場合、設計者は、３次元半導体設計環境を構築するために、図２９、図３０に示すようにＴＳＶ、バンプに関するデータを各ＰＤＫに追加している。そのため、設計者は、チップの製造を行うファウンドリを変更する度に、ＴＳＶ、バンプに関するデータを、変更後のファウンドリが提供するＰＤＫに追加しなければならない。
【００７５】
これに対し、本実施形態では、ステップＳ１０１〜Ｓ１０３の処理により、チップの製造を行うＡ社、Ｂ社が提供するＰＤＫと、ＴＳＶプロセスを行うファウンドリが提供するＰＤＫとを統合している。
【００７６】
したがって、チップを製造するファウンドリを変更した場合でも、変更後のファウンドリが提供するＰＤＫにＴＳＶに関するデータを追加する必要がなく、ステップＳ１０１〜Ｓ１０３を実行することで、容易に統合ＰＤＫを作成することができる。これにより、半導体装置１の設計がさらに容易になる。
【００７７】
（第２実施形態）
本発明の第２実施形態について説明する。本実施形態は、第１実施形態に対して半導体装置１の構成を変更したものであり、その他に関しては第１実施形態と同様であるため、第１実施形態と異なる部分についてのみ説明する。
【００７８】
図３１に示すように、本実施形態が適用される半導体装置１は、チップ２、チップ３に加え、チップ５が積層されて構成された３層の積層ＩＣとされている。チップ３は、チップ３とチップ５との間に配置されたバンプ６を介して、チップ５と接続されている。
【００７９】
本実施形態では、チップ３の裏面側に、ＴＳＶ３４が形成されている。ＴＳＶ３４は、チップ３の裏面から配線層３１に至るように形成されており、配線層３１は、ＴＳＶ３４を介して、バンプ６と電気的に接続されている。ＴＳＶ３４は、貫通ビアに相当する。
【００８０】
チップ５は、例えばＳｉ等により構成される基板の上に、配線層５１、５２、ビア５３が形成された構成とされている。図３１に示すように、チップ５の内部に配線層５１が形成されており、チップ５の表面に配線層５２が形成されている。ビア５３は、配線層５１から配線層５２に至るように形成されており、配線層５１は、ビア５３を介して配線層５２と電気的に接続されている。
【００８１】
バンプ６は、配線層５２の表面に配置されており、配線層５２は、バンプ６と電気的に接続されている。これにより、配線層５２とＴＳＶ３４とが電気的に接続されている。
【００８２】
本実施形態では、チップ５はＡ社、Ｂ社とは異なるファウンドリであるＣ社で製造される。本実施形態では、ステップＳ１０１において、第１実施形態で用いられたＡ社、Ｂ社のＰＤＫおよびＴＳＶのＰＤＫに加え、チップ５と、ＴＳＶ３４およびバンプ６とに対応して、Ｃ社のＰＤＫと、ＴＳＶ３４およびバンプ６のＰＤＫとが取得される。そして、ステップＳ１０２において、各ＰＤＫに含まれる文字列にＰＤＫごとに異なる識別子が付与される。
【００８３】
本実施形態では、チップ５は３番目のチップであり、チップ５のＰＤＫに含まれる文字列には「＿Ｔ３」が付与される。また、ＴＳＶ３４およびバンプ６のＰＤＫに含まれる文字列には、「＿Ｔ２」が付与される。
【００８４】
図３２に示すように、配線層５１、５２、ビア５３の元のレイヤ名は「Ｍ１」、「Ｍ２」、「Ｖ１」である。ステップＳ１０２では、これらのレイヤ名の末尾に「＿Ｔ３」が付与されて、各レイヤ名が「Ｍ１＿Ｔ３」、「Ｍ２＿Ｔ３」、「Ｖ１＿Ｔ３」に置換される。また、配線層５１、５２、ビア５３の元のレイヤ番号は３１、３２、３３であり、統合ＰＤＫにおけるこれらのレイヤ番号は、３７、３８、３９となる。
【００８５】
また、図３３に示すように、ＴＳＶ３４、バンプ６の元のレイヤ名は「ＴＳＶ」、「ｕＢＵＭＰ」である。ステップＳ１０２では、これらのレイヤ名の末尾に「＿Ｔ２」が付与されて、各レイヤ名が「ＴＳＶ＿Ｔ２」、「ｕＢＵＭＰ＿Ｔ２」に置換される。また、ＴＳＶ３４、バンプ６の元のレイヤ番号は１０００、１００１であり、統合ＰＤＫにおけるこれらのレイヤ番号は、１００２、１００３となる。
【００８６】
これにより、図３４に示すように、Ａ社、Ｂ社、Ｃ社のＰＤＫと、ＴＳＶ、バンプのＰＤＫとを統合したときに、レイヤ名、レイヤ番号の重複を回避することができる。
【００８７】
このように、本実施形態においても、シミュレーションモデルの名称等の重複を回避しながら統合ＰＤＫを作成し、第１実施形態と同様の効果を得ることができる。
【００８８】
（他の実施形態）
なお、本発明は上記した実施形態に限定されるものではなく、特許請求の範囲に記載した範囲内において適宜変更が可能である。
【００８９】
例えば、すべてのチップ、ＴＳＶのＰＤＫにおいてレイヤ名、素子名、中間データ名等の重複が回避される方法であれば、上記第１、第２実施形態とは異なる方法でＰＤＫに含まれる文字列を置換してもよい。例えば、ＰＤＫに含まれる文字列に、上記第１、第２実施形態とは異なる識別子を付与してもよい。また、ＰＤＫに含まれる文字列の末尾以外の場所に識別子を付与してもよい。
【００９０】
また、４層以上の積層ＩＣに本発明を適用してもよい。また、配線層を１層のみ備えるチップに本発明を適用してもよく、配線層を３層以上備えるチップに本発明を適用してもよい。また、図３５に示すような、チップ７、チップ８がインターポーザ９を介して接続された構成の半導体装置に本発明を適用してもよい。インターポーザ９は、例えばＳｉ、エポキシ樹脂、セラミックス等で構成される。また、ＴＳＶまたはバンプが形成されていない半導体装置に本発明を適用してもよい。
【００９１】
また、図１に示すチップ２の製造、チップ３の製造、ＴＳＶ４の形成、バンプ４の形成を行うファウンドリの組み合わせが上記第１実施形態とは異なる半導体装置に、本発明を適用してもよい。また、チップ２、チップ３の製造と、ＴＳＶ２４、バンプ４の形成とが同一のファウンドリで行われる半導体装置に本発明を適用してもよい。
【００９２】
また、Ｖｉｒｔｕｏｓｏ以外の設計ツールに対応したＰＤＫを用いてもよい。また、Calibre nmDRC（Mentor Graphics社）や、Physical Verification System（Cadence Design Systems社）に対応したＤＲＣルールコードを用いてもよい。また、Calibre nmLVS（Mentor Graphics社）や、Physical Verification System（Cadence Design Systems社）に対応したＬＶＳルールコードを用いてもよい。
【００９３】
なお、各図中に示したステップは、各種処理を実行する機能部に対応するものである。すなわち、ステップＳ１０１の処理を実行する部分が取得部、ステップＳ１０２の処理を実行する部分が付与部、ステップＳ１０３の処理を実行する部分が統合部に相当する。
【符号の説明】
【００９４】
１    半導体装置
２    チップ
２１  配線層
２２  配線層
２３  ビア
２４  ＴＳＶ
３    チップ
３１  配線層
３２  配線層
３３  ビア
３４  ＴＳＶ
４    バンプ
５    チップ
５１  配線層
５２  配線層
５３  ビア
６    バンプ
７    チップ
８    チップ
９    インターポーザ
【図１】
2017156877.tif 000003
【図２】
2017156877.tif 000004
【図３】
2017156877.tif 000005
【図４】
2017156877.tif 000006
【図５】
2017156877.tif 000007
【図６】
2017156877.tif 000008
【図７】
2017156877.tif 000009
【図８】
2017156877.tif 000010
【図９】
2017156877.tif 000011
【図１０】
2017156877.tif 000012
【図１１】
2017156877.tif 000013
【図１２】
2017156877.tif 000014
【図１３】
2017156877.tif 000015
【図１４】
2017156877.tif 000016
【図１５】
2017156877.tif 000017
【図１６】
2017156877.tif 000018
【図１７】
2017156877.tif 000019
【図１８】
2017156877.tif 000020
【図１９】
2017156877.tif 000021
【図２０】
2017156877.tif 000022
【図２１】
2017156877.tif 000023
【図２２】
2017156877.tif 000024
【図２３】
2017156877.tif 000025
【図２４】
2017156877.tif 000026
【図２５】
2017156877.tif 000027
【図２６】
2017156877.tif 000028
【図２７】
2017156877.tif 000029
【図２８】
2017156877.tif 000030
【図２９】
2017156877.tif 000031
【図３０】
2017156877.tif 000032
【図３１】
2017156877.tif 000033
【図３２】
2017156877.tif 000034
【図３３】
2017156877.tif 000035
【図３４】
2017156877.tif 000036
【図３５】
2017156877.tif 000037