説明

セラミック集積回路パッケージにおいて電力分配システムを機能強化するための方法、装置、およびコンピュータ・プログラム

【課題】セラミック集積回路パッケージ内の電力分配システム(PDS)を自動的に機能強化するための方法、装置、およびコンピュータ・プログラムを提供すること。
【解決手段】パッケージには複数の層が含まれる。パッケージ全体が、複数の異なるグリッド・セルを含む3次元グリッドに分割される。情報はセル1つずつに関連付けられる。セル1つずつについて、セル内に含まれる情報が、3次元パッケージ内で他のセルを基準にしたそのセルの物理的場所の特徴を記述する。情報は、当該セルをすでに通過したいずれのビアまたはトレースをも記述する。潜在的な新しいビアあるいはトレースまたはその両方の場所は、情報を使用するパッケージ全体のすべてにわたって自動的に位置付けられる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ処理システムを対象とする。より具体的に言えば、本発明はセラミック集積回路パッケージにおいて電力分配システム(PDS)を自動的に機能強化するための方法、装置、およびコンピュータ・プログラムを対象とする。
【背景技術】
【0002】
VLSI適用分野における現在の傾向は、チップとも呼ばれる集積回路(IC)内の電流に関して、通常の条件下で200アンペア(amp)以上の範囲となり、ストレス試験の条件下ではさらにそれ以上にもなり得るという要件を強要している。これに加えて、ICの動作電圧は、1ボルトまたはそれ以下という低い値にまで下げられている。チップが結合されるパッケージは、パッケージ全体およびICへ電力を分配する責務を負う電力分配システム(PDS)を有する。電力分配システムは、すべての供給電圧網などのすべての電力網および接地網を含む。PDSは、このような高い電流密度をICに供給可能であると同時に、パッケージの多くの層(layer)全体にわたって電圧損失を非常に低い値に維持するために、インピーダンスを最小にしなければならない。
【0003】
最近まで、第1レベル・パッケージのPDSは、高性能ICの電流および電圧の要件を十二分に満たしてきた。第1レベル・パッケージは、ベア(bear)・シリコン・チップを保持し、それらと残りのより大規模な電気系統との間に接続性、電力供給、および熱除去を提供する、相互接続デバイスである。新しいシリコン技術は、より切迫した電力需要を必要とするため、原因となる第1レベル・パッケージング部分のオーム抵抗損がより大きくなり、その妥当性を保証するために注意深く設計および分析する必要がある。
【0004】
導電材料がオーム抵抗損をさらに大きくさせる比較的損失の多い金属ペーストを基材とし、信号トレースのルーティングが電力分配システムを補強するために残される使用可能な表面積を制限する傾向があるほど輻輳する、高信号密度のセラミック・パッケージでは、PDSの設計は特に困難である。この問題は、ほとんどの電流密度を流す必要があり、信号のブレークアウト配線(breakout wiring)が使用可能スペースの大部分を占める、パッケージのチップのすぐ下の部分ではさらに深刻である。加えて、全体の電流がパッケージの下部ピンからICそれ自体の上部接続へと垂直方向に流れるため、水平なソリッドまたはメッシュ・プレーン接続よりもビア相互接続が重要な役割を果たすことになる。
【0005】
工学的分析により、パッケージの電力分配システムを補強または機能強化する必要があると判定された場合、ビアおよびトレースが追加可能なパッケージの設計において好機を見出すタスクは、非常に時間および手間のかかるものとなる。パッケージが多くの層を含むため、設計者は問題の3次元的性質を考慮に入れなければならない。さらに、追加が必要な可能性のあるビアあるいは素子(element)またはその両方の数は、何千にもなる可能性がある。
【0006】
従来技術のシステムが提供する特徴は、パッケージ全体をまとめて考慮の対象とする自動的または大規模な方法で、可能な追加のビアあるいはトレースまたはその両方の場所を位置付ける機能は提供していない。したがって、可能なビアあるいはトレースまたはその両方の場所を位置付けるこのプロセスは、時間のかかる手作業のプロセスである。
【発明の開示】
【発明が解決しようとする課題】
【0007】
したがって、パッケージをまとめて考慮の対象とし、パッケージ全体を通じて可能な追加のトレースあるいはビアまたはその両方の場所を位置付ける(locating)ことによって、セラミック・パッケージ内の電力分配システム(PDS)を自動的に機能強化するための方法、システム、およびコンピュータ・プログラムが求められている。
【課題を解決するための手段】
【0008】
セラミック集積回路パッケージ内の電力分配システム(PDS)を自動的に機能強化するための方法、装置、およびコンピュータ・プログラムを開示する。パッケージには複数の層(layer)が含まれる。パッケージ全体が、複数の異なるグリッド・セルを含む3次元グリッドに分割される。情報はセル1つずつに関連付けられる。セル1つずつについて、セル内に含まれる情報が、3次元パッケージ内で他のセルを基準にした(関連した)そのセルの物理的場所の特徴を記述する。情報は、当該セルをすでに通過したいずれのビアまたはトレースをも記述する。潜在的な新しいビアあるいはトレースまたはその両方の場所は、情報を使用するパッケージ全体のすべてにわたって自動的に位置付けられる。
【0009】
本発明の上記ならびに追加の目的、特徴、および利点は、以下の詳細に記載された説明において明らかになろう。
【0010】
本発明の特徴と考えられる新規な機能は、特許請求の範囲に記載される。しかしながら、本発明それ自体、ならびにその好ましい使用モード、他の目的および利点は、添付の図面と共に読んだ場合、例示的な実施形態の以下の詳細な説明を参照することによって最もよく理解されるであろう。
【0011】
本発明の好ましい一実施形態およびその利点は、添付の図面の同様の部分および対応する部分には同様の数字が使用されている図面を参照することによって、より良く理解される。
【発明を実施するための最良の形態】
【0012】
本発明は、チップとも呼ばれる集積回路に結合された多層(マルチレイヤ)のセラミック集積回路パッケージ内で電力分配システム(PDS)を自動的に機能強化するための方法、装置、およびコンピュータ・プログラムである。パッケージ内の電力分配システムは、パッケージに取り付けられたチップに電力を供給するために構築あるいは機能強化またはその両方が行われる。本発明は、ビアあるいはトレースまたはその両方が自動的に追加可能なモジュール全体の中で物理的な場所を識別することにより、電力分配システムを補強することを提供する。
【0013】
既存のパッケージ・デザインにおけるデータ信号のレイアウトはすでに完了している。データ信号は部分的または完全に配線することができる。既存のパッケージ・デザインは、パッケージを結合することになるチップへ電力を供給するために使用される、いくつかのビアあるいはトレースまたはその両方をすでに含んでいる場合がある。これらビアのいくつかはデザイン内に埋設できる。本発明は、パッケージ・デザイン全体を考慮の対象とすることにより、新しいビアを追加することが可能な、およびトレースを追加または延長することが可能な、既存のパッケージ・デザイン内の場所を自動的に識別する。
【0014】
セラミック・パッケージの場合、電流の大半が垂直方向である。したがって、ビアの追加に高い優先度を割り当てる必要がある。ビアはトレースよりも横断面が大きいため、長いビア接続の追加を機能強化して、抵抗トレースを通過する層平面を流れる電流の導通への依存を最小限にすることが望ましい。また、層平面内の導電性が制限されるために、ほとんどの電流は電流のソースおよびドレーンに密接に従う。したがってパッケージ内の電流密度は、チップがパッケージに結合されているチップの場所の下に集中することになる。
【0015】
本発明は、ビアが追加される領域を、電流密度が最大の領域に制限することができる。これらの領域は、回路シミュレーション・ツールを使用して容易に決定することができる。これらの領域は、チップ内のアクティブ・コンポーネントの概要を考慮の対象とすることによっても推定可能である。電流密度に関する特定量を指定することができる。ビア/トレースが追加可能な潜在的な場所を、この特定量を超える電流密度を有する領域に制限することができる。
【0016】
潜在的なビアの場所は、第1に最も長いビアが追加可能な場所を見つけることによって見つけられる。第1に最上位層が最下位層に接続されることになるビアの場所が見つけられる。次に、第1に最も長いビアを追加する残りの中間層に接続するビアの場所が見つけられる。その後、トレースが延長可能な場所を見つけることによって、すべての層内にトレースが構築される。その後、パッケージの下部ピンを電力構造体に接続することになる複数のビアの場所が見つけられる。
【0017】
パッケージ内の電力分配システムへの修正は、諸制約の使用を通じたユーザの制御下にある。電力分配システムを修正した結果、いずれかの既存のデータ信号配線が変更されることはない。潜在的な場所はパッケージ全体にわたって見つけられるため、一度に多くの修正が実行可能である。したがって、追加のビアおよび機能強化されるトレース用のすべての潜在的な場所が、一度にユーザに提示される。これらの潜在的な場所が見つかった後、ユーザは修正済みPDSにアクセスし、グラフィカル・ユーザ・インターフェース(GUI)を使用してこれらの修正を制御するための手段を有する。
【0018】
電力信号の追加あるいは延長またはその両方を実行するためのパッケージ内の場所を選択する場合、いくつかの考慮すべき点に配慮しなければならない。これらの考慮すべき点は、制約を通して実施される。たとえば、チップに電力を供給するため、およびすでにパッケージ内にレイアウトされているデータ信号を遮蔽するために、パッケージに電力信号を追加する必要がある。加えて、最終的なパッケージ・デザインを製造できるようにしなければならない。
【0019】
潜在的なビアあるいはトレースまたはその両方の場所を位置付ける場合に使用する制約が指定される。これらの制約は、ユーザによって指定される1組の工学的設計ルールである。制約は、製造制約、配線可能性(wireability)制約、および電力供給システム制約を指定することができる。たとえば製造制約は、特定深さよりも浅いビアを製造することが困難であるため、少なくとも特定数の層の深さであることを必要とする、新しいビアの深さに関する制限を含むことができる。
【0020】
配線可能性制約の一例は、集積回路の(チップの)データ信号がパッケージ内のそれらの意図する宛先に配線されるのを、新しいビア/トレースが妨げないことを要求することである。電力供給システム制約は、ビア/トレースが、集積回路内の様々なデバイスに供給する電圧および電流の所望な工学的目標を達成することに寄与するように指定することができる。
【0021】
他の制約は、電力トレースによって遮蔽されるデータ信号トレースを指定する。セラミック・パッケージには、ソリッド電力プレーンではなくメッシュ電力プレーンの電力分配システムが含まれる。これらのパッケージでは、すでにパッケージ・デザインに含まれる信号トレースを電力トレースによって遮蔽する必要がある。したがって、すべてのデータ信号のレイアウトが完了すると、すべてのデータ信号が電力信号によって遮蔽されることを保証することによって、電力分配システムのレイアウトが完了する。したがって電力トレースは、電力網のレイアウト内で電力信号がデータ信号の上および下を通るようにルーティングする必要がある。
【0022】
本発明を使用して、これらの制約を満たす場所を見つけることにより、潜在的なビアあるいはトレースまたはそれら両方の場所を位置付けることができる。制約は、ビアを追加することが可能な領域を、電流密度が最大の領域に制限することを含むことができる。これらの領域は、回路シミュレーション・ツールを使用することによって容易に決定できる。制約は、第1に、最上位層を最下位層に接続することになる潜在的なビアの場所を見つけるように試みることによって、必要なだけのビアを追加することも指定できる。その後、制約は、残りの中間層間にビアの場所が見つけられ、第1に最も長い可能な潜在的ビアの場所を見つけるように指定することができる。他の制約は、各層内でのトレース延長を定義することができる。他の制約は、モジュール下部ピンを電力分配システムに接続するために複数のビアの使用を定義することができる。制約の定義はユーザによって実行される。
【0023】
本発明は、事前に定義された制約のセットが与えられた場合に、潜在的なビアあるいはトレースまたはその両方の場所を位置付けるための方法、装置、およびプログラムである。ユーザは、追加または修正されるビア/トレースの数、タイプ、および場所を制御する制約を定義することができる。
【0024】
本発明は、第1に3次元パッケージ・ジオメトリ構造を受け取ることによって実施される。この構造は、従来技術の方法を使用して生成される。ジオメトリにはパッケージのすべての層内のすべてのデータ信号の場所が含まれる。
【0025】
次に本発明に従って、パッケージ・ジオメトリ要素が分離した(discrete)ユニットに分けられ、グリッド寸法によって決定され、三次元行列にロードされる。この行列は、電力分配システムの評価および向上に必要な様々な機能を実行するために、任意数の方向にトラバースする(traverse)ことができる。
【0026】
加えて、ビア/トレース用の潜在的な場所が特定されると、本発明はビア/トレースを追加および修正することによって電力分配システムを更新する。電力分配システムに対する修正の量、場所、およびタイプを対話式で制御することによって、ならびにモジュール全体における電力分配システム全体への修正を一度に実行することによって、ユーザは、従来技術の方法に比べてはるかに短い時間で電力分配システムの補強タスクを完了することができる。
【0027】
図1は、本発明が実施可能なデータ処理システムのネットワーク100を示す図である。データ処理システム・ネットワークには、データ処理システム・ネットワーク100内で共に接続された様々なデバイスおよびコンピュータ間に通信リンクを提供するために使用される媒体である、ネットワーク102が含まれる。ネットワーク102は、有線、無線通信リンク、または光ファイバ・ケーブルなどの接続を含むことができる。
【0028】
記載された例では、サーバ104はストレージ・ユニット106と共にネットワーク102に接続される。加えて、クライアント108、110、および112もネットワーク102に接続される。これらのクライアント108、110、および112は、たとえばパーソナル・コンピュータ、ネットワーク・コンピュータ、または他のコンピューティング・デバイスとすることができる。記載された例では、サーバ104はブート・ファイル、オペレーティング・システム・イメージ、およびアプリケーションなどのデータをクライアント108〜112に提供する。クライアント108、110、および112は、サーバ104に対するクライアントである。データ処理システム・ネットワーク100は、追加のサーバ、クライアント、および図示されていない他のデバイスを含むことができる。記載された例では、データ処理システム・ネットワーク100は、一連のTCP/IPプロトコルを使用して互いに通信する、ネットワークおよびゲートウェイの世界規模の集まりを表すネットワーク102を備えたインターネットである。インターネットの中心は、データおよびメッセージをルーティングする何千もの商用、行政、教育、および他のコンピュータ・システムからなる、主要ノードまたはホスト・コンピュータ間での高速データ通信回線のバックボーンである。
【0029】
もちろん、ネットワーク・データ処理システム100は、たとえばイントラネット、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、または無線ネットワークなどの、いくつかの異なるタイプのネットワークとしても実施可能である。図1は、本発明の構造上の制限としてではなく、一例として意図されたものである。
【0030】
図2は、本発明に従った、図1のコンピュータ・システムのいずれかを実施するために使用することが可能なコンピュータ・システムのより詳細な図である。データ処理システム200は、システム・バス206に接続された複数のプロセッサ202および204を含む対称型マルチプロセッサ(SMP)システムとすることができる。別の方法として、単一のプロセッサ・システムを採用することもできる。さらにシステム・バス206に接続されるのが、ローカル・メモリ209へのインターフェースを提供するメモリ・コントローラ/キャッシュ208である。I/Oバス・ブリッジ210がシステム・バス206に接続され、I/Oバス212にインターフェースを提供する。メモリ・コントローラ/キャッシュ208およびI/Oバス・ブリッジ210は、記載のように一体化することができる。
【0031】
I/Oバス212に接続された周辺コンポーネント相互接続(PCI)バス・ブリッジ214は、PCIローカル・バス216へのインターフェースを提供する。いくつかのモデムをPCIバス216に接続することができる。典型的なPCIバス実装は、4つのPCI拡張スロットまたはアドイン・コネクタをサポートすることになる。図1のネットワーク・コンピュータ108〜112への通信リンクは、アドイン・ボードを介してPCIローカル・バス216に接続されたモデム218およびネットワーク・アダプタ220を介して提供することができる。
【0032】
ネットワーク・アダプタ220は、たとえばR45コネクタを介してイーサネット・ネットワークなどのネットワークの外にアナログ信号を出すように条件付ける、物理層282を含む。ネットワーク・アダプタ220内には、メディア・アクセス・コントローラ(MAC)280が含まれる。メディア・アクセス・コントローラ(MAC)280がバス216に結合され、デジタル・ネットワーク信号を処理する。MAC 280はバス216と物理層282との間のインターフェースとして働く。MAC 280は、データ・パケットの送信および受信に関するいくつかの機能を実行する。たとえばデータの送信時、MAC 280は送信されることになるデータをアドレスおよびエラー検出フィールドを備えたパケットにアセンブルする。これとは逆に、パケットの受信時にMAC 280はパケットを逆アセンブルし、アドレス・チェックおよびエラー検出を実行する。加えて、MAC 280は通常、送信されたデジタル信号のエンコード/デコードを実行し、プリアンブル生成/除去ならびにビット送信/受信を実行する。
【0033】
追加のPCIバス・ブリッジ222および224は、追加のPCIバス226および228用のインターフェースを提供し、ここから追加のモデムまたはネットワーク・アダプタをサポートすることができる。このように、データ処理システム200は複数のネットワーク・コンピュータへの接続が可能である。図示されたように、メモリ・マッピング済みグラフィック・アダプタ230およびハード・ディスク232も、直接または間接的のいずれかでI/Oバス212に接続することが可能である。
【0034】
通常の当業者であれば、図2に示されたハードウェアが変更可能であることを理解されよう。たとえば記載されたハードウェアに加えて、またはこれらの代わりに、光ディスク・ドライブおよびその他などの他の周辺デバイスを使用することもできる。記載された例は、本発明に関して構造上の制限を示唆することを意味するものではない。
【0035】
本発明は、図1または2によって示されたコンピュータのうちの1つによって実行することができる。
【0036】
図3は、本発明に従った、層301を含むセラミック・パッケージ・デザイン300の上面図であり、層301はトレース302、308、および310、ならびにビア340を含む。トレース302は垂直レグ(leg)304および水平レグ306を含む。埋め込まれたビア342(図6を参照)も設計300に含まれる。本発明を使用して、層301内の可能な追加のビアあるいはトレースまたはその両方の場所を位置付けることができる。
【0037】
図4は、本発明に従って、パッケージ・デザインが複数の3次元グリッド・ブロックまたはセル305および307などのセルに分割された後の、図3の層301を示す上面図である。層301は77個のセルに分割されている。各セルの場所は、場所i、j、およびkで識別される。これは最上位層であるため、77個のセルそれぞれのkの値は1に等しい。たとえば、セル305はセルの場所i=11、j=1、およびk=1であるものとして識別される。セル307はセルの場所i=5、j=6、およびk=1であるものとして識別される。
【0038】
セルの形状は均一である。情報は各セルの場所に格納される。たとえば、ビアまたはトレースがセル内にある場合、その情報はそのセル内に格納される。情報には、事前に存在するビアまたはトレースがどの電力網の一部であるかの識別が含まれる。セルを通過するトレースがそのセル内で開始するか終了するかを示す情報が、その情報に含まれる。セルが既存のビアを含む場合、セル内のビアがビアの開始場所であるか終了場所であるかを示すために、情報はそのセル内に格納される。加えて、i、j、k座標で示される各セルの物理的な場所もセル内に格納される。
【0039】
たとえば、トレース302の水平レグ306は、セルの場所i=2およびj=2で開始されるため、情報[H(b)]がこのセルの場所に格納され、セル内のトレースが水平トレースの始まりであることを示す。セルi=3、j=2からi=8、j=2がトレース302の水平レグを含んでいるという情報が、これらのセルに格納される。セルの場所i=9、j=2には、このセルの場所がトレース302の水平レグの終わりおよびトレース302の垂直レグの始まりを含んでいることを示す情報が含まれる。セルの場所i=9、j=3、およびi=9、j=4には、これらのセルの場所がトレース302の垂直レグを含んでいることを示す情報が含まれる。セルの場所i=9、j=5がトレース302の垂直レグの終わりを含んでいることを示す情報が、このセルに格納される。加えて、これらセルの場所i=2、j=2からi=9、j=2、およびi=9、j=2からi=9、j=5のそれぞれに、トレース302がどの電力網の一部であるかを示す情報が格納される。たとえば、トレース302が接地トレースの場合、その情報はこれらのセルの場所i=2、j=2からi=9、j=2、およびi=9、j=2からi=9、j=5のそれぞれに格納される。別の方法として、トレース302が特定の供給電圧網である場合、その情報はこれらのセルの場所に格納される。
【0040】
セルの場所i2、j5には、この場所が水平トレース308の始まりを含んでいることを示す情報、ならびに、どの電力網トレース308が接続されているかを示す情報、および前述のような他の情報が含まれる。セルの場所i3、j5には、この場所が水平トレース308の一部を含んでいることを示す情報、ならびに前述の他の情報が含まれる。セルの場所i4、j5には、この場所が水平トレース308の終わりを含んでいることを示す情報、ならびに前述のような他の情報が含まれる。
【0041】
セルの場所i9、j7には、この場所が水平トレース310の始まりを含んでいることを示す情報、ならびに、どの電力網トレース310が接続されているかを示す情報、および前述のような他の情報が含まれる。セルの場所i10、j7には、この場所が水平トレース310の一部を含んでいることを示す情報、ならびに前述の他の情報が含まれる。セルの場所i11、j7には、この場所が水平トレース310の終わりを含んでいることを示す情報、ならびに前述のような他の情報が含まれる。
【0042】
セルの場所i3、j1には、この場所がビア340の始まりを含んでいることを示す情報が含まれる。
【0043】
図5は、本発明に従って、複数のグリッド・ブロックに分割され、トレースの延長を含む図3のパッケージ・デザイン300を示すブロック上面図である。
【0044】
トレース302および308は、本発明に従って延長されている。3つのトレースすべてが同じ電力網の一部であることが決定されている。たとえば、3つのトレースすべてを特定の供給電圧網の一部とすることができる。セルの場所i=1、j=1からi=11、j=9の中から、グリッド全体における各セルの場所が分析される。このプロセスは、図9および10を参照しながらより詳しく説明する。
【0045】
トレース322は、セルの場所i=2、j=2からセルの場所i=2、j=5まで追加されている。トレース324は、セルの場所i=3、j=2からセルの場所i=3、j=5まで追加されている。トレース326は、セルの場所i=4、j=2からセルの場所i=4、j=5まで追加されている。さらにトレース328は、セルの場所i=9、j=5からセルの場所i=9、j=7まで追加されている。
【0046】
図6は、本発明に従って、パッケージ・デザイン300が複数の3次元グリッド・ブロックに分割された後の、図3のセラミック・パッケージを示す側面図である。パッケージ・デザイン300には、層301、344、346、348、および350などの複数の層が含まれる。層301は最上位の層である。層350は最下位の層である。層344〜348は中間層である。
【0047】
セルの場所i3、j1、k1には、この場所がビア340の始まりを含んでいることを示す情報が含まれる。指標k1は、この場所が層301内にあることを示す。セルの場所i3、j1、k2には、この場所がビア340の一部を含んでいることを示す情報が含まれる。指標k2は、この場所が層344内にあることを示す。セルの場所i3、j1、k3には、この場所がビア340の終わりを含んでいることを示す情報が含まれる。指標k3は、この場所が層346内にあることを示す。
【0048】
セルの場所i5、j1、k4には、この場所がビア342の始まりを含んでいることを示す情報が含まれる。指標k4は、この場所が層348内にあることを示す。セルの場所i5、j1、k5には、この場所がビア342の一部を含んでいることを示す情報が含まれる。指標k5は、この場所が層350内にあることを示す。
【0049】
新しいビアの場所を、本発明に従って見つけることができる。たとえば制約が満たされた場合、新しいビアの場所をi2、j1、k1からi2、j1、k5に見つけることができる。しかしながら、新しいビアの場所i5、j1、k1からi5、j1、k3は、既存のビア342がこの潜在的な新しいビアの長さを制限するため、おそらく追加することはできない。
【0050】
図7は、本発明に従って、可能な追加のビアあるいはトレースまたはその両方の場所を位置付けることによって、セラミック・パッケージ・デザインにおいて電力分配システム(PDS)を自動的に機能強化することを記載した、高水準の流れ図である。プロセスはブロック400によって記載されたように開始され、その後、パッケージ・ファイルの場所を示すこと、供給電圧網および接地網などの電力分配システムに関連するパッケージ・デザインにおける網を示すこと、セルのグリッド・サイズを示すこと、ならびにパラメータのデフォルト/初期値を定義することを含む、パラメータの設定を示すブロック402へと進む。
【0051】
その後プロセスは、各グラフィカル要素における読み取りを含む、パッケージ・ジオメトリ設計における読み取りを示すブロック404へと進む。グラフィカル要素は、垂直トレース・セグメント、水平トレース・セグメント、およびビアを含む。パッケージ・デザインは従来技術に従った任意の方法を使用して生成される。パッケージ・デザインには、レイアウトおよびデータ信号のルーティングがすでに含まれる。
【0052】
次に本発明に従って、ブロック406は、パッケージ・ジオメトリ設計を形状が均一の複数のグリッド・セルを含む3次元行列に分割することを示す。次にブロック408は、行列の各セルに値を格納することを示す。これらの値は、行列内のセルの場所、水平トレースが存在するかどうか、垂直トレースが存在するかどうか、このセルがトレースの始まりまたは終わりであるかどうか、セルがすでにビアを含んでいるかどうか、既存のビアがビアの始まりまたは終わりであるかどうか、および、トレースまたはビアが存在する場合にそのトレースまたはビアがその一部である電力網の名前を識別する。各セルは指標i、j、およびkによって識別され、これは指標x、y、およびzの物理座標の固有のセットに対応する。指標iは層内でのセルの相対的な水平の場所を示す。指標jは層内でのセルの相対的な垂直の場所を示す。指標kはパッケージ内の特定の層を示す。
【0053】
その後、ブロック410はグラフィカル・ユーザ・インターフェース(GUI)の生成を示す。
【0054】
次に、ブロック412は制約の入力を示す。制約は、電力分配システムの設計パラメータならびに修正パラメータを指定する。たとえば制約は、トレースあるいはビアまたはその両方などの要素がいくつ追加されることになるかを指定する。制約は、各ビアについて最大あるいは最小またはその両方の長さを指定する。制約は、特定タイプのビアにとって好ましい場所、特定の信号トレースを電力網によって遮蔽しなければならないか否か、および他のタイプの設計パラメータを指定することができる。たとえば制約リストの一部は、パッケージの電圧低下が所定の値よりも大きい場所を位置付けることによってビアを必要とされる領域に制限すること、最上層と最下層とを結合するビアを追加し、その後中間層を結合するビアをまとめて追加する(すなわち、可能な最も長いビアで始まるビアを追加する)こと、パッケージにメッシュ・トレースを追加し、既存の電力分配システムを完了すること、ならびに、電力分配システムからのパッケージのI/Oピンへのビア接続をできる限り多くすること、とすることができる。
【0055】
次にプロセスは、電流密度が最大の場所にビア/トレースを追加することが可能な領域に対する制限を制約に追加する、ブロック414に進む。これらの領域は、回路シミュレーション・ツールを使用して決定することができる。これらの領域は、このパッケージが接続されることになるチップ内のアクティブ・コンポーネントの概要を考慮の対象とすることによって、推定することができる。
【0056】
その後のブロック416は、パッケージの最上位層からパッケージの最下位層までの潜在的なビアの場所を見つけることを示す。このステップによって、最上位層を最下位層に接続するために必要な数だけのビアが追加されることになる。次にブロック418は、中間層を接続する潜在的な場所を見つけることを示す。最長のビアの場所が最初に追加される。その後のブロック420は、すべての層内でトレースを構築することを示す。その後のブロック422は、複数のビアを使用してパッケージの下部ピンを電力構造に接続することが可能な、潜在的なビアの場所を見つけることを示す。
【0057】
図8は可能なビアの場所を生成するプロセスを示す。図9および10は、既存のトレースが延長可能な潜在的なトレースの場所を見つけるプロセスを示す。
【0058】
その後のブロック424は、リストに含められた場所でビアあるいはトレースまたはその両方を追加することによって電力分配システムを修正することを示す。次にブロック426は、修正された電力分配システムを保存することを示す。その後プロセスは、ブロック428で示されたように終了する。
【0059】
図8は、本発明に従って、セラミック・パッケージ・デザインにおいて可能なビアの場所のリストを自動的に生成することを示す、高水準の流れ図である。このプロセスは、特定の電力網、開始層、終了層、ならびに場所iおよびjのセットに対して実行される。この情報が与えられると、図8に記載されたプロセスは、新しいビアが両方の層で特定の電力網への電気的接続を作成するように、ビアが追加可能なすべてのジオメトリ・オープニング(幾何学的開口)を見つけることになる。
【0060】
プロセスはブロック500が示すように開始され、その後、追加されることになるビアに関する電力網のタイプを決定するブロック502へと進む。次にブロック504は、制約を使用して必要なビアの長さを決定することを示す。その後ブロック506は、第1の層内で第1のセルi、j、kに進むことを示す。その後プロセスは、kを第1の層内のkの値に等しく設定することを示すブロック508へ進む。ブロック510は、このセルi、j、kに格納された情報を読み取ることを示す。
【0061】
その後ブロック512は、このセル内にすでにビアが存在するか否かの判別を示す。この判別は、セル内に格納された情報を使用して実行される。セル内にすでにビアが存在すると判別された場合、プロセスはこのセル内にビアを追加できないことを示すブロック514に進む。ビアをこのセル内に追加することはできない。その後プロセスは、これがこの層内の最後のセルの場所i、jであるか否かの判別を示すブロック516に進む。これが最後のセルの場所i、jであると判別された場合、プロセスは、可能なビアのリストを提供することを示すブロック518に進む。その後プロセスは、ブロック520が示すように終了する。
【0062】
再度ブロック516を参照し、これがこの層内の最後のセルの場所i、jでないと判別された場合、プロセスはこの層内の次のセルの場所i、jに進むことを示すブロック522に進む。その後プロセスはブロック508へ戻る。
【0063】
再度ブロック512を参照し、このセル内にすでにビアが存在しないと判別された場合、プロセスは、このセル内の異なる網のトレースがすでに存在するか否かの判別を示すブロック524に進む。このセル内の異なる網のトレースがすでに存在すると判別された場合、プロセスはブロック514に進む。
【0064】
再度ブロック524を参照し、このセル内の異なる網のトレースがすでに存在しないと判別された場合、プロセスはブロック526に進む。次にブロック526は、この潜在的な新しいビアが、制約によって指定されたビアに必要な長さと同じであるか否かの判別を示す。ビアに必要な長さに達していないと判別された場合、プロセスは、これが最後のkであるか否かの判別を示すブロック528に進む。この判別は実際には、これがパッケージ内の最後の層であるか否かの判別である。これが最後のkであると判別された場合、プロセスはブロック516に進む。再度ブロック528を参照し、これが最後のkでないと判別された場合、プロセスは現在の値kを現在の値k+1に等しく設定することを示すブロック530に進む。これは、kの値をパッケージ内の次の層に等しくする効果を有する。その後プロセスは、セルの場所i、j、kに進むことを示すブロック532に進む。その後プロセスはブロック510に進む。
【0065】
再度ブロック526を参照し、ビアに必要な長さに達していると判別された場合、プロセスは、この潜在的な新しいビアがブロック502で決定された同じ電力網構造にすでに接続されているかどうかの判別を示すブロック534に進む。この潜在的な新しいビアがすでに電力網構造に接続されていると判別された場合、プロセスは、この潜在的な新しいビアを潜在的な新しいビアの場所のリストに追加することを示すブロック536に進む。その後プロセスはブロック528に進む。
【0066】
再度ブロック534を参照し、この潜在的な新しいビアがすでに電力網構造に接続されていないと判別された場合、プロセスは、網構造への接続のために隣接するセルをチェックすることを示すブロック538に進む。次にブロック540は、隣接するセルがブロック502で決定された電力網への接続をすでに有するか否かの判別を示す。隣接するセルが同じ電力網への接続をすでに有すると判別された場合、プロセスはブロック536に進む。再度ブロック540を参照し、隣接するセルが同じ電力網への接続をすでに有していないと判別された場合、プロセスはブロック514に進む。
【0067】
図9は、本発明に従って、セラミック・パッケージ・デザインにおいて既存のトレースを層内で水平に延長可能であるかどうかを自動的に判別することを示す、高水準の流れ図である。このプロセスは、特定の層内の特定の電力網のために実行される。図9のプロセスは、新しいかまたは延長されたトレースが層内の場所i、jと何らかの他の場所i、jとの間の電気的接触を作成するように、トレースが追加できるかどうか、または既存のトレースが延長可能であるかどうかを判別する。
【0068】
プロセスはブロック600が示すように開始され、その後、セルの場所i(0)、j(0)、k(0)に進むことを示すブロック602に進む。隣接する水平なセルの場所は、i(h)が現在の値iプラス1に等しくなるように定義される。次にブロック604は、この場所i、j、kにすでにトレースが存在するか否かの判別を示す。場所i、j、kにすでにトレースが存在しないと判別された場合、プロセスは、トレースがこのセルの場所i、j、kから水平に延長できないと判別するブロック606に進む。
【0069】
その後プロセスは、これが層内の最後のセルの場所iであるか否かの判別を示すブロック608に進む。これが最後のセルの場所iでないと判別された場合、プロセスはiをiプラス1に等しく設定することを示すブロック610に進む。その後ブロック612は、セルの場所i、j、kに進むことを示す。その後プロセスはブロック604に戻る。
【0070】
再度ブロック608を参照し、これが最後のセルの場所iであると判別された場合、プロセスはこれが最後の場所jであるか否かの判別を示すブロック614に進む。これが最後の場所jであると判別された場合、プロセスは可能なトレースのリストを戻すことを示すブロック616に進む。その後プロセスはブロック618が示すように終了する。
【0071】
再度ブロック614を参照し、これが最後のセルの場所jでないと判別された場合、プロセスは、iをi(0)に等しく設定すること、およびjをjプラス1に等しく設定することを示すブロック620に進む。その後プロセスはブロック612に進む。
【0072】
再度ブロック604を参照し、セルの場所i、j、kにトレースまたはビアが存在すると判別された場合、プロセスは、セルの場所i、j、kで終わる水平トレースが存在するか否かの判別を示すブロック622に進む。セルの場所i、j、kで終わる水平トレースが存在すると判別された場合、プロセスはブロック624に進む。再度ブロック622を参照し、セルの場所i、j、kで終わる水平トレースが存在しないと判別された場合、プロセスは、セルの場所i、j、kに垂直トレースが存在するか否かの判別を示すブロック623に進む。セルの場所i、j、kに垂直トレースが存在しないと判別された場合、プロセスはブロック606に進む。再度ブロック623を参照し、セルの場所i、j、kに垂直トレースが存在すると判別された場合、プロセスはブロック624に進む。
【0073】
ブロック624は、このセルの場所に格納された情報を読み取ることによって、セルの場所i(h)、j、kをチェックすることを示す。次にブロック626は、セルの場所i(h)、j、kにトレースまたはビアが存在するか否かの判別を示す。セルの場所i(h)、j、kにトレースまたはビアが存在しないと判別された場合、プロセスは、これがこの層内の最後のセルiであるか否かの判別を示すブロック628に進む。これが最後のセルiであると判別された場合、プロセスはブロック606に進む。再度ブロック628を参照し、これが最後のセルiでないと判別された場合、プロセスは、i(h)をi(h)プラス1と等しくすることを示すブロック630に進む。その後プロセスはブロック624に戻る。
【0074】
再度ブロック626を参照し、セルの場所i(h)、j、kにトレースまたはビアがすでに存在すると判別された場合、プロセスは、セルの場所i(h)、j、kの既存のトレースまたはビアが、セルの場所i、j、kのトレースと同じ電力網であるか否かの判別を示すブロック632に進む。セルの場所i(h)、j、kの既存のトレースまたはビアが、セルの場所i、j、kのトレースと同じ網でないと判別された場合、プロセスはブロック606に進む。再度ブロック632を参照し、セルの場所i(h)、j、kの既存のトレースまたはビアが、セルの場所i、j、kのトレースと同じ網であると判別された場合、プロセスは、セルの場所i、j、kからセルの場所i(h)、j、kへのトレースの延長を、可能な水平トレース延長としてリストに追加することを示すブロック634に進む。その後プロセスはブロック608に戻る。
【0075】
図10は、本発明に従って、セラミック・パッケージ・デザインにおいて既存のトレースを層内で水平に延長可能であるかどうかを自動的に判別することを示す、高水準の流れ図である。プロセスはブロック700が示すように開始され、その後、セルの場所i(0)、j(0)、k(0)に進むことを示すブロック702に進む。隣接する垂直なセルの場所は、j(v)が現在の値jプラス1に等しくなるように定義される。次にブロック704は、この場所i、j、kにすでにトレースが存在するか否かの判別を示す。場所i、j、kにすでにトレースが存在しないと判別された場合、プロセスは、トレースがこのセルの場所i、j、kから垂直に延長できないと判別するブロック706に進む。
【0076】
その後プロセスは、これが最後のセルの場所jであるか否かの判別を示すブロック708に進む。これが最後のセルの場所jでないと判別された場合、プロセスはjをjプラス1に等しく設定することを示すブロック710に進む。その後ブロック712は、セルの場所i、j、kに進むことを示す。その後プロセスはブロック704に戻る。
【0077】
再度ブロック708を参照し、これが最後のセルの場所jであると判別された場合、プロセスはこれがこの層内の最後の場所iであるか否かの判別を示すブロック714に進む。これが最後の場所iであると判別された場合、プロセスは可能なトレースのリストを戻すことを示すブロック716に進む。その後プロセスはブロック718が示すように終了する。
【0078】
再度ブロック714を参照し、これが最後のセルの場所iでないと判別された場合、プロセスは、jをj(0)に等しく設定すること、およびiをiプラス1に等しく設定することを示すブロック720に進む。その後プロセスはブロック712に進む。
【0079】
再度ブロック704を参照し、セルの場所i、j、kにトレースまたはビアが存在すると判別された場合、プロセスは、セルの場所i、j、kで終わる垂直トレースが存在するか否かの判別を示すブロック722に進む。セルの場所i、j、kで終わる垂直トレースが存在すると判別された場合、プロセスはブロック724に進む。再度ブロック722を参照し、セルの場所i、j、kで終わる垂直トレースが存在しないと判別された場合、プロセスは、セルの場所i、j、kに水平トレースが存在するか否かの判別を示すブロック723に進む。セルの場所i、j、kに水平トレースが存在しないと判別された場合、プロセスはブロック706に進む。再度ブロック723を参照し、セルの場所i、j、kに水平トレースが存在すると判別された場合、プロセスはブロック724に進む。
【0080】
ブロック724は、このセルの場所に格納された情報を読み取ることによって、セルの場所i、j(v)、kをチェックすることを示す。次にブロック726は、セルの場所i、j(v)、kにトレースまたはビアが存在するか否かの判別を示す。セルの場所i、j(v)、kにトレースまたはビアが存在しないと判別された場合、プロセスは、これが最後のセルjであるか否かの判別を示すブロック728に進む。これが最後のセルjであると判別された場合、プロセスはブロック706に進む。再度ブロック728を参照し、これが最後のセルjでないと判別された場合、プロセスは、j(v)をj(v)プラス1と等しくすることを示すブロック730に進む。その後プロセスはブロック724に戻る。
【0081】
再度ブロック726を参照し、セルの場所i、j(v)、kにトレースまたはビアがすでに存在すると判別された場合、プロセスは、セルの場所i、j(v)、kの既存のトレースまたはビアが、セルの場所i、j、kのトレースと同じ電力網であるか否かの判別を示すブロック732に進む。セルの場所i、j(v)、kの既存のトレースまたはビアが、セルの場所i、j、kのトレースと同じ網でないと判別された場合、プロセスはブロック706に進む。再度ブロック732を参照し、セルの場所i、j(v)、kの既存のトレースまたはビアが、セルの場所i、j、kのトレースと同じ網であると判別された場合、プロセスは、セルの場所i、j、kからセルの場所i、j(v)、kへのトレースの延長を、可能な垂直トレース延長としてリストに追加することを示すブロック734に進む。その後プロセスはブロック708に戻る。
【0082】
以上、本発明について完全に機能しているデータ処理システムとの関連において説明してきたが、通常の当業者であれば、本発明のプロセスが命令のコンピュータ読み取り可能媒体の形および様々な形で配布可能であること、ならびに、本発明が実際に配布を実施する際に使用される特定タイプの信号伝達媒体にかかわらず等しく適用されることを理解するであろう、ということに留意されたい。コンピュータ読み取り可能媒体の例には、フレキシブル・ディスク、ハード・ディスク・ドライブ、RAM、CD−ROM、DVD−ROMなどの書き込み可能タイプの媒体、ならびに、たとえば無線周波および光波伝送などの伝送形態を使用するデジタルおよびアナログ通信リンク、有線または無線通信リンクが含まれる。コンピュータ読み取り可能媒体は、特定のデータ処理システムで実際に使用される場合に復号(デコード)される符号化(コード化された)フォーマット形式を取ることができる。
【0083】
本発明の記述は例示および説明の目的で提示してきたものであり、開示された形の発明を網羅するかまたはこれに限定されることを意図するものではない。通常の当業者であれば、多くの修正および変形が明らかとなろう。本実施形態は、本発明の原理、実際の応用例を最もよく説明するために、ならびに他の通常の当業者が様々な修正を伴う様々な実施形態に対して企図された特定の使用に好適であるとして本発明を理解できるようにするために、選択および説明されたものである。
【図面の簡単な説明】
【0084】
【図1】本発明に従ったデータ処理システムのネットワークを示す図である。
【図2】本発明に従った、図1のコンピュータ・システムのいずれかを実施するために使用することが可能なコンピュータ・システムを示す詳細な図である。
【図3】本発明に従った、トレースおよびビアを含む層を含むセラミック・パッケージを示す上面図である。
【図4】本発明に従って、パッケージ・デザインが複数の3次元グリッド・ブロックに分割された後の図3の層を示す上面図である。
【図5】本発明に従って、パッケージ・デザインが複数の3次元グリッド・ブロックに分割された後の、およびトレースが層内で延長された後の、図3の層を示す上面図である。
【図6】本発明に従って、パッケージ・デザインが複数の3次元グリッド・ブロックに分割された後の、図3のセラミック・パッケージを示す側面図である。
【図7】本発明に従って、可能な追加のビアあるいはトレースまたはその両方の場所を位置付けることによって、セラミック・パッケージ・デザインにおいて電力分配システム(PDS)を自動的に機能強化することを記載した、高水準の流れ図である。
【図8】本発明に従って、セラミック・パッケージ・デザインにおいて可能なビアの場所のリストを自動的に生成することを示す、高水準の流れ図である。
【図9】本発明に従って、セラミック・パッケージ・デザインにおいて既存のトレースを層内で水平に延長可能であるかどうかを自動的に判別することを示す、高水準の流れ図である。
【図10】本発明に従って、セラミック・パッケージ・デザインにおいて既存のトレースを層内で垂直に延長可能であるかどうかを自動的に判別することを示す、高水準の流れ図である。
【符号の説明】
【0085】
300 セラミック・パッケージ・デザイン
301 層
302 トレース
304 垂直レグ
306 水平レグ
308 トレース
310 トレース
340 ビア
344 層
346 層
348 層
350 層

【特許請求の範囲】
【請求項1】
複数の層を含む3次元セラミック集積回路パッケージ・デザイン内で、メッシュ電力プレーンを含む電力分配システム(PDS)を自動的に作成および延長するためのデータ処理システムにおける方法であって、
前記デザイン全体を複数のセルに分割するステップと、
前記複数のセルのそれぞれに情報を格納するステップと、
前記複数のセルの各セルについて、前記情報が、前記複数のセルの前記各セルの場所の特徴をその他の前記複数のセルを基準にして記述し、前記複数のセルの前記各セルをすでに通過したいずれのビアまたはトレースを記述するステップと、
前記情報を使用して、潜在的な新しいビアおよびトレースの場所を前記パッケージ・デザイン全体のすべてにわたって一度に自動的に位置付けるステップと、
を有する方法。
【請求項2】
潜在的なビアおよびトレースの場所を見つける場合に使用する、製造制約、工学的制約、および電力分配システム制約を含む制約を指定するステップをさらに有する、請求項1に記載の方法。
【請求項3】
潜在的な場所が見つけられる前記パッケージ・デザイン内の領域を、電流密度が特定の量を超える領域に制限する制約を指定するステップをさらに有する、請求項2に記載の方法。
【請求項4】
ビアまたはトレースを追加するための任意の他の潜在的な場所を見つけることに先立って、前記パッケージ・デザインの最上層を前記パッケージ・デザインの最下層に接続することになる前記デザインにビアを追加することが可能な潜在的な場所を見つけるステップをさらに有する、請求項1に記載の方法。
【請求項5】
前記パッケージ・デザインの最上層を前記パッケージ・デザインの最下層に接続することになる、ビアを追加することが可能な潜在的な場所を見つけた後に、中間層を接続することになる前記デザインにビアを追加することが可能な潜在的な場所を見つけるステップと、
前記中間層を接続することになる前記デザインにビアを追加することが可能な潜在的な場所を見つける前記ステップが、最長のビアの場所を第1に見つけるように実行されるステップと、
をさらに有する、請求項4に記載の方法。
【請求項6】
中間層を接続することになる前記デザインにビアを追加することが可能な潜在的な場所を見つけた後に、既存のトレースを延長することが可能な場所を見つけるステップをさらに有する、請求項5に記載の方法。
【請求項7】
既存のトレースを延長することが可能な場所を見つけた後に、複数の異なるビアが、電力信号および接地を前記パッケージ・デザインに供給する電力構造体に前記パッケージ・デザイン下部のピンを接続することになる、ビア用の潜在的な場所を見つけるステップをさらに有する、請求項6に記載の方法。
【請求項8】
前記複数のセルの前記各セルが既存のトレースまたはビアのいずれかを含む場合に、前記複数のセルの前記各セルが、ビアの始まり、ビアの終わり、トレースの始まり、トレースの終わり、トレース・セグメント、ビア・セグメント、および電力網の識別を含むかどうかを、前記情報が含むステップであって、前記既存のトレースまたはビアが前記識別された電力網の一部である、ステップをさらに有する、請求項1に記載の方法。
【請求項9】
潜在的なビアの場所を見つけることによって機能強化される特定の電力網を決定するステップであって、前記電力網は接地電力網または供給電圧電力網のいずれかである、ステップと、
前記複数のセルのうちの第1のセルについて、前記第1のセルがすでにビアまたはトレースを含むかどうかを判別するステップと、
前記第1のセルがすでに既存のビアまたはトレースを含まないとの判別に応答して、指定された必要な深さまで延在する新しいビアを追加できるかどうかを判別するステップであって、前記新しいビアは前記複数のセルのうちの前記第1のセルで始まり、第2のセルで終わり、前記第1のセルから前記第2のセルまでの前記長さは前記指定された必要な深さに合致するかまたはこれを超えるものである、ステップと、
前記指定された必要な深さまで延在する前記新しいビアを追加できるとの判別に応答して、前記第1のセルから前記第2のセルまでの前記新しいビア用の場所を潜在的なビアの場所のリストに追加するステップと、
をさらに有する、請求項1に記載の方法。
【請求項10】
前記第1のセルがすでに既存のビアまたはトレースを含むとの判別に応答して、前記既存のビアまたはトレースが前記特定の電力網の一部であるかどうかを判別するステップと、
前記既存のビアまたはトレースが前記特定の電力網の一部ではないとの判別に応答して、前記第1のセルを潜在的なビアの場所のリストに追加せずに、次のセルの場所に進むステップと、
前記既存のビアまたはトレースが前記特定の電力網の一部であるとの判別に応答して、指定された必要な深さまで延在する新しいビアを追加できるかどうかを判別するステップであって、前記新しいビアは前記複数のセルのうちの前記第1のセルで始まり、第2のセルで終わり、前記第1のセルから前記第2のセルまでの長さは前記指定された必要な深さに合致するかまたはこれを超えるものである、ステップと、
前記指定された必要な深さまで延在する前記新しいビアを追加できるとの判別に応答して、前記第1のセルから前記第2のセルまでの前記新しいビア用の場所を潜在的なビアの場所のリストに追加するステップと、
をさらに有する、請求項9に記載の方法。
【請求項11】
第1の層内のトレースを位置付けるステップと、
前記トレースがどの電力網の一部であるかを識別するステップと、
同じく前記識別された電力網の一部である第2のトレースが水平方向に存在するかどうかを判別することによって、前記トレースが前記水平方向に延長可能であるかどうかを判別するステップと、
前記水平方向の前記トレースの延長を潜在的なトレース延長の場所として前記第2のトレースに追加するステップと、
同じく前記識別された電力網の一部である第3のトレースが垂直方向に存在するかどうかを判別することによって、前記トレースが前記垂直方向に延長可能であるかどうかを判別するステップと、
前記垂直方向の前記トレースの延長を潜在的なトレース延長の場所として前記第3のトレースに追加するステップと、
をさらに有する、請求項1に記載の方法。
【請求項12】
複数の層を含む3次元セラミック集積回路パッケージ・デザイン内で、メッシュ電力プレーンを含む電力分配システム(PDS)を自動的に作成および延長するためのコンピュータ・プログラムであって、
前記デザイン全体を複数のセルに分割するための命令と、
前記複数のセルの各セルに情報を格納するための命令であって、
前記情報は前記複数のセルの各セルについて、前記複数のセルの前記各セルの場所の特徴をその他の前記複数のセルを基準にして記述し、さらに前記複数のセルの前記各セルをすでに通過したいずれのビアまたはトレースも記述する、命令と、
前記情報を使用して、潜在的な新しいビアおよびトレースの場所を前記パッケージ・デザイン全体のすべてにわたって一度に自動的に位置付けるための命令と、
を有するプログラム。
【請求項13】
複数の層を含む3次元セラミック集積回路パッケージ・デザイン内で、メッシュ電力プレーンを含む電力分配システム(PDS)を自動的に作成および延長するためのデータ処理システムにおける装置であって、
複数のセルに分割された前記デザイン全体と、
前記複数のセルの各セルに格納された情報であって、
前記情報は、前記複数のセルの各セルについて、前記複数のセルの前記各セルの場所の特徴をその他の前記複数のセルに関連して記述し、前記複数のセルの前記各セルをすでに通過したいずれのビアまたはトレースも記述する、情報と、
前記情報を使用して、前記パッケージ・デザイン全体のすべてにわたって一度に自動的に位置付けられた潜在的な新しいビアおよびトレースの場所と、
を有する装置。
【請求項14】
潜在的なビアおよびトレースの場所を見つける場合に使用するために指定される、製造制約、工学的制約、および電力分配システム制約を含む複数の制約をさらに有する、請求項13に記載の装置。
【請求項15】
前記パッケージ・デザインの最上層を前記パッケージ・デザインの最下層に接続することになる前記デザインにビアを追加することが可能な、位置付けられた第1の潜在的な場所であって、前記第1の潜在的な場所は任意の他の潜在的な場所を見つけることに先立って位置付けられる、第1の潜在的な場所をさらに有する、請求項13に記載の装置。
【請求項16】
中間層を接続することになる前記デザインにビアを追加することが可能な、位置付けられた第2の潜在的な場所であって、前記第2の潜在的な場所は前記第1の潜在的な場所が見つけられた後に見つけられる、第2の潜在的な場所をさらに有する、請求項15に記載の装置。
【請求項17】
既存のトレースが延長可能な、位置付けられた第3の潜在的な場所であって、前記第3の潜在的な場所は前記第2の潜在的な場所が見つけられた後に見つけられる、第3の潜在的な場所をさらに有する、請求項16に記載の装置。
【請求項18】
前記複数のセルの前記各セルがトレースまたはビアのいずれかを含む場合に、前記複数のセルの前記各セルが、ビアの始まり、ビアの終わり、トレースの始まり、トレースの終わり、トレース・セグメント、ビア・セグメント、および電力網の識別を含むかどうかの標識を含む情報であって、前記既存のトレースまたはビアが前記識別された電力網の一部である、情報をさらに有する、請求項17に記載の装置。
【請求項19】
潜在的なビアの場所を見つけることによって機能強化される特定の電力網であって、前記電力網は接地電力網または供給電圧電力網のいずれかである、特定の電力網と、
前記複数の前記セルのうちの第1のセルと、
前記第1のセルがすでにビアまたはトレースを含むかどうかを判別するためのCPU実行コードを含む前記データ処理システムと、
前記第1のセルがすでに既存のビアまたはトレースを含まないとの判別に応答して、指定された必要な深さまで延在する新しいビアを追加できるかどうかを判別するための前記CPU実行コードであって、前記新しいビアは前記複数のセルのうちの前記第1のセルで始まり、第2のセルで終わり、前記第1のセルから前記第2のセルまでの長さは前記指定された必要な深さに合致するかまたはこれを超えるものである、CPU実行コードと、
前記指定された必要な深さまで延在する前記新しいビアを追加できるとの判別に応答して、潜在的なビアの場所のリストに含められる前記第1のセルから前記第2のセルまでの前記新しいビア用の場所と、
をさらに有する、請求項13に記載の装置。
【請求項20】
前記第1のセルがすでに既存のビアまたはトレースを含むとの判別に応答して、前記既存のビアまたはトレースが前記特定の電力網の一部であるかどうかを判別するための前記CPU実行コードと、
前記既存のビアまたはトレースが前記特定の電力網の一部ではないとの判別に応答して、前記第1のセルを潜在的なビアの場所のリストに追加せずに、次のセルの場所を分析するための前記CPU実行コードと、
前記既存のビアまたはトレースが前記特定の電力網の一部であるとの判別に応答して、指定された必要な深さまで延在する新しいビアを追加できるかどうかを判別するための前記CPU実行コードであって、前記新しいビアは前記複数のセルのうちの前記第1のセルで始まり、第2のセルで終わり、前記第1のセルから前記第2のセルまでの前記長さは前記指定された必要な深さに合致するかまたはこれを超えるものである、CPU実行コードと、
前記指定された必要な深さまで延在する前記新しいビアを追加できるとの判別に応答して、潜在的なビアの場所のリストに含められる前記第1のセルから前記第2のセルまでの前記新しいビア用の場所と、
をさらに有する、請求項19に記載の装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2006−164267(P2006−164267A)
【公開日】平成18年6月22日(2006.6.22)
【国際特許分類】
【出願番号】特願2005−335911(P2005−335911)
【出願日】平成17年11月21日(2005.11.21)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【Fターム(参考)】