JP6456842B2 - パワーグリッド(pg)アライメントのためにパワーネットワーク合成(pns)と一体化されたシェーピング - Google Patents

パワーグリッド(pg)アライメントのためにパワーネットワーク合成(pns)と一体化されたシェーピング Download PDF

Info

Publication number
JP6456842B2
JP6456842B2 JP2015550761A JP2015550761A JP6456842B2 JP 6456842 B2 JP6456842 B2 JP 6456842B2 JP 2015550761 A JP2015550761 A JP 2015550761A JP 2015550761 A JP2015550761 A JP 2015550761A JP 6456842 B2 JP6456842 B2 JP 6456842B2
Authority
JP
Japan
Prior art keywords
placement constraints
circuit design
grid
wiring
mib
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015550761A
Other languages
English (en)
Other versions
JP2016503922A (ja
Inventor
パート,デイビッド・エル
リン,ヤン
ルー,アイグオ
ラシングカー,バルクリシュナ・アール
セガル,ラッセル・ビィ
ゾウ,ペイキング
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Synopsys Inc
Original Assignee
Synopsys Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Synopsys Inc filed Critical Synopsys Inc
Publication of JP2016503922A publication Critical patent/JP2016503922A/ja
Application granted granted Critical
Publication of JP6456842B2 publication Critical patent/JP6456842B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

背景
技術分野
本開示は、電子設計自動化(EDA)に関する。より特定的には、本開示は、パワーグリッドアライメントのためにパワーネットワーク合成と一体化されたシェーピングに関する。
関連技術
プロセス技術の進歩および消費者電子機器に対する実質的に制限のない需要は、集積回路(IC)設計のサイズおよび複雑性の急速な増大に拍車を掛けている。回路設計フローの性能は、IC設計を販売するまでの時間を短縮することから、非常に重要である。
シェーピングは、回路設計における物理的パーティション(ブロックとしても知られる)の形状、サイズ、および/または位置を決定する回路設計フローの一工程を指す。パワーグリッド(PG)は、回路設計における回路要素に電源電圧および接地電圧を供給する回路を指す。パワーネットワーク合成(PNS)は、回路設計のためにPGが生成される回路設計フローにおける一工程を指す。
典型的な回路設計フローにおいて、シェーピングはPNSよりずっと前に実施される。これにより、シェーピング中に決定された物理的パーティションの形状、サイズ、および位置と一致したPGネットワークを生成することが非常に困難となっている。
概要
本明細書に記載される一部の実施形態は、PGの構造に基づいて生成される配置制約に基づいて、回路設計上でシェーピングを行なうためのシステムおよび技術を提供する。これにより、シェーピングエンジンは、物理的パーティションをPGに位置合わせすることができる。
一部の実施形態では、システム(たとえばコンピュータ)は、回路設計において使用されるべきPGの構造を特定するPGストラテジのセット(1つ以上のPGストラテジを含み得るPGストラテジのセット)を受取ることができる。システムは、必要とされるアライメントのタイプを示すアライメントオプションを受取ってもよく、システムはさらに、金属層に関する情報を受取ってもよい。一部の実施形態では、PGストラテジのセットは、PGを生成するための開始点、ピッチ、方法、およびリピート回数を特定することができる。次に、システムは、PGストラテジのセットに基づいて(さらに任意に、アライメントオプションおよび/または金属層情報にも基づいて)、配置制約のセットを生成することができ、配置制約のセットはシェーピング中に使用される。
次に、システムは、配置制約のセットを用いて回路設計上でシェーピングを行なうことができる。配置制約のセットは、(1)物理的パーティション、たとえば、増倍インスタンス化ブロック(Multiply-Instantiated-Block; MIB)のインスタンスの中心線が、PG配線の中心線に位置合わせされることを要求する配置制約、(2)物理的パーティションの所与のエッジがPG配線に対して所与のオフセットを有することを要求する配置制約、および/または、(3)物理的パーティションにおける基準点(たとえば所与の角部)がグリッドのグリッド点に位置合わせされることを要求する配置制約を含むことができる。
本明細書に記載される一部の実施形態に従って、シェーピングがどのようにPNSと一体化され得るかを示す図である。 本明細書に記載される一部の実施形態に従った、異なる向きを有する複数のMIBインスタンスによる回路設計の一例を示す図である。 本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように、定位置反転可能アライメント(flippable-in-place alignment)を用いてMIBインスタンスを位置合わせすることができるかの一例を示す図である。 本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように、境界からの固定オフセットアライメント(fixed-offset-from-boundary alignment)を用いてMIBインスタンスを位置合わせすることができるかの一例を示す図である。 本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように複数のグリッドを用いてMIBインスタンスを位置合わせすることができるかの一例を示す図である。 本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように単一のグリッドを用いてMIBインスタンスを位置合わせすることができるかの一例を示す図である。 本明細書に記載される一部の実施形態に従ったシェーピングを行なうためのプロセスを示す図である。 本明細書に記載される一部の実施形態に従ったコンピュータシステムを示す図である。
詳細な説明
以下の説明は、当業者が本発明を為しかつ使用することが可能となるように提示され、また、特定の用途およびその要件に関連して設けられる。開示される実施形態のさまざまな変更は、当業者に容易に明らかであり、本明細書に規定される一般的な原則は、本発明の要旨および範囲から逸脱することなく他の実施形態および用途に適用されてもよい。したがって、本明細書に開示される1つ以上の発明は、示される実施形態に限定されず、本明細書に開示される原則および特徴と一致した最も広い範囲が付与されるべきである。
電子設計自動化(EDA)フローの概略
回路設計を生成するために、EDAフローが使用可能である。一旦回路設計が完成されると、製造、パッケージング、および組立が行なわれて、集積回路チップを製造することができる。EDAフローは複数のステップを含むことができ、各ステップは、1つ以上のEDAソフトウェアツールの使用を含むことができる。一部のEDAステップおよびソフトウェアツールを以下に説明する。これらのEDAステップおよびソフトウェアツールの例は、例示目的に過ぎず、実施形態を開示される形態に限定することを意図するものではない。
一部のEDAソフトウェアツールにより、回路設計者は、実施されたい機能性を表わすことができる。さらに、これらのツールにより、回路設計者は、もしもの場合のプラニングを行なって、機能性を改良する、コストを確認するなどを行なうことができる。論理設計および機能検証中には、たとえば、System VerilogなどのHDL(ハードウェア記述言語)コードが書込まれ、設計の機能精度を確認することができ、たとえば、設計が正確な出力を生成することが確実であることを確認することができる。
試験用の合成および設計中には、HDLコードは、1つ以上のEDAソフトウェアツールを用いてネットリストに翻訳されることができる。ネットリストは、目標の技術のために最適化されることができ、試験は、完成されたチップを確認するために設計され、実施されることができる。ネットリスト検証中には、ネットリストをタイミング制約の順守およびHDLコードとの対応について確認することができる。
設計プラニング中には、チップ用のフロアプラン全体を構築し、これをタイミングおよびトップレベル配線について分析することができる。物理的実施中には、回路要素は、レイアウトに位置付けられることができ(配置)、電気的に結合されることができる(配線)。
分析および抽出中には、回路の機能性をトランジスタレベルで検証することができ、寄生要素を抽出することができる。物理的検証中には、設計の製造、電気的事項、リソグラフィ事項などについての正確さが確保されることを確認することができる。
解像度向上中には、レイアウト上で幾何学的操作を行ない、設計の製造しやすさを改善することができる。マスクデータの作成中には、設計は、製造中に使用されるマスクを生成するように完成されることができる。
PGアライメントのためにPNSと一体化されたシェーピング
典型的な回路設計フローにおいては、物理的パーティションの形状、サイズ、および位置がシェーピング中に決定される。場合によっては、物理的パーティションは、所定の形状および/またはサイズを既に有していてもよい(たとえば、物理的パーティションが何らかの他の時間または場所に構築され、現在の回路設計内にそのまま挿入されているためなど)。このような状況下では、「シェーピング」操作は、物理的パーティションがPGネットワークに位置合わせされるように、物理的パーティションのための位置を決定すること(すなわち配置を行なう)を指すに過ぎない。次に、マクロセルおよび標準セルが物理的パーティション中に配置される。次に、PNS中、PGネットワークが生成され、ここで、PNSは、電源配線および接地配線が物理的パーティションに適切に位置合わせされることを確実にする必要がある。最後に、PGネットワークは、電源電圧および接地電圧が物理的パーティションにおける回路要素に供給可能となるように、物理的パーティションに提供される。
PGネットワークが物理的パーティションに適切に位置合わせされることを確実にするのは難しく、この作業は、回路設計がMIBを含む場合により一層困難となる。MIBは、回路設計中に複数のインスタンスを有する物理的パーティションである。MIBは一般的に、任意の回路を含むことができ、たとえば、MIBは、特定の機能または特定の機能のセットを行なうための回路を含むことができる。たとえば、プロセッサコアは、MIBであることができる。MIBの異なるインスタンスは、同一または異なる向きを有することができ、たとえば、MIBのインスタンスは、別のインスタンスの回転像および/または鏡像であってもよい。回路設計がMIBを含む場合、PGネットワーク生成プロセスは、PGネットワークがMIBに提供され、PGネットワーク中の配線が、MIBインスタンス内の回路要素に電源電圧および接地電圧を供給するために最適に配置されるように、すべてのMIBの向きを考慮する必要がある。
本明細書に記載される一部の実施形態は、物理的パーティション、たとえばMIBインスタンスのPGアライメントを容易にするために、シェーピングをPNSと一体化させる。具体的には、一部の実施形態では、シェーピングエンジンは、シェーピングエンジンがユーザによって特定されたPGネットワークにおける配線の位置を推定し、その情報を、シェーピングエンジンが物理的パーティションを形成し、位置合わせするのを助けるために使用するように、PGネットワーク生成エンジンと一体化される。シェーピングエンジンをPNSエンジンと一体化させることにより、シェーピングは、1つ以上のユーザによって特定されたPGストラテジを満たすブロック形状を提供することができる。さらに、一体化により、シェーパーは、PGネットワークがMIBについて対称となるようにMIBの向きを最適化することができる。PGネットワーク生成ステップは、シェーピング中に想定された同一のユーザによって規定されたPGストラテジを使用するため、MIBはPNS中に既にPGグリッドに最適またはほぼ最適に位置合わせされている。
図1は、本明細書に記載される一部の実施形態に従って、シェーピングがどのようにPNSと一体化され得るかを示す図である。シェーピングエンジンのためのPG分析器108は、PGストラテジのセット102、アライメントオプション104、および金属層情報106の3つの入力を受取ることができる。
PGストラテジのセット102は、パワーグリッドの構造を特定する。たとえば、PGストラテジのセットは、開始点、ピッチ(すなわち、2本の配線の中心間の間隔)、方向(すなわち、水平または鉛直)、およびリピート回数(すなわち、作成されるべき配線の数)を特定することができる。一部の実施形態は、2013年3月22日に出願された、Yan Lin、Yi−Min Jiang、Phillip H.Tai、およびLin Yuanの発明者らによる「パターンベースの電源配線および接地配線ならびにビア生成("Pattern-based power-and-ground routing and via creation,")」と題された、米国出願第13/849,427号に記載されるシステムおよび技術を用いて、パワーグリッドの構造を特定することができ、この文献の内容は、あらゆる目的のためにその全体が本明細書中に参照によって援用される。
アライメントオプション104は、シェーピング中に使用されるべきアライメントのタイプを特定する。たとえば、アライメントオプション104は、物理的パーティションの所与のエッジとパワーグリッド配線との間の間隔が所与のオフセット値と同等であることを特定してもよい。別の例として、アライメントオプション104は、物理的パーティションの中心線がグリッド線に位置合わせされることを特定してもよい。さらに別の例として、アライメントオプション104は、アライメントグリッドを参照し、配置されている物理的パーティションまたはMIBインスタンスの所与の角部(または任意の他の基準点)がアライメントグリッドにおけるグリッド点の1つに配置されることを要求してもよい。金属層情報106は、たとえば、PGを生成するために使用される金属層および各金属層についての好ましい配線方向を特定することができる。
これらの入力に基づいて、シェーピングエンジンのためのPG分析器108は、配置制約110のセットを生成することができ、これらの配置制約は、シェーピングエンジン112によって使用される。配置制約110は、シェーピングエンジン112が、PGグリッドに位置合わせされた位置にMIBを配置することを確実にする。一部の実施形態では、配置制約110は、グリッドの形態に特定されることができる。これらの実施形態では、シェーピングエンジン112は、角部の1つ(または物理的パーティション上の任意のユーザによって特定された基準点)がグリッド点に位置合わせされるように、物理的パーティション(たとえばMIB)を配置する。
図2は、本明細書に記載される一部の実施形態に従った、異なる向きを有する複数のMIBインスタンスによる回路設計の一例を示す図である。回路設計202は、異なる向きを有する4つのMIBインスタンスを含む。MIBインスタンスR0は、マスタMIBインスタンスとなり得る(「R0」の表示は、0°の回転を示す)。MIBインスタンスMYは、Y軸に沿ったマスタMIBインスタンスの鏡像であることができ、MIBインスタンスMXは、X軸に沿ったマスタMIBインスタンスの鏡像であることができ、MIBインスタンスR180は、マスタMIBインスタンスの180°回転されたバージョンであることができる。
一部の実施形態では、配置制約110は、4つの異なるグリッドを含むことができ、各グリッドは、MIBインスタンスの特定の向きに対応する。これらの実施形態では、シェーピングエンジン112は、MIBインスタンスの向きに対応する適切なグリッドを用いることによって、各MIBインスタンス(たとえば、図2に示される4つのMIBインスタンス)を位置合わせする。
図3Aは、本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように、定位置反転可能アライメントを用いて、MIBインスタンスを位置合わせすることができるかの一例を示す図である。シェーピングエンジンは、ユーザによって提供されるPGストラテジのセットに基づいてPG312を構築することができる。たとえば配線308および314などの網掛けされた配線は、電源電圧(すなわち供給電圧)を送ることができ、たとえば配線310などの斜線の配線は、接地電圧を送ることができる。
PG312は、以下のユーザによって特定されたPGストラテジ、すなわち、Y軸オフセットは「yo」であり(これは開始点を示す)、Y軸ピッチは「yp」であり、方向は水平であり(これは配線の方向を示す)、リピート回数は6回であるというPGストラテジに基づいて生成されることができる。このPGストラテジでは、交互の配線がそれぞれ電源電圧および接地電圧を運び、Y軸ピッチは、電源配線および接地配線の中心線間の間隔を示すとして想定される。PGの構造を特定するのに他のパターンが使用可能であることが当業者には明らかであろう。たとえば他の実施形態では、電源配線および接地配線についてのオフセットおよびピッチは別々に特定されることができる、および/または、電源配線および接地配線は、異なる方向に沿って延びていてもよい(たとえば、電源配線は鉛直方向に延び、接地配線は水平方向に延びることもできる)。
なお、シェーピングエンジンは、実際には回路設計中にPG312を構築しない。すなわち、PG312中の配線は、まだ回路設計の一部ではない。代わりに、シェーピングエンジンは、PG312の図を生成し、後に、この図は、シェーピング中にMIBインスタンスをPG312に位置合わせするために用いられることができる。パワーグリッドは、PNS中に回路設計に追加され、上に説明したように、PNSは、設計フローにおいて通常後に(すなわち、シェーピングに対して後に)行なわれるステップである。
一旦PG312が生成されると、次にシェーピングエンジンは、アライメントオプション104で特定されたアライメントのタイプに従ってMIBインスタンスを配置することができる。たとえば、図3Aは、定位置反転可能アライメントオプションに従ってMIBインスタンスがどのように配置されることができるかを示す。このアライメントオプションでは、MIBインスタンスの中心線が、電源電圧を送るPG配線の中心線に位置合わせされる。たとえば、MIBインスタンス302の中心線は、電源電圧を送るPG配線308の中心線に位置合わせされる。このアライメント例は、例示目的に過ぎず、この開示の範囲を限定することを意図するものではない。別の例では、MIBインスタンスの中心線が、接地電圧を送るPG配線の中心線に位置合わせされてもよい。
配線306は、MIBインスタンス302内部のPG配線308の位置を示す(MIBインスタンス内の他の配線の位置は、図3Aにも示されている)。なお、X軸またはY軸に沿ってMIBインスタンス302を反転させても(すなわち、X軸またはY軸に対する鏡像を生成しても)、MIBインスタンス302の内部のPG配線の相対的な位置付けが変わることはない。これは、MIBインスタンス302内のPG配線の位置が、MIBインスタンス302の中心線に対して対称であるためである。たとえば、MIBインスタンス304は、MIBインスタンス302の反転されたバージョンである(MIBインスタンス304は、Y軸に対するMIBインスタンス302の鏡像である)。シェーピングエンジンは、MIBインスタンス304の中心線がPG配線314の中心線に位置合わせされるようにMIBインスタンス304を配置することができる。
図3Bは、本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように、境界からの固定オフセットアライメントを用いて、MIBインスタンスを位置合わせできるかの一例を示す。このアライメントオプションでは、MIBインスタンス302は、MIBインスタンス302の特定のエッジと接地電圧を送るPG配線の中心線との間の間隔が固定オフセット値となるようにPG配線に位置合わせされる。たとえば、MIBインスタンス302の底面エッジと接地電圧を送るPG配線310の中心線との間の間隔が、固定オフセット316と同等となる。このアライメント例は、例示目的に過ぎず、本開示の範囲を限定することを意図するものではない。別の例では、MIBインスタンスの特定のエッジが、電源電圧を送るPG配線の中心線に対するオフセットに位置合わせされてもよい。図3Bに示されるように、MIBインスタンス304も同様に、別の接地配線に位置合わせされることができる。
図4Aは、本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように、複数のグリッドを用いてMIBインスタンスを位置合わせすることができるかの一例を示す。一部の実施形態では、配置制約は、複数のグリッドを用いて特定されることができる。具体的には、シェーピングエッジは、物理的パーティション上の所与の基準点(たとえば、物理的パーティションの特定の角部)がグリッド点に配置されるように物理的パーティション(たとえばMIBインスタンス)を配置することができる。なお、MIBの異なる向きが異なるグリッドを用いて配置される必要もあり得る。たとえば、図4Aに示されるように、グリッド410は、R0向きを有するMIBインスタンス(すなわち、0°回転されたMIBインスタンス)を配置する際に用いられるべきグリッド点(グリッド410における各交差点がグリッド点となり得る)を特定することができ、グリッド412は、MX向きを有するMIBインスタンス(すなわち、X軸に対する鏡像であるMIBインスタンス)を配置する際に用いられるべきグリッド点を特定することができる。同様に、他の向き、たとえばR180およびMY向きについて、シェーピングエッジに他のグリッドを提供することもできる。MIB402はR0向きを有するため、グリッド410を用いて、MIB402における基準点404をグリッド410におけるグリッド点に位置合わせすることによって配置されている。MIB406はMX向きを有するため、グリッド412を用いて、基準点408をグリッド412におけるグリッド点に位置合わせすることによって配置されている。なお、基準点404および408は、MIB上で同一の相対的位置にある(基準点404は、R0向きにおける底面左角部にあり、これはMX向きにおける右上角部に相当する)。
図4Bは、本明細書に記載される一部の実施形態に従って、シェーピングエンジンがどのように単一のグリッドを用いてMIBインスタンスを位置合わせすることができるかの一例を示す。一部の実施形態では、配置制約は単一のグリッドを用いて特定されることができる。具体的には、シェーピングエンジンは、物理的パーティション上の所与の基準点がグリッド点に配置されるように(向きに係わらず)物理的パーティションを配置することができる。図4Bに示されるように、グリッド420は、MIBインスタンスを配置する際に用いられるべきグリッド点(グリッド420における各交差点がグリッド点となり得る)を特定することができる。単一のグリッドは、PGがグリッドに対して対称となるように位置付けられる。すなわち、PGを任意のグリッド線にわたって反転すると、PGは同じになる。なお、PG312は、グリッド420に対して対称である。
一旦単一のグリッドが決定されると、MIBインスタンス上の任意の基準点がグリッドに嵌まるように選択され得る。たとえば、基準点422は、R0向きを有するMIB402において選択されることができる。MIB402は、グリッド420を用いて、MIB402における基準点422をグリッド420におけるグリッド点に位置合わせすることによって配置されることができる。MIB406は、MX向きを有するが、グリッド420を用いて、基準点424(MIBにおいて同一の相対的位置にある)をグリッド420におけるグリッド点に位置合わせすることによって配置されることもできる。
一部の実施形態では、ユーザがMIBインスタンスを形成し、移動させ、および/またはサイズを調整するとき、MIB(たとえばPG配線)内に「押込まれる」べきすべての対象が各MIBインスタンスに対して位置合わせされる必要がある。たとえば、PG配線(すなわち「対象」)とMIBにおける回路要素との間に電気的接続が生成される必要があるとき、PG配線はMIB内に「押込まれる」必要がある(なお、PG配線は、論理階層においてMIBの「外側」であってもよいため、これらはMIB内に「押込まれる」必要があり得る)。これらの実施形態では、MIBグリッドのピッチ(すなわち、所与の方向のグリッドにおける2本の線間の間隔)は、ブロック内に「押込まれる」べき対象のすべての最小公倍数によって決定される。たとえば、第1の対象がf長さ単位毎に繰返し、第2の対象がs長さ単位毎に繰返す場合、グリッドのピッチは、fおよびsの最小公倍数と同等となるように設定されることができる。グリッドの起点およびオフセットは、ユーザがグリッドを生成するためにどのMIBインスタンスを使用するかを特定するときにユーザによって設定されることができる。一旦グリッド起点およびオフセットが所与のMIBインスタンスに基づいて設定されると、ミラーリングを支持するためにグリッドの複数の変形体が生成されることができる。たとえば、グリッド自体が起点に対してミラーリングおよび/または回転されて、ベースグリッドのMX、MY、およびR180変形体に相当するグリッドを生成することができる。
一部の実施形態では、シェーピングエンジンは、次のようにMIBグリッドと相互作用することができる。上に説明したように、ユーザはまず、MIB内に「押込まれる」と予想される対象(たとえばPG配線)を特定する。次に、対象に基づいて(たとえば、最小公倍数を算出することによって)グリッドピッチが測定されることができる。次に、シェーピングエンジンは、最善のMIBインスタンスを選択し(たとえば、MIBインスタンス周りの回路設計コンテキストに依存して最善のMIB向きを選択する)、グリッドオフセットを設定することができる。シェーピングエンジンは次に、正当化されているインスタンスの向きに依存して、異なるグリッド(R0、MX、MY、R180)に基づいてすべてのMIBインスタンスを正当化することができる。
シェーピングエンジンがMIBインスタンスを配置するのにMIBグリッドを使用する実施形態では、設計フローは、次のようになり得る。設計フローは、シェーピングエンジンが適切なMIBグリッドに基づいて(たとえば、MIBインスタンスの向きに対応するMIBグリッドに基づいて)すべてのMIBインスタンスを配置することから始まり得る。次に、ユーザは、MIBインスタンスを(たとえば、フロアプラニングツールのグラフィカルユーザインターフェイスを用いることによって)移動させることができ、ツールは、シェーピングエンジンによって規定されるように、MIBインスタンスを適切なグリッドに嵌めることができる。ユーザがMIBインスタンスの向きを変更する場合、ツールはそれに応じてグリッドを変更し、MIBインスタンスを新しいグリッドに嵌めることができる。
さらに、ツールにより、ユーザは、任意のMIBインスタンスを選択することによって、コンテキストメニューを介してMIBグリッドを再規定することもできる。なお、ユーザがMIBインスタンスの1つに基づいてMIBグリッドを再規定するとき、他のMIBインスタンスが非正当となってもよい。これは、他のMIBインスタンスが、より古いセットのグリッドに基づいてシェーピングエンジンによって配置されたためである。一部の実施形態では、ツールは、ユーザが再規定されたグリッドを用いて他のMIBインスタンスを正当化することを可能にする正当化特徴を提供することができる。
図5は、本明細書に記載される一部の実施形態に従ったシェーピングを行なうためのプロセスを示す。プロセスは、回路設計で用いられるべきPGの構造を特定するPGストラテジのセットを受取ることから始まり得る(動作502)。一部の実施形態では、PGストラテジのセットは、PGを生成するための開始点、ピッチ、方向、およびリピート回数を特定することができる。一部の実施形態では、プロセスは、動作502において、必要とされるアライメントのタイプを示すアライメントオプションおよび金属層に関する情報など、追加の情報を受取ることができる。次に、プロセスは、PGストラテジのセットに基づいて配置制約のセットを生成することができる(動作504)。配置制約のセットは、シェーピング中に使用されることができ、かつ、正当化のために使用されることもできる(たとえば、ユーザが手動で回路設計を編集するとき)。動作502において追加の情報が受取られる実施形態では、プロセスは、PGストラテジのセットおよび追加の情報、たとえば、アライメントオプションおよび/または金属層情報に基づいて、動作504において配置制約のセットを生成することができる。次に、プロセスは、配置制約のセットを用いて回路設計上でシェーピングまたは正当化を行なうことができる(動作506)。具体的には、一部の実施形態では、プロセスは、回路設計における物理的パーティションの形状、サイズ、および/または位置を変更するリクエストを受取ることができる。次にプロセスは、リクエストに従って物理的パーティションの形状、サイズ、および/または位置を変更することができ、次に、配置制約のセットに基づいて修正された物理的パーティションを(たとえば、配置制約のセットが満たされるように、修正された物理的パーティションの位置を調整することによって)正当化することができる。配置制約のセットは、(1)物理的パーティション(たとえばMIBインスタンス)の中心線がPG配線の中心線に位置合わせされることを要求する配置制約(たとえば図3Aを参照)、(2)物理的パーティションの所与のエッジがPG配線に対する所与のオフセットを有することを要求する配置制約(たとえば図3Bを参照)、および/または、(3)物理的パーティションにおける基準点がグリッドのグリッド点に位置合わせされることを要求する配置制約(たとえば図4を参照)を含むことができる。
コンピュータシステム
図6は、本開示に記載される一部の実施形態に従ったコンピュータシステムを示す。コンピュータシステム602は、プロセッサ604、メモリ606、および記憶装置608を含むことができる。コンピュータシステム602は、表示装置614、キーボード610、およびポインティングデバイス612に結合されることができる。記憶装置608は、オペレーティングシステム616、アプリケーション618、およびデータ620を格納することができる。データ620は、アプリケーション618によって必要とされる入力および/またはアプリケーション618によって生成される出力を含むことができる。
コンピュータシステム602は、本開示に暗示的または明示的に記載される1つ以上のプロセスを自動的に(またはユーザ入力により)行なってもよい。たとえば、コンピュータシステム602は、アプリケーション618をメモリ606にロードすることができ、アプリケーション618は、PGアライメントのためにPNSと一体化されたシェーピングを行なうために用いられることができる。
結論
上記の説明は、当業者が本実施形態を為しかつ使用することが可能となるように提示される。開示された実施形態のさまざまな改良が当業者に容易に明らかとなり、本明細書に規定された一般的な原則は、本開示の要旨および範囲から逸脱することなく他の実施形態および用途に適用可能である。したがって、本発明は、示された実施形態に限定されず、本明細書に開示された原則および特徴と一致した最も広い範囲が付与されるべきである。
本開示に記載されたデータ構造およびコードは、コンピュータ読取可能記憶媒体および/またはハードウェアモジュールおよび/またはハードウェア装置に一部または完全に格納されることができる。コンピュータ読取可能記憶媒体としては、揮発性メモリ、不揮発性メモリ、ディスクドライブ、磁気テープ、CD(コンパクトディスク)、DVD(デジタル汎用ディスクまたはデジタルビデオディスク)などの磁気および光学記憶装置、または、コードおよび/もしくはデータを格納することの可能な、現在知られているもしくは後に開発される他の媒体が含まれるが、これらに限定されない。本開示に記載されるハードウェアモジュールまたは装置としては、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、専用もしくは共有プロセッサ、および/または、現在知られているもしくは後に開発される他のハードウェアモジュールもしくは装置が含まれるが、これらに限定されない。
本開示に記載される方法およびプロセスは、コンピュータシステムがコードおよび/またはデータを読出し、実行すると、コンピュータシステムが関連の方法およびプロセスを実施するように、コンピュータ読取可能記憶媒体または装置に格納されたコードおよび/またはデータとして一部または完全に具現化されることができる。さらに、方法およびプロセスは、ハードウェアモジュールまたは装置が作動されると、関連の方法およびプロセスを実施するように、ハードウェアモジュールまたは装置において一部または完全に具現化されることもできる。なお、方法およびプロセスは、コード、データ、およびハードウェアモジュールまたは装置の組合せを用いて具現化されることができる。
本発明の実施形態の上記の説明は、例示および説明の目的のためだけに提示される。これらは網羅的であることまたは本発明を開示された形態に限定することを意図するものではない。したがって、多くの改良および変形が当業者に明らかとなるであろう。さらに、上記の開示は本発明を限定することを意図するものではない。本発明の範囲は、添付の請求項によって規定される。

Claims (18)

  1. 回路設計上でシェーピングを行なうための、コンピュータにより実行される方法であって、前記方法は、
    前記回路設計で使用されるべきパワーグリッド(PG)の構造を特定するPGストラテジのセットを受取るステップと、
    前記PGストラテジのセットに基づいて配置制約のセットを生成するステップとを備え、前記配置制約のセットは、前記PGの構造に整列されるべき物理的パーティションを要求する配置制約を含み、少なくとも1つのPG配線が前記物理的パーティションを通過し、
    前記配置制約のセットを用いて前記回路設計上でシェーピングを行なうステップと、
    前記回路設計上で前記シェーピングを行った後に、前記PGストラテジのセットに基づいて、前記回路設計における前記PGを生成するステップとをさらに備え、前記回路設計における前記PGを生成するステップは、前記少なくとも1つのPG配線を、前記物理的パーティションに押込むステップを含む、方法。
  2. アライメントオプションを受取るステップをさらに備え、前記生成するステップは、前記PGストラテジのセットおよび前記アライメントオプションに基づいて、前記配置制約のセットを生成することを含む、請求項1に記載の方法。
  3. 前記配置制約のセットは、物理的パーティションの中心線がPG配線の中心線に位置合わせされることを要求する配置制約を含む、請求項1に記載の方法。
  4. 前記配置制約のセットは、物理的パーティションの所与のエッジがPG配線に対して所与のオフセットを有することを要求する配置制約を含む、請求項1に記載の方法。
  5. 前記配置制約のセットは、物理的パーティションにおける基準点がグリッドのグリッド点に位置合わせされることを要求する配置制約を含む、請求項1に記載の方法。
  6. 前記PGストラテジのセットは、前記PGを生成するための開始点、ピッチ、方向、およびリピート回数を特定する、請求項1に記載の方法。
  7. 非一時的コンピュータ読取可能記憶媒体であって、前記記憶媒体は、指令を格納し、前記指令は、コンピュータによって実行されると、前記コンピュータに、回路設計上でシェーピングを行なうための方法を実施させ、前記方法は、
    前記回路設計で使用されるべきパワーグリッド(PG)の構造を特定するPGストラテジのセットを受取るステップと、
    前記PGストラテジのセットに基づいて配置制約のセットを生成するステップとを備え、前記配置制約のセットは、前記PGの構造に整列されるべき物理的パーティションを要求する配置制約を含み、少なくとも1つのPG配線が前記物理的パーティションを通過し、
    前記配置制約のセットを用いて前記回路設計上でシェーピングを行なうステップと、
    前記回路設計上で前記シェーピングを行った後に、前記PGストラテジのセットに基づいて、前記回路設計における前記PGを生成するステップとをさらに備え、前記回路設計における前記PGを生成するステップは、前記少なくとも1つのPG配線を、前記物理的パーティションに押込むステップを含む、非一時的コンピュータ読取可能記憶媒体。
  8. アライメントオプションを受取るステップをさらに備え、前記生成するステップは、前記PGストラテジのセットおよび前記アライメントオプションに基づいて、前記配置制約のセットを生成することを含む、請求項7に記載の非一時的コンピュータ読取可能記憶媒体。
  9. 前記配置制約のセットは、物理的パーティションの中心線がPG配線の中心線に位置合わせされることを要求する配置制約を含む、請求項7に記載の非一時的コンピュータ読取可能記憶媒体。
  10. 前記配置制約のセットは、物理的パーティションの所与のエッジがPG配線に対して所与のオフセットを有することを要求する配置制約を含む、請求項7に記載の非一時的コンピュータ読取可能記憶媒体。
  11. 前記配置制約のセットは、物理的パーティションにおける基準点がグリッドのグリッド点に位置合わせされることを要求する配置制約を含む、請求項7に記載の非一時的コンピュータ読取可能記憶媒体。
  12. 前記PGストラテジのセットは、前記PGを生成するための開始点、ピッチ、方向、およびリピート回数を特定する、請求項7に記載の非一時的コンピュータ読取可能記憶媒体。
  13. 回路設計上で正当化を行なうための、コンピュータにより実行される方法であって、前記方法は、
    前記回路設計で使用されるべきパワーグリッド(PG)の構造を特定するPGストラテジのセットを受取るステップと、
    前記PGストラテジのセットに基づいて配置制約のセットを生成するステップとを備え、前記配置制約のセットは、前記PGの構造に整列されるべき物理的パーティションを要求する配置制約を含み、少なくとも1つのPG配線が前記物理的パーティションを通過し、
    前記配置制約のセットを用いて前記回路設計を正当化するステップをさらに備え、
    前記回路設計上で前記正当化を行った後に、前記PGストラテジのセットに基づいて、前記回路設計における前記PGを生成するステップとをさらに備え、前記回路設計における前記PGを生成するステップは、前記少なくとも1つのPG配線を、前記物理的パーティションに押込むステップを含む、方法。
  14. アライメントオプションを受取るステップをさらに備え、前記生成するステップは、前記PGストラテジのセットおよび前記アライメントオプションに基づいて、前記配置制約のセットを生成することを含む、請求項13に記載の方法。
  15. 前記配置制約のセットは、物理的パーティションの中心線がPG配線の中心線に位置合わせされることを要求する配置制約を含む、請求項13に記載の方法。
  16. 前記配置制約のセットは、物理的パーティションの所与のエッジがPG配線に対して所与のオフセットを有することを要求する配置制約を含む、請求項13に記載の方法。
  17. 前記配置制約のセットは、物理的パーティションにおける基準点がグリッドのグリッド点に位置合わせされることを要求する配置制約を含む、請求項13に記載の方法。
  18. 前記PGストラテジのセットは、前記PGを生成するための開始点、ピッチ、方向、およびリピート回数を特定する、請求項13に記載の方法。
JP2015550761A 2012-12-26 2013-12-26 パワーグリッド(pg)アライメントのためにパワーネットワーク合成(pns)と一体化されたシェーピング Active JP6456842B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261746060P 2012-12-26 2012-12-26
US61/746,060 2012-12-26
PCT/US2013/077779 WO2014105938A1 (en) 2012-12-26 2013-12-26 Shaping integrated with power network synthesis (pns) for power grid (pg) alignment

Publications (2)

Publication Number Publication Date
JP2016503922A JP2016503922A (ja) 2016-02-08
JP6456842B2 true JP6456842B2 (ja) 2019-01-23

Family

ID=50976275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015550761A Active JP6456842B2 (ja) 2012-12-26 2013-12-26 パワーグリッド(pg)アライメントのためにパワーネットワーク合成(pns)と一体化されたシェーピング

Country Status (5)

Country Link
US (1) US9460258B2 (ja)
JP (1) JP6456842B2 (ja)
KR (1) KR102097183B1 (ja)
DE (1) DE112013005783T5 (ja)
WO (2) WO2014105980A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7448012B1 (en) 2004-04-21 2008-11-04 Qi-De Qian Methods and system for improving integrated circuit layout
US9747403B2 (en) * 2015-07-13 2017-08-29 Synopsys, Inc. Power-and-ground (PG) network characterization and distributed PG network creation for hierarchical circuit designs
US10515175B2 (en) * 2016-12-15 2019-12-24 Taiwan Semiconductor Manufacturing Co., Ltd. Block-level design method for heterogeneous PG-structure cells

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1056162A (ja) * 1996-05-24 1998-02-24 Toshiba Corp 半導体集積回路およびその設計方法
US7272803B1 (en) 2003-06-01 2007-09-18 Cadence Design Systems, Inc. Methods and apparatus for defining manhattan power grid structures having a reduced number of vias
US7353490B2 (en) * 2004-10-29 2008-04-01 Synopsys, Inc. Power network synthesizer for an integrated circuit design
US20070033562A1 (en) * 2005-08-05 2007-02-08 International Business Machines Corporation Integrated circuit power distribution layout with sliding grids
JP2007328745A (ja) * 2006-06-09 2007-12-20 Canon Inc フロアプラン生成装置及びその制御方法、プログラム、記憶媒体
US7546567B2 (en) * 2007-01-10 2009-06-09 Synopsys, Inc. Method and apparatus for generating a variation-tolerant clock-tree for an integrated circuit chip
US7937604B2 (en) * 2007-04-19 2011-05-03 International Business Machines Corporation Method for generating a skew schedule for a clock distribution network containing gating elements
US8037441B2 (en) * 2007-09-25 2011-10-11 International Business Machines Corporation Gridded-router based wiring on a non-gridded library
JP2009099588A (ja) * 2007-10-12 2009-05-07 Seiko Epson Corp 半導体集積回路装置の電源配線方法、半導体集積回路装置の電源配線プログラム、半導体集積回路装置の設計支援システム、半導体集積回路装置及び電子機器
US9310831B2 (en) * 2008-02-06 2016-04-12 Mentor Graphics Corporation Multi-mode multi-corner clocktree synthesis
US7926019B1 (en) * 2008-02-29 2011-04-12 Altera Corporation Common clock path pessimism analysis for circuit designs using clock tree networks
US7934188B2 (en) * 2008-04-24 2011-04-26 International Business Machines Corporation Legalization of VLSI circuit placement with blockages using hierarchical row slicing
US8086985B2 (en) * 2008-09-23 2011-12-27 Qualcomm Incorporated Automatic alignment of macro cells
US8247906B2 (en) * 2009-07-06 2012-08-21 Taiwan Semiconductor Manufacturing Company, Ltd. Supplying power to integrated circuits using a grid matrix formed of through-silicon vias
US9043741B2 (en) 2009-10-30 2015-05-26 Synopsys, Inc. Legalizing a portion of a circuit layout
US8495547B2 (en) * 2009-11-11 2013-07-23 International Business Machines Corporation Providing secondary power pins in integrated circuit design
US8423946B1 (en) * 2010-05-25 2013-04-16 Marvell International Ltd. Circuitry having programmable power rails, architectures, apparatuses, and systems including the same, and methods and algorithms for programming and/or configuring power rails in an integrated circuit
US8572541B2 (en) * 2010-09-05 2013-10-29 Texas Instruments Incorporated Method and system for adaptive physical design
JP2012118913A (ja) * 2010-12-03 2012-06-21 Ricoh Co Ltd フロアプラン設計装置およびフロアプラン設計方法
CN102567557B (zh) * 2010-12-20 2014-07-09 国际商业机器公司 用于构建用于集成电路设计的时钟树的方法和装置
US8513978B2 (en) * 2011-03-30 2013-08-20 Synopsys, Inc. Power routing in standard cell designs

Also Published As

Publication number Publication date
WO2014105938A1 (en) 2014-07-03
KR20150100840A (ko) 2015-09-02
KR102097183B1 (ko) 2020-05-27
JP2016503922A (ja) 2016-02-08
US9460258B2 (en) 2016-10-04
DE112013005783T5 (de) 2015-08-13
US20140181773A1 (en) 2014-06-26
WO2014105980A1 (en) 2014-07-03

Similar Documents

Publication Publication Date Title
US8468482B1 (en) Modeling and simulating the impact of imperfectly patterned via arrays on integrated circuits
TW201729132A (zh) 設計具有佈局前電阻電容資訊的積體電路的系統、方法以及相關電腦可讀媒體
US10482212B2 (en) Automated resistance and capacitance extraction and netlist generation of logic cells
US11163932B2 (en) Semiconductor process modeling to enable skip via in place and route flow
TW201712578A (zh) 參數萃取之方法及其系統
TWI789911B (zh) 用於電容值提取的系統、方法及儲存媒體
JP6456842B2 (ja) パワーグリッド(pg)アライメントのためにパワーネットワーク合成(pns)と一体化されたシェーピング
WO2014106099A1 (en) Multiple-instantiated-module (mim) aware pin assignment
US8978003B1 (en) Method of making semiconductor device and a control system for performing the same
US9378327B2 (en) Canonical forms of layout patterns
US10885260B1 (en) Fin-based fill cell optimization
JP6282285B2 (ja) ネットリストアブストラクション
US10628623B2 (en) Non-transitory computer-readable recording medium recording detour wiring check program, detour wiring check method, and information processing apparatus
JP6316311B2 (ja) パターンベースの電源グランド(pg)ルーティングおよびビア生成
US8726208B2 (en) DFM improvement utility with unified interface
US9293450B2 (en) Synthesis of complex cells
US20110041112A1 (en) Method and apparatus for generating a centerline connectivity representation
CN111199133A (zh) 一种自动布线绕线的方法
US9747403B2 (en) Power-and-ground (PG) network characterization and distributed PG network creation for hierarchical circuit designs
US9524364B1 (en) Method and system for creating improved routing polygon abstracts
JP2017021571A (ja) 半導体集積回路、その設計支援装置および設計方法
JP2009123966A (ja) 半導体集積回路のレイアウトパターン設計方法、レイアウトパターン設計装置およびレイアウトパターン設計用プログラム
US20150020041A1 (en) Method and system for enhanced integrated circuit layout
JP2007328745A (ja) フロアプラン生成装置及びその制御方法、プログラム、記憶媒体
JP2005228208A (ja) チップのレイアウト密度検証方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180620

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181219

R150 Certificate of patent or registration of utility model

Ref document number: 6456842

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250