局所優先方向アーキテクチャ、ツール、及び機器
【課題】「局所優先方向」配線モデルを使用してネットをルーティングするための機器を提供する。
【解決手段】本発明の一部の実施形態は、1つ又はそれよりも多くのEDAツール(プレーシング、ルーティングなどのような)と共に使用される「局所優先方向(LPD)」配線モデルを提供する。LPD配線モデルは、少なくとも1つの配線層が、各々が特定の配線層とは異なる優先方向を有する一組の領域を有することを可能にするものである。更に、各領域は、その組における少なくとも1つの他の領域の局所優先方向とは異なる局所優先方向を有する。更に、少なくとも2つの領域は、2つの異なる多角形形状を有し、その組における領域は、その組における別の領域を取り囲むことはない。
【解決手段】本発明の一部の実施形態は、1つ又はそれよりも多くのEDAツール(プレーシング、ルーティングなどのような)と共に使用される「局所優先方向(LPD)」配線モデルを提供する。LPD配線モデルは、少なくとも1つの配線層が、各々が特定の配線層とは異なる優先方向を有する一組の領域を有することを可能にするものである。更に、各領域は、その組における少なくとも1つの他の領域の局所優先方向とは異なる局所優先方向を有する。更に、少なくとも2つの領域は、2つの異なる多角形形状を有し、その組における領域は、その組における別の領域を取り囲むことはない。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、「局所優先方向」配線モデルを使用してネットをルーティングするための機器に関する。
【背景技術】
【0002】
集積回路(IC)は、多くの電子コンポーネント(例えば、トランジスタ、レジスタ、ダイオードなど)を含む半導体素子である。これらのコンポーネントを相互接続して複数の回路コンポーネント(例えば、ゲート、セル、メモリ装置、算術演算装置、コントローラ、復号器など)をIC上に形成することが多い。ICはまた、その電子コンポーネント及び回路コンポーネントを相互接続する金属及び/又はポリシリコン配線の複数の層を含む。例えば、多くのICは、5つの金属層を伴って現在製造されている。理論的には、金属層上の配線は、全角度配線とすることができる(すなわち、配線は、あらゆる任意の方向とすることができる)。このような全角度配線は、一般的に、ユークリッド配線と呼ばれる。しかし、実際には通常、各金属層は1つの全域的な優先的配線方向を有し、この優先的方向は、連続する金属層間で交替する。
【0003】
多くのICでは、水平及び垂直の優先方向配線の交替する層を指定するマンハッタン配線モデルを用いている。この配線モデルにおいては、配線の大部分は、90°の回転しかできない。優先水平及び垂直層上では、時折の斜めジョグが許容されることがある。しかし、標準的なルーティングアルゴリズムは、これらの斜めジョグがマンハッタン配線モデルの設計規則を犯すために、それらに重いペナルティを課している(すなわち、相応に高いルーティング経費を課している)。最近、一部では、斜め配線モデルを用いて斜め相互接続線(配線)にペナルティを課さない設計規則を提供するICが提案されている。相互接続線は、それらがICのレイアウト境界に対してゼロ又は90°以外の角度を成す場合は「斜め」と見なされる。しかし、通常は、斜め配線は±45度で配置されたワイヤから成る。
【0004】
典型的なマンハッタン配線モデルと斜め配線モデルは、各配線層に対して1つの優先方向を指定する。これらの配線層上の障害物のために、層の優先方向に沿ってルーティングする時に設計上の問題が生じる。例えば、設計レイアウトには、回路コンポーネント、事前設計回路ブロック、及び層上のルーティングの他の障害物が含まれることが多い。このような障害物は、層上の領域をその層の単一優先方向に沿ったルーティングに対して本質的に使用不能にする場合がある。
【0005】
設計レイアウト上の領域をルーティングに対して使用不能にする障害物を示す例を図1に示している。この図は、各々が2つのルーティング障害物115と120を有する2つの配線層を示している。その層の一方は、水平優先方向を有し、他方の層は、斜め優先方向を有する。障害物115と120は、これらの層の両方でのルーティングに対して2つの領域105と110を使用不能にしている。従って、マンハッタン配線モデルと斜め配線モデルの両方は、一般的に設計レイアウトの層上のルーティングリソースを無駄にしている。
従って、マンハッタン及び斜め配線を可能にし、かつ配線層上の障害物のために失ったルーティングリソースを回復する配線モデルが必要とされる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国公開特許出願2004−0225983A1
【特許文献2】米国特許出願第10/443,595号
【発明の概要】
【0007】
本発明の一部の実施形態は、1つ又はそれよりも多くのEDAツール(プレーシング、ルーティングなどのような)と共に使用される「局所優先方向(LPD)」配線モデルを提供する。LPD配線モデルは、少なくとも1つの配線層が、各々が特定の配線層とは異なる優先方向を有する一組の領域を有することを可能にするものである。更に、各領域は、その組における少なくとも1つの他の領域の局所優先方向とは異なる局所優先方向を有する。更に、少なくとも2つの領域は、2つの異なる多角形形状を有し、その組における領域は、その組における別の領域を取り囲むことはない。一部の実施形態はまた、LPD設計レイアウトのビジュアルプレゼンテーションを容易にする「グラフィカル・ユーザ・インタフェース(GUI)」を提供し、また、設計レイアウトにおいてLPD領域を作成及び操作するツールを提供する。
本発明の新しい特徴は、特許請求の範囲に示している。しかし、説明目的で本発明のいくつかの実施形態を以下の図に説明する。
【図面の簡単な説明】
【0008】
【図1】典型的なマンハッタン及び斜め配線層上の障害物のためにルーティングに対して本質的に使用不能な領域の例を示す図である。
【図2】LPD配線モデルに基づく設計レイアウトの例を示す図である。
【図3】LPD配線モデルに基づく設計レイアウトの別の例を示す図である。
【図4A】事前設計回路ブロックを伴う配線層を示す図である。
【図4B】LPD領域を有する図4Aの配線層を示す図である。
【図5】図5A−図5Cはクラウンで拡張されたLPD領域を示す図である。
【図6】隣接する電力ストライプを取り囲むためのLPD領域の融合を示す図である。
【図7】事前設計回路ブロックの上を横断する斜め層上の水平進路を定める図である。
【図8】本発明の一部の実施形態により異なるバイアパッド形状を有するバイアを示す図である。
【図9】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」を使用した設計レイアウトの視覚表示を示す図である。
【図10】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウの下層上の事前設計回路ブロックに重なるLPD領域を示す図である。
【図11A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11C】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11D】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11E】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11F】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウ内でLPD領域を移動するユーザを示す図である。
【図12A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域に対する局所優先方向を指定するユーザを示す図である。
【図12B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域に対する局所優先方向を指定するユーザを示す図である。
【図13−1】図13A−図13Bは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「選択してドロップする」方法を使用してLPD領域を作成するユーザを示す図である。
【図13−2】図13C−図13Dは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「選択してドラッグする」方法を使用してLPD領域を作成するユーザを示す図である。
【図13−3】図13E−図13Fは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「選択して拡張する」方法を使用してLPD領域を作成するユーザを示す図である。
【図14−1】図14A−図14Bは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域の属性を操作するユーザを示す図である。
【図15A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域の優先方向を操作するために「メニューウィンドウ」を使用するユーザを示す図である。
【図15B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域の優先方向を操作するために「メニューウィンドウ」を使用するユーザを示す図である。
【図15C】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域を「クラウン化」するユーザを示す図である。
【図15D】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域を「クラウン化」するユーザを示す図である。
【図16A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて不透過境界エッジに頂点を追加してLPD領域を「クラウン化」するユーザを示す図である。
【図16B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて不透過境界エッジに頂点を追加してLPD領域を「クラウン化」するユーザを示す図である。
【発明を実施するための形態】
【0009】
本発明は、「局所優先方向」配線モデルを使用してネットをルーティングするための機器に関する。以下の説明において、説明を目的として多くの詳細事項を説明する。しかし、当業者は、これらの特定の詳細事項を使用することなく本発明を実施することができることを認識するであろう。一部の事例においては、本発明の説明を簡素化するために、公知の構造及び装置は、ブロック図の形で示している。
【0010】
本発明の一部の実施形態は、1つ又はそれよりも多くのEDAツール(プレーシング、ルーティングなど)と共に使用される「局所優先方向(LPD)」配線モデルを提供する。LPD配線モデルは、少なくとも1つ配線層が、各々が特定の配線層とは異なる優先方向を有する一組の領域を有することを可能にするものである。更に、各領域は、その組における少なくとも1つの他の領域の局所優先方向とは異なる局所優先方向を有する。更に、少なくとも2つの領域は、2つの異なる多角形形状を有し、どの領域もその組における別の領域を取り囲まない。一部の実施形態はまた、LPD設計レイアウトのビジュアルプレゼンテーションを容易にし、かつLPD領域を設計レイアウト内で作成及び操作するためのツールをもたらす「グラフィカル・ユーザ・インタフェース(GUI)」を提供する。
「LPDアーキテクチャ」のいくつかの特徴について以下で説明する。II節では、「LPDアーキテクチャ」のいくつかの例について説明し、III節では、LPD配線モデルを使用したEDAツール用「グラフィカル・ユーザ・インタフェース(GUI)」について説明する。しかし、「LPDアーキテクチャ」とGUIの例について説明する前に、I節でLPD配線モデルの概要について説明する。
【0011】
I.局所優先方向配線モデルの概要
一部の実施形態のLPD配線モデルは、マンハッタン及び斜め方向にエッジを有する経路の作成を考慮するものである。マンハッタンエッジは、レイアウト又はICの座標軸の1つに対して水平(0°)又は垂直(90°)である。逆に、斜めエッジは、0°又は90°以外の角度を形成する。斜めエッジは、一般的にレイアウト又はICの座標軸に対して45°の角度を形成する。座標軸は、多くの場合に、レイアウトの境界、レイアウトの予想ICの境界、又はその両方と平行である。
【0012】
いくつかの配線層を有する設計レイアウト又はICが与えられると、一部の実施形態は、(1)いくつかの配線層、(2)各層Lに対する大域的優先方向DL、及び(3)各配線層Lに対するLPD領域の潜在的空集合により、レイアウト又はICのIPD配線モデルを説明している。一部の実施形態は、「優先」方向を領域において大部分のワイヤが配置される方向と定義する。一部の実施形態は、更に、配線の百分率又は量によってこの量を定量化する。例えば、一部の実施形態は、層の優先方向を層上のワイヤ(相互接続線又は経路セグメントとも呼ばれる)の少なくとも50%の方向と定義する。他の実施形態は、層の優先方向を層上の少なくとも1000本のワイヤの方向と定義する。
【0013】
特定の層上では、領域は、その特定の層の大域的優先配線方向とは異なる局所優先配線方向を有する時にLPD領域(又はLPDR)と呼ばれる。一部の実施形態は、LPDR記述に対していくつかの整合性要件を課している。例えば、一部の実施形態は、各LPDRが完全にチップ区域内であることを要求する。一部の実施形態では、所定の層上の全てのLPDRは、その境界でのみ交差する(すなわち、重複がない)。更に、一部の実施形態は、全てのLPDRが非縮退である(少なくとも1つの内部点を包含する)ことを要求する。
【0014】
II.LPDアーキテクチャ
上述のように、LPD配線モデルは、少なくとも1つの配線層が、その配線層のいくつかの異なる領域においていくつかの異なる局所優先方向を有することを可能にするものである。図2は、IC又は設計レイアウトにおけるこのような配線層の例を示している。この配線層は、本発明の一部の実施形態によりいくつかの異なる凸面形状と局所優先方向とを有するLPDRを有する。この例は、45°の大域的優先方向を有する配線層200を示している。この層200の上には、45°局所優先方向を有する八角形LPDR205、水平局所優先方向を有する八角形LPDR210、及び垂直局所優先方向を有する矩形LPDR215がある。
【0015】
図3は、IC又は設計レイアウトにおける別のこのような配線層の別の例を示している。この配線層は、本発明の一部の実施形態によりいくつかの異なる凸面形状を有するLPD領域を有する。この例は、垂直の大域的優先方向を有する配線層300を示している。この層300は、異なる形状と異なる局所優先方向とを有する4つのLPDRを有する。層300の中心には、−45°の局所優先方向を有する八角形LPDR305がある。領域305の左下側近くには、45°局所優先方向を有する矩形LPDR310がある。領域305の左上側近くには、60°局所優先方向を有する六角形LPDR315がある。領域305の右側近くには、水平局所優先方向を有する四角形LPDR320がある。
【0016】
図2と図3で先に示す例は、LPD配線モデルが、配線層が異なる凸面多角形形状と異なる局所優先方向とを有するいくつかの領域を有することを可能にすることを示している。しかし、これらの例が示しているのは、設計レイアウト又はICにおけるLPD配線モデルの単純な使い方である。これらの例は、層上の配線に対するいかなるマクロ又は他の障害物も示していない。マクロは、レイアウト又はICにおいて使用される事前設計された複合回路ブロックである。このようなブロックの例としては、IPブロック、RAMセル、「電力バイアアレイ」がある。上述のように、配線に対するこれら及び他の障害物は、配線層上の領域をルーティングに対して本質的に使用不能にする場合がある。しかし、LPD配線モデルの利点の1つは、配線層上のマクロ又は他の障害物のために通常失われるルーティングリソースを回復するということである。
【0017】
図4Aと図4Bは、LPD配線モデルのこの特定の利点を示す例を提供するものである。具体的には、図4Aは、斜めの大域的優先方向を有する配線層400を示している。この配線層は、一列の電力バイアアレイ(電力ストライプ)405、IPブロック410、一組のメモリセル415、2つのピン420及び425を含む。この層上に同じく示すのは、点線で表された斜め配線である。電力ストライプ405、IPブロック410、メモリセルの組415は、全て、配線層上の配線に対する障害物である。これらの障害物は、図4Aに示すようにルーティング上の問題を呈する場合がある。ピン420及び425を互いに又は他のピンと接続する必要がある時、ピン420に接続する斜め配線は、電力バイアアレイ405によって妨害されるために問題が生じる。更に、ピン425に接続する斜め配線は、IPブロック410によって妨害される。
【0018】
これらのルーティング上の問題を解決するために、一部の実施形態は、これらの障害物のエッジと平行に延びる局所優先方向を有する障害物周りにLPDRを形成する。図4Bは、このようなLPDRの例を示している。水平局所優先方向を有するLPDR430は、電力ストライプ405を取り囲むように形成される。代替的に、一部の実施形態は、電力バイアアレイを取り囲むのではなく、電力バイアアレイの間に個々のLPDRを形成する。いずれの場合にも、LPDRの水平方向は、配線を電力バイアアレイ405間にルーティングすることを可能にする。
【0019】
この図はまた、RAMブロック415間に形成された垂直局所優先方向を有する3つのLPDR440を示している。更に、垂直局所優先方向を有するLPDR450は、IPブロック410の右側と配線層の右境界との間に形成され、水平局所優先方向を有するLPDR460は、IPブロック410の上側と配線層の上部境界との間に形成される。LPDR450とLPDR460の間の境界エッジは、2つのこのような領域間の配線の容量を増大するための45°対角線として形成される。境界エッジそれ自体は、「クラウン」と呼ばれ、その利点は以下で更に説明する。
【0020】
図4Bに示すLPDRは、以前に妨害された配線が、これらのDPDRを通ってその局所優先方向に沿ったルーティングにより、今度は障害物周りを越えることを可能にする。例えば、図4Bに示すように、ピン420及び425は、今度は、大域的な45°方向に沿って横断し、LPDR430を水平方向に通って横断し、再び大域的な45°方向に沿って横断し、次に、LPDR460を水平方向に通って横断する一組の相互接続線を通じて接続することができる。
【0021】
A.クラウン
一部の実施形態は、エッジが、それぞれの境界エッジを共有する2つの領域の局所優先方向のいずれか一方に平行に延びる時に、2つの領域間に境界エッジを「不透過エッジ」として形成する。これらの境界エッジは、幾何学な設計上の制約のために不透過と見なされる。例えば、互いに平行に延びる二組のワイヤは、一般的に交差しない。従って、不透過境界エッジを共有する2つの領域における配線は、そのエッジで交差することが妨げられることになる。
【0022】
この潜在的なルーティングに関する問題を解決するために、本発明の一部の実施形態では、これらの不透過境界エッジは、「クラウン」で「拡張」される。「クラウン」は、2つの領域間の境界でのLPDRの拡張部である。一部の実施形態では、クラウン境界は、クラウン境界を共有する2つの領域の局所優先方向のいずれとも平行ではないように形成される。従って、これらのクラウンは、境界エッジを共有する領域の優先方向に沿って方向付けされた配線の交差を可能にする境界エッジを形成する。
【0023】
図5Aから図5Cは、「クラウン」によるLPDRの境界エッジの拡張の詳細な例を示している。これらの図は、水平の大域的優先方向を有する配線層500を示している。この層の中心には、3つの事前設計回路ブロック505、510、515が位置決めされている。更に、ブロック505と510、ブロック510と515の間には、それぞれ、2つのチャンネル580と590が位置する。これらのチャンネル580と590は、幾何学的な制約によってこのような配線がチャンネルから出入りすることが禁止されるために、層500の水平方向のルーティングには本質的に使用不能である。これらのチャンネルを有効に利用するために、本発明の一部の実施形態では、チャンネル580と590の代わりに、図5Bに示すように垂直局所優先方向を有するLPDR520と530が使用される。しかし、このようにLPDR520と530を形成すれば、一部の実施形態では、LPDR520と530の上下の境界エッジ(点線で表す)で不透過境界エッジが作成されることになる。これらの境界エッジは、層500の水平優先方向と平行に延びるために、不透過境界エッジとして形成される。
【0024】
不透過境界エッジの作成を回避するために、本発明の一部の実施形態では、図5Cに示すように、「クラウン」がLPDR520と530に追加される。具体的には、図5Cは、LPDR520を拡張するために作成された2つの三角形クラウン545と555の例を示している。この図はまた、LPDR530を拡張するために作成された2つの三角形クラウン565と575を示している。クラウン545と555は、クラウン565と575とは異なる形状である。クラウン545と555は、二等辺三角形の形状であり、クラウンは、直角三角形の形状である。しかし、クラウンの両方の形状は、層500からの水平配線と交差する境界エッジを形成する。従って、水平配線は、LPDR520と530を出入りするようにルーティングすることができる。チャンネル580と590の以前に「ルーティング不能」であった配線スペースは、層500上の配線のために有効に利用される。
【0025】
クラウンは、様々な形状を有するように形成することができる。しかし、一般的に、クラウンは三角形である。図5Cに先に示すクラウンの2つの形状は、形ばかりではなく機能においても異なっている。例えば、二等辺三角形状のクラウンは、層の水平配線と交差する2つの境界エッジを形成する。これらのエッジは、クラウン左右の両方から方向付けられた配線がLPDRを通過するようにルーティングすることを可能にする。一方、直角三角形状のクラウンは、一般的に1つの透過性エッジを形成する。このエッジは、一般的に、配線がクラウンの左又は右からLPDRを通るようにルーティングすることを可能にする。しかし、この1つのエッジの方が二等辺三角形状のクラウンの単一のエッジと比較すると長く、かつ交差配線量が多い。従って、本発明の一部の実施形態では、特定の設計レイアウトにおいてそれぞれの領域を通るルーティングを最大にすることになるクラウンの形状が動的に判断される。
【0026】
B.LPD領域の融合
本発明の一部の実施形態では、領域を通るルーティング可能性を改善させるために同じ局所優先方向を有する隣接するLPDRが融合される。融合は、個々のLPDRが隣接する電力ストライプ周りに形成される時に特に有用である。例えば、図6は、2つの異なる電力ストライプ周りに形成される2つのLPDR610と620を示している。これらのLPDRの両方は、水平局所優先方向を有する。各電力ストライプは、層上の配線の障害物になる場合がある一組の電力バイアスタック605と615を有する。例えば、この図に示すように、一方の電力ストライプ周りに形成されたLPDR610を出る配線は、他方の電力ストライプの電力バイアスタック615に入ることができる。
【0027】
この潜在的なルーティングに関する問題を解決するために、図6は、新しくLPDR630を形成するための2つのLPDR610と620の融合を示している。「融合された」LPDR630は、両方の電力ストライプを取り囲むように形成され、かつ置換されたLPDR610と620と同じ水平局所優先方向を有する。この融合は、配線が、2つのLPDR610と620が分離状態であった時に存在した電力バイアスタックによる障害がなく電力ストライプの下の領域を横切って効率的に横断することを可能にする。
【0028】
この「融合する」特徴は、電力ストライプとの使用に制限されるものではない。本発明の一部の実施形態では、融合すればルーティング効率が改善されると考えられる時には常に、同じ局所優先配線方向を有する隣接するLPDRが融合される。更に、本発明の一部の実施形態は、単一のLPDRを同じ局所優先方向を必要とする隣接する領域を取り囲むように最初に形成することにより、隣接するLPDRを全て融合する必要性を回避する。
【0029】
C.マクロ上の横断
先の例は、設計レイアウト又はICの単一層上のLPDRの有用な用途を示すものである。LPDRは、特定の多層用途にも有用である。例えば、図7は、LPDRを利用して下層事前設計回路ブロック(例えば、IPブロック)を覆うように水平進路を形成する多層設計レイアウト又はICを示している。具体的には、図7は、水平大域的優先方向を有する層Nと、45°大域的優先方向を有する層N+1とを示している。層Nは、水平配線を優先する事前設計回路ブロック710を有する。層N+1は、事前設計回路ブロック710を覆うように位置決めされたLPDR720を有する。このLPDR720は、バイアを事前設計回路ブロック710と層N+1の配線との間に配置するための潜在的な場所を増大するために水平局所優先方向を有する。
【0030】
D.異なる形状のバイアパッドを有するバイア
LPDRの別の多層用途は、バイアの形成におけるものである。一部の実施形態では、LPD配線モデルを用いて、特定の設計レイアウトに基づいてバイアを動的に形成する。具体的には、バイアを第1の層の第1の領域と第2の層の第2の領域との間に形成する時、これらの実施形態では、両方の領域の優先方向に基づいて第1及び第2の領域内のバイアパッドの形状が選択される。バイアパッドのこの動的な選択は、これらの実施形態で、異なる方向に沿ってワイヤセグメントを接続するのに最適化されるバイアを使用することを可能にする。
【0031】
図8は、レイアウト内の2つの配線層の異なる領域間で異なるバイアパッドを使用する例を示している。この例は、垂直大域的優先方向を有する配線層Nと、斜め大域的優先方向を有する配線層N+1とを有する多層設計レイアウトの斜視図を示している。この斜視図による配線方向を識別するために、方向軸表示が図8に付されている。
図8においては、層Nは、斜め局所優先方向を有する矩形LPDR835を有する。層N+1は、水平局所優先方向を有する矩形LPDR805と、垂直局所優先方向を有する八角形LPDR815とを有する。また、この例は、層Nと層N+1の間に3つのバイアを有する。層Nの配線区域と層N+1上のLPDR805との間に第1のバイアが形成される。この第1のバイアは、層Nの配線区域に四角形バイアパッド840、及びLPDR805内に矩形バイアパッド810を有する。層N上のLPDR835と層N+1上のKPDR805の間に第2のバイアが形成される。この第2のバイアは、LPDR領域835に八角形バイアパッド850、及びLPDR805内に矩形バイアパッド820を有する。層N上のLPDR835と層N+1上のLPDR815の間に第3のバイアが形成される。この第3のバイアは、LPDR835内に八角形バイアパッド860、及びLPDR815内に矩形バイアパッド830を有する。
【0032】
上述の例は、層Nと層N+1の間のバイアパッド対の多くの組合せのうちの1つだけを示唆している。更に、多層ICを設計する時に使用することができる他のLPDR構成が数多くある。従って、本発明の一部の実施形態では、設計レイアウト構成におけるこれらの変形に対処するためにバイアパッド対の可能な入れ替えが表形式にされている。この表形式化は、異なる局所優先方向を有する領域間でバイアを最適化する時のバイアパッドオプションをユーザに与えるものである。
【0033】
III.グラフィカル・ユーザ・インタフェース
本発明の一部の実施形態では、ユーザがLPDレイアウトを見る、及び/又はレイアウト上でLPDRを作成及び操作することを可能にするためのGUIを提供する。一部の実施形態のGUIは、(1)LPDRを保存/読取/削除し、(2)優先方向及び強調表示された不透過エッジを有する現在のLPDRを表示し、(3)LPDRの形状及びそれぞれの局所優先方向を追加/操作し、(4)隣接するLPD領域をスナップ処理して不要な間隙を取り除き、(5)重複を強調表示する整合性チェッカーを実行して設計レイアウトの領域を縮退させる。他の実施形態では、GUIは、ユーザにLPR領域を手動で作成することを強要することなく設計のルーティングリソースを増大するために、LPDRを形成する「自動LPD領域発生器」を組み込んでいる。
最初に、本発明の一部の実施形態によるGUIのLPD設計レイアウトの視覚表示について以下に説明する。この説明に続いて、本発明の一部の実施形態によるGUIのLPDRの作成及び操作について説明する。
【0034】
A.LPD設計レイアウトの視覚表示
LPD設計レイアウトは、典型的には、事前設計回路ブロック、LPDR、ピン、配線、及び他のレイアウト要素から成る。図9は、設計レイアウト内のこれらの要素を図形的に示すための本発明の一部の実施形態のGUIを呈示している。この図は、斜め大域的優先方向を有する第3の配線層を表す設計ウィンドウ900を示している。この設計ウィンドウ900内には、3つの事前設計回路ブロック、すなわち、電力ストライプ905、IPブロック910、一組のRAM915がある。設計ウィンドウ900の上部には、LPDRを伴うレイアウトの読取、削除、作成のような先に項目化されたGUIの機能の一部へのユーザアクセスを可能にする「ドロップダウンメニュー」のリストがある。この例においては、「ファイル」、「編集」、「表示」、「挿入」、及び「ツール」のメニューがある。しかし、他の実施形態では、異なる及び/又は更に別のメニューがある。
【0035】
ユーザは、望ましいメニュー選択項目上にカーソルがある間に「クリック」することによってメニューオプションにアクセス可能である。ユーザがGUIメニューにアクセスする別の方法は、カーソルが設計ウィンドウ内にある間に「右クリック」をすることである。例えば、図9は、ユーザが、カーソル960が設計ウィンドウ900内にある間に「右クリック」をすることによって「優先方向メニュー」にアクセスすることを示している。
【0036】
また、図9は、4つのLPDRを示している。これらのLPDRのうちの2つである930と935は、垂直局所優先方向を有する。他の2つのLPDR940と945は、水平局所優先方向を有する。この例が示すように、GUIでは、「方向矢印」を使用して、設計レイアウト内のあらゆるLPDRの優先方向を識別する。GUIでは、同じく方向矢印を使用して、設計ウィンドウ内の配線層の優先方向を識別する。例えば、方向矢印950は、設計ウィンドウ900内の配線層の斜め大域的優先方向を識別する。
【0037】
一部の実施形態のGUIは、設計ウィンドウ内のLPDRの優先方向を識別するばかりでなく、LPDRのあらゆる不透過エッジを識別する。不透過エッジは、(1)識別子(例えば、「X」のような図形又はテキストアイコン)をエッジに置くか、又は(2)エッジの属性(ダッシュ、色など)を変えることによって識別される。この例においては、「X」アイコン985は、LPDR940の不透過境界エッジ上に重ね合わされている。不透過エッジが識別されると、ユーザは、レイアウトを変更してそれぞれの境界エッジを通じたルーティング可能性を改善させるように警告される(例えば、「クラウン」を追加することにより)。
【0038】
GUI設計ウィンドウ900では、「アクティブ」配線層(ユーザによって現在表示されている層)上の設計要素の視覚表示を行うばかりでなく、一部の実施形態では、他の配線層上の設計要素を識別する。これらの「他の層」の設計要素をアクティブ層上の設計要素と区別するために、GUIでは、これらの「他の層」設計要素の異なる視覚表示を行う。例えば、一部の実施形態では、アクティブ層以外の層にある設計要素を識別するために異なる色合い、形状、フィルパターン、又は境界線ダッシュを使用する。
【0039】
図10は、GUIの一部の実施形態による「他の層」の設計要素の視覚表示の例を示している。具体的には、図10は、垂直大域的優先方向を有する第4の配線層を表す設計ウィンドウ1000を示している。この第4の配線層は、図9に示す第3の配線層の上方にある。設計ウィンドウ1000に示すように、下部の第3の層上の事前設計回路ブロックは、「点線の輪郭」1010と1015によって表されている。輪郭は、この例での説明を目的としてのみ「点線表現」されているが、本発明の殆どの実施形態では、一般的に着色領域を使用して他の層の事前設計回路ブロックを表している。
【0040】
この例においては、「輪郭」は、下部の第3の配線層上でのIPブロック910の相対位置を表す。下位の事前設計回路ブロックの輪郭表示により、ユーザは、この事前設計回路ブロックに重なり合うようにアクティブ層上に正確にLPDRを形成することができる。例えば、LPDR1050と1060は、設計ウィンドウ1000では、下層上の事前設計回路ブロックと重なり合うように形成される。下位にある事前設計回路ブロックと重なり合うようにLPDRを形成する利点については、II節Cで上述した。
【0041】
B.LPD領域の作成及び操作
最初に、本発明の一部の実施形態によるGUIによるLPDRの作成及び操作について以下に説明する。この説明に続いて本発明の他の実施形態によるLPDRを作成及び操作する代替方法の説明を行う。
1.LPDRの作成及び操作
GUIは、ユーザに、LPD設計レイアウトを作成及び操作する正確なツールを提供する。例えば、図11Aから図11Eは、「LPDR作成ツール」を使用したLPDRの作成を示している。具体的には、図11Aは、メニューバー1105とツールバー1110とを有する設計ウィンドウ1100を示している。メニューバー1105には、III節Aで上述したものとは異なるいくつかのメニューが含まれている。ツールバー1110には、レイアウト設計時に頻繁に使用されるいくつかの「整理された」メニュー項目が含まれている。これらには、とりわけ、検索ツール、ズームツール、「マクロ挿入」ツールがある。
【0042】
LPDRを作成するために、ユーザは、最初に「LPRメニューウィンドウ」にアクセスする必要がある。一般的に、ユーザは、図9を参照して上述したように、ポインティング装置を「右クリック」することによってこのLPDRメニューウィンドウを開く。しかし、GUIは、他の入力方法を通じてメニューウィンドウを開くように形成することができる。更に、ユーザは、メニューバー内の特定オプションを通してナビゲートすることによってLPDRメニューを開くことができる。この例においては、ユーザは、「LPDRメニューウィンドウ」1120を開いて、カーソル1135で「LPDを追加」オプションを選択する。それによってGUIは、図11Bに示すように、設計ウィンドウ1100内に「LPDR作成ツール」1115を表示するように促される。この「LPDR作成ツール」は、八角形の形状であるLPDR八辺形を設計する際に特に有用である。しかし、「LPDR作成ツール」を使用して他の幾何学形状でLPDRを作成することもできる。
【0043】
一部の実施形態の八辺形は、水平、垂直、及び/又は±45°の方向を備えた項目を有する設計レイアウトに有用であるデータ構造である。具体的には、これらの実施形態では、八辺形は、8つの値、xLO、yLO、sLO、tLO、xHI、yHI、sHI、及びtHIに関して凸面の幾何学形状を表す。これらの8つの値は、2つの座標系で8つの半平面を形成し、この2つの座標系では、一方の座標系は、x軸とy軸によって形成されるマンハッタン座標系であり、他方の座標系は、s軸とt軸によって形成される45°回転座標系である。s軸は、x軸から45°左回りの位置にあり、t軸は、x軸から45°右回りの位置にある。一部の実施形態のレイアウトにおいては、水平線は、x軸に整列し、垂直線は、y軸に整列し、45°対角線は、s軸に整列し、−45°対角線は、t軸に整列している。
【0044】
八辺形については、米国公開特許出願2004−0225983A1として公開された「設計レイアウトにおいて項目を表す方法及び機器」という名称の米国特許出願第10/443,595号で更に説明されている。この特許出願は、本明細書において引用により組み込まれている。以下の説明では、設計レイアウトの配線及び非配線形状は、凸面形状であり、又は水平、垂直、±45°の辺を有する凸面形状に分解することができる。しかし、当業者は、一部の実施形態では、配線又は非配線幾何学形状が更に制限される場合に八辺形のデータ構造を使用することができると考えられると認識するであろう。
【0045】
図11Bは、8つの半平面、xLO1110、yLO1120、sLO1130、tLO1140、xHI1150、yHI1160、sHI1170、及びtHI1180を有する「LPDR作成ツール」1115を示している。4つのs及びtの半平面は、最初は4つのx及びyの半平面によって形成された四角形に外接する四角形を形成する。しかし、これらの半平面の全ては、ユーザが選択可能であり、移動させて様々な多角形形状を有するLPDRを作成することができる。提案LPDRの形状は、半平面の最内部によって形成された閉鎖面として形成されている。例えば、図11Bは、「LPDR作成ツール」1115の半平面xLO1110、yLO1120、xHI1150、及びyHI1160によって形成された四角形状の提案LPDR1125を示している。この例においては、半平面の最内部は、半平面xLO1110、yLO1120、xHI1150、及びyHI1160の全体である。残りの半平面sLO1130、tLO1140、sHI1170、及びtHI1180の全ての部分は、デフォルト「LPDR作成ツール」1115の外部上にある。半平面の内部及び外部の部分を区別しやすいように、本発明の一部の実施形態では、太い実線を使用して最内部を表し、点線を使用して半平面の外部の部分を表している。
【0046】
上述のように、半平面は、ユーザが選択可能であり、移動させて提案LPDRの形状を形成することができる。図11Bは、ユーザがカーソル1135で半平面yHI1160を選択して下方に移動させることを示している。その結果、提案LPDR1125は、図11Cに示すように矩形を形成するように再定義される。この図はまた、外部半平面sLO1130、tLO1140、sHI1170、及びtHI1180が提案LPDR1125と外接する四角形の形態を維持するように再定義されていることを示している。外部半平面は、内方に移動されるまで外接四角形の形態を維持する。また、外部半平面のこの内方への移動は、ユーザがカーソル1135でsHI1170を選択することにより、図11Cに示されている。得られた提案LPDR1125の再定義を図11Dに示している。
【0047】
図11Dは、半平面xLO1110、yLO1120、xHI1150、sHI1170、及びyHI1160の内部部分によって形成された5辺を有する多角形の形状の提案LPDR1125を示している。sHI1170の内部部分及びxHI1150及びyHI1160の外部部分は、それぞれ、適切な太い実線及び点線によって表されている。また、図11Dは、ユーザがカーソル1135でsLO1130、tLO1140、及びtHI1180を選択して内方に移動させることを示している。得られた提案LPDR1125の再定義を図11Eに示している。
【0048】
図11Eは、不規則な八角形、すなわち、長さが等しくない辺を有する八角形の形状の提案LPDR1125を示している。これは、提案LPDR1125形成時の半平面の独立かつ発散的移動の結果である。この独立した半平面の移動により、ユーザには、特定の設計レイアウト向けに正確に形成された形状を有する独特なLPDRを作成する柔軟性が与えられる。しかし、本発明の一部の実施形態では、ユーザは、あらゆる2つ又はそれよりも多くの半平面間の縦横比を「固定する」ことができる。従って、「固定された」半平面を移動させれば、それぞれの縦横比に比例した量だけあらゆる他の「固定された」半平面も移動する。この「固定」の機能は、ユーザにLPDRを形成するに際して更に別の柔軟性を与えるものである。
【0049】
LPDRが設計ウィンドウで作成された状態で、一部の実施形態のGUIでは、ユーザにLPDRの属性を操作する機能が与えられる。これらの機能の一部は、(1)LPDRのサイズを変える、(2)LPDRを移動させる、(3)LPDRの局所優先方向を割り当てる/修正する、(4)LPDRの層指定を変える、(5)LPDRを複写することを含む。サイズ変更及び移動の機能は、一般的にカーソルによる「選択してドラッグする」によって実行される。しかし、残りの機能は、一般的に、「LPDR修正メニュー」の特定のオプションを選択することによって実行される。本発明の一部の実施形態によるGUIのこれらの修正機能について、更に詳しく以下で説明する。
【0050】
LPDRのサイズを変更するには、ユーザは、図11Bから図11Dを参照して上述したように特定の半平面を移動させることになる。これは、設計ウィンドウ内の望ましい場所に特定の半平面を「選択してドラッグ」することによって行われる。また、上述のように、ユーザには、LPDRサイズ変更時にあらゆる2つ又はそれよりも多くの半平面対間の縦横比を「固定する」オプションがある。
LPDRを移動させるには、ユーザは、特定のLPDRの表面上にカーソルを置いて望ましい方向に沿って「選択してドラッグする」。図11E及び図11Fは、ユーザが先の例で作成したLPDR1125を移動させることを示している。具体的には、図11Eは、ユーザがカーソル1135をLPDR1125の表面上に置き、斜め上にかつ設計ウィンドウ1100の左に移動させることを示している。その結果、LPDR1125は、図11Fに示すように設計ウィンドウ1100内の適切な場所に移動される。
【0051】
LPDRの局所優先方向を割り当て/修正し、LPDRの層指定を変更し、及び/又はLPDRを複写するために、ユーザは、図12Aに示すように「LPDR修正メニュー」にアクセスする。この図では、ユーザは、カーソル1235をLPDR1225上に置いて「右クリック」することによって「LPDR修正メニュー」1250を開く。この「LPDR修正メニュー」1250には、LPDを複写する、LPDを仕上げる、層アップ/ダウン、及びLPD方向などの様々なメニューオプションがある。これらのメニューオプションは、本発明の一部の実施形態では「拡張可能」であり、すなわち、特定のメニューオプションを選択すれば、更に別のオプションが得られるようにメニューが拡張される。この例においては、ユーザは、LPD方向メニューオプションを選択して拡張した後に、LPDR1225のために「垂直」局所優先方向を選択する。その結果、本発明の一部の実施形態では、図12Bに示すように、垂直の方向矢印がLPDR1225内に置かれる。
【0052】
本発明の一部の実施形態では、LPDRに対する「デフォルト」局所優先方向は、それが最初に作成される時に割り当てられる。割り当てられるデフォルト局所優先方向は、ユーザが先に指定することができる。それでも、LPDRにデフォルト局所優先方向が割り当てられた場合、ユーザは、LPDの割り当てに関して上述したものと同じ方法を用いてあらゆるLPDRの局所優先方向を修正することができる。
【0053】
LPDRの層指定を変更するには、ユーザは、特定のオプションを「LPDR修正メニュー」から選択する。例えば、ユーザは、図12Aで先に言及した「LPDR修正メニュー」1250の「層アップ」又は「層ダウン」オプションを選択することによって特定のLPDRを上に又は下に移動させることができる。更に、ユーザは、「LPDR修正メニュー」にある拡張可能な「層」オプションを選択することにより、LPDRをあらゆる特定の層に移動させることができる。その結果、一部の実施形態のGUIでは、特定の層指定を識別するためにLPDRの色合いが変わることになる。
【0054】
ユーザはまた、「LPDR修正メニュー」における「LPD複写」オプションを選択することによってLPDRを複写することができる。これを行えば、GUIは、複写のために選択されたLPDRと同じ属性(例えば、同じ形状、局所優先方向、及び層指定)を有するLPDRを設計ウィンドウ内に作成するように促されることになる。上述のように、「LPDR修正メニュー」には、「LPD仕上げ」オプションもある。このオプションで、ユーザは、LPDRの作成/定義を最終的なものにすることができる。その結果、本発明の一部の実施形態では、特定のLPDRが不用意にサイズ変更されないように「LPDR作成ツール」の半平面が除去される。また、本発明の他の実施形態では、特定のLPDRが不用意に移動されないように、設計レイアウト内の特定の場所にLPDRが「凍結」される。しかし、本発明の他の実施形態では、ユーザは、依然として「最終」LPDRの属性を修正することができる。除去された「LPDR作成ツール」による「最終」LPDR1225の例を図12Bに示している。
【0055】
2.LPDR作成及び操作の代替方法
本発明の一部の実施形態のGUIを使用したLPDRの作成及び操作について上述した。しかし、これらの上述の実施形態で示したのは、本発明のGUIを使用してLPDRを作成及び修正する多くの方法のうちのいくつかの方法だけである。本発明の他の実施形態の様々な他の方法について以下で説明する。更に、「クラウン化」というGUIの別の機能を紹介する。
図13A及び図13Bは、本発明の一部の実施形態によりGUIでユーザがLPDRを作成することができる方法を示している。これらの図は、斜め大域的優先方向を有する配線層を表す設計ウィンドウ1300を示している。具体的には、図13Aは、ユーザがカーソル1345で「挿入」ドロップダウンメニューにアクセスしてLPDR形状を選択することを示している。その結果、図13Bに示すように、水平局所優先方向を有する八角形LPDR1310が設計ウィンドウ1300内にドロップされる。この例においては、LPDR1310には、デフォルトサイズ及びデフォルト水平局所優先方向が指定されていた。他の実施形態では、設計ウィンドウ内にドロップされるLPDRには、異なるデフォルトサイズ局所優先方向が指定される。それでも、更に以下で説明するように、LPDRの両方の属性を操作することができる。
【0056】
ユーザはまた、望ましいLPDR形状を選択して設計ウィンドウ内にドラッグすることによって本発明の他の実施形態によるLPDRを作成することができる。GUIは、ドロップダウンメニュー内のあらゆるメニューオプションを「メニューバー」上に「連結する」ように構成することができる。従って、図13C及び図13Dに示すように、メニューバーに沿って「LPD挿入」メニュー内にあるLPDR形状を表示することができる。具体的には、これらの図はまた、様々なLPDR形状がメニューバー1305上に「連結された」設計ウィンドウ1300を示している。この例においては、ユーザは、八角形のLPDR形状の上にカーソル1345を置いた後に、設計ウィンドウ内にその形状を「選択してドラッグ」する。その結果、八角形上LPDR1320が、設計ウィンドウ1300内に作成される。
【0057】
本発明の一部の実施形態によるLPDRを作成する別の方法は、「選択して拡張する」方法と呼ばれる。本方法においては、ユーザは、望ましいLPDRを選択した後、作成するLPDRの正確な場所及びサイズを指定することができる。図13E及び図13Fは、ユーザが本発明の一部の実施形態による選択して拡張する方法を用いてLPDRを作成することを示している。具体的には、図13Eは、四角形のLPDR形状を先に選択した後に、ユーザがカーソル1345を望ましい場所に置いてLPDRを設計ウィンドウ1300内に作成することを示している。メニュー上の四角形のLPDR形状1310は、ユーザの選択を示すために影付きとなっている。カーソル1345の隣にある小さな点線による矢印は、ユーザがLPDRを「拡張する」ためにカーソル1345を上に及び左に「クリックしてドラッグする」ことを示している。その結果、図13Fに示すようにLPDR1330が作成される。
【0058】
具体的には、図13Fは、ユーザがクリック及びドラッグ操作を開始した望ましい場所からカーソル1345が半径方向に外方に方向付けられた時のLPDRの拡張を示している。点線による領域は、拡張の直前の段階を表すものである。この例においては、クリック及びドラッグ操作の開始場所により、「拡張」LPDR1330のコーナ頂点が指定される。しかし、他の実施形態では、クリック及びドラッグ操作の開始場所により、拡張LPDRの中心が指定される。
【0059】
LPDRが設計ウィンドウ内で作成された状態で、GUIは、ユーザにLPDRの属性を操作する異なる方法を呈示する。本発明の一部の実施形態では、ユーザは、設計ウィンドウ内でLPDR領域のサイズを変更することができる。1つの方法は、カーソルを特定のLPDRの2辺の頂点に置いてLPDRから半径方向に外方/内方に向けて「選択してドラッグする」というものである。また、図14を参照すると、カーソル1455は、LPDR1410の右上コーナの頂点上に置かれている。カーソル1455の隣にある小さな点線による矢印は、ユーザが45°の方向に沿って(半径方向外方に)カーソル1455を「クリックしてドラッグする」ことを表している。その結果、LPDR1410は、図14Bに示すように大きくなるようにサイズ変更される。一般的に、頂点を移動させることによってLPDRをサイズ変更した時、この例が示すように、LPDRの辺の縦横比は維持される。
【0060】
LPDRをサイズ変更する別の方法は、特定のLPDRの境界エッジを「選択してドラッグする」ことによるものである。本方法は、ユーザが頂点ではなくLPDRの境界エッジを選択する点を除き、上述のものと同様に行われる。しかし、これらの方法では、一般的に、LPDRの辺の縦横比が、境界エッジを移動させることによってLPDRをサイズ変更した時に通常は維持されないので、異なる結果が得られる。代替的に、隣接する境界エッジは、特定の境界エッジの移動に従うように「拡大」又は「縮小」される。
【0061】
本発明の一部の実施形態では、LPDRをサイズ変更するばかりでなく、ユーザは、LPDRを設計ウィンドウ内で移動させることができる。これを行うには、ユーザは、カーソルを特定のLPDRの表面上に置いて、望ましい方向に沿って「選択してドラッグする」操作を実行する。具体的には、図14A及び図14Bは、斜め大域的優先方向を有する配線層を表す設計ウィンドウ1400を示している。設計ウィンドウ1400内には、様々な凸面の形状及び局所優先方向を有する3つのLPDR1405、1410、1415がある。図14Aは、LPDR1405の表面上に置かれたカーソル1455を示している。カーソル1455の隣にある小さな点線による矢印は、ユーザがカーソル1455を右に「クリックしてドラッグする」ことを表す。その結果、LPDR1405は、図14Bに示すように水平方向に沿って右に移動される。
【0062】
一部の実施形態のGUIで操作することができるLPDRの別の属性は、LPDRの局所優先方向である。一部の実施形態では、LPDRの方向を表す方向矢印は、ユーザが選択可能であり、様々な方法によって操作することができる。例えば、本発明の一部の実施形態では、ユーザには、一般的な優先方向を一覧表示するメニューウィンドウから特定の方向を選択することによって選択方向矢印を操作する「メニューウィンドウ」方法が与えられる。代替的に、「選択してドラッグする」方法では、ユーザは、カーソルで特定の方向矢印を選択した後に、あらゆる望ましい方向に到着するように、円運動で方向矢印を「ドラッグする」ことができる。この「選択してドラッグする」方法の変形は、「選択してスナップする」方法と呼ばれる。「選択してスナップする」方法では、ユーザは、選択方向矢印が、円運動でドラッグされる時に(すなわち、0°から45°、49°、135°など)許された優先方向を通じて漸進的に「スナップする」点を除き、「選択してドラッグする」方法と同様に方向矢印を操作することができる。一般的に、「許される」特定の優先方向は、標準水平軸から45°の増分であるが、本発明の一部の実施形態では、他の角度増分に従って「許される」優先方向が指定される。
【0063】
この「選択してスナップする」方法を用いた方向矢印のユーザによる操作は、図14A及び図14Bを改めて参照することによって見ることができる。これらの図は、LPDR1415の方向矢印1460を指すカーソル1465を示している。カーソルの下にある小さな点線による矢印は、ユーザが方向矢印1460を選択した後にカーソル1445を右回り/下方に「ドラッグする」ことを表すものである。その結果、選択方向矢印1460は、図14Bに示すように、水平方向から−45°方向に「スナップされる」。
【0064】
領域の優先方向の変更の結果、本発明の一部の実施形態では、設計ウィンドウ内でLPDRのあらゆる不透過エッジの表示が更新される。図14Aに示すように、4つ不透過エッジ表示1425は、LPDR1415のそれぞれの不透過エッジ上に重なり合っている。具体的には、LPDR1415の上部及び底部に沿った不透過エッジは、LPDRの水平局所優先方向によるものである。図14Bに示すように、LPDR1415の局所優先方向を−45°方向に変更した時、これらの2つの上下のエッジ表示1425は除去される。しかし、他の2つの表示1425は、LPDR1415の不透過エッジが設計ウィンドウ1400内の層の斜めの優先方向によるものであることを表すので残っている。この図はまた、LPDR1415の−45°局所優先方向の変化の結果としてLPDR1415の右上及び左下のエッジに追加された2つの不透過エッジ表示1435を示している。
【0065】
上述の「選択してスナップする」方法に対する領域又は層の優先方向を操作する代替「メニューウィンドウ」の方法を図15A及び図15Bに示している。具体的には、図15Aは、ユーザがカーソル1560を方向矢印1550に向けた後にポインティング装置を使用してメニューウィンドウを開くことによって方向矢印を選択することを示している。一般的に、ユーザは、ポインティング装置を「右クリック」することによってこのメニューウィンドウを開く。しかし、他の入力方法を通じてメニューウィンドウを開くようにGUIを構成することができる。この例においては、選択した方向矢印1550上での「右クリック」により、GUIは、「方向メニューウィンドウ」1570を表示するように促される。この方向メニューウィンドウでは、標準的な優先方向、すなわち、水平、垂直、45°、−45°を表す4つの矢印が呈示される。他の実施形態では、上記で特定された標準的な4つ以外の優先方向を示す「方向メニューウィンドウ」が表示される。この例においては、ユーザは、方向ウィンドウ1570内でカーソル1560を水平矢印に向けることによって水平方向を選択する。その結果、選択した方向矢印1550は、図15Bに示すように、45°方向から水平方向に変更される。
【0066】
図15Bに示すように、方向矢印1550は、ここでは水平の向きである。配線層の大域的方向に対するこの変更のために、本発明の一部の実施形態のGUIでは、新しい大域的優先方向と平行に延びる局所優先方向を有する一切のLPDRが除去される。例えば、図15Aで先に示す0°局所優先方向を有するLPDR1540と1545は、ここで、図15Bに示すように、GUI設計ウィンドウから除去される。更に、本発明の一部の実施形態のGUIでは、残りのLPD領域のあらゆる不透過エッジを特定することにより、配線層の大域的方向内のこの変化に応答する。図15Bに示すように、「X」アイコン1580は、領域1530と1535のそれぞれの不透過境界エッジ上に重なり合っている。この識別には、ユーザに対して、レイアウトを変更してこれらのそれぞれの境界エッジを通じて(すなわち、「クラウン」を追加することにより)ルーティング可能性を改善するように警告する。
【0067】
これらの不透過境界エッジを拡張して「クラウン」を形成するために、本発明の一部の実施形態によるGUIでは、ユーザは、クラウン化のために不透過境界エッジを選択することができる。LPDRクラウン化を図15C及び図15Dに示している。具体的には、図15Cは、ユーザがカーソル1560を領域1530の不透過境界エッジ1590(点線で表されている)の頂点1555に向けることによって不透過境界エッジを選択することを示している。カーソル1560の下にある垂直の矢印は、ユーザが不透過境界エッジ1590の頂点1555を選択した後にカーソル1560を下方に「ドラッグする」ことを表すものである。その結果、選択された不透過境界エッジ1590は、配線層に拡張されて、図15Dに示すように領域1530上にクラウンを形成する。
【0068】
全ての不透過境界エッジは、エッジの終点を表す少なくとも2つの頂点を有する。この例においては、ユーザは、不透過境界エッジのこのような頂点を拡張して三角形上のクラウンを形成する。しかし、ユーザはまた、異なる形状のクラウンを形成するために不透過境界エッジの更に別の頂点を作成することができる。一部の実施形態では、ユーザは、図16A及び図16Bに示すように、エッジ上の望ましい中間点でクリックしてドラッグすることによってLPDR境界エッジに沿って頂点を作成して拡張することができる。
【0069】
具体的には、図16Aは、ユーザが、カーソル1660エッジ上の中点を選択することによって不透過境界エッジ1690に頂点1665を追加することを示している。この例はまた、ユーザが、不透過境界エッジ1690の頂点1565を選択した後にカーソル1660を下方に「ドラッグする」ことを示している。その結果、選択された不透過境界エッジ1690は、配線層内に拡張されて、図16Bに示すように領域1630上にクラウンを形成する。このように頂点を境界エッジに追加することができることにより、ユーザに様々な形状のクラウンを形成する柔軟性が与えられる。
【0070】
速達郵便番号EV454047130US及び代理人整理番号CDN.P0079であり、本出願と同時出願の「局所優先方向を有するレイアウト領域を発生させる方法及び機器」という名称の米国特許出願では、本発明の一部の実施形態の自動LPDR発生器が説明されている。また、速達郵便番号EV454047143US及び代理人整理番号CDN.P0078であり、本出願と同時出願の「局所優先方向ルーティング」という名称の米国特許出願では、LPDを伴うレイアウトをルーティングすることができるルーティングツールが説明されている。これらの出願は、本明細書において引用により組み込まれている。他のEDAツールも、LPDを伴うレイアウトを考えることができる。例えば、一部の実施形態は、回路モジュール又はこれらのモジュールのピンが該当する異なるLPDに基づいて配置経費(例えば、ワイヤ長及び/又は輻輳経費)を計算するプレーサを含むと考えられる。
【0071】
本発明を多くの特定の詳細に関連して説明したが、当業者は、本発明の精神から逸脱することなく本発明を他の特定の形態で具現化することができることを認識するであろう。例えば、一部の実施形態は、マンハッタン方向と非マンハッタン方向の間にある角度(例えば、22.5°方向)により、マンハッタンLPD(例えば、水平方向)を有するLPDRと非マンハッタンLPD(例えば、45°斜め方向)を有するLPDRとの間にクラウン境界を形成する。すなわち、当業者は、本発明が上述の例示的な詳細によって制限されず、むしろ特許請求の範囲によって規定されるものであることを理解するであろう。
【符号の説明】
【0072】
LPD 局所優先方向
200 配線層
205、210 八角形LPD領域
215 矩形LPD領域
【技術分野】
【0001】
本発明は、「局所優先方向」配線モデルを使用してネットをルーティングするための機器に関する。
【背景技術】
【0002】
集積回路(IC)は、多くの電子コンポーネント(例えば、トランジスタ、レジスタ、ダイオードなど)を含む半導体素子である。これらのコンポーネントを相互接続して複数の回路コンポーネント(例えば、ゲート、セル、メモリ装置、算術演算装置、コントローラ、復号器など)をIC上に形成することが多い。ICはまた、その電子コンポーネント及び回路コンポーネントを相互接続する金属及び/又はポリシリコン配線の複数の層を含む。例えば、多くのICは、5つの金属層を伴って現在製造されている。理論的には、金属層上の配線は、全角度配線とすることができる(すなわち、配線は、あらゆる任意の方向とすることができる)。このような全角度配線は、一般的に、ユークリッド配線と呼ばれる。しかし、実際には通常、各金属層は1つの全域的な優先的配線方向を有し、この優先的方向は、連続する金属層間で交替する。
【0003】
多くのICでは、水平及び垂直の優先方向配線の交替する層を指定するマンハッタン配線モデルを用いている。この配線モデルにおいては、配線の大部分は、90°の回転しかできない。優先水平及び垂直層上では、時折の斜めジョグが許容されることがある。しかし、標準的なルーティングアルゴリズムは、これらの斜めジョグがマンハッタン配線モデルの設計規則を犯すために、それらに重いペナルティを課している(すなわち、相応に高いルーティング経費を課している)。最近、一部では、斜め配線モデルを用いて斜め相互接続線(配線)にペナルティを課さない設計規則を提供するICが提案されている。相互接続線は、それらがICのレイアウト境界に対してゼロ又は90°以外の角度を成す場合は「斜め」と見なされる。しかし、通常は、斜め配線は±45度で配置されたワイヤから成る。
【0004】
典型的なマンハッタン配線モデルと斜め配線モデルは、各配線層に対して1つの優先方向を指定する。これらの配線層上の障害物のために、層の優先方向に沿ってルーティングする時に設計上の問題が生じる。例えば、設計レイアウトには、回路コンポーネント、事前設計回路ブロック、及び層上のルーティングの他の障害物が含まれることが多い。このような障害物は、層上の領域をその層の単一優先方向に沿ったルーティングに対して本質的に使用不能にする場合がある。
【0005】
設計レイアウト上の領域をルーティングに対して使用不能にする障害物を示す例を図1に示している。この図は、各々が2つのルーティング障害物115と120を有する2つの配線層を示している。その層の一方は、水平優先方向を有し、他方の層は、斜め優先方向を有する。障害物115と120は、これらの層の両方でのルーティングに対して2つの領域105と110を使用不能にしている。従って、マンハッタン配線モデルと斜め配線モデルの両方は、一般的に設計レイアウトの層上のルーティングリソースを無駄にしている。
従って、マンハッタン及び斜め配線を可能にし、かつ配線層上の障害物のために失ったルーティングリソースを回復する配線モデルが必要とされる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国公開特許出願2004−0225983A1
【特許文献2】米国特許出願第10/443,595号
【発明の概要】
【0007】
本発明の一部の実施形態は、1つ又はそれよりも多くのEDAツール(プレーシング、ルーティングなどのような)と共に使用される「局所優先方向(LPD)」配線モデルを提供する。LPD配線モデルは、少なくとも1つの配線層が、各々が特定の配線層とは異なる優先方向を有する一組の領域を有することを可能にするものである。更に、各領域は、その組における少なくとも1つの他の領域の局所優先方向とは異なる局所優先方向を有する。更に、少なくとも2つの領域は、2つの異なる多角形形状を有し、その組における領域は、その組における別の領域を取り囲むことはない。一部の実施形態はまた、LPD設計レイアウトのビジュアルプレゼンテーションを容易にする「グラフィカル・ユーザ・インタフェース(GUI)」を提供し、また、設計レイアウトにおいてLPD領域を作成及び操作するツールを提供する。
本発明の新しい特徴は、特許請求の範囲に示している。しかし、説明目的で本発明のいくつかの実施形態を以下の図に説明する。
【図面の簡単な説明】
【0008】
【図1】典型的なマンハッタン及び斜め配線層上の障害物のためにルーティングに対して本質的に使用不能な領域の例を示す図である。
【図2】LPD配線モデルに基づく設計レイアウトの例を示す図である。
【図3】LPD配線モデルに基づく設計レイアウトの別の例を示す図である。
【図4A】事前設計回路ブロックを伴う配線層を示す図である。
【図4B】LPD領域を有する図4Aの配線層を示す図である。
【図5】図5A−図5Cはクラウンで拡張されたLPD領域を示す図である。
【図6】隣接する電力ストライプを取り囲むためのLPD領域の融合を示す図である。
【図7】事前設計回路ブロックの上を横断する斜め層上の水平進路を定める図である。
【図8】本発明の一部の実施形態により異なるバイアパッド形状を有するバイアを示す図である。
【図9】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」を使用した設計レイアウトの視覚表示を示す図である。
【図10】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウの下層上の事前設計回路ブロックに重なるLPD領域を示す図である。
【図11A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11C】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11D】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11E】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「LPDR作成ツール」を使用してLPD領域を作成するユーザを示す図である。
【図11F】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウ内でLPD領域を移動するユーザを示す図である。
【図12A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域に対する局所優先方向を指定するユーザを示す図である。
【図12B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域に対する局所優先方向を指定するユーザを示す図である。
【図13−1】図13A−図13Bは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「選択してドロップする」方法を使用してLPD領域を作成するユーザを示す図である。
【図13−2】図13C−図13Dは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「選択してドラッグする」方法を使用してLPD領域を作成するユーザを示す図である。
【図13−3】図13E−図13Fは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて「選択して拡張する」方法を使用してLPD領域を作成するユーザを示す図である。
【図14−1】図14A−図14Bは本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域の属性を操作するユーザを示す図である。
【図15A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域の優先方向を操作するために「メニューウィンドウ」を使用するユーザを示す図である。
【図15B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域の優先方向を操作するために「メニューウィンドウ」を使用するユーザを示す図である。
【図15C】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域を「クラウン化」するユーザを示す図である。
【図15D】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいてLPD領域を「クラウン化」するユーザを示す図である。
【図16A】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて不透過境界エッジに頂点を追加してLPD領域を「クラウン化」するユーザを示す図である。
【図16B】本発明の一部の実施形態により「グラフィカル・ユーザ・インタフェース」の設計ウィンドウにおいて不透過境界エッジに頂点を追加してLPD領域を「クラウン化」するユーザを示す図である。
【発明を実施するための形態】
【0009】
本発明は、「局所優先方向」配線モデルを使用してネットをルーティングするための機器に関する。以下の説明において、説明を目的として多くの詳細事項を説明する。しかし、当業者は、これらの特定の詳細事項を使用することなく本発明を実施することができることを認識するであろう。一部の事例においては、本発明の説明を簡素化するために、公知の構造及び装置は、ブロック図の形で示している。
【0010】
本発明の一部の実施形態は、1つ又はそれよりも多くのEDAツール(プレーシング、ルーティングなど)と共に使用される「局所優先方向(LPD)」配線モデルを提供する。LPD配線モデルは、少なくとも1つ配線層が、各々が特定の配線層とは異なる優先方向を有する一組の領域を有することを可能にするものである。更に、各領域は、その組における少なくとも1つの他の領域の局所優先方向とは異なる局所優先方向を有する。更に、少なくとも2つの領域は、2つの異なる多角形形状を有し、どの領域もその組における別の領域を取り囲まない。一部の実施形態はまた、LPD設計レイアウトのビジュアルプレゼンテーションを容易にし、かつLPD領域を設計レイアウト内で作成及び操作するためのツールをもたらす「グラフィカル・ユーザ・インタフェース(GUI)」を提供する。
「LPDアーキテクチャ」のいくつかの特徴について以下で説明する。II節では、「LPDアーキテクチャ」のいくつかの例について説明し、III節では、LPD配線モデルを使用したEDAツール用「グラフィカル・ユーザ・インタフェース(GUI)」について説明する。しかし、「LPDアーキテクチャ」とGUIの例について説明する前に、I節でLPD配線モデルの概要について説明する。
【0011】
I.局所優先方向配線モデルの概要
一部の実施形態のLPD配線モデルは、マンハッタン及び斜め方向にエッジを有する経路の作成を考慮するものである。マンハッタンエッジは、レイアウト又はICの座標軸の1つに対して水平(0°)又は垂直(90°)である。逆に、斜めエッジは、0°又は90°以外の角度を形成する。斜めエッジは、一般的にレイアウト又はICの座標軸に対して45°の角度を形成する。座標軸は、多くの場合に、レイアウトの境界、レイアウトの予想ICの境界、又はその両方と平行である。
【0012】
いくつかの配線層を有する設計レイアウト又はICが与えられると、一部の実施形態は、(1)いくつかの配線層、(2)各層Lに対する大域的優先方向DL、及び(3)各配線層Lに対するLPD領域の潜在的空集合により、レイアウト又はICのIPD配線モデルを説明している。一部の実施形態は、「優先」方向を領域において大部分のワイヤが配置される方向と定義する。一部の実施形態は、更に、配線の百分率又は量によってこの量を定量化する。例えば、一部の実施形態は、層の優先方向を層上のワイヤ(相互接続線又は経路セグメントとも呼ばれる)の少なくとも50%の方向と定義する。他の実施形態は、層の優先方向を層上の少なくとも1000本のワイヤの方向と定義する。
【0013】
特定の層上では、領域は、その特定の層の大域的優先配線方向とは異なる局所優先配線方向を有する時にLPD領域(又はLPDR)と呼ばれる。一部の実施形態は、LPDR記述に対していくつかの整合性要件を課している。例えば、一部の実施形態は、各LPDRが完全にチップ区域内であることを要求する。一部の実施形態では、所定の層上の全てのLPDRは、その境界でのみ交差する(すなわち、重複がない)。更に、一部の実施形態は、全てのLPDRが非縮退である(少なくとも1つの内部点を包含する)ことを要求する。
【0014】
II.LPDアーキテクチャ
上述のように、LPD配線モデルは、少なくとも1つの配線層が、その配線層のいくつかの異なる領域においていくつかの異なる局所優先方向を有することを可能にするものである。図2は、IC又は設計レイアウトにおけるこのような配線層の例を示している。この配線層は、本発明の一部の実施形態によりいくつかの異なる凸面形状と局所優先方向とを有するLPDRを有する。この例は、45°の大域的優先方向を有する配線層200を示している。この層200の上には、45°局所優先方向を有する八角形LPDR205、水平局所優先方向を有する八角形LPDR210、及び垂直局所優先方向を有する矩形LPDR215がある。
【0015】
図3は、IC又は設計レイアウトにおける別のこのような配線層の別の例を示している。この配線層は、本発明の一部の実施形態によりいくつかの異なる凸面形状を有するLPD領域を有する。この例は、垂直の大域的優先方向を有する配線層300を示している。この層300は、異なる形状と異なる局所優先方向とを有する4つのLPDRを有する。層300の中心には、−45°の局所優先方向を有する八角形LPDR305がある。領域305の左下側近くには、45°局所優先方向を有する矩形LPDR310がある。領域305の左上側近くには、60°局所優先方向を有する六角形LPDR315がある。領域305の右側近くには、水平局所優先方向を有する四角形LPDR320がある。
【0016】
図2と図3で先に示す例は、LPD配線モデルが、配線層が異なる凸面多角形形状と異なる局所優先方向とを有するいくつかの領域を有することを可能にすることを示している。しかし、これらの例が示しているのは、設計レイアウト又はICにおけるLPD配線モデルの単純な使い方である。これらの例は、層上の配線に対するいかなるマクロ又は他の障害物も示していない。マクロは、レイアウト又はICにおいて使用される事前設計された複合回路ブロックである。このようなブロックの例としては、IPブロック、RAMセル、「電力バイアアレイ」がある。上述のように、配線に対するこれら及び他の障害物は、配線層上の領域をルーティングに対して本質的に使用不能にする場合がある。しかし、LPD配線モデルの利点の1つは、配線層上のマクロ又は他の障害物のために通常失われるルーティングリソースを回復するということである。
【0017】
図4Aと図4Bは、LPD配線モデルのこの特定の利点を示す例を提供するものである。具体的には、図4Aは、斜めの大域的優先方向を有する配線層400を示している。この配線層は、一列の電力バイアアレイ(電力ストライプ)405、IPブロック410、一組のメモリセル415、2つのピン420及び425を含む。この層上に同じく示すのは、点線で表された斜め配線である。電力ストライプ405、IPブロック410、メモリセルの組415は、全て、配線層上の配線に対する障害物である。これらの障害物は、図4Aに示すようにルーティング上の問題を呈する場合がある。ピン420及び425を互いに又は他のピンと接続する必要がある時、ピン420に接続する斜め配線は、電力バイアアレイ405によって妨害されるために問題が生じる。更に、ピン425に接続する斜め配線は、IPブロック410によって妨害される。
【0018】
これらのルーティング上の問題を解決するために、一部の実施形態は、これらの障害物のエッジと平行に延びる局所優先方向を有する障害物周りにLPDRを形成する。図4Bは、このようなLPDRの例を示している。水平局所優先方向を有するLPDR430は、電力ストライプ405を取り囲むように形成される。代替的に、一部の実施形態は、電力バイアアレイを取り囲むのではなく、電力バイアアレイの間に個々のLPDRを形成する。いずれの場合にも、LPDRの水平方向は、配線を電力バイアアレイ405間にルーティングすることを可能にする。
【0019】
この図はまた、RAMブロック415間に形成された垂直局所優先方向を有する3つのLPDR440を示している。更に、垂直局所優先方向を有するLPDR450は、IPブロック410の右側と配線層の右境界との間に形成され、水平局所優先方向を有するLPDR460は、IPブロック410の上側と配線層の上部境界との間に形成される。LPDR450とLPDR460の間の境界エッジは、2つのこのような領域間の配線の容量を増大するための45°対角線として形成される。境界エッジそれ自体は、「クラウン」と呼ばれ、その利点は以下で更に説明する。
【0020】
図4Bに示すLPDRは、以前に妨害された配線が、これらのDPDRを通ってその局所優先方向に沿ったルーティングにより、今度は障害物周りを越えることを可能にする。例えば、図4Bに示すように、ピン420及び425は、今度は、大域的な45°方向に沿って横断し、LPDR430を水平方向に通って横断し、再び大域的な45°方向に沿って横断し、次に、LPDR460を水平方向に通って横断する一組の相互接続線を通じて接続することができる。
【0021】
A.クラウン
一部の実施形態は、エッジが、それぞれの境界エッジを共有する2つの領域の局所優先方向のいずれか一方に平行に延びる時に、2つの領域間に境界エッジを「不透過エッジ」として形成する。これらの境界エッジは、幾何学な設計上の制約のために不透過と見なされる。例えば、互いに平行に延びる二組のワイヤは、一般的に交差しない。従って、不透過境界エッジを共有する2つの領域における配線は、そのエッジで交差することが妨げられることになる。
【0022】
この潜在的なルーティングに関する問題を解決するために、本発明の一部の実施形態では、これらの不透過境界エッジは、「クラウン」で「拡張」される。「クラウン」は、2つの領域間の境界でのLPDRの拡張部である。一部の実施形態では、クラウン境界は、クラウン境界を共有する2つの領域の局所優先方向のいずれとも平行ではないように形成される。従って、これらのクラウンは、境界エッジを共有する領域の優先方向に沿って方向付けされた配線の交差を可能にする境界エッジを形成する。
【0023】
図5Aから図5Cは、「クラウン」によるLPDRの境界エッジの拡張の詳細な例を示している。これらの図は、水平の大域的優先方向を有する配線層500を示している。この層の中心には、3つの事前設計回路ブロック505、510、515が位置決めされている。更に、ブロック505と510、ブロック510と515の間には、それぞれ、2つのチャンネル580と590が位置する。これらのチャンネル580と590は、幾何学的な制約によってこのような配線がチャンネルから出入りすることが禁止されるために、層500の水平方向のルーティングには本質的に使用不能である。これらのチャンネルを有効に利用するために、本発明の一部の実施形態では、チャンネル580と590の代わりに、図5Bに示すように垂直局所優先方向を有するLPDR520と530が使用される。しかし、このようにLPDR520と530を形成すれば、一部の実施形態では、LPDR520と530の上下の境界エッジ(点線で表す)で不透過境界エッジが作成されることになる。これらの境界エッジは、層500の水平優先方向と平行に延びるために、不透過境界エッジとして形成される。
【0024】
不透過境界エッジの作成を回避するために、本発明の一部の実施形態では、図5Cに示すように、「クラウン」がLPDR520と530に追加される。具体的には、図5Cは、LPDR520を拡張するために作成された2つの三角形クラウン545と555の例を示している。この図はまた、LPDR530を拡張するために作成された2つの三角形クラウン565と575を示している。クラウン545と555は、クラウン565と575とは異なる形状である。クラウン545と555は、二等辺三角形の形状であり、クラウンは、直角三角形の形状である。しかし、クラウンの両方の形状は、層500からの水平配線と交差する境界エッジを形成する。従って、水平配線は、LPDR520と530を出入りするようにルーティングすることができる。チャンネル580と590の以前に「ルーティング不能」であった配線スペースは、層500上の配線のために有効に利用される。
【0025】
クラウンは、様々な形状を有するように形成することができる。しかし、一般的に、クラウンは三角形である。図5Cに先に示すクラウンの2つの形状は、形ばかりではなく機能においても異なっている。例えば、二等辺三角形状のクラウンは、層の水平配線と交差する2つの境界エッジを形成する。これらのエッジは、クラウン左右の両方から方向付けられた配線がLPDRを通過するようにルーティングすることを可能にする。一方、直角三角形状のクラウンは、一般的に1つの透過性エッジを形成する。このエッジは、一般的に、配線がクラウンの左又は右からLPDRを通るようにルーティングすることを可能にする。しかし、この1つのエッジの方が二等辺三角形状のクラウンの単一のエッジと比較すると長く、かつ交差配線量が多い。従って、本発明の一部の実施形態では、特定の設計レイアウトにおいてそれぞれの領域を通るルーティングを最大にすることになるクラウンの形状が動的に判断される。
【0026】
B.LPD領域の融合
本発明の一部の実施形態では、領域を通るルーティング可能性を改善させるために同じ局所優先方向を有する隣接するLPDRが融合される。融合は、個々のLPDRが隣接する電力ストライプ周りに形成される時に特に有用である。例えば、図6は、2つの異なる電力ストライプ周りに形成される2つのLPDR610と620を示している。これらのLPDRの両方は、水平局所優先方向を有する。各電力ストライプは、層上の配線の障害物になる場合がある一組の電力バイアスタック605と615を有する。例えば、この図に示すように、一方の電力ストライプ周りに形成されたLPDR610を出る配線は、他方の電力ストライプの電力バイアスタック615に入ることができる。
【0027】
この潜在的なルーティングに関する問題を解決するために、図6は、新しくLPDR630を形成するための2つのLPDR610と620の融合を示している。「融合された」LPDR630は、両方の電力ストライプを取り囲むように形成され、かつ置換されたLPDR610と620と同じ水平局所優先方向を有する。この融合は、配線が、2つのLPDR610と620が分離状態であった時に存在した電力バイアスタックによる障害がなく電力ストライプの下の領域を横切って効率的に横断することを可能にする。
【0028】
この「融合する」特徴は、電力ストライプとの使用に制限されるものではない。本発明の一部の実施形態では、融合すればルーティング効率が改善されると考えられる時には常に、同じ局所優先配線方向を有する隣接するLPDRが融合される。更に、本発明の一部の実施形態は、単一のLPDRを同じ局所優先方向を必要とする隣接する領域を取り囲むように最初に形成することにより、隣接するLPDRを全て融合する必要性を回避する。
【0029】
C.マクロ上の横断
先の例は、設計レイアウト又はICの単一層上のLPDRの有用な用途を示すものである。LPDRは、特定の多層用途にも有用である。例えば、図7は、LPDRを利用して下層事前設計回路ブロック(例えば、IPブロック)を覆うように水平進路を形成する多層設計レイアウト又はICを示している。具体的には、図7は、水平大域的優先方向を有する層Nと、45°大域的優先方向を有する層N+1とを示している。層Nは、水平配線を優先する事前設計回路ブロック710を有する。層N+1は、事前設計回路ブロック710を覆うように位置決めされたLPDR720を有する。このLPDR720は、バイアを事前設計回路ブロック710と層N+1の配線との間に配置するための潜在的な場所を増大するために水平局所優先方向を有する。
【0030】
D.異なる形状のバイアパッドを有するバイア
LPDRの別の多層用途は、バイアの形成におけるものである。一部の実施形態では、LPD配線モデルを用いて、特定の設計レイアウトに基づいてバイアを動的に形成する。具体的には、バイアを第1の層の第1の領域と第2の層の第2の領域との間に形成する時、これらの実施形態では、両方の領域の優先方向に基づいて第1及び第2の領域内のバイアパッドの形状が選択される。バイアパッドのこの動的な選択は、これらの実施形態で、異なる方向に沿ってワイヤセグメントを接続するのに最適化されるバイアを使用することを可能にする。
【0031】
図8は、レイアウト内の2つの配線層の異なる領域間で異なるバイアパッドを使用する例を示している。この例は、垂直大域的優先方向を有する配線層Nと、斜め大域的優先方向を有する配線層N+1とを有する多層設計レイアウトの斜視図を示している。この斜視図による配線方向を識別するために、方向軸表示が図8に付されている。
図8においては、層Nは、斜め局所優先方向を有する矩形LPDR835を有する。層N+1は、水平局所優先方向を有する矩形LPDR805と、垂直局所優先方向を有する八角形LPDR815とを有する。また、この例は、層Nと層N+1の間に3つのバイアを有する。層Nの配線区域と層N+1上のLPDR805との間に第1のバイアが形成される。この第1のバイアは、層Nの配線区域に四角形バイアパッド840、及びLPDR805内に矩形バイアパッド810を有する。層N上のLPDR835と層N+1上のKPDR805の間に第2のバイアが形成される。この第2のバイアは、LPDR領域835に八角形バイアパッド850、及びLPDR805内に矩形バイアパッド820を有する。層N上のLPDR835と層N+1上のLPDR815の間に第3のバイアが形成される。この第3のバイアは、LPDR835内に八角形バイアパッド860、及びLPDR815内に矩形バイアパッド830を有する。
【0032】
上述の例は、層Nと層N+1の間のバイアパッド対の多くの組合せのうちの1つだけを示唆している。更に、多層ICを設計する時に使用することができる他のLPDR構成が数多くある。従って、本発明の一部の実施形態では、設計レイアウト構成におけるこれらの変形に対処するためにバイアパッド対の可能な入れ替えが表形式にされている。この表形式化は、異なる局所優先方向を有する領域間でバイアを最適化する時のバイアパッドオプションをユーザに与えるものである。
【0033】
III.グラフィカル・ユーザ・インタフェース
本発明の一部の実施形態では、ユーザがLPDレイアウトを見る、及び/又はレイアウト上でLPDRを作成及び操作することを可能にするためのGUIを提供する。一部の実施形態のGUIは、(1)LPDRを保存/読取/削除し、(2)優先方向及び強調表示された不透過エッジを有する現在のLPDRを表示し、(3)LPDRの形状及びそれぞれの局所優先方向を追加/操作し、(4)隣接するLPD領域をスナップ処理して不要な間隙を取り除き、(5)重複を強調表示する整合性チェッカーを実行して設計レイアウトの領域を縮退させる。他の実施形態では、GUIは、ユーザにLPR領域を手動で作成することを強要することなく設計のルーティングリソースを増大するために、LPDRを形成する「自動LPD領域発生器」を組み込んでいる。
最初に、本発明の一部の実施形態によるGUIのLPD設計レイアウトの視覚表示について以下に説明する。この説明に続いて、本発明の一部の実施形態によるGUIのLPDRの作成及び操作について説明する。
【0034】
A.LPD設計レイアウトの視覚表示
LPD設計レイアウトは、典型的には、事前設計回路ブロック、LPDR、ピン、配線、及び他のレイアウト要素から成る。図9は、設計レイアウト内のこれらの要素を図形的に示すための本発明の一部の実施形態のGUIを呈示している。この図は、斜め大域的優先方向を有する第3の配線層を表す設計ウィンドウ900を示している。この設計ウィンドウ900内には、3つの事前設計回路ブロック、すなわち、電力ストライプ905、IPブロック910、一組のRAM915がある。設計ウィンドウ900の上部には、LPDRを伴うレイアウトの読取、削除、作成のような先に項目化されたGUIの機能の一部へのユーザアクセスを可能にする「ドロップダウンメニュー」のリストがある。この例においては、「ファイル」、「編集」、「表示」、「挿入」、及び「ツール」のメニューがある。しかし、他の実施形態では、異なる及び/又は更に別のメニューがある。
【0035】
ユーザは、望ましいメニュー選択項目上にカーソルがある間に「クリック」することによってメニューオプションにアクセス可能である。ユーザがGUIメニューにアクセスする別の方法は、カーソルが設計ウィンドウ内にある間に「右クリック」をすることである。例えば、図9は、ユーザが、カーソル960が設計ウィンドウ900内にある間に「右クリック」をすることによって「優先方向メニュー」にアクセスすることを示している。
【0036】
また、図9は、4つのLPDRを示している。これらのLPDRのうちの2つである930と935は、垂直局所優先方向を有する。他の2つのLPDR940と945は、水平局所優先方向を有する。この例が示すように、GUIでは、「方向矢印」を使用して、設計レイアウト内のあらゆるLPDRの優先方向を識別する。GUIでは、同じく方向矢印を使用して、設計ウィンドウ内の配線層の優先方向を識別する。例えば、方向矢印950は、設計ウィンドウ900内の配線層の斜め大域的優先方向を識別する。
【0037】
一部の実施形態のGUIは、設計ウィンドウ内のLPDRの優先方向を識別するばかりでなく、LPDRのあらゆる不透過エッジを識別する。不透過エッジは、(1)識別子(例えば、「X」のような図形又はテキストアイコン)をエッジに置くか、又は(2)エッジの属性(ダッシュ、色など)を変えることによって識別される。この例においては、「X」アイコン985は、LPDR940の不透過境界エッジ上に重ね合わされている。不透過エッジが識別されると、ユーザは、レイアウトを変更してそれぞれの境界エッジを通じたルーティング可能性を改善させるように警告される(例えば、「クラウン」を追加することにより)。
【0038】
GUI設計ウィンドウ900では、「アクティブ」配線層(ユーザによって現在表示されている層)上の設計要素の視覚表示を行うばかりでなく、一部の実施形態では、他の配線層上の設計要素を識別する。これらの「他の層」の設計要素をアクティブ層上の設計要素と区別するために、GUIでは、これらの「他の層」設計要素の異なる視覚表示を行う。例えば、一部の実施形態では、アクティブ層以外の層にある設計要素を識別するために異なる色合い、形状、フィルパターン、又は境界線ダッシュを使用する。
【0039】
図10は、GUIの一部の実施形態による「他の層」の設計要素の視覚表示の例を示している。具体的には、図10は、垂直大域的優先方向を有する第4の配線層を表す設計ウィンドウ1000を示している。この第4の配線層は、図9に示す第3の配線層の上方にある。設計ウィンドウ1000に示すように、下部の第3の層上の事前設計回路ブロックは、「点線の輪郭」1010と1015によって表されている。輪郭は、この例での説明を目的としてのみ「点線表現」されているが、本発明の殆どの実施形態では、一般的に着色領域を使用して他の層の事前設計回路ブロックを表している。
【0040】
この例においては、「輪郭」は、下部の第3の配線層上でのIPブロック910の相対位置を表す。下位の事前設計回路ブロックの輪郭表示により、ユーザは、この事前設計回路ブロックに重なり合うようにアクティブ層上に正確にLPDRを形成することができる。例えば、LPDR1050と1060は、設計ウィンドウ1000では、下層上の事前設計回路ブロックと重なり合うように形成される。下位にある事前設計回路ブロックと重なり合うようにLPDRを形成する利点については、II節Cで上述した。
【0041】
B.LPD領域の作成及び操作
最初に、本発明の一部の実施形態によるGUIによるLPDRの作成及び操作について以下に説明する。この説明に続いて本発明の他の実施形態によるLPDRを作成及び操作する代替方法の説明を行う。
1.LPDRの作成及び操作
GUIは、ユーザに、LPD設計レイアウトを作成及び操作する正確なツールを提供する。例えば、図11Aから図11Eは、「LPDR作成ツール」を使用したLPDRの作成を示している。具体的には、図11Aは、メニューバー1105とツールバー1110とを有する設計ウィンドウ1100を示している。メニューバー1105には、III節Aで上述したものとは異なるいくつかのメニューが含まれている。ツールバー1110には、レイアウト設計時に頻繁に使用されるいくつかの「整理された」メニュー項目が含まれている。これらには、とりわけ、検索ツール、ズームツール、「マクロ挿入」ツールがある。
【0042】
LPDRを作成するために、ユーザは、最初に「LPRメニューウィンドウ」にアクセスする必要がある。一般的に、ユーザは、図9を参照して上述したように、ポインティング装置を「右クリック」することによってこのLPDRメニューウィンドウを開く。しかし、GUIは、他の入力方法を通じてメニューウィンドウを開くように形成することができる。更に、ユーザは、メニューバー内の特定オプションを通してナビゲートすることによってLPDRメニューを開くことができる。この例においては、ユーザは、「LPDRメニューウィンドウ」1120を開いて、カーソル1135で「LPDを追加」オプションを選択する。それによってGUIは、図11Bに示すように、設計ウィンドウ1100内に「LPDR作成ツール」1115を表示するように促される。この「LPDR作成ツール」は、八角形の形状であるLPDR八辺形を設計する際に特に有用である。しかし、「LPDR作成ツール」を使用して他の幾何学形状でLPDRを作成することもできる。
【0043】
一部の実施形態の八辺形は、水平、垂直、及び/又は±45°の方向を備えた項目を有する設計レイアウトに有用であるデータ構造である。具体的には、これらの実施形態では、八辺形は、8つの値、xLO、yLO、sLO、tLO、xHI、yHI、sHI、及びtHIに関して凸面の幾何学形状を表す。これらの8つの値は、2つの座標系で8つの半平面を形成し、この2つの座標系では、一方の座標系は、x軸とy軸によって形成されるマンハッタン座標系であり、他方の座標系は、s軸とt軸によって形成される45°回転座標系である。s軸は、x軸から45°左回りの位置にあり、t軸は、x軸から45°右回りの位置にある。一部の実施形態のレイアウトにおいては、水平線は、x軸に整列し、垂直線は、y軸に整列し、45°対角線は、s軸に整列し、−45°対角線は、t軸に整列している。
【0044】
八辺形については、米国公開特許出願2004−0225983A1として公開された「設計レイアウトにおいて項目を表す方法及び機器」という名称の米国特許出願第10/443,595号で更に説明されている。この特許出願は、本明細書において引用により組み込まれている。以下の説明では、設計レイアウトの配線及び非配線形状は、凸面形状であり、又は水平、垂直、±45°の辺を有する凸面形状に分解することができる。しかし、当業者は、一部の実施形態では、配線又は非配線幾何学形状が更に制限される場合に八辺形のデータ構造を使用することができると考えられると認識するであろう。
【0045】
図11Bは、8つの半平面、xLO1110、yLO1120、sLO1130、tLO1140、xHI1150、yHI1160、sHI1170、及びtHI1180を有する「LPDR作成ツール」1115を示している。4つのs及びtの半平面は、最初は4つのx及びyの半平面によって形成された四角形に外接する四角形を形成する。しかし、これらの半平面の全ては、ユーザが選択可能であり、移動させて様々な多角形形状を有するLPDRを作成することができる。提案LPDRの形状は、半平面の最内部によって形成された閉鎖面として形成されている。例えば、図11Bは、「LPDR作成ツール」1115の半平面xLO1110、yLO1120、xHI1150、及びyHI1160によって形成された四角形状の提案LPDR1125を示している。この例においては、半平面の最内部は、半平面xLO1110、yLO1120、xHI1150、及びyHI1160の全体である。残りの半平面sLO1130、tLO1140、sHI1170、及びtHI1180の全ての部分は、デフォルト「LPDR作成ツール」1115の外部上にある。半平面の内部及び外部の部分を区別しやすいように、本発明の一部の実施形態では、太い実線を使用して最内部を表し、点線を使用して半平面の外部の部分を表している。
【0046】
上述のように、半平面は、ユーザが選択可能であり、移動させて提案LPDRの形状を形成することができる。図11Bは、ユーザがカーソル1135で半平面yHI1160を選択して下方に移動させることを示している。その結果、提案LPDR1125は、図11Cに示すように矩形を形成するように再定義される。この図はまた、外部半平面sLO1130、tLO1140、sHI1170、及びtHI1180が提案LPDR1125と外接する四角形の形態を維持するように再定義されていることを示している。外部半平面は、内方に移動されるまで外接四角形の形態を維持する。また、外部半平面のこの内方への移動は、ユーザがカーソル1135でsHI1170を選択することにより、図11Cに示されている。得られた提案LPDR1125の再定義を図11Dに示している。
【0047】
図11Dは、半平面xLO1110、yLO1120、xHI1150、sHI1170、及びyHI1160の内部部分によって形成された5辺を有する多角形の形状の提案LPDR1125を示している。sHI1170の内部部分及びxHI1150及びyHI1160の外部部分は、それぞれ、適切な太い実線及び点線によって表されている。また、図11Dは、ユーザがカーソル1135でsLO1130、tLO1140、及びtHI1180を選択して内方に移動させることを示している。得られた提案LPDR1125の再定義を図11Eに示している。
【0048】
図11Eは、不規則な八角形、すなわち、長さが等しくない辺を有する八角形の形状の提案LPDR1125を示している。これは、提案LPDR1125形成時の半平面の独立かつ発散的移動の結果である。この独立した半平面の移動により、ユーザには、特定の設計レイアウト向けに正確に形成された形状を有する独特なLPDRを作成する柔軟性が与えられる。しかし、本発明の一部の実施形態では、ユーザは、あらゆる2つ又はそれよりも多くの半平面間の縦横比を「固定する」ことができる。従って、「固定された」半平面を移動させれば、それぞれの縦横比に比例した量だけあらゆる他の「固定された」半平面も移動する。この「固定」の機能は、ユーザにLPDRを形成するに際して更に別の柔軟性を与えるものである。
【0049】
LPDRが設計ウィンドウで作成された状態で、一部の実施形態のGUIでは、ユーザにLPDRの属性を操作する機能が与えられる。これらの機能の一部は、(1)LPDRのサイズを変える、(2)LPDRを移動させる、(3)LPDRの局所優先方向を割り当てる/修正する、(4)LPDRの層指定を変える、(5)LPDRを複写することを含む。サイズ変更及び移動の機能は、一般的にカーソルによる「選択してドラッグする」によって実行される。しかし、残りの機能は、一般的に、「LPDR修正メニュー」の特定のオプションを選択することによって実行される。本発明の一部の実施形態によるGUIのこれらの修正機能について、更に詳しく以下で説明する。
【0050】
LPDRのサイズを変更するには、ユーザは、図11Bから図11Dを参照して上述したように特定の半平面を移動させることになる。これは、設計ウィンドウ内の望ましい場所に特定の半平面を「選択してドラッグ」することによって行われる。また、上述のように、ユーザには、LPDRサイズ変更時にあらゆる2つ又はそれよりも多くの半平面対間の縦横比を「固定する」オプションがある。
LPDRを移動させるには、ユーザは、特定のLPDRの表面上にカーソルを置いて望ましい方向に沿って「選択してドラッグする」。図11E及び図11Fは、ユーザが先の例で作成したLPDR1125を移動させることを示している。具体的には、図11Eは、ユーザがカーソル1135をLPDR1125の表面上に置き、斜め上にかつ設計ウィンドウ1100の左に移動させることを示している。その結果、LPDR1125は、図11Fに示すように設計ウィンドウ1100内の適切な場所に移動される。
【0051】
LPDRの局所優先方向を割り当て/修正し、LPDRの層指定を変更し、及び/又はLPDRを複写するために、ユーザは、図12Aに示すように「LPDR修正メニュー」にアクセスする。この図では、ユーザは、カーソル1235をLPDR1225上に置いて「右クリック」することによって「LPDR修正メニュー」1250を開く。この「LPDR修正メニュー」1250には、LPDを複写する、LPDを仕上げる、層アップ/ダウン、及びLPD方向などの様々なメニューオプションがある。これらのメニューオプションは、本発明の一部の実施形態では「拡張可能」であり、すなわち、特定のメニューオプションを選択すれば、更に別のオプションが得られるようにメニューが拡張される。この例においては、ユーザは、LPD方向メニューオプションを選択して拡張した後に、LPDR1225のために「垂直」局所優先方向を選択する。その結果、本発明の一部の実施形態では、図12Bに示すように、垂直の方向矢印がLPDR1225内に置かれる。
【0052】
本発明の一部の実施形態では、LPDRに対する「デフォルト」局所優先方向は、それが最初に作成される時に割り当てられる。割り当てられるデフォルト局所優先方向は、ユーザが先に指定することができる。それでも、LPDRにデフォルト局所優先方向が割り当てられた場合、ユーザは、LPDの割り当てに関して上述したものと同じ方法を用いてあらゆるLPDRの局所優先方向を修正することができる。
【0053】
LPDRの層指定を変更するには、ユーザは、特定のオプションを「LPDR修正メニュー」から選択する。例えば、ユーザは、図12Aで先に言及した「LPDR修正メニュー」1250の「層アップ」又は「層ダウン」オプションを選択することによって特定のLPDRを上に又は下に移動させることができる。更に、ユーザは、「LPDR修正メニュー」にある拡張可能な「層」オプションを選択することにより、LPDRをあらゆる特定の層に移動させることができる。その結果、一部の実施形態のGUIでは、特定の層指定を識別するためにLPDRの色合いが変わることになる。
【0054】
ユーザはまた、「LPDR修正メニュー」における「LPD複写」オプションを選択することによってLPDRを複写することができる。これを行えば、GUIは、複写のために選択されたLPDRと同じ属性(例えば、同じ形状、局所優先方向、及び層指定)を有するLPDRを設計ウィンドウ内に作成するように促されることになる。上述のように、「LPDR修正メニュー」には、「LPD仕上げ」オプションもある。このオプションで、ユーザは、LPDRの作成/定義を最終的なものにすることができる。その結果、本発明の一部の実施形態では、特定のLPDRが不用意にサイズ変更されないように「LPDR作成ツール」の半平面が除去される。また、本発明の他の実施形態では、特定のLPDRが不用意に移動されないように、設計レイアウト内の特定の場所にLPDRが「凍結」される。しかし、本発明の他の実施形態では、ユーザは、依然として「最終」LPDRの属性を修正することができる。除去された「LPDR作成ツール」による「最終」LPDR1225の例を図12Bに示している。
【0055】
2.LPDR作成及び操作の代替方法
本発明の一部の実施形態のGUIを使用したLPDRの作成及び操作について上述した。しかし、これらの上述の実施形態で示したのは、本発明のGUIを使用してLPDRを作成及び修正する多くの方法のうちのいくつかの方法だけである。本発明の他の実施形態の様々な他の方法について以下で説明する。更に、「クラウン化」というGUIの別の機能を紹介する。
図13A及び図13Bは、本発明の一部の実施形態によりGUIでユーザがLPDRを作成することができる方法を示している。これらの図は、斜め大域的優先方向を有する配線層を表す設計ウィンドウ1300を示している。具体的には、図13Aは、ユーザがカーソル1345で「挿入」ドロップダウンメニューにアクセスしてLPDR形状を選択することを示している。その結果、図13Bに示すように、水平局所優先方向を有する八角形LPDR1310が設計ウィンドウ1300内にドロップされる。この例においては、LPDR1310には、デフォルトサイズ及びデフォルト水平局所優先方向が指定されていた。他の実施形態では、設計ウィンドウ内にドロップされるLPDRには、異なるデフォルトサイズ局所優先方向が指定される。それでも、更に以下で説明するように、LPDRの両方の属性を操作することができる。
【0056】
ユーザはまた、望ましいLPDR形状を選択して設計ウィンドウ内にドラッグすることによって本発明の他の実施形態によるLPDRを作成することができる。GUIは、ドロップダウンメニュー内のあらゆるメニューオプションを「メニューバー」上に「連結する」ように構成することができる。従って、図13C及び図13Dに示すように、メニューバーに沿って「LPD挿入」メニュー内にあるLPDR形状を表示することができる。具体的には、これらの図はまた、様々なLPDR形状がメニューバー1305上に「連結された」設計ウィンドウ1300を示している。この例においては、ユーザは、八角形のLPDR形状の上にカーソル1345を置いた後に、設計ウィンドウ内にその形状を「選択してドラッグ」する。その結果、八角形上LPDR1320が、設計ウィンドウ1300内に作成される。
【0057】
本発明の一部の実施形態によるLPDRを作成する別の方法は、「選択して拡張する」方法と呼ばれる。本方法においては、ユーザは、望ましいLPDRを選択した後、作成するLPDRの正確な場所及びサイズを指定することができる。図13E及び図13Fは、ユーザが本発明の一部の実施形態による選択して拡張する方法を用いてLPDRを作成することを示している。具体的には、図13Eは、四角形のLPDR形状を先に選択した後に、ユーザがカーソル1345を望ましい場所に置いてLPDRを設計ウィンドウ1300内に作成することを示している。メニュー上の四角形のLPDR形状1310は、ユーザの選択を示すために影付きとなっている。カーソル1345の隣にある小さな点線による矢印は、ユーザがLPDRを「拡張する」ためにカーソル1345を上に及び左に「クリックしてドラッグする」ことを示している。その結果、図13Fに示すようにLPDR1330が作成される。
【0058】
具体的には、図13Fは、ユーザがクリック及びドラッグ操作を開始した望ましい場所からカーソル1345が半径方向に外方に方向付けられた時のLPDRの拡張を示している。点線による領域は、拡張の直前の段階を表すものである。この例においては、クリック及びドラッグ操作の開始場所により、「拡張」LPDR1330のコーナ頂点が指定される。しかし、他の実施形態では、クリック及びドラッグ操作の開始場所により、拡張LPDRの中心が指定される。
【0059】
LPDRが設計ウィンドウ内で作成された状態で、GUIは、ユーザにLPDRの属性を操作する異なる方法を呈示する。本発明の一部の実施形態では、ユーザは、設計ウィンドウ内でLPDR領域のサイズを変更することができる。1つの方法は、カーソルを特定のLPDRの2辺の頂点に置いてLPDRから半径方向に外方/内方に向けて「選択してドラッグする」というものである。また、図14を参照すると、カーソル1455は、LPDR1410の右上コーナの頂点上に置かれている。カーソル1455の隣にある小さな点線による矢印は、ユーザが45°の方向に沿って(半径方向外方に)カーソル1455を「クリックしてドラッグする」ことを表している。その結果、LPDR1410は、図14Bに示すように大きくなるようにサイズ変更される。一般的に、頂点を移動させることによってLPDRをサイズ変更した時、この例が示すように、LPDRの辺の縦横比は維持される。
【0060】
LPDRをサイズ変更する別の方法は、特定のLPDRの境界エッジを「選択してドラッグする」ことによるものである。本方法は、ユーザが頂点ではなくLPDRの境界エッジを選択する点を除き、上述のものと同様に行われる。しかし、これらの方法では、一般的に、LPDRの辺の縦横比が、境界エッジを移動させることによってLPDRをサイズ変更した時に通常は維持されないので、異なる結果が得られる。代替的に、隣接する境界エッジは、特定の境界エッジの移動に従うように「拡大」又は「縮小」される。
【0061】
本発明の一部の実施形態では、LPDRをサイズ変更するばかりでなく、ユーザは、LPDRを設計ウィンドウ内で移動させることができる。これを行うには、ユーザは、カーソルを特定のLPDRの表面上に置いて、望ましい方向に沿って「選択してドラッグする」操作を実行する。具体的には、図14A及び図14Bは、斜め大域的優先方向を有する配線層を表す設計ウィンドウ1400を示している。設計ウィンドウ1400内には、様々な凸面の形状及び局所優先方向を有する3つのLPDR1405、1410、1415がある。図14Aは、LPDR1405の表面上に置かれたカーソル1455を示している。カーソル1455の隣にある小さな点線による矢印は、ユーザがカーソル1455を右に「クリックしてドラッグする」ことを表す。その結果、LPDR1405は、図14Bに示すように水平方向に沿って右に移動される。
【0062】
一部の実施形態のGUIで操作することができるLPDRの別の属性は、LPDRの局所優先方向である。一部の実施形態では、LPDRの方向を表す方向矢印は、ユーザが選択可能であり、様々な方法によって操作することができる。例えば、本発明の一部の実施形態では、ユーザには、一般的な優先方向を一覧表示するメニューウィンドウから特定の方向を選択することによって選択方向矢印を操作する「メニューウィンドウ」方法が与えられる。代替的に、「選択してドラッグする」方法では、ユーザは、カーソルで特定の方向矢印を選択した後に、あらゆる望ましい方向に到着するように、円運動で方向矢印を「ドラッグする」ことができる。この「選択してドラッグする」方法の変形は、「選択してスナップする」方法と呼ばれる。「選択してスナップする」方法では、ユーザは、選択方向矢印が、円運動でドラッグされる時に(すなわち、0°から45°、49°、135°など)許された優先方向を通じて漸進的に「スナップする」点を除き、「選択してドラッグする」方法と同様に方向矢印を操作することができる。一般的に、「許される」特定の優先方向は、標準水平軸から45°の増分であるが、本発明の一部の実施形態では、他の角度増分に従って「許される」優先方向が指定される。
【0063】
この「選択してスナップする」方法を用いた方向矢印のユーザによる操作は、図14A及び図14Bを改めて参照することによって見ることができる。これらの図は、LPDR1415の方向矢印1460を指すカーソル1465を示している。カーソルの下にある小さな点線による矢印は、ユーザが方向矢印1460を選択した後にカーソル1445を右回り/下方に「ドラッグする」ことを表すものである。その結果、選択方向矢印1460は、図14Bに示すように、水平方向から−45°方向に「スナップされる」。
【0064】
領域の優先方向の変更の結果、本発明の一部の実施形態では、設計ウィンドウ内でLPDRのあらゆる不透過エッジの表示が更新される。図14Aに示すように、4つ不透過エッジ表示1425は、LPDR1415のそれぞれの不透過エッジ上に重なり合っている。具体的には、LPDR1415の上部及び底部に沿った不透過エッジは、LPDRの水平局所優先方向によるものである。図14Bに示すように、LPDR1415の局所優先方向を−45°方向に変更した時、これらの2つの上下のエッジ表示1425は除去される。しかし、他の2つの表示1425は、LPDR1415の不透過エッジが設計ウィンドウ1400内の層の斜めの優先方向によるものであることを表すので残っている。この図はまた、LPDR1415の−45°局所優先方向の変化の結果としてLPDR1415の右上及び左下のエッジに追加された2つの不透過エッジ表示1435を示している。
【0065】
上述の「選択してスナップする」方法に対する領域又は層の優先方向を操作する代替「メニューウィンドウ」の方法を図15A及び図15Bに示している。具体的には、図15Aは、ユーザがカーソル1560を方向矢印1550に向けた後にポインティング装置を使用してメニューウィンドウを開くことによって方向矢印を選択することを示している。一般的に、ユーザは、ポインティング装置を「右クリック」することによってこのメニューウィンドウを開く。しかし、他の入力方法を通じてメニューウィンドウを開くようにGUIを構成することができる。この例においては、選択した方向矢印1550上での「右クリック」により、GUIは、「方向メニューウィンドウ」1570を表示するように促される。この方向メニューウィンドウでは、標準的な優先方向、すなわち、水平、垂直、45°、−45°を表す4つの矢印が呈示される。他の実施形態では、上記で特定された標準的な4つ以外の優先方向を示す「方向メニューウィンドウ」が表示される。この例においては、ユーザは、方向ウィンドウ1570内でカーソル1560を水平矢印に向けることによって水平方向を選択する。その結果、選択した方向矢印1550は、図15Bに示すように、45°方向から水平方向に変更される。
【0066】
図15Bに示すように、方向矢印1550は、ここでは水平の向きである。配線層の大域的方向に対するこの変更のために、本発明の一部の実施形態のGUIでは、新しい大域的優先方向と平行に延びる局所優先方向を有する一切のLPDRが除去される。例えば、図15Aで先に示す0°局所優先方向を有するLPDR1540と1545は、ここで、図15Bに示すように、GUI設計ウィンドウから除去される。更に、本発明の一部の実施形態のGUIでは、残りのLPD領域のあらゆる不透過エッジを特定することにより、配線層の大域的方向内のこの変化に応答する。図15Bに示すように、「X」アイコン1580は、領域1530と1535のそれぞれの不透過境界エッジ上に重なり合っている。この識別には、ユーザに対して、レイアウトを変更してこれらのそれぞれの境界エッジを通じて(すなわち、「クラウン」を追加することにより)ルーティング可能性を改善するように警告する。
【0067】
これらの不透過境界エッジを拡張して「クラウン」を形成するために、本発明の一部の実施形態によるGUIでは、ユーザは、クラウン化のために不透過境界エッジを選択することができる。LPDRクラウン化を図15C及び図15Dに示している。具体的には、図15Cは、ユーザがカーソル1560を領域1530の不透過境界エッジ1590(点線で表されている)の頂点1555に向けることによって不透過境界エッジを選択することを示している。カーソル1560の下にある垂直の矢印は、ユーザが不透過境界エッジ1590の頂点1555を選択した後にカーソル1560を下方に「ドラッグする」ことを表すものである。その結果、選択された不透過境界エッジ1590は、配線層に拡張されて、図15Dに示すように領域1530上にクラウンを形成する。
【0068】
全ての不透過境界エッジは、エッジの終点を表す少なくとも2つの頂点を有する。この例においては、ユーザは、不透過境界エッジのこのような頂点を拡張して三角形上のクラウンを形成する。しかし、ユーザはまた、異なる形状のクラウンを形成するために不透過境界エッジの更に別の頂点を作成することができる。一部の実施形態では、ユーザは、図16A及び図16Bに示すように、エッジ上の望ましい中間点でクリックしてドラッグすることによってLPDR境界エッジに沿って頂点を作成して拡張することができる。
【0069】
具体的には、図16Aは、ユーザが、カーソル1660エッジ上の中点を選択することによって不透過境界エッジ1690に頂点1665を追加することを示している。この例はまた、ユーザが、不透過境界エッジ1690の頂点1565を選択した後にカーソル1660を下方に「ドラッグする」ことを示している。その結果、選択された不透過境界エッジ1690は、配線層内に拡張されて、図16Bに示すように領域1630上にクラウンを形成する。このように頂点を境界エッジに追加することができることにより、ユーザに様々な形状のクラウンを形成する柔軟性が与えられる。
【0070】
速達郵便番号EV454047130US及び代理人整理番号CDN.P0079であり、本出願と同時出願の「局所優先方向を有するレイアウト領域を発生させる方法及び機器」という名称の米国特許出願では、本発明の一部の実施形態の自動LPDR発生器が説明されている。また、速達郵便番号EV454047143US及び代理人整理番号CDN.P0078であり、本出願と同時出願の「局所優先方向ルーティング」という名称の米国特許出願では、LPDを伴うレイアウトをルーティングすることができるルーティングツールが説明されている。これらの出願は、本明細書において引用により組み込まれている。他のEDAツールも、LPDを伴うレイアウトを考えることができる。例えば、一部の実施形態は、回路モジュール又はこれらのモジュールのピンが該当する異なるLPDに基づいて配置経費(例えば、ワイヤ長及び/又は輻輳経費)を計算するプレーサを含むと考えられる。
【0071】
本発明を多くの特定の詳細に関連して説明したが、当業者は、本発明の精神から逸脱することなく本発明を他の特定の形態で具現化することができることを認識するであろう。例えば、一部の実施形態は、マンハッタン方向と非マンハッタン方向の間にある角度(例えば、22.5°方向)により、マンハッタンLPD(例えば、水平方向)を有するLPDRと非マンハッタンLPD(例えば、45°斜め方向)を有するLPDRとの間にクラウン境界を形成する。すなわち、当業者は、本発明が上述の例示的な詳細によって制限されず、むしろ特許請求の範囲によって規定されるものであることを理解するであろう。
【符号の説明】
【0072】
LPD 局所優先方向
200 配線層
205、210 八角形LPD領域
215 矩形LPD領域
【特許請求の範囲】
【請求項1】
(a)複数の配線層と、
(b)組の各領域が組の少なくとも1つの他の領域の局所優先配線方向とは異なる局所優先配線方向を有し、少なくとも2つの領域が2つの異なる多角形形状を有する、前記層の1つの上にある一組の多角形形状の領域と、
を含み、
(c)前記組におけるどの領域も、該組における別の領域を取り囲まない、
ことを特徴とする設計レイアウト。
【請求項2】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項1に記載のレイアウト。
【請求項3】
前記複数の領域は、
(a)非四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項1に記載のレイアウト。
【請求項4】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項1に記載のレイアウト。
【請求項5】
前記第2の領域は、八角形の形状であることを特徴とする請求項4に記載のレイアウト。
【請求項6】
前記第2の領域は、六角形の形状であることを特徴とする請求項4に記載のレイアウト。
【請求項7】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項1に記載のレイアウト。
【請求項8】
前記複数の領域は、斜め局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項1に記載のレイアウト。
【請求項9】
前記斜め局所優先配線方向は、互いに直交していることを特徴とする請求項8に記載のレイアウト。
【請求項10】
前記斜め局所優先配線方向は、互いに平行ではなく直交もしていないことを特徴とする請求項8に記載のレイアウト。
【請求項11】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも1つの領域と、斜め局所優先配線方向を有する少なくとも1つの領域とを含むことを特徴とする請求項1に記載のレイアウト。
【請求項12】
(a)複数の配線層と、
(b)組の各領域が、多角形形状と、組の少なくとも1つの他の領域の局所優先配線方向とは異なる局所優先配線方向とを有し、少なくとも2つの領域が、各々が凸面多角形である2つの異なる多角形形状を有する、前記層の1つの上にある一組の領域と、
を含むことを特徴とする設計レイアウト。
【請求項13】
(a)優先配線方向を有する少なくとも1つの事前設計回路ブロックを有する第1の配線層と、
(b)前記第1の配線層のすぐ上又はすぐ下に位置決めされ、前記事前設計回路ブロックの上方又は下方の少なくとも1つ領域を有し、該領域が前記少なくとも1つの事前設計回路ブロックの前記優先配線方向に平行又は直交する局所優先配線方向を有する、第2の配線層と、
を含み、
(c)前記領域の前記局所優先配線方向は、前記第2の配線層上の少なくとも1つの他の領域の優先配線方向とは異なっている、
ことを特徴とする多層設計レイアウト。
【請求項14】
前記第2の配線層は、斜め優先配線方向を有することを特徴とする請求項13に記載の多層設計レイアウト。
【請求項15】
前記少なくとも1つの領域は、マンハッタン局所優先配線方向を有することを特徴とする請求項14に記載の多層設計レイアウト。
【請求項16】
事前設計回路ブロックが、IPブロックであることを特徴とする請求項13に記載の多層設計レイアウト。
【請求項17】
(a)異なる局所優先配線方向を有する第1及び第2の領域を備えた第1の配線層と、 (b)異なる局所優先配線方向を有する第3又は第4の領域を備えた第2の配線層と、 (c)前記第1及び第3の領域の間の第1のバイアと、
(d)前記第2及び第4の領域の間の第2のバイアと、
を含み、
前記第1及び第2のバイアの形状は、異なっている、
ことを特徴とする多層設計レイアウト。
【請求項18】
各バイアは、2つのバイアパッドを有し、
前記第1及び第2のバイアの前記形状は、該バイアの一方の前記バイアパッドの少なくとも一方の形状が他方のバイアの両方の該バイアパッドの形状と異なっている理由で異なっている、
ことを特徴とする請求項17に記載の多層設計レイアウト。
【請求項19】
(a)異なる優先配線方向を有する少なくとも2つの領域と、
(b)前記2つの領域の間で共有された少なくとも1つの境界領域と、
を含み、
(c)前記境界領域は、前記2つの領域の前記優先配線方向のいずれとも平行ではない、
ことを特徴とする設計レイアウト。
【請求項20】
(a)配線層と、
(b)前記配線層上の別の局所優先配線方向とは異なる該配線層上の局所優先配線方向を有する、該配線層上の第1のブロックと、
(c)前記第1のブロックを取り囲み、該第1のブロックの前記局所優先配線方向と平行な局所優先配線方向を有する領域と、
を含むことを特徴とする設計レイアウト。
【請求項21】
前記配線層上に位置決めされ、前記第1のブロックの前記優先配線方向と平行な局所優先配線方向を有する第2のブロックを更に含み、
前記領域は、前記第1及び第2のブロックの両方を取り囲んでいる、
ことを特徴とする請求項20に記載の設計レイアウト。
【請求項22】
前記ブロックは、電力ストライプの一部であることを特徴とする請求項21に記載の設計レイアウト。
【請求項23】
前記配線層の前記他方の優先配線方向は、斜め優先配線方向であることを特徴とする請求項22に記載の設計レイアウト。
【請求項24】
前記ブロックは、事前設計回路ブロックであることを特徴とする請求項22に記載の設計レイアウト。
【請求項25】
前記回路ブロックは、メモリアレイであることを特徴とする請求項24に記載の設計レイアウト。
【請求項26】
前記回路ブロックは、IPブロックであることを特徴とする請求項24に記載の設計レイアウト。
【請求項27】
(a)複数の配線層を有する設計レイアウトを示す設計ウィンドウと、
(b)前記レイアウトにおける1つの配線層上の異なる局所優先配線方向を有する一組の少なくとも2つの領域と、
(c)前記領域の組における各領域の前記優先配線方向を示す一組の図形表示と、
を含むことを特徴とするグラフィカル・ユーザ・インタフェース。
【請求項28】
グラフィカル・ユーザ・インタフェースにおいて、前記図形表示は、前記領域の前記優先配線方向を再定義するために選択及び移動するための選択可能なオブジェクトであることを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項29】
前記図形表示は、矢印であることを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項30】
少なくとも2つの領域が、異なる多角形形状を有することを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項31】
前記図形表示の組は、第1の組の図形表示であり、
配線に対して不透過である領域のエッジを識別する第2の組の図形表示、
を更に含むことを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項32】
(a)複数の配線層と、
(b)組の各領域が、ある一定の形状と、組の少なくとも1つの他の領域の局所優先配線方向とは異なる局所優先配線方向とを有し、少なくとも2つの領域が2つの異なる形状を有する、前記層の1つの上にある一組の領域と、
を含み、
(c)前記組におけるどの領域も、該組における別の領域を取り囲まない、
ことを特徴とする集積回路(「IC」)。
【請求項33】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項32に記載のIC。
【請求項34】
前記複数の領域は、
(a)非四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項32に記載のIC。
【請求項35】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項32に記載のIC。
【請求項36】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項32に記載のIC。
【請求項37】
前記複数の領域は、斜め局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項32に記載のIC。
【請求項38】
前記斜め局所優先配線方向は、互いに直交していることを特徴とする請求項32に記載のIC。
【請求項39】
前記斜め局所優先配線方向は、互いに平行ではなく直交もしていないことを特徴とする請求項38に記載のIC。
【請求項40】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも1つの領域と、斜め局所優先配線方向を有する少なくとも1つの領域とを含むことを特徴とする請求項32に記載のIC。
【請求項41】
(a)優先配線方向を有する少なくとも1つの事前設計回路ブロックを有する第1の配線層と、
(b)前記第1の配線層のすぐ上又はすぐ下に位置決めされ、前記事前設計回路ブロックの上方又は下方の少なくとも1つ領域を有し、該領域が前記少なくとも1つの事前設計回路ブロックの前記優先配線方向に平行又は直交する局所優先配線方向を有する、第2の配線層と、
を含み、
(c)前記領域の前記局所優先配線方向は、前記第2の配線層上の少なくとも1つの他の領域の優先配線方向とは異なっている、
ことを特徴とする多層集積回路(IC)。
【請求項42】
前記第2の配線層は、斜め優先配線方向を有することを特徴とする請求項41に記載の多層IC。
【請求項43】
前記少なくとも1つの領域は、マンハッタン局所優先配線方向を有することを特徴とする請求項42に記載の多層IC。
【請求項44】
事前設計回路ブロックが、IPブロックであることを特徴とする請求項41に記載の多層IC。
【請求項45】
(a)異なる優先配線方向を有する少なくとも2つの領域と、
(b)前記2つの領域の間で共有された少なくとも1つの境界領域と、
を含み、
(c)前記境界領域は、前記2つの領域の前記優先配線方向のいずれとも平行ではない、
ことを特徴とする集積回路。
【請求項46】
(a)配線層と、
(b)前記配線層上の別の局所優先配線方向とは異なる該配線層上の局所優先配線方向を有する、該配線層上の第1のブロックと、
(c)前記第1のブロックを取り囲み、該第1のブロックの前記局所優先配線方向と平行な局所優先配線方向を有する領域と、
を含むことを特徴とする集積回路(「IC」)。
【請求項47】
前記配線層上に位置決めされ、前記第1のブロックの前記優先配線方向と平行な局所優先配線方向を有する第2のブロックを更に含み、
前記領域は、前記第1及び第2のブロックの両方を取り囲んでいる、
ことを特徴とする請求項46に記載のIC。
【請求項48】
前記ブロックは、電力ストライプの一部であることを特徴とする請求項47に記載のIC。
【請求項49】
前記配線層の前記他方の優先配線方向は、斜め優先配線方向であることを特徴とする請求項48に記載のIC。
【請求項50】
前記ブロックは、事前設計回路ブロックであることを特徴とする請求項46に記載のIC。
【請求項51】
前記回路ブロックは、メモリアレイであることを特徴とする請求項50に記載のIC。
【請求項52】
前記回路ブロックは、IPブロックであることを特徴とする請求項50に記載のIC。
【請求項1】
(a)複数の配線層と、
(b)組の各領域が組の少なくとも1つの他の領域の局所優先配線方向とは異なる局所優先配線方向を有し、少なくとも2つの領域が2つの異なる多角形形状を有する、前記層の1つの上にある一組の多角形形状の領域と、
を含み、
(c)前記組におけるどの領域も、該組における別の領域を取り囲まない、
ことを特徴とする設計レイアウト。
【請求項2】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項1に記載のレイアウト。
【請求項3】
前記複数の領域は、
(a)非四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項1に記載のレイアウト。
【請求項4】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項1に記載のレイアウト。
【請求項5】
前記第2の領域は、八角形の形状であることを特徴とする請求項4に記載のレイアウト。
【請求項6】
前記第2の領域は、六角形の形状であることを特徴とする請求項4に記載のレイアウト。
【請求項7】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項1に記載のレイアウト。
【請求項8】
前記複数の領域は、斜め局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項1に記載のレイアウト。
【請求項9】
前記斜め局所優先配線方向は、互いに直交していることを特徴とする請求項8に記載のレイアウト。
【請求項10】
前記斜め局所優先配線方向は、互いに平行ではなく直交もしていないことを特徴とする請求項8に記載のレイアウト。
【請求項11】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも1つの領域と、斜め局所優先配線方向を有する少なくとも1つの領域とを含むことを特徴とする請求項1に記載のレイアウト。
【請求項12】
(a)複数の配線層と、
(b)組の各領域が、多角形形状と、組の少なくとも1つの他の領域の局所優先配線方向とは異なる局所優先配線方向とを有し、少なくとも2つの領域が、各々が凸面多角形である2つの異なる多角形形状を有する、前記層の1つの上にある一組の領域と、
を含むことを特徴とする設計レイアウト。
【請求項13】
(a)優先配線方向を有する少なくとも1つの事前設計回路ブロックを有する第1の配線層と、
(b)前記第1の配線層のすぐ上又はすぐ下に位置決めされ、前記事前設計回路ブロックの上方又は下方の少なくとも1つ領域を有し、該領域が前記少なくとも1つの事前設計回路ブロックの前記優先配線方向に平行又は直交する局所優先配線方向を有する、第2の配線層と、
を含み、
(c)前記領域の前記局所優先配線方向は、前記第2の配線層上の少なくとも1つの他の領域の優先配線方向とは異なっている、
ことを特徴とする多層設計レイアウト。
【請求項14】
前記第2の配線層は、斜め優先配線方向を有することを特徴とする請求項13に記載の多層設計レイアウト。
【請求項15】
前記少なくとも1つの領域は、マンハッタン局所優先配線方向を有することを特徴とする請求項14に記載の多層設計レイアウト。
【請求項16】
事前設計回路ブロックが、IPブロックであることを特徴とする請求項13に記載の多層設計レイアウト。
【請求項17】
(a)異なる局所優先配線方向を有する第1及び第2の領域を備えた第1の配線層と、 (b)異なる局所優先配線方向を有する第3又は第4の領域を備えた第2の配線層と、 (c)前記第1及び第3の領域の間の第1のバイアと、
(d)前記第2及び第4の領域の間の第2のバイアと、
を含み、
前記第1及び第2のバイアの形状は、異なっている、
ことを特徴とする多層設計レイアウト。
【請求項18】
各バイアは、2つのバイアパッドを有し、
前記第1及び第2のバイアの前記形状は、該バイアの一方の前記バイアパッドの少なくとも一方の形状が他方のバイアの両方の該バイアパッドの形状と異なっている理由で異なっている、
ことを特徴とする請求項17に記載の多層設計レイアウト。
【請求項19】
(a)異なる優先配線方向を有する少なくとも2つの領域と、
(b)前記2つの領域の間で共有された少なくとも1つの境界領域と、
を含み、
(c)前記境界領域は、前記2つの領域の前記優先配線方向のいずれとも平行ではない、
ことを特徴とする設計レイアウト。
【請求項20】
(a)配線層と、
(b)前記配線層上の別の局所優先配線方向とは異なる該配線層上の局所優先配線方向を有する、該配線層上の第1のブロックと、
(c)前記第1のブロックを取り囲み、該第1のブロックの前記局所優先配線方向と平行な局所優先配線方向を有する領域と、
を含むことを特徴とする設計レイアウト。
【請求項21】
前記配線層上に位置決めされ、前記第1のブロックの前記優先配線方向と平行な局所優先配線方向を有する第2のブロックを更に含み、
前記領域は、前記第1及び第2のブロックの両方を取り囲んでいる、
ことを特徴とする請求項20に記載の設計レイアウト。
【請求項22】
前記ブロックは、電力ストライプの一部であることを特徴とする請求項21に記載の設計レイアウト。
【請求項23】
前記配線層の前記他方の優先配線方向は、斜め優先配線方向であることを特徴とする請求項22に記載の設計レイアウト。
【請求項24】
前記ブロックは、事前設計回路ブロックであることを特徴とする請求項22に記載の設計レイアウト。
【請求項25】
前記回路ブロックは、メモリアレイであることを特徴とする請求項24に記載の設計レイアウト。
【請求項26】
前記回路ブロックは、IPブロックであることを特徴とする請求項24に記載の設計レイアウト。
【請求項27】
(a)複数の配線層を有する設計レイアウトを示す設計ウィンドウと、
(b)前記レイアウトにおける1つの配線層上の異なる局所優先配線方向を有する一組の少なくとも2つの領域と、
(c)前記領域の組における各領域の前記優先配線方向を示す一組の図形表示と、
を含むことを特徴とするグラフィカル・ユーザ・インタフェース。
【請求項28】
グラフィカル・ユーザ・インタフェースにおいて、前記図形表示は、前記領域の前記優先配線方向を再定義するために選択及び移動するための選択可能なオブジェクトであることを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項29】
前記図形表示は、矢印であることを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項30】
少なくとも2つの領域が、異なる多角形形状を有することを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項31】
前記図形表示の組は、第1の組の図形表示であり、
配線に対して不透過である領域のエッジを識別する第2の組の図形表示、
を更に含むことを特徴とする請求項27に記載のグラフィカル・ユーザ・インタフェース。
【請求項32】
(a)複数の配線層と、
(b)組の各領域が、ある一定の形状と、組の少なくとも1つの他の領域の局所優先配線方向とは異なる局所優先配線方向とを有し、少なくとも2つの領域が2つの異なる形状を有する、前記層の1つの上にある一組の領域と、
を含み、
(c)前記組におけるどの領域も、該組における別の領域を取り囲まない、
ことを特徴とする集積回路(「IC」)。
【請求項33】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項32に記載のIC。
【請求項34】
前記複数の領域は、
(a)非四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項32に記載のIC。
【請求項35】
前記複数の領域は、
(a)四辺形多角形の形状の第1の領域と、
(b)非四辺形多角形の形状の第2の領域と
を含む、
ことを特徴とする請求項32に記載のIC。
【請求項36】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項32に記載のIC。
【請求項37】
前記複数の領域は、斜め局所優先配線方向を有する少なくとも2つの領域を含むことを特徴とする請求項32に記載のIC。
【請求項38】
前記斜め局所優先配線方向は、互いに直交していることを特徴とする請求項32に記載のIC。
【請求項39】
前記斜め局所優先配線方向は、互いに平行ではなく直交もしていないことを特徴とする請求項38に記載のIC。
【請求項40】
前記複数の領域は、マンハッタン局所優先配線方向を有する少なくとも1つの領域と、斜め局所優先配線方向を有する少なくとも1つの領域とを含むことを特徴とする請求項32に記載のIC。
【請求項41】
(a)優先配線方向を有する少なくとも1つの事前設計回路ブロックを有する第1の配線層と、
(b)前記第1の配線層のすぐ上又はすぐ下に位置決めされ、前記事前設計回路ブロックの上方又は下方の少なくとも1つ領域を有し、該領域が前記少なくとも1つの事前設計回路ブロックの前記優先配線方向に平行又は直交する局所優先配線方向を有する、第2の配線層と、
を含み、
(c)前記領域の前記局所優先配線方向は、前記第2の配線層上の少なくとも1つの他の領域の優先配線方向とは異なっている、
ことを特徴とする多層集積回路(IC)。
【請求項42】
前記第2の配線層は、斜め優先配線方向を有することを特徴とする請求項41に記載の多層IC。
【請求項43】
前記少なくとも1つの領域は、マンハッタン局所優先配線方向を有することを特徴とする請求項42に記載の多層IC。
【請求項44】
事前設計回路ブロックが、IPブロックであることを特徴とする請求項41に記載の多層IC。
【請求項45】
(a)異なる優先配線方向を有する少なくとも2つの領域と、
(b)前記2つの領域の間で共有された少なくとも1つの境界領域と、
を含み、
(c)前記境界領域は、前記2つの領域の前記優先配線方向のいずれとも平行ではない、
ことを特徴とする集積回路。
【請求項46】
(a)配線層と、
(b)前記配線層上の別の局所優先配線方向とは異なる該配線層上の局所優先配線方向を有する、該配線層上の第1のブロックと、
(c)前記第1のブロックを取り囲み、該第1のブロックの前記局所優先配線方向と平行な局所優先配線方向を有する領域と、
を含むことを特徴とする集積回路(「IC」)。
【請求項47】
前記配線層上に位置決めされ、前記第1のブロックの前記優先配線方向と平行な局所優先配線方向を有する第2のブロックを更に含み、
前記領域は、前記第1及び第2のブロックの両方を取り囲んでいる、
ことを特徴とする請求項46に記載のIC。
【請求項48】
前記ブロックは、電力ストライプの一部であることを特徴とする請求項47に記載のIC。
【請求項49】
前記配線層の前記他方の優先配線方向は、斜め優先配線方向であることを特徴とする請求項48に記載のIC。
【請求項50】
前記ブロックは、事前設計回路ブロックであることを特徴とする請求項46に記載のIC。
【請求項51】
前記回路ブロックは、メモリアレイであることを特徴とする請求項50に記載のIC。
【請求項52】
前記回路ブロックは、IPブロックであることを特徴とする請求項50に記載のIC。
【図1】
【図2】
【図3】
【図4A】
【図4B】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11A】
【図11B】
【図11C】
【図11D】
【図11E】
【図11F】
【図12A】
【図12B】
【図13−1】
【図13−2】
【図13−3】
【図14−1】
【図15A】
【図15B】
【図15C】
【図15D】
【図16A】
【図16B】
【図2】
【図3】
【図4A】
【図4B】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11A】
【図11B】
【図11C】
【図11D】
【図11E】
【図11F】
【図12A】
【図12B】
【図13−1】
【図13−2】
【図13−3】
【図14−1】
【図15A】
【図15B】
【図15C】
【図15D】
【図16A】
【図16B】
【公開番号】特開2013−77844(P2013−77844A)
【公開日】平成25年4月25日(2013.4.25)
【国際特許分類】
【出願番号】特願2013−7856(P2013−7856)
【出願日】平成25年1月18日(2013.1.18)
【分割の表示】特願2007−515561(P2007−515561)の分割
【原出願日】平成17年6月4日(2005.6.4)
【出願人】(501131003)ケイデンス デザイン システムズ インコーポレイテッド (16)
【Fターム(参考)】
【公開日】平成25年4月25日(2013.4.25)
【国際特許分類】
【出願日】平成25年1月18日(2013.1.18)
【分割の表示】特願2007−515561(P2007−515561)の分割
【原出願日】平成17年6月4日(2005.6.4)
【出願人】(501131003)ケイデンス デザイン システムズ インコーポレイテッド (16)
【Fターム(参考)】
[ Back to top ]