(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-10
(54)【発明の名称】自動再配線層電源接続
(51)【国際特許分類】
H01L 21/82 20060101AFI20240903BHJP
G06F 30/394 20200101ALI20240903BHJP
G06F 115/12 20200101ALN20240903BHJP
【FI】
H01L21/82 W
G06F30/394
G06F115:12
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024502027
(86)(22)【出願日】2022-07-21
(85)【翻訳文提出日】2024-02-13
(86)【国際出願番号】 US2022037903
(87)【国際公開番号】W WO2023014514
(87)【国際公開日】2023-02-09
(32)【優先日】2021-08-02
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-12-29
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】591016172
【氏名又は名称】アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド
【氏名又は名称原語表記】ADVANCED MICRO DEVICES INCORPORATED
(71)【出願人】
【識別番号】508301087
【氏名又は名称】エーティーアイ・テクノロジーズ・ユーエルシー
【氏名又は名称原語表記】ATI TECHNOLOGIES ULC
【住所又は居所原語表記】One Commerce Valley Drive East, Markham, Ontario, L3T 7X6 Canada
(74)【代理人】
【識別番号】100108833
【氏名又は名称】早川 裕司
(74)【代理人】
【識別番号】100111615
【氏名又は名称】佐野 良太
(74)【代理人】
【識別番号】100162156
【氏名又は名称】村雨 圭介
(72)【発明者】
【氏名】ラジャゴパラン ベンカットラマーニ
(72)【発明者】
【氏名】レナート ディマチュラ ガッディ
(72)【発明者】
【氏名】デニス グレン ロザンタ シュレル
(72)【発明者】
【氏名】リアン マルティネス
【テーマコード(参考)】
5B146
5F064
【Fターム(参考)】
5B146GC15
5F064EE02
5F064EE09
5F064EE15
(57)【要約】
半導体パッケージの再配線層内の電源レールのレイアウトマスクを自動的に生成するためのシステム及び方法が記載される(918)。ユーザは、再配線層内の電源レールを自動的に生成するために使用する属性を定義する(904、906、908)。ユーザによって使用されるコンピューティングデバイスのプロセッサの回路は、電源レール生成器と称される再配線層(RDL)自動電源レール生成器の命令を実行する(910)。電源レール生成器は、RDL内の電源レールの信号経路を表すRDLマスクレイアウトデータを生成するために、属性と、RDL内の信号経路のRDLネットリストのコピーと、を使用する。プロセッサは、ユーザが自動生成をカスタマイズすることを可能にする属性等の受信されたデータに基づいて、RDL内の非常に多数の信号経路のための電源レールを生成する。
【選択図】
図9
【特許請求の範囲】
【請求項1】
プロセッサであって、
回路を備え、
前記回路は、
複数の金属層レベルにおける1つ以上の信号タイプの配置に対応する複数の属性を受信することと、
1つ以上の境界領域の識別を少なくとも含む前記属性に少なくとも部分的に基づいて、前記複数の金属層レベルにおける1つ以上の信号タイプの配置を示すデータを生成することであって、前記1つ以上の境界領域の各々は、前記複数の金属層レベルのうち所定のレベルにおける所定の信号の限定された配置を識別する、ことと、
を行うように構成されている、
プロセッサ。
【請求項2】
前記回路は、
第1の金属密度を使用して、前記複数の金属層レベルのうち所定のレベルにおける前記1つ以上の境界領域のうち第1の境界領域内での、及び、第2の金属密度を使用して、前記所定のレベルにおける前記1つ以上の境界領域のうち第2の境界領域内での、前記所定のレベルにおける所定の信号タイプの限定された配置を示すデータを生成するように構成されている、
請求項1のプロセッサ。
【請求項3】
前記回路は、
前記第1の境界領域と前記第2の境界領域との間に重複領域が存在すると判定したことに応じて、前記重複領域、前記第1の境界領域における前記重複領域に隣接する領域、及び、前記第2の境界領域における前記重複領域に隣接する領域において、前記第1の金属密度を使用して、前記所定の信号タイプの配置を示すデータを生成するように構成されている、
請求項2のプロセッサ。
【請求項4】
前記回路は、
前記第1の境界領域が前記第2の境界領域よりも高い優先順位を有すると判定するように構成されている、
請求項3のプロセッサ。
【請求項5】
前記回路は、
前記複数の金属層レベルにおける前記1つ以上の信号タイプの配置が前記複数の属性によって指定される最小接合面積を含むかどうかを示すレポートを生成するように構成されている、
請求項1のプロセッサ。
【請求項6】
前記回路は、
前記複数の属性によって指定されるシーケンスの順序で、前記複数の金属層レベルにおける前記1つ以上の信号タイプの配置を生成するように構成されており、
各シーケンスは、前記複数の金属層レベルのうち何れかを識別する、
請求項1のプロセッサ。
【請求項7】
前記複数の金属層レベルは、集積回路とプリント回路基板との間の再配線層である、
請求項1のプロセッサ。
【請求項8】
方法であって、
プロセッサの回路が、複数の金属層レベルにおける1つ以上の信号タイプの配置に対応する複数の属性を受信することと、
前記回路が、1つ以上の境界領域の識別を少なくとも含む前記属性に少なくとも部分的に基づいて、前記複数の金属層レベルにおける1つ以上の信号タイプの配置を示すデータを生成することであって、前記1つ以上の境界領域の各々は、前記複数の金属層レベルのうち所定のレベルにおける所定の信号の限定された配置を識別する、ことと、を含む、
方法。
【請求項9】
前記回路が、第1の金属密度を使用して、前記複数の金属層レベルのうち所定のレベルにおける前記1つ以上の境界領域のうち第1の境界領域内での、及び、第2の金属密度を使用して、前記所定のレベルにおける前記1つ以上の境界領域のうち第2の境界領域内での、前記所定のレベルにおける所定の信号タイプの限定された配置を示すデータを生成することを含む、
請求項8の方法。
【請求項10】
前記回路が、前記第1の境界領域と前記第2の境界領域との間に重複領域が存在すると判定したことに応じて、前記重複領域、前記第1の境界領域における前記重複領域に隣接する領域、及び、前記第2の境界領域における前記重複領域に隣接する領域において、前記第1の金属密度を使用して、前記所定の信号タイプの配置を示すデータを生成することを含む、
請求項9の方法。
【請求項11】
前記回路が、前記第1の境界領域が前記第2の境界領域よりも高い優先順位を有すると判定することを含む、
請求項10の方法。
【請求項12】
前記回路が、前記複数の金属層レベルにおける前記1つ以上の信号タイプの配置が前記複数の属性によって指定される最小接合面積を含むかどうかを示すレポートを生成することを含む、
請求項8の方法。
【請求項13】
前記回路が、前記複数の属性によって指定されるシーケンスの順序で、前記複数の金属層レベルにおける前記1つ以上の信号タイプの配置を生成することを含み、
各シーケンスは、前記複数の金属層レベルのうち何れかを識別する、
請求項8の方法。
【請求項14】
前記複数の金属層レベルは、集積回路とプリント回路基板との間の再配線層である、
請求項8の方法。
【請求項15】
コンピューティングシステムであって、
処理ユニットと、
前記処理ユニットに結合されたメモリであって、ネットリストを記憶するように構成されたメモリと、を備え、
前記処理ユニットの回路は、
複数の金属層レベルにおける1つ以上の信号タイプの配置に対応する複数の属性を受信することと、
前記ネットリストを受信することと、
前記ネットリストと、1つ以上の境界領域の識別を少なくとも含む属性であって、前記1つ以上の境界領域の各々は、前記複数の金属層レベルのうち所定のレベルにおける所定の信号の限定された配置を特定する、属性と、に少なくとも部分的に基づいて、前記複数の金属層レベルにおける1つ以上の信号タイプの配置を示すデータを生成することと、
を行うように構成されている、
コンピューティングシステム。
【請求項16】
前記回路は、
第1の金属密度を使用して、前記複数の金属層レベルのうち所定のレベルにおける前記1つ以上の境界領域のうち第1の境界領域内での、及び、第2の金属密度を使用して、前記所定のレベルにおける前記1つ以上の境界領域のうち第2の境界領域内での、前記所定のレベルにおける所定の信号タイプの限定された配置を示すデータを生成するように構成されている、
請求項15のコンピューティングシステム。
【請求項17】
前記回路は、
前記第1の境界領域と前記第2の境界領域との間に重複領域が存在すると判定したことに応じて、前記重複領域、前記第1の境界領域における前記重複領域に隣接する領域、及び、前記第2の境界領域における前記重複領域に隣接する領域において、前記第1の金属密度を使用して、前記所定の信号タイプの配置を示すデータを生成するように構成されている、
請求項16のコンピューティングシステム。
【請求項18】
前記回路は、
前記第1の境界領域が前記第2の境界領域よりも高い優先順位を有すると判定するように構成されている、
請求項17のコンピューティングシステム。
【請求項19】
前記回路は、
前記複数の金属層レベルにおける前記1つ以上の信号タイプの配置が前記複数の属性によって指定される最小接合面積を含むかどうかを示すレポートを生成するように構成されている、
請求項15のコンピューティングシステム。
【請求項20】
前記複数の金属層レベルは、集積回路とプリント回路基板との間の再配線層である、
請求項19のコンピューティングシステム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、2021年8月2日に出願された「SILICON LAYOUT FOR AN AUTO POWER RAIL」と題する米国仮特許出願第63/228,550号の優先権を主張し、当該出願の全体が参照により本明細書に組み込まれる。
【背景技術】
【0002】
(関連技術の説明)
チップパッケージ内の1つ以上の集積回路と、チップパッケージの外部に位置するマザーボード上の外部構成要素と、の間の通信を提供する半導体パッケージに対する需要が増大している。モバイルコンピューティング、ウェアラブル電子機器及びモノのインターネット(Internet of Things、IoT)に関連付けられた電子製品は、垂直信号相互接続を利用する小型パッケージの需要を駆り立てている。これらの製品に使用されるチップパッケージの例としては、ボールグリッドアレイ(ball grid array、BGA)、チップスケールパッケージ(chip scale package、CSP)、システムインパッケージ(System in Package、SiP)が挙げられる。
【0003】
半導体パッケージは、フリップチップ相互接続とも称される制御崩壊チップ接続(controlled collapse chip connection、C4)相互接続を利用する。例えば、C4バンプは、バンプパッドを使用してプリント回路基板への接続を有するシリコンパッケージ基板内に形成された垂直シリコン貫通電極(through silicon via、TSV)に接続される。貫通シリコンバスを形成するTSVのグループは、ベースダイと、1つ以上の追加の集積回路と、マザーボード又はカード等のプリント回路基板(printed circuit board、PCB)上のルーティングと、の間の相互接続として使用される。集積回路とプリント回路基板(PCB)との間のSiP及びより多くの信号相互接続に対する需要は、パッケージ基板及びインターポーザに対する需要を増加させている。
【0004】
パッケージ基板は、機械的ベース支持を提供するとともに、信号相互接続のための電気的インターフェースを提供するチップパッケージの一部である。インターポーザは、1つ以上の集積回路と、フリップチップバンプ又は他の相互接続のうち何れかと、パッケージ基板と、の間の中間層である。使用される場合、インターポーザは、その上に組み立てられたダイ(ダイ間相互接続)とパッケージ基板(ダイ-パッケージ間相互接続)との間の信号相互接続のための電気的インターフェースを提供する。実施形態に応じて、パッケージ基板及びインターポーザという用語は、互換的に使用される。
【0005】
半導体パッケージ内の1つ以上の集積回路は、再配線層を使用してそれらとマザーボード(すなわち、プリント回路基板)との間に接続された信号経路を有する。再配線層の信号経路は、集積回路上のパッドと接触するマイクロバンプと、シリコンパッケージ基板のシリコン貫通電極(TSV)と、の間に位置する信号経路である。
【0006】
イノベーションは改善を提供するが、処理及び集積回路デザインにおける現代の技術では、潜在的な利益を制限するデザイン問題が依然として生じる。1つの問題は、1つ以上の集積回路が1つ以上の電源電圧基準レベル及び1つ以上の接地基準電圧レベルを受信するための数万ものノードを有する一方で、TSVにおいてこれらの電圧基準レベルを転送するための数百ものノードが存在することである。再配線層を通るこれらの電源接続のルーティングは複雑になる。検証チェックを行う前にこれらの電源接続に対応する信号を、再配線層を介して手動でルーティングし、その後の製造には、数週間又は数ヶ月かかる。
【0007】
上記を考慮して、再配線層内の電源接続に対応する信号をルーティングするための効率的な方法及びシステムが望まれる。
【図面の簡単な説明】
【0008】
【
図1】コンピューティングシステムの一般化された図である。
【
図2】半導体パッケージ金属層方式の断面図の一般化された図である。
【
図5】グラフィカルユーザインターフェースの一般化された図である。
【
図6】再配線層内の電源接続に対応する信号の自動ルーティングのための方法の一般化された図である。
【
図7】再配線層内の電源接続に対応する信号の自動ルーティングのための方法の一般化された図である。
【
図8】境界領域によって限定された信号経路の一般化された図である。
【
図9】再配線層内の電源接続に対応する信号の自動ルーティングのための方法の一般化された図である。
【
図10】再配線層内の電源接続に対応する信号の自動ルーティングのための方法の一般化された図である。
【
図11】コンピューティングシステムの一般化された図である。
【発明を実施するための形態】
【0009】
本発明は、様々な修正及び代替形態の余地があるが、具体的な実施形態が例として図面に示されており、本明細書で詳細に説明される。しかしながら、図面及びその詳細な説明は、開示された特定の形態に本発明を限定することを意図するものではなく、逆に、本発明は、添付の特許請求の範囲によって定義される本発明の範囲に含まれる全ての修正、均等物及び代替物を包含するものであることを理解されたい。
【0010】
以下の説明では、本発明の十分な理解を提供するために、多数の具体的な詳細が記載されている。しかしながら、当業者は、これらの具体的な詳細なしに本発明が実施され得ることを認識すべきである。いくつかの例では、本発明を不明瞭にすることを避けるために、周知の回路、構造及び技術が詳細に示されていない。更に、説明の簡略性及び明確性のために、図に示される要素は、必ずしも縮尺通りに描画されていないことが理解されよう。例えば、いくつかの要素の寸法は、他の要素に対して誇張されている。
【0011】
再配線層内の電源接続の信号経路のためのレイアウトマスクを自動的に生成するためのシステム及び方法が企図される。本明細書で使用される場合、「自動生成」又は「自動的に生成する」という用語は、ユーザの介入なしに生成を行う又は生成ステップを行う能力を有することを指す。本明細書で開示するように、ユーザによって使用されるコンピューティングデバイスは、自動電源レール生成器と称される自動再配線層(redistribution layer、RDL)電源レール生成器の命令を実行するためのプロセッサの回路等のハードウェアを含む。ユーザは、半導体パッケージの再配線層内の電源接続の信号経路のレイアウトマスクを自動的に生成するために使用する自動電源レール生成器の属性を定義する。電源接続は、集積回路とマザーボードとの間に1つ以上の電源電圧基準レベル及び1つ以上の接地基準電圧レベルを提供する。一実施形態では、ユーザは、グラフィカルユーザインターフェース(graphical user interface、GUI)を介して属性を提供する。別の実施形態では、ユーザは、その属性を、テキストファイル、又は、様々なスクリプト言語のうち何れかで書かれた実行可能ファイルを介して提供する。
【0012】
自動電源レール生成器は、属性と、RDL内の信号経路のRDLネットリストのコピーと、を使用する。コンピューティングデバイスのプロセッサが自動電源レール生成器の命令を実行する場合に、プロセッサは、ユーザによって提供された属性に基づいて再配線層の金属層を選択する。プロセッサは、属性によって指定された優先順位付けされたシーケンスに基づいて何れかの電源レールを選択する。プロセッサは、選択された電源レールのレイアウトマスクを、属性によって指定された金属層の任意の定義された境界内に配置する。
【0013】
プロセッサは、属性によって指定されたルーティング方向及び金属密度を使用する。プロセッサは、属性において特定された金属層及び電源レールの各々について、これらのステップを繰り返す。いくつかの場合では、プロセッサは、別の組み合わせに進む前にDRCチェックを行うように、金属層と電源レールとの各組み合わせについて金属間重複仕様を検証する。その後、プロセッサは、レポートを生成する。プロセッサは、自動ビア生成中にログファイルを維持し、対応する情報を使用してレポート内に要約された結果を提供する。様々な実施形態では、プロセッサは、既知の宛先に位置するファイルを書き込む。
【0014】
以下の記載では、半導体パッケージ基板を使用するハードウェア製品の開発をサポートするためのコンピューティングシステムが
図1に示されている。コンピューティングシステムは、再配線層内の電源接続の信号経路のためのレイアウトマスクを自動的に生成することをサポートする。
図2は、フリップチップ技術を使用する再配線層等の半導体パッケージの構成要素を示している。
図3~
図4は、マスクレイアウトと、再配線層の隣接する金属層間の重複領域と、を示している。再配線層におけるビアの自動生成中に利用する属性をユーザから提供するためのグラフィカルユーザインターフェースの実施例が
図5に示されている。
図6~
図7及び
図9~
図10は、再配線層内の電源接続の信号経路を自動的に判定することを行う方法を提供する。様々な実施形態では、本方法は、レイアウトマスクを生成するために使用される。
図8は、境界領域によって限定された特定の再配線レベルにおける信号経路を示している。コンピューティングシステム内の製造されたチップパッケージの実施例が
図11に示されている。製造されたチップパッケージは、再配線層内に自動的に生成された電源レールを含む。
【0015】
図1を参照すると、コンピューティングシステム100の一実施形態の一般化されたブロック図が示されている。図示した実施形態では、コンピューティングシステム100は、クライアントコンピューティングデバイス150と、ソフトウェアを実行し、組織センタ110をサポートするためのハードウェアを含むサーバ120A~120Dと、ネットワーク140と、組織センタ110によってサポートされ、使用される1つ以上のデータストアを含むデータストレージ130と、を含む。単一のクライアントコンピューティングデバイス150が示されているが、任意の数のクライアントコンピューティングデバイスがネットワーク140を介して組織センタ110を利用する。クライアントデバイス150とも称されるクライアントコンピューティングデバイス150は、自動再配線層(RDL)電源レール生成器160の命令を実行するためのプロセッサの回路等のハードウェアを含む。自動RDL電源レール生成器160(又は電源レール生成器160)は、データストレージ130に記憶されたデータのコピーと、ユーザによって提供される属性166と、を使用する。実施形態では、ユーザは、グラフィカルユーザインターフェース(GUI)162を介して属性166を提供する。電源レール生成器160によって使用されるデータの例は、RDLネットリスト134及びデザインルールチェック(design rule check、DRC)136の少なくとも一部のコピーである。電源レール生成器160は、属性166及びRDLネットリスト134を使用してRDLマスクレイアウトデータ132を生成する。RDLマスクレイアウトデータ132のコピーは、データストレージ130及びクライアントデバイス150のうち1つ以上に記憶される。
【0016】
クライアントデバイス150は、デスクトップコンピュータ、ラップトップ、タブレットコンピュータ等のモバイルコンピューティングデバイスを含む。クライアントデバイス150は、コンピュータプログラムの命令を処理するための処理ユニット170等のハードウェア回路を含む。いくつかの実施形態では、処理ユニット170は、プロセッサの1つ以上の同種コアを含む。他の実施形態では、処理ユニットは、並列処理アーキテクチャ化コア及び中央処理装置(central processing unit、CPU)で使用される汎用コア等の異種コアを含む。並列アーキテクチャコアは、グラフィックス処理ユニット(graphics processing unit、GPU)、デジタル信号処理ユニット(digital signal processing unit、DSP)等であってもよい。
【0017】
クライアントデバイス150は、ネットワーク140を介したデータ及びメッセージ転送のための1つ以上の通信プロトコルをサポートするネットワークインターフェース(図示せず)を含む。ネットワーク140は、メッセージ及びデータを転送するための複数のスイッチ、ルータ、ケーブル、ワイヤレス送信機及びインターネットを含む。それにより、組織センタ110及びクライアントデバイス150のネットワークインターフェースは、少なくとも、ワールドワイドウェブにわたる通信のためのハイパーテキスト転送プロトコル(Hypertext Transfer Protocol、HTTP)をサポートする。ネットワーク140を介してクライアントデバイス150と通信することに加えて、組織センタ110は、データを記憶し、取り出すためにデータストレージ130と通信する。
【0018】
様々な実施形態において、組織センタ110は、ベンダが1つ以上のハードウェア製品を生産するためのインフラストラクチャである。組織センタ110は、組織のスタッフのみがアクセス可能なプライベートネットワークを提供するイントラネットワークを含む。イントラネットポータルは、リソースへのアクセスを提供するために使用され、グラフィカルユーザインターフェース(GUI)及びダッシュボード等のユーザフレンドリなインターフェースを有する。組織センタ110によって利用可能にされる情報及びサービスは、直接アクセスを介して一般公衆に利用可能ではない。ユーザ認証を通じて、スタッフメンバは、他のスタッフメンバと通信するために組織センタ110を介してリソースにアクセスすること、プロジェクトに協力すること、製品開発を監視すること、集中リポジトリに記憶された製品、文書及びツールを更新すること等が可能である。
【0019】
組織センタ110及び組織センタ110を介してアクセスされるリソースをサポートするために使用されるサーバ120A~120Dは、データベースサーバ、コンピューティングサーバ、アプリケーションサーバ、ファイルサーバ、メールサーバ等の様々なサーバタイプを含む。様々な実施形態では、サーバ120A~120D及びクライアントデバイス150は、クライアントサーバアーキテクチャモデルで動作する。
【0020】
クライアントデバイス150は、電源レール生成器160等の所定のソフトウェア製品又はツールの特定のバージョンのコピーを含む。いくつかの実施形態では、電源レール生成器160のバージョンは、少なくとも、クライアントデバイス150によって使用されるオペレーティングシステム及びプロセッサに基づく。電源レール生成器160は、エンジン164を含み、エンジン164は、プロセッサ170によって実行されると、プロセッサ170に対して、半導体パッケージの再配線層内の電源接続の信号経路のためのレイアウトマスクを自動的に生成させる。再配線層の電源接続は、集積回路とプリント回路基板との間に位置する信号経路である。例えば、再配線層の信号経路は、集積回路上のパッドと接触するマイクロバンプとシリコンパッケージ基板のシリコン貫通電極(TSV)との間に位置する信号経路である。再配線層は、パッケージのピンにワイヤボンディングされる入力/出力(input/output、I/O)パッドのセットを有することを不要にし、これは、チップ間ボンディングを容易にする。
【0021】
先に記載したように、組織センタ110は、ベンダが1つ以上のハードウェア製品を生産するためのインフラストラクチャである。集積回路は、生産のために開発されている様々なタイプの集積回路のうち何れかである。再配線層内に信号経路を提供するために数万のマスク層が使用される可能性があるので、電源接続のためのマスク層を手動で生成することは、数週間又は数ヶ月かかる。電源レール生成器160は、より効率的な方法でこの生成を行う。再配線層は、制御信号経路とデータ信号経路とを含むが、実施形態では、電源レール生成器160は、再配線層の電源接続のためのマスク層の自動生成を行う。電源接続は、集積回路によって使用される電源電圧基準レベル又は接地基準電圧レベルのうち一方を提供する。そうするために、電源レール生成器160は、ユーザによって提供される属性166を使用する。
【0022】
一実施形態では、ユーザは、その属性166を、グラフィカルユーザインターフェース(GUI)162を介して電源レール生成器160に提供する。別の実施形態では、ユーザは、その属性166を、テキストファイル、又は、様々なスクリプト言語のうち何れかで書かれた実行可能ファイルを介して、電源レール生成器160に提供する。実施形態では、プロセッサ170が電源レール生成器160のエンジン164のコードを実行する場合に、プロセッサ170は、属性166によって指定されるように、再配線層の各金属層のルーティング方向及び金属密度を定義する。
【0023】
また、プロセッサ170は、エンジン164を実行する場合に、属性166によって指定されるように、再配線層を通る電力及び接地電圧基準信号ルーティングのための面積を制限する(すなわち、限定する)境界を定義する。プロセッサ170は、エンジン164を実行する場合に、再配線層の各層のための電力及び接地電圧基準信号の優先順位付けされたリストを更に提供する。優先順位付けされたリストは、再配線層の各層のための電力及び接地電圧基準信号のためのマスクレイアウトを生成するために従うシーケンス順序を判定する。
【0024】
いくつかの実施形態では、再配線層のうち所定の層内でルーティングされる所定の信号は、それのために定義される少なくとも第1の境界領域と第2の境界領域とを有する。これら2つの境界領域のうち一方は、他方の境界領域よりも高い優先順位を有する。より高い優先順位の境界領域が最初にルーティングされる。様々な実施形態では、第1の境界領域及び第2の境界領域は、異なる金属密度を有する。プロセッサ170が、第1の境界領域と第2の境界領域との間に重複領域が存在すると判定する場合に、プロセッサ170は、重複領域における第1の境界領域、第1の境界領域における重複領域に隣接する領域、及び、第2の境界領域における重複領域に隣接する領域の第1の金属密度を用いて、所定の信号の配置を示すデータを生成する。プロセッサ170は、第1の境界領域が第2の境界領域よりも高い優先順位を有すると判定したことに伴い、第1の金属密度を選択する。例示した説明は、
図10において後に提供される。
【0025】
電源レール生成器160は、追加的に、再配線層内の金属層の配置を特定するために、RDLマスクレイアウトデータ132及びRDLネットリスト134のコピーを使用する。また、電源レール生成器160は、ビアの配置がレイアウトのデザインルールに違反しないことを検証するためにDRC136を使用する。電源レール生成器160は、デザインルールチェック(例えば、間隔等)を考慮に入れる。いくつかの実施形態では、別のツールが、そのようなチェック(例えば、DRC及びLVSチェック)を行う。ビアの配置がDRCチェック及びLVSチェックに合格する場合、RDLマスクレイアウトデータ132の更新されたバージョンの1つ以上のコピーが、クライアントデバイス150及びデータストレージ130に記憶される。続いて、開発中の集積回路に対して半導体チップテープアウトプロセスが行われ、半導体製造プロセスは、集積回路のハードウェアを試験に提供する。
【0026】
図2を参照すると、集積回路とプリント回路基板との間の信号経路を提供する半導体パッケージ金属層方式200(又は金属層方式200)の一般化されたブロック図が示されている。図示するように、金属層方式200は、フリップチップ相互接続とも称される制御崩壊チップ接続(C4)相互接続を利用する。2つの集積回路210及び212は、それらとマザーボード(すなわち、プリント回路基板)との間に接続された信号経路を有するが、マザーボードは、説明を容易にするために示されていない。相互接続子は、バンプパッドを使用してプリント回路基板への接続を有するシリコンパッケージ基板内に形成された垂直ガラス貫通電極に接続され得る。相互接続子240を介したマザーボードと集積回路210及び212との間の信号経路に加えて、集積回路210及び212に出入りする信号経路は、再配線層230を介してルーティングされる。いくつかの実施形態では、金属層方式200は、再配線層230と相互接続子240との間に個別のインターポーザ(図示せず)(例えば、アンダーバンプ冶金)を更に含む。実施形態では、インターポーザは、シリコン貫通電極を含むが、再配線層230は、TSVを含まない。別の実施形態では、インターポーザ及び再配線層230の各々は、1つ以上のTSVを含む。更に別の実施形態では、
図2に示すように、個別のインターポーザが使用されない。
【0027】
ここで、集積回路は、システムオンチップ(system on a chip、SoC)である。図示するように、1つのSOCがハードウェア製品内で使用されている。しかしながら、CPU、GPU、マルチメディアエンジン、特定用途向け集積回路(application specific integrated circuit、ASIC)、デジタル信号プロセッサ(digital signa processor、DSP)等のうち1つ以上等の集積回路の他の実施例が可能であり、企図される。相互接続子240は、複数の再配線層(RDL)1~4とパッケージ基板及びマザーボードとの間の接続を提供する。いくつかの実施形態では、数百のUBM層及びC4バンプを有することが一般的である。加えて、4つの金属層(RDL1~4)が再配線層230において使用されているが、他の実施形態では、異なる数の金属層が使用される。再配線層230の隣接する金属層(RDL1~4)の間には、ビア2~ビア4とラベル付けされた層のビアがあり、ビア2~ビア4は、再配線層230の隣接層間の物理的接続を提供する。また、再配線層230は、SMDピン層のピンと金属層RDL1との間にビア1層のビアを含む。図示するように、再配線層230は、金属層RDL4と相互接続子240との間にビア5層のビアを更に含む。
【0028】
SoC210は、少なくとも相互接続子240を介して、他のSoC(図示せず)及びマザーボード(プリント回路基板)の間でルーティングされる信号を有し得る。信号は、再配線層1(RDL1)として指定された金属層及び再配線層4(RDL4)として指定された金属層等のような再配線層230の金属層を介してルーティングされる。これらの金属層は、それぞれ導体1及び導体4とも称される。再配線層230の金属層RDL1~RDL4に加えて、信号は、表面実装デバイス(SMD)Pin層のピン、及び、ビア層ビア1~ビア5を介してルーティングされる。再配線層230は、制御信号経路及びデータ信号経路を含むが、ここでは、示された信号経路は、SoC210及びSoC212によって使用される電源電圧基準レベル及び接地基準電圧レベルのうち1つ以上を分配する。SoC210及びSoC212の各々は、1つ以上の電源電圧基準レベル及び1つ以上の接地基準電圧レベルを使用することが可能である。いくつかの場合では、SoC210及びSoC212の各々は、電源電圧基準レベル及び1つ以上の接地基準電圧レベルを受信するためのパッド220を使用する数万ものノードを有するが、これらの電圧基準レベルを転送するための数百ものUBMが存在する。いくつかの場合では、SoC210及びSoC212の各々は、電源電圧基準レベル及び1つ以上の接地基準電圧レベルを受信するためのパッド220を使用する数万ものノードを有するが、これらの電圧基準レベルを転送するための数百ものUBMが存在する。これらの電源接続のためのマスクレイアウトの生成は複雑になる。電源接続のためのレイアウトマスクを手動で生成することは、数週間又は数ヶ月かかる。
【0029】
電源接続のためのレイアウトマスク生成をより効率的にするために、プロセッサの回路は、ソフトウェアプログラマによって開発されたアルゴリズムに従うソフトウェアツールの命令を実行し、このアルゴリズムは、ユーザによって提供される属性に基づいて再配線層内の電源接続の信号経路のためのレイアウトマスクを自動的に生成する。このツールは、RDL自動電源レール生成器(すなわち、電源レール生成器)とも称されるが、再配線層内の信号経路を特定するためにRDLネットリストのコピーを使用する。また、電源レール生成器は、ユーザによって供給される属性を使用する。さらに、電源レール生成器又は別のツールは、DRC及びLVSチェックを行う。チェックに合格した後、半導体チップテープアウトプロセスが開発中の集積回路に対して行われ、半導体製造プロセスは、集積回路のハードウェアを試験に提供する。
【0030】
図3を参照すると、金属層300の一般化されたブロック図が示されている。図示するように、金属層RDL1 302内の2つの水平信号経路は、金属層RDL2 304内の垂直信号経路によって接続されている。レイアウトを三次元で見るのを助けるために、側面A及び側面Bの断面も提供される。RDL1 302の金属層は、ビア2層306のビアの配置を用いて、RDL2 304の金属層との物理的接続を行う。RDL2 304の金属層の幅に合わせて、ビア2層306の2つのビアの単一の列が配置されている。したがって、2つの金属層RDL1 302の各々と金属層RDL2 304とは物理的に接続されている。様々な実施形態では、これらの金属層302及び304は、対応する集積回路によって使用される電源電圧基準レベル又は接地基準電圧レベルを与える。電源レール生成器は、ビア生成及び後の製造の前に、示されている信号経路のためのレイアウトマスクを自動的に生成する。電源レール生成器は、ユーザによって提供される属性において指定される金属密度を使用する。例えば、ユーザは、金属間隔310と、金属幅308及び312と、を選択する。RDL2 304の金属層の間隔は、説明を容易にするために示されていない。
【0031】
方向が水平及び垂直として記載されているが、半導体パッケージは回転することができ、再配線層が回転することになることが理解されるであろう。電流方向は、金属層とビアとの間の関係を記載するために使用されている。ここで、金属層RDL2 304は、金属層RDL1 302の上に配置され、したがって、SoC又は他の集積回路は、この図のページ内に配置されることになるが、UBM及びシリコンパッケージ基板は、この図のページ外に位置する。逆方向も可能であり、企図されるが、この説明では、集積回路はページ内に位置している。
【0032】
図4を参照すると、金属層400の一般化されたブロック図が示されている。先に記載した材料及び構造は、同様の符号が付けされている。図示するように、金属層RDL1 302内の2つの水平信号経路は、金属層RDL2 304内の垂直信号経路によって接続されている。レイアウトを三次元で見るのを助けるために、側面A及び側面Bの断面も提供される。RDL2 304の金属層のより大きい幅412に合わせて、2つのビアの2つの列が配置されている。RDL1 302の金属層は、ビア2層306のビアの配置を用いて、RDL2 304の金属層との物理的接続を行う。金属層RDL3 402の金属密度は、ユーザによって提供される属性によって指定される金属間隔410及び金属幅408を使用する。
【0033】
頂部金属層RDL3 402の切り抜き部は、ビア2層306の2つのビアの単一の列の配置を示す。加えて、金属層RDL3 402内の2つの水平信号経路は、金属層RDL2 304内の同じ垂直信号経路によって接続されている。金属層RDL3 402は、金属層300(
図3の)の以前の方向を使用して、金属層RDL2 304の上に位置している。したがって、2つの金属層RDL1 302、単一の金属層RDL2 304、及び、2つの金属層RDL3 402の各々は、ビア生成が自動電源レール生成の後に行われる場合に物理的に接続される。
【0034】
様々な実施形態では、これらの金属層302、304、402は、対応する集積回路によって使用される電源電圧基準レベル又は接地基準電圧レベルを提供する。RDL3 402の金属層は、ビア3層404のビアの後の配置により、RDL2 304の金属層との物理的接続を形成する。RDL2 304の金属層の幅及びビア2層306のビアのために必要とされる面積に合わせて、ビア3層404の2つのビアの単一の列が、RDL3 402の金属層の各々によって使用される。ビア2層306及びビア3層404のビアは、3つの隣接層ではなく、2つの隣接層のみとの物理的接続を有することに留意されたい。様々な実施形態では、デザインルールチェック(DRC)は、第3の金属層への物理的接続を可能にしない。したがって、図示するように、ビア2層306のビアは、RDL1 302及びRDL2 304の金属層の間に配置されているが、ビア2層306のビアは、RDL3 402の金属層との物理的接続を行うように垂直方向に進んでいない。同様に、ビア3層404のビアは、RDL2 304及びRDL3 402の金属層の間に配置されているが、ビア3層404のビアは、RDL1 302の金属層との物理的接続を行うように垂直方向に進んでいない。しかしながら、他の実施形態では、DRCは、3つ以上の金属層を貫通して形成されるスルーホール電極の使用を可能にする。
【0035】
図5を参照すると、グラフィカルユーザインターフェース(GUI)500の一般化されたブロック図が示されている。図示するように、GUI500は、再配線層における自動電源レール生成のために使用される複数の属性をカスタマイズするための複数の選択を含む。ユーザは、提供されたドロップダウンメニュー、テキストを受け取るための入力ボックス、選択を示すために色を変化させるチェックボックス又は他の形状等のうち1つ以上を使用して、複数の属性の選択を提供することができる。ボックス502は、ユーザが、自動電源レール生成のために再配線層内の地理的面積を選択することを可能にする。例えば、ユーザは、自動電源レール生成のための面積を定義する境界を有する形状を描画することができる。代替的に、ユーザは、境界を提供する既存の形状を選択することができる。
【0036】
フィールド504は、何れの金属層をカスタマイズするかを特定する。いくつかの実施形態では、フィールド504は、ユーザが金属層ベースで電源レールを生成するためのシーケンス順序を定義することを可能にする。金属層を連続的に隣接して横断する必要はない。ユーザは、自動電源レール生成器が使用する金属層の順序をカスタマイズすることができる。加えて、フィールド504は、ユーザが自動電源レール生成に使用する金属層の数を定義することを可能にする。フィールド506は、再配線層内の1つ以上の金属層の方向を示す。いくつかの場合では、隣接する金属層は、水平方向と垂直方向との間で交互する。他の場合には、一対の隣接する金属層が同じ方向を有し、その後に、反対の方向を使用する別の一対の隣接する金属層が続く。
【0037】
フィールド508は、後でビア生成が行われる場合に使用される特性を特徴付ける複数のサブフィールドを含む。いくつかの場合では、ビア生成は、自動電源レール生成中に未だ行われないが、ビアの特性は、ビアに対するDRCチェックを満たす電源レールのレイアウトマスクを提供するために使用される。サブフィールドは、パッドスタック材料、ビア及び対応する金属層のタイプ、ビア間隔等の複数のカテゴリの情報を含む。フィールド510は、ユーザが、再配線層内の複数の電源レール等のように、異なる金属層の金属密度を指定することを可能にする複数のサブフィールドを含む。再配線層内で電源レールとして使用される所定の金属層の金属密度は、ユーザによって提供される属性によって指定される所定の金属層の金属間隔及び金属幅を含む。上述したように、一例では、金属層RDL3 402(
図4の)の金属密度は、ユーザによって提供される属性によって指定される金属間隔410及び金属幅408を含む。ユーザは、特定の電源レール及びその割り当てられた金属層について、様々な金属幅及び金属間隔の値のうち何れかを選択することができる。
【0038】
いくつかの場合では、フィールド512は、ユーザが電源接続割り当て及びシーケンス順序を指定することを可能にする複数のプルダウンメニュー等の複数のサブフィールドを含む。集積回路は、1つ以上の電源電圧基準レベル及び1つ以上の接地基準電圧レベルを使用する。したがって、フィールド504、506、510、512は、ユーザが、金属層ベースで電源レールを生成するためのシーケンス順序、特定の電源レール電圧基準レベルのために何れの金属層を使用すべきかの割り当て、特定の電源レールの方向、及び、特定の電源レールの金属密度(金属幅及び金属間隔)をカスタマイズすることを可能にする。フィールド504、506、510、512は、再配線層内に電源レールを生成する場合に使用されるこれらの特徴をユーザがカスタマイズすることを可能にする一実施形態を示す。他の実施形態では、GUIの他のタイプのフィールドが、これらの特徴をカスタマイズするために使用される。GUIを伴わない更に他の実施形態では、ユーザは、これらの特徴を、テキストファイル、又は、様々なスクリプト言語のうち何れかで書かれた実行可能ファイルを介してカスタマイズする。加えて、いくつかの場合では、ユーザは、特定の電力及び接地基準電圧レベルのための電源レール生成を制限するために、金属層の特定の面積を指定することができる。更に、ユーザは、特定の電力及び接地基準電圧レベルに基づいて、金属層ごとに電源レール生成の優先順位を指定することができる。フィールド514により、ユーザが、自動電源レール生成中に、コンピュータ画面上で可視の領域等の可視ウィンドウ内に電源レールを生成することを可能にする。
【0039】
図6を参照すると、再配線層における自動電源レール生成のための方法600の一実施形態が示されている。説明のために、この実施形態におけるステップ(並びに、
図7及び
図9~
図10)が順番に示されている。しかしながら、他の実施形態では、いくつかのステップは、示されるものとは異なる順序で行われ、いくつかのステップは、並行して行われ、いくつかのステップは、他のステップと組み合わされ、いくつかのステップは、存在しない。
【0040】
ユーザは、再配線層を介した電力及び接地電圧基準信号ルーティングのための境界を定義する(ブロック602)。例えば、ユーザは、再配線層における自動電源レール生成をカスタマイズするために属性を選択する。一実施形態では、ユーザは、その属性を、グラフィカルユーザインターフェース(GUI)を介して自動ビア生成器に提供する。GUI500(
図5の)は、一例である。別の実施形態では、ユーザは、その属性を、テキストファイル、又は、種々のスクリプト言語のうち何れかで書かれた実行可能ファイルを介して電源レール生成器に提供する。ユーザは、電源レール生成器に提供される属性において、再配線層の層の総数を指定する(ブロック604)。
【0041】
ユーザは、再配線層のうち1つ以上の層についてルーティング方向を選択する(ブロック606)。ユーザは、再配線層の1つ以上の層について、金属密度、又は、幅寸法及び間隔寸法を選択する(ブロック608)。加えて、電源レール生成器に提供される属性において、ユーザは、再配線層のうち1つ以上の層の電力及び接地電圧基準信号の優先順位付けされたリストを指定する(ブロック610)。
【0042】
図7を参照すると、再配線層における自動電源レール生成のための方法700の一実施形態が示されている。ユーザは、再配線層における自動電源レール生成をカスタマイズするために属性を選択する(ブロック702)。一実施形態では、ユーザは、その属性を、グラフィカルユーザインターフェース(GUI)を介して電源レール生成器に提供する。GUI500(
図5の)は、一例である。別の実施形態では、ユーザは、その属性を、テキストファイル、又は、様々なスクリプト言語のうち何れかで書かれた実行可能ファイルを介して電源レール生成器に提供する。ユーザは、電源レール生成器の実行を開始し、対応するコンピューティングデバイスのプロセッサは、属性に基づいて再配線層内で自動電源レール生成を行う(ブロック704)。ユーザは、デザインルールチェック(DRC)検証及びレイアウト対回路図(layout versus schematic、LVS)検証を行うために、1つ以上のツールを実行する(ブロック706)。
【0043】
ユーザは、自動電源レール生成の結果がデザイン要件を満たすかどうかを判定する。結果がデザイン要件を満たさない場合(条件ブロック708:「いいえ」)、方法700の制御フローはブロック702に戻り、ユーザは異なる属性を選択する。結果がデザイン要件を満たす場合(条件ブロック708:「はい」)、半導体パッケージのデザインがテープアウトされ、製造される(ブロック710)。
【0044】
半導体パッケージ内の集積回路の第1のノードに電位が印加されていない場合(条件ブロック712:「いいえ」)、半導体パッケージは、電源投入を待つ(ブロック714)。しかしながら、第1のノードに電位が印加されて電位差が生じる場合(条件ブロック710:「はい」)、再配線層内に自動的に生成される金属層及びビアは、集積回路とマザーボードとの間で電流を伝達する(ブロック716)。
【0045】
図8を参照すると、信号経路800の一般化されたブロック図が示されている。様々な実施形態では、信号経路800は、複数の電源電圧基準信号及び接地電圧基準信号のうち特定の一方の信号経路と、複数の再配線層のうち特定の再配線層840と、特定の方向と、を含む。実施形態では、再配線層840はRDL1である。加えて、この実施形態では、信号経路800は、垂直方向の複数の信号経路を有する所定の電源電圧基準信号を含み、これらの信号経路の金属層の配置は、幅812及び高さ814を有する境界領域810内に境界付けられる。境界領域810は、第1領域816と第2領域818とを含む。更に、この実施形態では、これらの信号経路の配置は、幅822及び高さ824を有する境界領域820内に境界付けられる。境界領域820は、第3領域826と第4領域828とを含む。この実施形態では、境界領域810内の信号経路の金属密度は、境界領域820内の信号経路の金属密度とは異なる。
【0046】
先に記載したように、ユーザは、GUI、テキストファイル又は実行可能ファイルのうち何れかを使用して、再配線層における自動電源レール生成をカスタマイズするために属性を選択する。RDL1(再配線層840)において垂直方向にルーティングされる所定の電源電圧基準について、ユーザは、境界領域810の幅812及び高さ814の寸法を選択し、且つ、境界領域820の幅822及び高さ824の寸法を選択する。加えて、ユーザは、境界領域810及び境界領域820内の信号経路に使用する金属幅及び間隔のセットを選択する。図示するように、境界領域810及び820は、重複領域830内で互いに重複している。いくつかの実施形態では、重複領域830は、領域816と領域828との間の正のゼロでない量の重複ではなく、第1の領域816と第4の領域828との間の当接部である。
【0047】
電源レール生成器(すなわち、生成器)が、重複領域830が存在し、且つ、境界領域810及び820における所定の電源電圧基準の金属幅及び間隔のセットが異なると判定した場合に、生成器は、重複領域830において使用するために境界領域810及び820の金属幅及び間隔のセット(又は境界領域810及び820のセット)のうち何れかを選択する。また、生成器は、境界領域810内に位置する重複領域830の上の第1の領域816内の選択されたセットを使用する。さらに、生成器は、境界領域820内に位置する重複領域830の下の第4の領域828内の選択されたセットを使用する。様々な実施形態では、生成器は、境界領域810及び820の優先順位に基づいてセットを選択する。例えば、属性は、優先順位を含む。
【0048】
生成器は、選択されたセットを使用して、第1の領域816、重複領域830、及び、第4の領域828内に信号経路を配置する。したがって、垂直信号経路は、金属幅及び間隔の選択されたセットを使用して、第1の領域816の上部から第4の領域828の底部にルーティングされる。第1の領域816、重複領域830、及び、第4の領域828の外側であるが、境界領域810及び820内では、生成器は、境界領域810及び境界領域820に割り当てられた金属幅及び間隔のそれぞれのセットを使用する。例えば、第2の領域818内で、生成器は、境界領域810に割り当てられた金属幅及び間隔のセットを使用する。同様に、第3の領域826内で、生成器は、境界領域820に割り当てられた金属幅及び間隔のセットを使用する。
【0049】
先に記載したように、境界領域810及び820のうち一方に対して金属経路が配置された後、境界領域810及び820のうち他方に対して金属経路が配置される。したがって、生成器は、単に、重複領域830内の既存の金属経路を境界領域810及び820のうち他方内に延長する。例えば、境界領域810が境界領域820よりも高い優先順位を有する場合、金属幅及び間隔の選択されたセットは、境界領域810に割り当てられたセットである。加えて、生成器は、第1の領域816及び重複領域130内の既存の金属経路を第4の領域828内に単に延長する。ただし、生成器は、境界820に割り当てられた金属幅及び間隔のセットを使用して、第3の領域826に金属経路を配置する。上記の例は、垂直金属経路、何れかの電源基準、及び、再配線層RDL1を使用するが、他の実施形態では、これらのパラメータの様々な異なる組み合わせが可能であり、企図される。
【0050】
図9を参照すると、再配線層における自動電源レール生成のための方法900の一実施形態が示されている。先に記載したように、ユーザは、その属性を、GUI、テキストファイル、又は、様々なスクリプト言語のうち何れかで書かれた言語実行可能ファイルを介して電源レール生成器に提供する。対応するコンピューティングデバイスのプロセッサのハードウェアは、その属性に基づいて再配線層内で自動電源レール生成を行うために電源レール生成器を実行する。例えば、電源レール生成器は、再配線層のうち何れかの層を(プロセッサのハードウェアの実行に基づいて)選択する(ブロック902)。電源レール生成器は、選択された層の境界領域を選択する(ブロック904)。電源レール生成器は、選択された層の電力又は接地電圧基準信号を選択する(ブロック906)。電源レール生成器は、選択された信号の方向、金属幅、及び、金属間隔等のルーティング属性を選択する(ブロック908)。これらの選択の各々は、属性に基づく。
【0051】
電源レール生成器は、選択されたルーティング属性を使用して、選択された境界領域内に選択された信号のレイアウトマスクの配置を行う(ブロック910)。電源レール生成器が、境界領域内に複数の信号が存在すると判定し(条件ブロック912:「はい」)、複数の信号の幅及び間隔が満たされていないと電源レール生成器が判定する(条件ブロック914:「いいえ」)場合、電源レール生成器は、複数の信号の幅及び間隔のうち1つ以上を調整する(ブロック916)。いくつかの実施形態では、電源レール生成器は、ユーザ属性において指定された金属幅及び金属間隔に基づいて、金属幅及び金属間隔が満たされていると判定する。こうして、そのような複数の信号の幅及び間隔のうち1つ以上に対する調整は、それらが密度ルールウィンドウ(すなわち、密度の範囲)内に入るように行われる。いくつかの実施形態では、電源レール生成器は、再配線層の特定の層における信号のサポートされる金属幅及び間隔を提供する、製造業者によって提供されるファイルに基づいて金属幅及び間隔が満たされていると判定する。例えば、電源レール生成器が、ユーザ属性において指定された値から所定の信号の金属幅及び間隔を調整する場合、新しい値は、製造業者からこのファイルにおいて見出されるべきである。
【0052】
いくつかの実施形態では、電源レール生成器は、属性において指定された金属密度を維持する。例えば、電源レール生成器は、金属幅及び間隔のセットを選択し、幅及び間隔の各々は、属性において指定された金属幅及び間隔の元のセットの二分の一である。しかしながら、幅対間隔の比は同じままである。実施形態では、調整された金属幅及び間隔を選択するために、電源レール生成器は、再配線層の特定の層における信号のサポートされる金属幅及び間隔を提供する、製造業者によって提供されるファイルにアクセスする。実施形態では、電源レール生成器が所定の金属密度(又は幅対間隔の比)についてサポートされる幅及び間隔の全てを使い果たした場合に、電源レール生成器は、異なる金属密度を提供するサポートされる金属幅及び間隔を選択し始める。
【0053】
様々な実施形態では、電源レール生成器は、ユーザが後で検査するために、その選択及び結果でログファイルを更新する。いくつかの実施形態では、電源レール生成器は、複数の信号のうち最も低い優先順位であることに基づいて、調整すべき信号を選択する。電源レール生成器は、複数の信号の各々が、製造業者からのサポートされる幅及び間隔のファイル内に見出される幅及び間隔を有するまで、信号の優先順位付けされたリストを最低から最高に移動し続ける。
【0054】
複数の信号のうち少なくとも1つの信号の金属幅及び間隔を調整した後、方法900の制御フローは条件ブロック914に戻り、電源レール生成器は、複数の信号の幅及び間隔が満たされているかどうかを判定する。電源レール生成器が、境界領域内に複数の信号が存在しないと判断する場合(条件ブロック912:「いいえ」)、又は、電源レール生成器が、複数の信号の幅及び間隔が満たされていると判断する(条件ブロック914:「はい」)場合、電源レール生成器は、選択された層の選択された境界領域内にレイアウトマスクの配置を完了する(ブロック918)。
【0055】
図10を参照すると、再配線層における自動電源レール生成のための方法1000の一実施形態が示されている。対応するコンピューティングデバイスのプロセッサのハードウェアは、ユーザ属性に基づいて再配線層内で自動電源レール生成を行うために電源レール生成器を実行する。例えば、電源レール生成器は、選択されたルーティング属性を使用して、所定の層の選択された境界領域内に所定の信号のレイアウトマスクの配置を行う(ブロック1002)。配置を行うために使用される複数のステップは、方法900(
図9の)の上記の記載において更に記載されている。しかしながら、複数の信号が選択された境界領域内にあるかどうかをチェックする前に、実施形態では、電源レール生成器は、最初に、現在の配置が再配線層の隣接層上の同じ選択された信号に関して有効であるかどうかをチェックする。例えば、電源レール生成器は、後のビア生成のために、再配線層の隣接層の所定の信号との重複接合面積を判定する(ブロック1004)。例えば、電源レール生成器は、2つの隣接する金属層間の重複領域である重複接合面積を最小重複接合面積閾値と比較する。
【0056】
後のビア生成のための最小重複接合面積に達していない(条件ブロック1006:「いいえ」)場合、プロセッサによって実行されている電源レール生成器は、所定の層及び隣接層における所定の信号の幅及び間隔のうち1つ以上を調整する(ブロック1008)。いくつかの実施形態では、電源レール生成器は、ユーザ属性において指定された所定の層及び隣接層の優先順位に基づいて、何れの層を調整し始めるべきかを選択する。金属幅及び間隔の更新は、方法900(
図9の)のブロック916に関して上述したものと同様のステップに従う。
【0057】
いくつかの実施形態では、電源レール生成器は、ユーザ属性において指定された優先順位に基づいて隣接層を選択する。例えば、所定の層がRDL3である場合に、選択された隣接層は、RDL4又はRDL2の何れかである。ユーザが電源レール生成を行うために下方の向きを選択した場合、重複接合面積チェックは、RDL4とRDL3との間で既に行われており、現在選択されている隣接層は、RDL2である。他の選択及び向きが可能であり、企図される。後のビア生成のための最小重複接合面積に達している(条件ブロック1006:「はい」)場合、プロセッサによって実行されている電源レール生成器は、所定の層の選択された境界領域内に所定の信号のレイアウトマスクの配置を完了する(ブロック1010)。電源レール生成器は、電源レール生成のために次の信号又は次の層に移動することができる。
【0058】
図11を参照すると、自動的に生成された電源レールを有する再配線層を利用するコンピューティングシステム1100の一実施形態が示されている。コンピューティングシステム1100は、再配線層内に自動的に生成された電源レールを含むチップパッケージ1140を利用する。チップパッケージ1140は、ボールグリッドアレイ(BGA)表面実装パッケージ、チップスケールパッケージ(CSP)、及び、マザーボード(すなわち、プリント回路基板)上の他の構成要素と通信するシステムインパッケージ(SiP)のうち何れかを使用する。実施形態では、コンピューティングシステム1100は、チップパッケージ1140内にプロセッサ1110及びメモリ1130を含む。別の実施形態では、チップパッケージ1140内のプロセッサ1110及びメモリ1130のうち一方だけが、チップパッケージ1140内に含まれる。メモリコントローラ、バス又は通信ファブリック、1つ以上の位相ロックループ(phased locked loop、PLL)及び他のクロック生成回路、電力管理ユニット等のインターフェースは、説明を容易にするために示されていない。加えて、図示した実施形態では、チップパッケージ1140は、メモリバス1150並びに入力/出力(I/O)コントローラ及びバス1152を介してディスクメモリ1154に接続されている。
【0059】
他の実施形態では、コンピューティングシステム1100は、プロセッサ1110と同じタイプ又は異なるタイプの他のプロセッサ、1つ以上の周辺デバイス、ネットワークインターフェース、1つ以上の他のメモリデバイス等のうち1つ以上を含むことが理解されよう。いくつかの実施形態では、コンピューティングシステム1100の機能は、システムオンチップ(SoC)上に組み込まれている。他の実施形態では、コンピューティングシステム1100の機能は、マザーボードに挿入された周辺カード上に組み込まれている。コンピューティングシステム1100は、デスクトップコンピュータ、タブレットコンピュータ、ラップトップ、スマートフォン、スマートウォッチ、ゲームコンソール、パーソナルアシスタントデバイス等の様々なコンピューティングデバイスの何れかにおいて使用される。
【0060】
プロセッサ1110は、回路等のハードウェアを含む。様々な実施形態では、プロセッサ1110は、1つ以上の処理ユニットを含む。いくつかの実施形態では、処理ユニットの各々は、汎用データ処理が可能な1つ以上のプロセッサコアと、関連付けされたキャッシュメモリサブシステムと、を含む。そのような実施形態では、プロセッサ1110は、中央処理装置(CPU)である。別の実施形態では、処理コアは計算ユニットであり、計算ユニットの各々は、複数の並列実行レーン及び関連付けされたデータストレージバッファを有する高度並列データマイクロアーキテクチャを有する。そのような実施形態では、プロセッサ1110は、グラフィックス処理ユニット(GPU)、デジタル信号プロセッサ(DSP)等である。
【0061】
いくつかの実施形態では、メモリ1130は、様々なタイプのダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)のうち何れかを含む。メモリ1130は、オペレーティングシステム(operating system、OS)1132の少なくとも一部と、コード1134によって表される1つ以上のアプリケーションと、少なくともソースデータ1136と、を記憶する。様々な実施形態では、メモリ1130は、ディスクメモリ1154上に記憶された元のコピーを有するこれらのソフトウェア構成要素1132、1134、1136のコピーを記憶する。また、メモリ1130は、コード1134の特定のアプリケーションを実行する場合にプロセッサ1110によって生成される中間結果データ及び最終結果データを記憶することが可能である。
【0062】
様々な実施形態では、オフチップディスクメモリ1154は、フラッシュメモリのバンクを備える1つ以上のハードディスクドライブ(hard disk drive、HDD)及びソリッドステートディスク(Solid-State Disk、SSD)を含む。I/Oコントローラ及びバス1152は、オフチップディスクメモリ1154との通信プロトコルをサポートする。単一のオペレーティングシステム1132並びにコード1134及びソースデータ1136の単一のインスタンスが示されているが、他の実施形態では、別の数のこれらのソフトウェア構成要素がメモリ1130及びディスクメモリ1154に記憶される。オペレーティングシステム1132は、プロセッサ1110のブートアップを開始し、タスクをハードウェア回路に割り当て、コンピューティングシステム1100のリソースを管理し、1つ以上の仮想環境をホストするための命令を含む。
【0063】
上述した実施形態のうちの1つ以上がソフトウェアを含むことに留意されたい。そのような実施形態では、方法及び/又は機構を実施するプログラム命令は、コンピュータ可読媒体に伝達又は記憶される。プログラム命令を記憶するように構成されている多数のタイプの媒体が利用可能であり、ハードディスク、フロッピー(登録商標)ディスク、CD-ROM、DVD、フラッシュメモリ、プログラマブルROM(Programmable ROM、PROM)、ランダムアクセスメモリ(random access memory、RAM)、及び、様々な他の形態の揮発性又は不揮発性記憶装置が挙げられる。一般的に言えば、コンピュータアクセス可能記憶媒体は、命令及び/又はデータをコンピュータに提供するために、使用中にコンピュータによってアクセス可能な任意の記憶媒体を含む。例えば、コンピュータアクセス可能記憶媒体としては、磁気又は光学媒体(例えば、ディスク(固定又は取り外し可能)、テープ、CD-ROM、DVD-ROM、CD-R、CD-RW、DVD-R、DVD-RW、又は、Blu-Ray(登録商標)等)の記憶媒体が挙げられる。記憶媒体としては、RAM(例えば、同期ダイナミックRAM(synchronous dynamic RAM、SDRAM)、ダブルデータレート(double data rate、DDR、DDR2、DDR3等)SDRAM、低電力DDR(low-power DDR、LPDDR2等)SDRAM、ラムバスDRAM(Rambus DRAM、RDRAM)、スタティックRAM(static RAM、SRAM)等)、ROM、フラッシュメモリ等の揮発性又は不揮発性メモリ媒体、ユニバーサルシリアルバス(Universal Serial Bus、USB)インターフェース等の周辺インターフェースを介してアクセス可能な不揮発性メモリ(例えば、フラッシュメモリ)等が更に挙げられる。記憶媒体としては、微小電気機械システム(microelectromechanical system、MEMS)、並びに、ネットワーク及び/又はワイヤレスリンク等の通信媒体を介してアクセス可能な記憶媒体が挙げられる。
【0064】
追加的に、様々な実施形態では、プログラム命令は、C等の高レベルプログラミング言語、又は、Verilog、VHDL等の設計言語(design language、HDL)、又は、GDSIIストリームフォーマット(GDSII)等のデータベースフォーマットでのハードウェア機能の動作レベル記述又はレジスタ転送レベル(register-transfer level、RTL)記述を含む。いくつかの場合では、記述は、合成ライブラリからゲートのリストを含むネットリストを生成するために記述を合成する合成ツールによって読み出される。ネットリストは、システムを含むハードウェアの機能も表すゲートのセットを含む。ネットリストは、次いで、マスクに適用される幾何学的形状を記述するデータセットを生成するために、配置及びルーティングされ得る。次に、マスクは、システムに対応する半導体回路又は回路を生成するために、様々な半導体製造ステップで使用され得る。代替的に、コンピュータアクセス可能記憶媒体上の命令は、必要に応じて、ネットリスト(合成ライブラリを有する若しくは有しない)又はデータセットである。付加的に、命令は、Cadence(登録商標)、EVE(登録商標)及びMentor Graphics(登録商標)等のベンダからのハードウェアベースのタイプのエミュレータによるエミュレーションのために利用される。
【0065】
上記の実施形態は、かなり詳細に説明されているが、上記の開示が十分に理解されると、多数の変形及び修正が当業者に明らかになるであろう。以下の特許請求の範囲は、全てのそのような変形及び修正を包含すると解釈されることが意図されている。
【国際調査報告】