JP2015069333A - 設計方法及び設計プログラム - Google Patents
設計方法及び設計プログラム Download PDFInfo
- Publication number
- JP2015069333A JP2015069333A JP2013202014A JP2013202014A JP2015069333A JP 2015069333 A JP2015069333 A JP 2015069333A JP 2013202014 A JP2013202014 A JP 2013202014A JP 2013202014 A JP2013202014 A JP 2013202014A JP 2015069333 A JP2015069333 A JP 2015069333A
- Authority
- JP
- Japan
- Prior art keywords
- psw
- arrangement
- unit
- power
- logical
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/06—Power analysis or power optimisation
Abstract
【課題】 本発明の課題は、カラム型パワースイッチを採用したLSI設計において、タイミング収束性を改善することを目的とする。【解決手段】 上記課題は、コンピュータによって実行される設計方法であって、チップに配置されたパワードメイン毎に論理モジュールをグループ化し、グループ化した論理モジュールグループ毎に通常セルを仮配置し、パワースイッチを前記論理モジュールグループの周辺に配置することを特徴とする設計方法により達成される。【選択図】 図5
Description
本発明は、チップのパワーゲーティング設計に関する。
近年、チップの消費電力を低減するパワーゲーティングがチップ内に搭載されるようになっている。
例えば、複数のコアセルが配列されて成るセル領域と、セル領域毎に対応して配置された電源スイッチとを設け、それぞれコアセル単位で複数の電源遮断エリアを形成し、電源遮断エリア毎に、電源遮断を可能とする半導体集積回路等が知られている。
また、半導体チップに形成されているコア領域を複数の機能ブロックに分離し、分離している各機能ブロックの境界に複数の電源スイッチを配列し、各機能ブロックへの基準電位の供給および停止を制御する半導体装置、内部電圧線に接続される2本の電圧セル線と、スイッチ制御線に接続される制御セル線と、トランジスタと、を有するスイッチセルが、回路ブロックの周囲の四方全てに配置される半導体集積回路等が提案されている。
低消費電力化技術としてパワースイッチ(以下、PSWと言う)を適用したオンチップパワーゲーティング設計には、リング型PSW(マクロ型)と、カラム型PSW(スタンダードセル型)とがある。両者のトレードオフは以下の通りである。
・ペリフェラルI/Oの場合のIRドロップ
両者において、IRドロップはチップ内において均一である。
・エリアI/Oの場合のIRドロップ
リング型PSWでは、パワードメインの外周部のPSWを経由して電源供給するため、PD中央部でIRドロップが大きくなると言う欠点がある。
・ペリフェラルI/Oの場合のIRドロップ
両者において、IRドロップはチップ内において均一である。
・エリアI/Oの場合のIRドロップ
リング型PSWでは、パワードメインの外周部のPSWを経由して電源供給するため、PD中央部でIRドロップが大きくなると言う欠点がある。
一方、カラム型PSWでは、PD内部領域に配置された電源バンプから最短領域で電源供給可能であるため、IRドロップが発生し難い。
・タイミング収束性
リング型PSWでは良好であるが、カラム型PSWでは、PD内に配置されたPSWによりセルの最適な配置が阻害される場合があり、タイミング収束性が、リング型PSW程に良好ではない。
・タイミング収束性
リング型PSWでは良好であるが、カラム型PSWでは、PD内に配置されたPSWによりセルの最適な配置が阻害される場合があり、タイミング収束性が、リング型PSW程に良好ではない。
しかしながら、エリアI/Oを採用した設計では、カラム型PSWを採用するのが主流である。
従って、1つの側面において、本発明は、カラム型PSWを採用したLSI(Large Scale Integration)設計において、タイミング収束性を改善することである。
本実施例の一態様によれば、コンピュータによって実行される設計方法であって、チップに配置されたパワードメイン毎に論理モジュールをグループ化し、グループ化した論理モジュールグループ毎に通常セルを仮配置し、パワースイッチを前記論理モジュールグループの周辺に配置することを特徴とする設計方法が提供される。
本実施例の一態様によれば、タイミング収束性を改善することができる。
以下、本発明の実施の形態を図面に基づいて説明する。
パワーゲーティングとは、一時的に動作していない回路へ電源を遮断することでリーク電流を削減する技術であり、チップ内部で電源制御を行う方式をオンチップパワーゲーティングと言う。
図1は、パワーゲーティングの構成例を示す図である。図1に示すチップ1は、PMU(Power Management Unit)3と、PSW(Power SWitch)2と、PD(Power Domain)4と、アイソレータ5とを有する。PD4は複数あってもよい。
PMU3は、電源制御を行う論理回路であり、クロック供給源3aと、FF(フリップフロップ)3b、3c、及び3dとを有する。クロック供給源3aからの信号に応じて、PD4に対する電源制御が行われる。
FF3bは、PSW制御信号を送出し、PSW2のON/OFFを制御して、電源制御の対象となるPD4の低消費電力化を行う。FF3cは、アイソレータ5へ電源ON/OFFの信号を送出する。FF3dは、PD4に対してクロックゲーティングを行うための、クロック制御信号を送出する。
PSW2は、電源電圧VDDのPD4への供給を、PMU3からのPSW制御信号に応じて電源の供給をON又はOFFする。PD4は、電源電圧VSSに接続され、PMU3による電源制御により、実際にはVirtual VDDが印加されることにより動作する。アイソレータ5は、電源ON/OFFによる不定伝播を抑止する。
図2は、PSWの代表的な配置例を示す図である。図2(A)では、リング型(マクロ型)PSWの配置例を示している。リング型(マクロ型)のPSW2aの形状は、正方形(または、長方形)であり、図2(B)のカラム型PSW2bよりサイズが大きい。PD4aの周辺にPSW2aが配置される。
図2(B)では、カラム型(スタンダードセル型)PSWの配置例を示している。カラム型PSW2bの形状は、長方形である。カラム型PSW2bでは、主に、縦型配置、横型配置、千鳥型配置等がある。
縦型配置では、カラム型PSW2bの長辺同士を、隙間を空けずに隣り合わせた列をPD4b内部に所定間隔で配置する。横型配置では、カラム型PSW2bの短辺同士を、隙間を空けずに隣り合わせた例をPD4b内部に所定間隔で配置する。千鳥型配置では、縦型配置において、カラム型PSW2bを所定間隔で配置する。
図3は、リング型PSWとカラム型PSWの特徴を説明するための図である。図3において、エリアI/Oを採用したチップ1内に、リング型PSWとカラム型PSWを配置した場合で、IRドロップを説明する。
チップ1内の電源バンプ1bは、エリアI/O領域に配置された電源I/Oから電源供給を受ける。
PD6aは、リング型PSW2aが周辺に配置されたパワードメインである。PD6aのリング型PSW2aのなかには、内部に配置された電源バンプ1bから電源供給を受ける場合がある。この場合、PD6a内に配置された通常セル7に、PD6aの外周部のリング型PSW2aを経由して電源が供給される。よって、IRドロップが発生し易い。
PD6bは、カラム型PSW2bが内部に配置されたパワードメインである。PD6bのカラム型PSW2bは、内部に配置された電源バンプ1bから電源供給を受け、近傍の通常セル7に電源を供給することができる。従って、リング型PSW2aを配置したPD6aと比べた場合、IRドロップを小さくすることができる。
しかしながら、カラム型PSW2bはタイミング収束性を悪化させる場合がある。千鳥型配置でタイミング収束性が悪化する場合を説明する。図4は、タイミング収束性が悪化する例を説明するための図である。図4に示すPD6cにおいて、カラム型PSW2b−1及び2b−2は、電源配線との接続を持つため、通常、配置後に移動することができない。
新規セル7aをカラム型PSW2b−1に隣接する通常セル7bの左側の領域に追加する場合、この領域が新規セル7aのサイズより狭いと、新規セル7aの追加によって、通常セル7bと新規セル7aとにおいてセルオーバーラップが発生する。
このセルオーバーラップを解消するために、通常セル7bを隣接するカラム型PSW2b−1の左側から反対側の右側へと配置を変更(セルジャンプ)することが考えられる。このようなセルジャンプは、新規セル7aと通常セル7b間のタイミングを悪化させてしまう。よって、セル配置変更後のタイミング検証では、収束性が悪くなる。
また、カラム型PSW2b−2の左側に隣接する通常セル7cのサイズを変更して大きくした場合、通常セル7cと、通常セル7cの左側に隣接する通常セル7dとにおいてセルオーバーラップが発生する。
このセルオーバーラップを解消するために、通常セル7cを近傍の空いている領域、例えば、カラム型PSW2b−2の上辺に配置を変更(セルジャンプ)することが考えられる。このようなセルジャンプは、通常セル7dとサイズを変更した通常セル7c間のタイミングを悪化させてしまう。よって、セル配置変更後のタイミング検証では、収束性が悪くなる。
このようなタイミング収束性の悪化は、ROW使用率が高ければ高いほど、つまり、ROWに対するセル数が多ければ多い程、顕著になる。また、パフォーマンス(クロック周波数)が高ければ高い程、タイミング収束性の悪化が顕著になる。
上述では、千鳥配置の例で説明しているが、縦配置及び横配置の方が、まとまった障害物になるため、よりセルジャンプが起こりやすい。タイミング収束性の悪化は、カラム型PSW2bに共通の課題と言える。
本実施例では、図5に例示されるように、カラム型PSWを配置することにより、タイミング収束性を改善する。図5は、本実施例におけるカラム型PSW2bの配置結果例を示す図である。
図5において、チップの一つのPD_1にてカラム型PSW2bの配置結果例を示す。PD_1内において、論理モジュールグループM1に属する複数の通常セル7g、論理モジュールグループM2に属する複数の通常セル7u、論理モジュールグループM3に属する複数の通常セル7y、・・・、論理モジュールグループMiに属する複数の通常セル7p等を、論理モジュールグループグループ毎に囲むようにカラム型PSW2b(以下、簡潔に「PSW2b」と言う)を配置する。
即ち、本実施例では、以下の処理を行う。
・任意の論理モジュールグループに属するセルの配置領域の周辺にカラム型PSW2bを配置する。
・任意の論理モジュールの配置領域を囲むように、配置リージョンを設定する。
・任意の論理モジュールグループに属するセルの配置領域の周辺にカラム型PSW2bを配置する。
・任意の論理モジュールの配置領域を囲むように、配置リージョンを設定する。
図6は、配置リージョンの例を示す図である。図6において、本実施例では、任意の論理モジュールグループに属する通常セル7の配置領域を囲むように、配置リージョン8を設定する。配置リージョン8に囲まれるセルは、その配置リージョン8外に配置することはできない。つまり、論理モジュールグループ内のセルは、PSW2bを越えてジャンプして配置することはできない。
本実施例に係る設計装置は、図7に示すようなハードウェア構成を有する。図7は、設計装置のハードウェア構成を示す図である。図7において、設計装置100は、コンピュータによって制御される端末であって、CPU(Central Processing Unit)11と、主記憶装置12と、補助記憶装置13と、入力装置14と、表示装置15と、通信I/F(インターフェース)17と、ドライブ装置18とを有し、バスBに接続される。
CPU11は、主記憶装置12に格納されたプログラムに従って設計装置100を制御する。主記憶装置12には、RAM(Random Access Memory)、ROM(Read Only Memory)等が用いられ、CPU11にて実行されるプログラム、CPU11での処理に必要なデータ、CPU11での処理にて得られたデータ等を格納する。また、主記憶装置12の一部の領域が、CPU11での処理に利用されるワークエリアとして割り付けられている。
補助記憶装置13には、ハードディスクドライブが用いられ、各種処理を実行するためのプログラム等のデータを格納する。補助記憶装置13に格納されているプログラムの一部が主記憶装置12にロードされ、CPU11に実行されることによって、各種処理が実現される。記憶部130は、主記憶装置12及び/又は補助記憶装置13を有する。
入力装置14は、マウス、キーボード等を有し、ユーザが設計装置100による処理に必要な各種情報を入力するために用いられる。表示装置15は、CPU11の制御のもとに必要な各種情報を表示する。通信I/F17は、例えばインターネット、LAN(Local Area Network)等に接続し、外部装置との間の通信制御をするための装置である。通信I/F17による通信は無線又は有線に限定されるものではない。
設計装置100によって行われる処理を実現するプログラムは、例えば、CD−ROM(Compact Disc Read-Only Memory)等の記憶媒体19によって設計装置100に提供される。
設計装置100によって行われる処理を実現するプログラムは、例えば、CD−ROM(Compact Disc Read-Only Memory)等の記憶媒体19によって設計装置100に提供される。
ドライブ装置18は、ドライブ装置18にセットされた記憶媒体19(例えば、CD−ROM等)と設計装置100とのインターフェースを行う。
また、記憶媒体19に、後述される本実施例に係る種々の処理を実現するプログラムを格納し、この記憶媒体19に格納されたプログラムは、ドライブ装置18を介して設計装置100にインストールされる。インストールされたプログラムは、設計装置100により実行可能となる。
尚、プログラムを格納する媒体としてCD−ROMに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、CD−ROMの他に、DVDディスク、USBメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
図8は、設計装置の機能構成例を示す図である。図8において、設計装置100は、主に、フロアプラン部40と、PSW配置位置決定部50と、レイアウト設計部60とを有する。フロアプラン部40と、PSW配置位置決定部50と、レイアウト設計部60とは、CPU11が対応するプログラムを実行することによる処理によって実現される。また、記憶部130は、設計仕様情報30、ネットリスト31、物理情報32、セルライブラリ33等を記憶する。
フロアプラン部40は、ネットリスト31及び設計仕様情報30に基づいて、チップ内に、複数の論理モジュールを含む各PDの配置位置を決定する。各PD配置位置を示す物理情報32が記憶部130に出力される。本実施例では、フロアプラン部40において、PD毎のPSWの配置位置を決定しない。
PSW配置位置決定部50は、PD毎にPD内のPSWの配置位置を決定する。PSW配置位置決定部50は、グループ化部51と、仮配置部52と、PSW配置部53と、配置リージョン設定部54と有する。
グループ化部51は、ネットリスト31に基づいて、PD毎に、設計仕様情報30を参照して論理モジュールをグループ化する。
仮配置部52は、通常セルを仮配置する。仮配置部52は、カラム型PSWのサイズ分の領域を確保して、電源制御されるPD毎にPD内に通常セルを仮配置する。つまり、カラム型PSWを配置する領域には、通常セルを仮配置しない。カラム型PSWを配置する領域は、各論理モジュールの周辺に確保される。また、チップ内の電源制御されない領域においても、通常セルを仮配置する。記憶部130に記憶された物理情報32に、通常セルの配置位置が追加される。
PSW配置部53は、各PDに対して、論理モジュール毎に論理モジュールの周辺に確保した領域にPSWを配置する。物理情報32に、PSWの配置位置が追加される。
配置リージョン設定部54は、物理情報32を参照して、論理モジュールグループ周辺のPSWの配置位置を示すPSW座標に基づいて、通常セルが配置される境界を示す配置リージョンを設定する。物理情報32に、配置リージョン毎に配置リージョンを表す座標群が追加される。
レイアウト設計部60は、ネットリスト31及び物理情報32を用いて、レイアウト設計を行う。
フロアプラン部40の処理後に、本実施例に係るPSW配置位置決定部50による処理を行うことで、レイアウト設計部60では、配置リージョンに従って通常セルの配置が定まるため、通常セルが、配置リージョンを超えて、即ち、PSWをジャンプして配置されることがない。従って、本実施例の適用のない、フロアプラン部40によってPSWを所定の配置方法によって配置した後に通常セルを仮配置した場合に比べて、チップのレイアウト後のタイミング検証において収束性を良くすることができる。
設計仕様情報30は、開発するチップの設計仕様が示されている。ネットリスト31は、セル間の接続情報を含む。また、ネットリスト31は、論理モジュールを階層構造で示した情報を含んでいる(図9)。物理情報32には、PDの配置位置、通常セルの配置位置、PSWの配置位置、及び配置リージョンの配置位置の座標が記憶される。セルライブラリ33には、カラム型PSW2b等を含む複数種類のセルの情報がライブラリとして記憶されている。
PSW配置位置決定部50が参照するネットリスト31の構成例を図9で説明する。図9は、ネットリストの構成例を示す図である。図9において、ネットリスト31では、論理モジュールA、B、C、・・・、aa、ab、ac、・・・aa1、aa2、aa3、・・・が階層構造で示されている。
最上位の論理モジュールA、B、C等が、夫々、PD_1、PD_2、PD_3等に相当する例を示しているが、ネットリスト31には、これらの論理モジュール以外に電源制御を行わない、つまり、常時電源ON状態とする論理モジュールの情報も含まれている。
論理モジュール毎に、論理モジュールを構成する論理モジュールが示される。例えば、最上位層の論理モジュールAは、論理モジュールaa、ab、ac、・・・を含む。更に、モジュールaaは、論理モジュールaa1、aa2、aa3、・・・を含む。
グループ化部51によって、例えば、論理モジュールaaが論理モジュールグループM1に分類される。つまり、論理モジュールaaに含まれる論理モジュールaa1、aa2、aa3、・・・が同じ論理モジュールグループM1に分類される。
論理モジュールab1が論理モジュールグループM2に分類される。つまり、論理モジュールab1のみが論理モジュールグループM2に分類される。また、論理モジュールab2のみが論理モジュールグループM3に分類される。
以下に、設計装置100における各処理について説明する。先ず、フロアプラン部40によるPDの配置位置の決定について図10で説明する。図10は、フロアプラン部によるパワードメインの配置位置の決定例を示す図である。
図10において、フロアプラン部40は、ネットリスト31を参照して、エリアI/Oを採用したチップ10のセル配置領域10aにPD_1、PD_2、PD_3、・・・PD_n(以下、総称して「PD」と言う)の配置位置を決定する。パワードメインに配置する論理モジュールは、設計仕様情報30で定められている。
次に、グループ化部51によるグループ化処理について図11で説明する。図11は、グループ化処理を説明するためのフローチャート図である。図11において、グループ化部51は、全てのPD内の論理モジュールはグループに属しているか否かを判断する(ステップS11)。
全てのPD内の論理モジュールがグループに属している場合(ステップS11のYES)、グループ化部51は、このグループ化処理を終了する。次に、仮配置部52による仮配置処理が実行される。
一方、全てのPD内の論理モジュールがグループに属していない場合(ステップS11のNO)、グループ化部51は、任意のPDを選択する(ステップS12)。
そして、グループ化部51は、全ての論理モジュールはグループに属しているか否かを判断する(ステップS13)。全ての論理モジュールがグループに属している場合(ステップS13のYES)、グループ化部51は、ステップS11へ戻り、上述同様の処理を実行する。
全ての論理モジュールがグループに属していない場合(ステップS13のNO)、グループ化部51は、論理階層の上位層から順番に任意の論理モジュールを選択する(ステップS14)。論理階層において、同一レベルの論理モジュールを選択する順番は任意である。
そして、グループ化部51は、選択した論理モジュールが0.1MGateであるか否かを判断する(ステップS15)。0.1MGate以下である場合(ステップS15のYES)、グループ化部51は、論理モジュールを論理モジュールグループとし(ステップS18)、ステップS13へと戻り、上述同様の処理を繰り返す。
一方、0.1MGateを超える場合(ステップS15のNO)、グループ化部51は、当該論理モジュールの1つ下に論理階層が存在するか否かを判断する(ステップS16)。論理階層が存在しない場合(ステップS16のNO)、グループ化部51は、論理モジュールを論理モジュールグループとし(ステップS18)、ステップS13へと戻り、上述同様の処理を繰り返す。
ステップS18において、論理モジュールグループを決定した際に、PD毎に、論理モジュールグループとして判断した論理モジュールの識別情報を対応づけた論理モジュールグループ情報34を記憶部130に記憶する。
一方、論理階層が存在する場合(ステップS16のYES)、グループ化部51は、論理モジュールの1つ下の論理階層の任意の論理モジュールを選択する(ステップS17)。論理階層において、同一レベルの論理モジュールを選択する順番は任意である。そして、ステップS15へと戻り、上述同様の処理を繰り返す。
図12は、グループ化処理の結果例を模擬的に示した図である。図12では、PD_1のグループ化処理の結果例を示している。PD_1内に配置される全ての論理モジュールが、論理モジュールグループ1、2、3、・・・nにグループ化される。
一般的にパワードメインは5M〜10Mgate程度の回路規模であるため、上述したグループ化処理によって、凡そ50〜100程度の論理モジュールグループ数となる。
上述したグループ化処理では、0.1Mgate規模で論理モジュールをグループ化しているが、この値はデザインやテクノロジによって変えてもよい。また、グループ化処理に対応するプログラムにおいて、ユーザ等によって設定可能な変数にしても良い。28nmデザインの場合、0.1MGate規模が実施例として適切な値である。
図13は、電源バンプの配置間隔と論理モジュールグループの配置領域との関係を説明するための図である。図13で示すように、電源バンプ1bの配置間隔と論理モジュールグループMpの配置エリアが同等になるように調整することが、IRドロップを低減する観点において最適な実施例となる。PSW2bが電源バンプ1bの近傍に配置されるため、IRドロップを低減できる。
次に、仮配置部52による仮配置処理について説明する。図14は、仮配置処理を説明するための図である。図14において、仮配置部52による仮配置処理では、既知の技術を用いる。セル配置コマンドを使用して、チップ全体のセル配置が実施される。
その結果、チップ10内の、電源制御されるPD_1〜PD_n内及び常時電源供給されるPD_1〜PD_n以外の領域に通常セル7が配置される。通常セル7の配置位置は、物理情報32に記憶される。
仮配置処理において、下記に示す処理を考慮した通常セル7の配置を行うことが望ましい。
[1]グループ化部51によってグループ化された各論理モジュールグループにおいて、通常セル7がばらばらにならないようにまとめて配置する。
[2]論理モジュールグループ毎に通常セル7をまとめて配置する際に、論理モジュールグループの配置領域の周辺に、使用するカラム型PSW2bの大きさ分の領域を確保する。更に、最適化等で通常セル7の配置領域が増加することを考慮して、PSW2bの配置予定の領域にマージンを設けて確保することがより好ましい。
[1]グループ化部51によってグループ化された各論理モジュールグループにおいて、通常セル7がばらばらにならないようにまとめて配置する。
[2]論理モジュールグループ毎に通常セル7をまとめて配置する際に、論理モジュールグループの配置領域の周辺に、使用するカラム型PSW2bの大きさ分の領域を確保する。更に、最適化等で通常セル7の配置領域が増加することを考慮して、PSW2bの配置予定の領域にマージンを設けて確保することがより好ましい。
仮配置部52による仮配置処理の結果例について説明する。図15は、仮配置処理の結果例を説明するための図である。
図15(A)では、上記処理[2]を考慮しなかった場合の通常セル7を配置した場合を示している。この例では、論理モジュールグループM1、M2、及びM3毎に通常セル7がまとまるように配置されているが、論理モジュールグループ間には、PSW2bを配置するための十分な領域が確保されていない。各論理モジュールグループM1、M2、及びM3の周辺にPSW2bを配置することができない。
一方、図15(B)では、上記処理[1]及び[2]を考慮した本実施例における、通常セル7を配置した場合を示している。この例では、論理モジュールグループM1、M2、及びM3毎に通常セル7がまとまるように配置し、かつ、論理モジュールグループ間には、PSW2bを配置するための十分な領域を確保したため、各論理モジュールグループM1、M2、及びM3の周辺にPSW2bを配置することができている。
図16は、仮配置処理を説明するためのフローチャート図である。図16において、仮配置部52は、設計仕様情報30に基づいて、セルライブラリ33から、カラム型PSW2bを選択し(ステップS21)、PSW2bのサイズを取得する(ステップS22)。選択されたPSW2bのサイズを示すPSWサイズ情報33−2が記憶部130に記憶される。
ステップS23〜S27は、仮配置部52のセル配置本体部分での処理に相当する。
仮配置部52は、全PD内部の論理モジュールグループの配置が完了しているか否かを判断する(ステップS23)。全PD内部の論理モジュールグループの配置が完了している場合(ステップS23のYES)、仮配置部52は、この仮配置処理を終了する。そして、PSW配置部53によるPSW配置処理が実行される。
一方、全PD内部の論理モジュールグループの配置が完了していない場合(ステップS23のNO)、仮配置部52は、論理モジュールグループ情報34から任意のPDを選択し(ステップS24)、PD内部の全論理モジュールグループの配置が完了しているか否かを判断する(ステップS25)。
PD内部の全論理モジュールグループの配置が完了している場合(ステップS25のYES)、仮配置部52は、ステップS23へと戻り、上記同様の処理を繰り返す。一方、PD内部の全論理モジュールグループの配置が完了していない場合(ステップS25のNO)、仮配置部52は、任意の論理モジュールグループを論理モジュールグループ情報34から選択する(ステップS26)。
そして、仮配置部52は、セル配置コマンド(既知の技術)を使い、選択した論理モジュールグループの周辺部に、PSWサイズ情報33−2で示されるPSWサイズ分の配置領域を確保しながら、論理モジュールグループを配置する(ステップS27)。論理モジュールグループに属する通常セル7がチップ10に配置される。通常セル7の配置位置が物理情報32に記憶される。その後、仮配置部52は、ステップS23へと戻り、上記同様の処理を繰り返す。
PDに対する処理の完了は、各PDの識別情報に対応させてPDフラグを設けることにより確認可能である。同様に、論理モジュールグループに対する処理の完了は、各論理モジュールグループの識別情報に対応させてLMGフラグを設けることにより確認可能である。処理を完了したときに対応するPDフラグ或いはLMGフラグに「1」を設定すれば良い。以下の処理においても同様である。
PSW配置部53によるPSW配置処理について図17で説明する。図17は、PSW配置処理を説明するためのフローチャート図である。図17において、PSW配置部53は、論理モジュールグループ情報34から、任意のPDを選択し(ステップS31)、更に、選択したPD内の任意の論理モジュールグループを選択する(ステップS32)。
PSW配置部53は、選択した論理モジュールグループの周りにPSW2bを配置する(ステップS33)。PSW2bの配置位置が物理情報32に記憶される。
そして、PSW配置部53は、未処理の論理モジュールグループが残っているか否かを判断する(ステップS34)。残っている場合(ステップS34のYES)、PSW配置部53は、ステップS32へと戻り、上記同様の処理を繰り返す。
一方、残っている場合(ステップS34のNO)、PSW配置部53は、未処理のPDが残っているか否かを判断する(ステップS35)。残っている場合(ステップS35のYES)、PSW配置部53は、ステップS31へと戻り、上記同様の処理を繰り返す。一方、残っていない場合(ステップS35のNO)、PSW配置部53は、このPSW配置処理を終了する。そして、配置リージョン設定部54による配置リージョン設定処理が実行される。
次に、PSW配置部53によるPSW配置処理例を説明する。図18は、PSW配置部によるPSW配置処理例を示す図である。図18(A)は、PD_1に対する仮配置処理を行った結果例を示している。この状態では、通常セル7が仮配置されたのみで、PSW2bは配置されていない。よって、物理情報32には、PD_1、PD_2、PD_3、・・・の配置位置と、通常セル7の配置位置のみが記憶されている。
図18(B)は、PD_1に対するPSW配置処理を行った結果例を示している。PSW配置処理が実行されことにより、論理モジュールグループM1、M2、M3、・・・の夫々の周りにPSW2bが配置されている。ここで、物理情報32に、PSWの配置位置が追加して記憶される。
次に、配置リージョン設定部54による配置リージョン設定処理を説明する。図19は、配置リージョン設定処理を説明するためのフローチャート図である。図19において、配置リージョン設定部54は、論理モジュールグループ情報34を参照して、全PD内部の論理モジュールグループに配置リージョンが設定されているか否かを判断する(ステップS41)。
配置リージョン設定部54は、論理モジュールグループ情報34から、任意のPDを選択して(ステップS42)、PD内部の全論理モジュールグループに配置リージョンが設定されているか否かを判断する(ステップS43)。配置リージョンが設定されている場合(ステップS43のYES)、配置リージョン設定部54は、ステップS41へと戻り、上記同様の処理を繰り返す。
一方、配置リージョンが設定されていない場合(ステップS43のNO)、配置リージョン設定部54は、論理モジュールグループ情報34から任意の論理モジュールグループを選択する(ステップS44)。
そして、配置リージョン設定部54は、論理モジュールグループの周辺のPSWの配置位置を示すPSW座標に合わせて、配置リージョンを作成し(ステップS45)、ステップS43へと戻り、上記同様の処理を繰り返す。物理情報32には、配置リージョンを表す座標群が記憶される。
次に、本実施例において物理情報32に記憶されるデータ例について説明する。図20は、物理情報に記憶されるデータ例を示す図である。図20において、フロアプラン部40によって、物理情報32に、各パワードメインの配置位置を座標で示したPD配置位置情報32aが記憶される。PD配置位置情報32aでは、パワードメインの識別情報であるPD_1、PD_2、・・・、PD_nの夫々に対応付けて配置位置の座標が記憶される。
また、グループ化部51によって、物理情報32のPD配置位置情報32aに対して、PD毎にグループ化した論理モジュールを示すグループ情報が付加される。図9の例において、PD_1には論理モジュールの識別情報であるaaが対応づけられ、PD_2には論理モジュールの識別情報であるab1が対応づけられ、PD_3には論理モジュールの識別情報であるab2が対応づけられれば良い。
仮配置部52によって、物理情報32に、通常セル7の配置位置を座標で示した通常セル配置位置情報32bが記憶される。通常セル配置位置情報32bでは、通常セル7の識別情報であるS_cell_1、S_cell_2、・・・、S_cell_nの夫々に対応付けて配置位置の座標が記憶される。
PSW配置部53によって、物理情報32に、PSW2bの配置位置を座標で示したPSW配置位置情報32cが記憶される。PSW配置位置情報32cでは、PSW2bの識別情報であるPSW_1、PSW_2、・・・、PSW_nの夫々に対応付けて配置位置の座標が記憶される。
配置リージョン設定部54によって、物理情報32に、配置リージョン8の配置位置を座標で示した配置リージョン配置位置情報32dが記憶される。配置リージョン配置位置情報32dでは、配置リージョン8の識別情報であるREGION_1、REGION_2、・・・、REGION_nの夫々に対応付けて配置位置の座標が記憶される。
上述したように、本実施例では、カラム型PSW2bを採用したLSI設計において、パワードメイン毎に論理モジュールをグループ化して通常セル7を仮配置した後に、PSW2bを論理モジュールグループの周辺に配置することで、タイミング収束性を改善することができる。
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1)
コンピュータによって実行される設計方法であって、
チップに配置されたパワードメイン毎に論理モジュールをグループ化し、
グループ化した論理モジュールグループ毎に通常セルを仮配置し、
パワースイッチを前記論理モジュールグループの周辺に配置する
ことを特徴とする設計方法。
(付記2)
前記周辺に配置した前記パワースイッチの配置位置に基づいて、配置リージョンを作成する
ことを特徴とする付記1記載の設計方法。
(付記3)
前記チップに前記パワードメインを配置するフロアプランを行い、
前記フロアプランでは前記パワースイッチの配置を行わない
ことを特徴とする付記2記載の設計方法。
(付記4)
前記グループ化は、前記グループ化の基準であるグループサイズに基づいて、前記論理モジュールをグループ化する
ことを特徴とする付記3記載の設計方法。
(付記5)
記憶部に格納された、前記フロアプランによって配置された前記パワードメインの配置位置を記憶した物理情報に対して、
前記仮配置において、前記通常セルの配置位置を記憶し、
前記パワースイッチの配置において、前記論理モジュールグループの周辺に配置した前記パワースイッチの配置位置を記憶し、
前記配置リージョンの作成において、前記配置リージョンの配置位置を記憶する
ことを特徴とする付記4又は5記載の設計方法。
(付記6)
チップに配置されたパワードメイン毎に論理モジュールをグループ化し、
グループ化した論理モジュールグループ毎に通常セルを仮配置し、
パワースイッチを前記論理モジュールグループの周辺に配置する
処理をコンピュータに実行させる設計プログラム。
(付記7)
チップに配置されたパワードメイン毎に論理モジュールをグループ化するグループ化部と、
グループ化した論理モジュールグループ毎に通常セルを仮配置する仮配置部と、
パワースイッチを前記論理モジュールグループの周辺に配置するパワースイッチ配置部と
を有することを特徴とする設計装置。
(付記8)
パワードメインを有するデバイスであって、
前記パワードメインに配置された通常セルはグループ化され、各グループの周辺にパワースイッチが配置されていることを特徴とするデバイス。
(付記1)
コンピュータによって実行される設計方法であって、
チップに配置されたパワードメイン毎に論理モジュールをグループ化し、
グループ化した論理モジュールグループ毎に通常セルを仮配置し、
パワースイッチを前記論理モジュールグループの周辺に配置する
ことを特徴とする設計方法。
(付記2)
前記周辺に配置した前記パワースイッチの配置位置に基づいて、配置リージョンを作成する
ことを特徴とする付記1記載の設計方法。
(付記3)
前記チップに前記パワードメインを配置するフロアプランを行い、
前記フロアプランでは前記パワースイッチの配置を行わない
ことを特徴とする付記2記載の設計方法。
(付記4)
前記グループ化は、前記グループ化の基準であるグループサイズに基づいて、前記論理モジュールをグループ化する
ことを特徴とする付記3記載の設計方法。
(付記5)
記憶部に格納された、前記フロアプランによって配置された前記パワードメインの配置位置を記憶した物理情報に対して、
前記仮配置において、前記通常セルの配置位置を記憶し、
前記パワースイッチの配置において、前記論理モジュールグループの周辺に配置した前記パワースイッチの配置位置を記憶し、
前記配置リージョンの作成において、前記配置リージョンの配置位置を記憶する
ことを特徴とする付記4又は5記載の設計方法。
(付記6)
チップに配置されたパワードメイン毎に論理モジュールをグループ化し、
グループ化した論理モジュールグループ毎に通常セルを仮配置し、
パワースイッチを前記論理モジュールグループの周辺に配置する
処理をコンピュータに実行させる設計プログラム。
(付記7)
チップに配置されたパワードメイン毎に論理モジュールをグループ化するグループ化部と、
グループ化した論理モジュールグループ毎に通常セルを仮配置する仮配置部と、
パワースイッチを前記論理モジュールグループの周辺に配置するパワースイッチ配置部と
を有することを特徴とする設計装置。
(付記8)
パワードメインを有するデバイスであって、
前記パワードメインに配置された通常セルはグループ化され、各グループの周辺にパワースイッチが配置されていることを特徴とするデバイス。
1、1a、10 チップ
1b 電源バンプ
2 PSW
2a リング型PSW
2b カラム型PSW
3 PMU
4 PD
5 アイソレータ
7 通常セル
8 配置リージョン
11 CPU
12 主記憶装置
13 補助記憶装置
14 入力装置
15 表示装置
17 通信I/F
18 ドライブ
19 記憶媒体
30 設計仕様情報
31 ネットリスト
32 物理情報
33 セルライブラリ
33−2 PSWサイズ情報
34 論理モジュールグループ情報
40 フロアプラン部
50 PSW配置位置決定部
51 グループ化部
52 仮配置部
53 PSW配置部
54 配置リージョン設定部
60 レイアウト設計部
100 設計装置
130 記憶部
1b 電源バンプ
2 PSW
2a リング型PSW
2b カラム型PSW
3 PMU
4 PD
5 アイソレータ
7 通常セル
8 配置リージョン
11 CPU
12 主記憶装置
13 補助記憶装置
14 入力装置
15 表示装置
17 通信I/F
18 ドライブ
19 記憶媒体
30 設計仕様情報
31 ネットリスト
32 物理情報
33 セルライブラリ
33−2 PSWサイズ情報
34 論理モジュールグループ情報
40 フロアプラン部
50 PSW配置位置決定部
51 グループ化部
52 仮配置部
53 PSW配置部
54 配置リージョン設定部
60 レイアウト設計部
100 設計装置
130 記憶部
Claims (5)
- コンピュータによって実行される設計方法であって、
チップに配置されたパワードメイン毎に論理モジュールをグループ化し、
グループ化した論理モジュールグループ毎に通常セルを仮配置し、
パワースイッチを前記論理モジュールグループの周辺に配置する
ことを特徴とする設計方法。 - 前記周辺に配置した前記パワースイッチの配置位置に基づいて、配置リージョンを作成する
ことを特徴とする請求項1記載の設計方法。 - 前記チップに前記パワードメインを配置するフロアプランを行い、
前記フロアプランでは前記パワースイッチの配置を行わない
ことを特徴とする請求項2記載の設計方法。 - 前記グループ化は、前記グループ化の基準であるグループサイズに基づいて、前記論理モジュールをグループ化する
ことを特徴とする請求項3記載の設計方法。 - チップに配置されたパワードメイン毎に論理モジュールをグループ化し、
グループ化した論理モジュールグループ毎に通常セルを仮配置し、
パワースイッチを前記論理モジュールグループの周辺に配置する
処理をコンピュータに実行させる設計プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013202014A JP2015069333A (ja) | 2013-09-27 | 2013-09-27 | 設計方法及び設計プログラム |
US14/494,921 US20150091633A1 (en) | 2013-09-27 | 2014-09-24 | Design method and design device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013202014A JP2015069333A (ja) | 2013-09-27 | 2013-09-27 | 設計方法及び設計プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015069333A true JP2015069333A (ja) | 2015-04-13 |
Family
ID=52739521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013202014A Pending JP2015069333A (ja) | 2013-09-27 | 2013-09-27 | 設計方法及び設計プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150091633A1 (ja) |
JP (1) | JP2015069333A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180088589A (ko) * | 2017-01-27 | 2018-08-06 | 에이알엠 리미티드 | 슬립 신호 스티칭 기술 |
CN111104771A (zh) * | 2018-10-26 | 2020-05-05 | 珠海格力电器股份有限公司 | 一种电源关断单元的摆放方法及装置 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9754923B1 (en) * | 2016-05-09 | 2017-09-05 | Qualcomm Incorporated | Power gate placement techniques in three-dimensional (3D) integrated circuits (ICs) (3DICs) |
US10394299B2 (en) | 2016-05-23 | 2019-08-27 | Qualcomm Incorporated | Systems and methods to separate power domains in a processing device |
US9958918B2 (en) | 2016-05-23 | 2018-05-01 | Qualcomm Incorporated | Systems and methods to separate power domains in a processing device |
KR102403735B1 (ko) * | 2017-09-07 | 2022-05-30 | 삼성전자주식회사 | 비대칭적인 엔딩 셀들을 포함하는 집적 회로 및 시스템 온 칩 |
CN110795909B (zh) * | 2019-11-07 | 2023-10-24 | 飞腾信息技术有限公司 | 片上电源开关链的构建方法、装置、设备及存储介质 |
KR20220000587A (ko) * | 2020-06-26 | 2022-01-04 | 에스케이하이닉스 주식회사 | 파워 게이팅 제어 회로 및 이를 포함하는 반도체 장치 |
CN114492290B (zh) * | 2022-04-06 | 2022-07-01 | 飞腾信息技术有限公司 | 芯片的电源开关规划方法、装置、设备及存储介质 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6611025B2 (en) * | 2001-09-05 | 2003-08-26 | Winbond Electronics Corp. | Apparatus and method for improved power bus ESD protection |
US6820240B2 (en) * | 2002-09-25 | 2004-11-16 | International Business Machines Corporation | Voltage island chip implementation |
US6924661B2 (en) * | 2003-02-10 | 2005-08-02 | International Business Machines Corporation | Power switch circuit sizing technique |
TWI371674B (en) * | 2003-05-07 | 2012-09-01 | Mosaid Technologies Inc | Managing power on integrated circuits using power islands |
US7117457B2 (en) * | 2003-12-17 | 2006-10-03 | Sequence Design, Inc. | Current scheduling system and method for optimizing multi-threshold CMOS designs |
US7529958B2 (en) * | 2004-11-15 | 2009-05-05 | Charles Roth | Programmable power transition counter |
US7222248B2 (en) * | 2005-02-22 | 2007-05-22 | International Business Machines Corporation | Method of switching voltage islands in integrated circuits when a grid voltage at a reference location is within a specified range |
US7266797B2 (en) * | 2005-05-19 | 2007-09-04 | International Business Machines Corporation | Automated and electrically robust method for placing power gating switches in voltage islands |
US7402912B2 (en) * | 2005-12-15 | 2008-07-22 | International Business Machines Corporation | Method and power control structure for managing plurality of voltage islands |
FR2897199A1 (fr) * | 2006-02-03 | 2007-08-10 | St Microelectronics Sa | Dispositif de gestion du pic de consommation d'un domaine a chaque mise sous tension |
JP2010515277A (ja) * | 2006-12-31 | 2010-05-06 | サンディスク コーポレイション | インラッシュ制限用電力アイランドを有するシステム、方法、および集積回路 |
US7945875B2 (en) * | 2007-06-14 | 2011-05-17 | Texas Instruments Incorporated | Methodology for hierarchy separation at asynchronous clock domain boundaries for multi-voltage optimization using design compiler |
US7760011B2 (en) * | 2007-08-10 | 2010-07-20 | Texas Instruments Incorporated | System and method for auto-power gating synthesis for active leakage reduction |
US20090204835A1 (en) * | 2008-02-11 | 2009-08-13 | Nvidia Corporation | Use methods for power optimization using an integrated circuit having power domains and partitions |
US8607177B2 (en) * | 2008-04-10 | 2013-12-10 | Nvidia Corporation | Netlist cell identification and classification to reduce power consumption |
US20130073889A1 (en) * | 2008-08-26 | 2013-03-21 | Richard Rauschmayer | Systems and Methods for Modular Power Management |
US8176453B2 (en) * | 2009-01-23 | 2012-05-08 | Springsoft Usa, Inc. | Power-aware debugging |
US20100269074A1 (en) * | 2009-04-17 | 2010-10-21 | Lsi Corporation | Predictive Power Management Semiconductor Design Tool and Methods for Using Such |
US8004922B2 (en) * | 2009-06-05 | 2011-08-23 | Nxp B.V. | Power island with independent power characteristics for memory and logic |
US8812879B2 (en) * | 2009-12-30 | 2014-08-19 | International Business Machines Corporation | Processor voltage regulation |
US8407635B2 (en) * | 2011-01-31 | 2013-03-26 | Cadence Design Systems, Inc. | System and method for automatic extraction of power intent from custom analog/custom digital/mixed signal schematic designs |
JP5893336B2 (ja) * | 2011-10-24 | 2016-03-23 | キヤノン株式会社 | 電源制御装置、電源制御装置の制御方法、およびプログラム |
EP2592754B1 (en) * | 2011-11-09 | 2015-08-12 | ST-Ericsson SA | Multiple supply DVFS |
GB201211340D0 (en) * | 2012-06-26 | 2012-08-08 | Nordic Semiconductor Asa | Control of semiconductor devices |
US9633872B2 (en) * | 2013-01-29 | 2017-04-25 | Altera Corporation | Integrated circuit package with active interposer |
US8954904B1 (en) * | 2013-04-30 | 2015-02-10 | Jasper Design Automation, Inc. | Veryifing low power functionality through RTL transformation |
US9104824B1 (en) * | 2013-04-30 | 2015-08-11 | Jasper Design Automation, Inc. | Power aware retention flop list analysis and modification |
US20150200667A1 (en) * | 2014-01-15 | 2015-07-16 | Qualcomm Incorporated | Collapsible glue logic systems and methods |
-
2013
- 2013-09-27 JP JP2013202014A patent/JP2015069333A/ja active Pending
-
2014
- 2014-09-24 US US14/494,921 patent/US20150091633A1/en not_active Abandoned
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180088589A (ko) * | 2017-01-27 | 2018-08-06 | 에이알엠 리미티드 | 슬립 신호 스티칭 기술 |
KR102632111B1 (ko) * | 2017-01-27 | 2024-02-01 | 에이알엠 리미티드 | 슬립 신호 스티칭 기술 |
CN111104771A (zh) * | 2018-10-26 | 2020-05-05 | 珠海格力电器股份有限公司 | 一种电源关断单元的摆放方法及装置 |
CN111104771B (zh) * | 2018-10-26 | 2021-09-21 | 珠海格力电器股份有限公司 | 一种电源关断单元的摆放方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20150091633A1 (en) | 2015-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2015069333A (ja) | 設計方法及び設計プログラム | |
US10553575B2 (en) | Semiconductor device having engineering change order (ECO) cells and method of using | |
EP3542286B1 (en) | Adaptive multi-tier power distribution grids for integrated circuits | |
RU2533308C2 (ru) | Энергонезависимая память с разделением разрядных шин записи и чтения | |
US10977407B2 (en) | Superpower gating cell and integrated circuit including the same | |
US8187924B2 (en) | Method, design program and design support device for semiconductor integrated circuit, and semiconductor integrated circuit | |
US11869884B2 (en) | Semiconductor devices, methods of designing layouts of semiconductor devices and methods of fabricating semiconductor devices | |
US20240032270A1 (en) | Cross fet sram cell layout | |
KR20190087844A (ko) | 스위치 셀들을 포함하는 반도체 장치 | |
KR20170094744A (ko) | 집적 회로 및 상기 집적 회로의 제조를 위한 컴퓨터 구현 방법 | |
JP2012142434A (ja) | 半導体集積回路の配線方法、半導体回路配線装置および半導体集積回路 | |
US11881393B2 (en) | Cross field effect transistor library cell architecture design | |
US10747931B2 (en) | Shift of circuit periphery layout to leverage optimal use of available metal tracks in periphery logic | |
JP2009206402A (ja) | 半導体装置の設計方法及び半導体装置 | |
US20160012908A1 (en) | E-fuse array circuit and semiconductor memory apparatus having the same | |
KR102631355B1 (ko) | 반도체 소자 집적 회로 및 그것의 레이아웃을 설계하는 방법 | |
JP2013069070A (ja) | 半導体集積回路の設計装置、及び半導体集積回路の設計方法 | |
JP2007103579A (ja) | 半導体集積回路装置、並びに半導体集積回路装置における電源及びグランド配線レイアウト方法 | |
JP2014182696A (ja) | 半導体装置、半導体装置の設計方法、及びプログラム | |
JP2014029903A (ja) | 半導体装置および設計装置 | |
TWI815222B (zh) | 半導體結構及提供單元陣列的方法 | |
JP5540910B2 (ja) | 集積回路、集積回路設計装置及び集積回路設計方法 | |
JP2009111117A (ja) | 半導体集積回路のレイアウト方法、半導体集積回路設計支援装置およびプログラム | |
JP2006210678A (ja) | 半導体集積回路装置およびそのレイアウト設計方法 | |
JP2013165126A (ja) | 半導体集積回路並びに半導体集積回路の設計方法及び設計装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20150501 |