JP4140013B2 - 半導体集積回路のゲートリサイズ装置及び方法とそのプログラム - Google Patents

半導体集積回路のゲートリサイズ装置及び方法とそのプログラム Download PDF

Info

Publication number
JP4140013B2
JP4140013B2 JP2004099255A JP2004099255A JP4140013B2 JP 4140013 B2 JP4140013 B2 JP 4140013B2 JP 2004099255 A JP2004099255 A JP 2004099255A JP 2004099255 A JP2004099255 A JP 2004099255A JP 4140013 B2 JP4140013 B2 JP 4140013B2
Authority
JP
Japan
Prior art keywords
resizing
gate
information
eco
cover
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.)
Expired - Fee Related
Application number
JP2004099255A
Other languages
English (en)
Other versions
JP2005284826A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2004099255A priority Critical patent/JP4140013B2/ja
Publication of JP2005284826A publication Critical patent/JP2005284826A/ja
Application granted granted Critical
Publication of JP4140013B2 publication Critical patent/JP4140013B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

本発明は、半導体集積回路のCTS(Clock Tree Synthesis)完了後のレイアウト実行内におけるFF(Flip Flop)ゲートサイジングに関する。
従来、半導体集積回路のレイアウト実行内でのゲートサイジング(up−sizing)では、一般にサイジング対象ゲートの既存配置領域が密集していると元の配置位置から移動したところに配置されることがある。とりわけCTS完了後のFFのup−sizingでは、最終段ドライバーからFFの分配範囲が確定しているため、クロックスキューの観点から大きく配置位置が移動することは好ましくない。サイジングされ配置移動されたFFのみならず、当該FFと同一クロック分配ネットに接続される他のFFも含めたスキューが悪化することとなる。
例えば、従来のゲートサイジング装置では、消費電流の変化率が最少のものを選出し、この選出した変化率が零以下の場合は対応する能動素子のサイズを増加させたときの消費電流の変化率を演算して、その変化率が零を越えた場合は各パスの信号遅延を演算して、クリティカルパスが存在する場合は遅延改善率を演算しかつ選択された能動素子のサイズを増加させたときの信号遅延を計算する(例えば、特許文献1参照)。
図1は、ゲートサイジング前のレイアウトイメージにおいて、クロックドライバーのターゲットスキューを満たすことの出来るカバー範囲11を示す。
特開平8−314991号公報
しかしながら、FF12やFF13の既存配置領域は密集しており、従来のゲートサイジングを実行すると、図2に示すゲートサイジング後のレイアウトイメージのFF21、FF22のように元の配置位置から大きく離れた所に配置され、クロックドライバーのカバー範囲11外に飛び出ることがあった。これは、FF21、FF22のみのスキューが悪化するだけでなく、当該カバー範囲11に含まれる全FFのスキュー悪化を招くこととなり問題であった。
そこで本発明は、半導体集積回路のクロックスキューを悪化させないでサイジングを実施するゲートリサイズ装置及び方法を提供することを目的とする。
上述の課題を解決するため、本発明では、ゲートサイジング時に配置移動情報とECO(Engineering Change Order)情報をレポートさせる。ECO情報とは、元来、ゲートサイジングやリピータ挿入などのようにネットリスト変更を伴うタイミング最適化を施した場合に、その変更履歴を残しておき、後にそのタイミング最適化に入力した設計データに対して論理修正を加えた際に、当時のタイミング最適化を忠実かつ高速に復元するために利用される情報である。
そしてクロック分配構造から来る最終段ドライバーのカバー範囲マップを予め準備しておき、配置移動情報の元配置位置からクロック供給されているドライバーのカバー範囲マップを特定して、リサイズ後の配置座標がカバー範囲内にあるかをチェックし、範囲外であれば当該リサイズを実施するECO情報を削除する。これを全てのFFリサイズに対して繰り返し、最後にリサイズ前レイアウトデータに編集後のECO情報を適用することで、クロックスキューを悪化させないFFゲートサイジングのみを実施可能にする。
従来問題となっていた図2のレイアウトイメージに対して、図3のレイアウトイメージに示すようにFF32、FF33のリサイズはキャンセルして、FF34、FF35、FF36、FF37のみをリサイズし、全てのFFがクロックドライバーのカバー範囲11のエリア内に収まった結果となる。
本発明による効果は、CTSが完了したレイアウトにおいてクロックスキューを悪化させることなくFFのゲートサイジングができることにある。その理由は、配置位置チェック手段によりクロックスキューを悪化させるFFゲートサイジングを抑止できるためである。
次に、本発明の最良の形態について図面を参照して説明する。
図4は、本発明の実施例の構成を示す。プログラム制御により動作するコンピュータ(データ処理装置)100と、情報を永続的に記憶するハードディスク(記憶装置)110とから構成されている。コンピュータ(データ処理装置)100は、メモリに格納された制御プログラムによって、FFリサイズ仮実行手段101、配置位置チェック手段102、ECO実行手段103として機能する。これらの手段はそれぞれ概略つぎのように動作する。
FFリサイズ仮実行手段101は、一般的なゲートサイジング実行手段である。但し、次の2つの機能も有することとする。1つは、ゲートリサイズしたインスタンスについて、インスタンス名、リサイズ前配置位置、リサイズ後配置位置を組とする配置移動情報114をレポートする機能であり、もう1つは、ゲートリサイズの変更内容について、インスタンス名、元ゲート名(セル名)、リサイズ後ゲート名(セル名)を組とするECO情報113を出力する機能である。
配置位置チェック手段102は、先ず最終段クロックドライバーの最大分配カバー領域矩形座標情報をクロックドライバーカバーマップ112から順次読み込みカバー矩形リストとして記憶しておく。
次に配置移動情報114を順次読み込み、以下を繰り返す。リサイズ前配置位置から、カバー矩形リストを検索して該当カバー領域を特定して、リサイズ後配置位置が当該カバー領域外となっていないかチェックする。領域外となっていた場合は、当該インスタンス名をリサイズ不可インスタンスリストに登録する。
次にECO情報113を順次読み込み、インスタンス名がリサイズ不可インスタンスリストに存在しなければ、ECO’情報115として出力する。
ECO実行手段103は、配置位置チェック手段102によってクロックドライバーのカバー範囲から突出しないFFリサイズのみに編集されたECO’情報115と(リサイズ前)レイアウトデータ111を入力して、FFリサイズ本処理を実行し、配置を確定し、(リサイズ後)レイアウトデータ116を出力する。
次に、図5のフローチャートを参照して本実施例の動作について詳細に説明する。今、FFリサイズ仮実行手段101にレイアウトデータ111が入力されて、FFリサイズが仮実行され、以下のECO情報と配置移動情報が出力されたとする。
[ECO情報]
# ECO情報
# SWAPGATE インスタンス名 リサイズ前ゲート名 リサイズ後ゲート名
#
SWAPGATE A/B/C DFFX1 DFFX4
SWAPGATE A/B/D DFFX2 DFFX3
[配置移動情報]
# 配置移動情報
# インスタンス名 ORG:(リサイズ前配置座標) NOW:(リサイズ後配置座標)
#
A/B/C ORG:(50.0,50.0) NOW:(110.0,120.0)
A/B/D ORG:(10.0,10.0) NOW:(10.0,10.0)
本実施例のFFリサイズ仮実行手段101、ECO実行手段103における配置処理は、既配置インスタンスは不動にして、サイジングされたインスタンスのみを適切な場所へ移動させて配置させるものとする。ここで、ECO情報ファイルフォーマットは、1行に1つのゲートリサイズ過程を示し、先頭はゲートリサイズを示すキーワードSWAPGATE、第2カラムがリサイズされたインスタンス名、第3カラムがリサイズ前ゲート名、第4カラムがリサイズ後ゲート名をそれぞれ示している。また、配置移動情報ファイルフォーマットは、1行に1つのゲートサイジングの配置移動情報を示し、第1カラムがリサイズされたインスタンス名、第2カラムがリサイズ前配置座標、第3カラムがリサイズ後配置座標をそれぞれ示している。
まず、配置位置チェック手段がクロックドライバーカバーマップを読み込み、カバー矩形リストを記憶する(ステップS1,S2)。クロックドライバーカバーマップは、以下に示すようなファイルであり、1行に1ドライバーのカバー範囲を示し、左カラムから順に矩形領域の左下X座標、左下Y座標、右上X座標、右上Y座標を表している。
[クロックドライバーカバーマップ]
# クロックドライバーカバーマップ
# 矩形領域 左下X座標 左下Y座標 右上X座標 右上Y座標
#
0.0 0.0 100.0 100.0
0.0 0.0 100.0 -100.0
次に、上記配置移動情報を1行毎に読み込み以下のステップを繰り返す(ステップS3〜S7)。一行目では、インスタンス名がA/B/C、リサイズ前座標が(50.0,50.0)、リサイズ後座標が(110.0,120.0)である。リサイズ前座標から既に記憶してあるカバー矩形リストを検索してカバー矩形領域は、0.0 0.0 100.0 100.0であることを得る(ステップS4)。次ぎに、リサイズ後座標が当該矩形領域外となっていないかチェックすると(ステップS5)、領域外となっているので、リサイズ不可リストにインスタンス名を登録する(ステップS6)。ステップS3に戻り2行目も同様にステップS5まで繰り返すと、今度はカバー矩形領域外ではないためステップS5からステップS3に戻る。以下3行目以降も同様に繰り返す。
次ぎに、上記ECO情報を1行毎に読み込み以下のステップを繰り返す(ステップS8〜S12)。一行目では、インスタンス名がA/B/Cである。当該インスタンスについてリサイズ不可リストを検索すると(ステップS9)、リストに該当するためステップS10からステップS8に戻る。二行目では、インスタンス名がA/B/Dであり、同様に繰り返すと(ステップS9〜S10)、リサイズ不可リストに該当しないので、ECO’ファイルとして入力行を出力する(ステップS11)。以下3行目以降も同様に繰り返す。全ての行について処理が施された例が、以下に示すECO’情報である。
[ECO’情報]
# 編集後ECO'情報
# SWAPGATE インスタンス名 リサイズ前ゲート名 リサイズ後ゲート名
# A/B/Cリサイズを抑止
#
SWAPGATE A/B/D DFFX2 DFFX3
最後に、ECO実行手段103にレイアウトデータ111と配置位置チェック手段により編集されたECO’ファイル115を入力して、FFリサイズ本処理を実行し、配置を確定し、レイアウトデータ116を出力する。
ゲートサイジング前のレイアウトイメージを表す図である。 従来のゲートサイジング後のレイアウトイメージを表す図である。 本発明によるゲートサイジング後のレイアウトイメージを表す図である。 本発明の実施例の構成を示す図である。 本発明の実施例の動作を説明するフローチャートである。
符号の説明
100 コンピュータ(データ処理装置)
101 FFリサイズ仮実行手段
102 配置位置チェック手段
103 ECO実行手段
110 ハードディスク(記憶装置)
111 (リサイズ前)レイアウトデータ
112 クロックドライバーカバーマップ
113 ECO情報
114 配置移動情報
115 ECO’情報
116 (リサイズ後)レイアウトデータ

Claims (6)

  1. 半導体集積回路のゲートサイジングにおけるゲートリサイズ装置であって、
    ゲートリサイズしたインスタンスについての配置移動情報と、ゲートリサイズの変更内容についてのECO情報とを記憶装置に出力する機能を有するゲートリサイズ仮実行手段と、
    前記配置移動情報とECO情報に基づき配置位置をチェックする配置位置チェック手段と、
    前記配置位置チェック手段によってクロックドライバーのカバー範囲から突出しないゲートリサイズのみに編集されたECO’情報とリサイズ前レイアウトデータを入力して、ゲートリサイズ本処理を実行し、リサイズ後レイアウトデータを記憶装置に出力するECO実行手段とを備え、
    前記配置位置チェック手段は、クロックドライバーカバーマップから最終段クロックドライバーの最大分配カバー領域矩形座標情報を順次読み込み、カバー矩形リストとして記憶し、
    次に前記配置移動情報を順次読み込み、リサイズ前配置位置から前記カバー矩形リストを検索して該当カバー領域を特定して、リサイズ後配置位置が当該カバー領域外となっていないかチェックし、領域外となっていた場合は、当該インスタンス名をリサイズ不可インスタンスリストに登録する処理を、前記配置移動情報が終了するまで繰り返し、
    次に前記ECO情報を順次読み込み、インスタンス名が前記リサイズ不可インスタンスリストに存在しなければ、前記ECO’情報として記憶装置に出力する処理を、前記ECO情報が終了するまで繰り返すことを特徴とする半導体集積回路のゲートリサイズ装置。
  2. リサイズする前記ゲートがフリップフロップであることを特徴とする請求項1記載の半導体集積回路のゲートリサイズ装置。
  3. 半導体集積回路のゲートサイジングにおけるゲートリサイズ方法であって、
    ゲートリサイズ仮実行手段が、ゲートリサイズしたインスタンスについての配置移動情報と、ゲートリサイズの変更内容についてのECO情報とを記憶装置に出力するステップと、
    配置位置チェック手段が、クロックドライバーカバーマップから最終段クロックドライバーの最大分配カバー領域矩形座標情報を順次読み込み、カバー矩形リストとして記憶するステップと、
    前記配置位置チェック手段が、前記配置移動情報を順次読み込み、リサイズ前配置位置から前記カバー矩形リストを検索して該当カバー領域を特定して、リサイズ後配置位置が当該カバー領域外となっていないかチェックし、領域外となっていた場合は、当該インスタンス名をリサイズ不可インスタンスリストに登録する処理を、前記配置移動情報が終了するまで繰り返すステップと、
    前記配置位置チェック手段が、前記ECO情報を順次読み込み、インスタンス名が前記リサイズ不可インスタンスリストに存在しなければ、クロックドライバーのカバー範囲から突出しないゲートリサイズのみに編集されたECO’情報として記憶装置に出力する処理を、前記ECO情報が終了するまで繰り返すステップと、
    ECO実行手段が、クロックドライバーのカバー範囲から突出しないゲートリサイズのみに編集された前記ECO’情報とリサイズ前レイアウトデータを入力して、ゲートリサイズ本処理を実行し、リサイズ後レイアウトデータを記憶装置に出力するステップとを含むことを特徴とする半導体集積回路のゲートリサイズ方法。
  4. リサイズする前記ゲートがフリップフロップであることを特徴とする請求項3記載の半導体集積回路のゲートリサイズ方法。
  5. 半導体集積回路のゲートサイジングにおけるゲートリサイズを実行するプログラムであって、
    ゲートリサイズしたインスタンスについての配置移動情報と、ゲートリサイズの変更内容についてのECO情報とを記憶装置に出力するステップと、
    クロックドライバーカバーマップから最終段クロックドライバーの最大分配カバー領域矩形座標情報を順次読み込み、カバー矩形リストとして記憶するステップと、
    前記配置移動情報を順次読み込み、リサイズ前配置位置から前記カバー矩形リストを検索して該当カバー領域を特定して、リサイズ後配置位置が当該カバー領域外となっていないかチェックし、領域外となっていた場合は、当該インスタンス名をリサイズ不可インスタンスリストに登録する処理を、前記配置移動情報が終了するまで繰り返すステップと、
    前記ECO情報を順次読み込み、インスタンス名が前記リサイズ不可インスタンスリストに存在しなければ、クロックドライバーのカバー範囲から突出しないゲートリサイズのみに編集されたECO’情報として記憶装置に出力する処理を、前記ECO情報が終了するまで繰り返すステップと、
    クロックドライバーのカバー範囲から突出しないゲートリサイズのみに編集された前記ECO’情報とリサイズ前レイアウトデータを入力して、ゲートリサイズ本処理を実行し、リサイズ後レイアウトデータを記憶装置に出力するステップとをコンピュータに実行させることを特徴とする半導体集積回路のゲートリサイズ・プログラム。
  6. リサイズする前記ゲートがフリップフロップであることを特徴とする請求項5記載の半導体集積回路のゲートリサイズ・プログラム。
JP2004099255A 2004-03-30 2004-03-30 半導体集積回路のゲートリサイズ装置及び方法とそのプログラム Expired - Fee Related JP4140013B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004099255A JP4140013B2 (ja) 2004-03-30 2004-03-30 半導体集積回路のゲートリサイズ装置及び方法とそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004099255A JP4140013B2 (ja) 2004-03-30 2004-03-30 半導体集積回路のゲートリサイズ装置及び方法とそのプログラム

Publications (2)

Publication Number Publication Date
JP2005284826A JP2005284826A (ja) 2005-10-13
JP4140013B2 true JP4140013B2 (ja) 2008-08-27

Family

ID=35183123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004099255A Expired - Fee Related JP4140013B2 (ja) 2004-03-30 2004-03-30 半導体集積回路のゲートリサイズ装置及び方法とそのプログラム

Country Status (1)

Country Link
JP (1) JP4140013B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4706738B2 (ja) 2008-08-20 2011-06-22 日本電気株式会社 遅延解析装置、遅延解析方法、及びプログラム
JP4918934B2 (ja) 2009-08-21 2012-04-18 日本電気株式会社 半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム

Also Published As

Publication number Publication date
JP2005284826A (ja) 2005-10-13

Similar Documents

Publication Publication Date Title
TWI625639B (zh) 用於產生積體電路佈局的電腦實施方法、電腦、電腦可讀取儲存媒體以及藉由該方法所製造的積體電路
JP4644614B2 (ja) レイアウトエディタ装置、配線表示方法、及び配線表示プログラム
JP4492398B2 (ja) 集積回路のレイアウト設計システム及びプログラム
US6539528B2 (en) Methods, systems, and computer program products for designing an integrated circuit that use an information repository having circuit block layout information
JP2004502259A (ja) 階層型金属末端、包囲、および曝露をチェックする方法およびシステム
US8166432B2 (en) Timing verification method and timing verification apparatus
JP4140013B2 (ja) 半導体集積回路のゲートリサイズ装置及び方法とそのプログラム
EP3298517A1 (en) Visualization of analysis process parameters for layout-based checks
US20180150587A1 (en) Graphical user interface to facilitate routing of a physical connection in a hierarchical integrated circuit design
US20120265493A1 (en) Method for technology porting of cad designs, and computer program product therefor
JP2009134439A (ja) ソフトマクロを用いたレイアウト設計方法、ソフトマクロのデータ構造及びソフトマクロライブラリの作成方法
US8032847B2 (en) Layout design method of semiconductor integrated circuit
US20070180410A1 (en) System and method for reducing the power consumption of clock systems
JP2018112995A (ja) 迂回配線チェックプログラム、迂回配線チェック方法、および情報処理装置
US20140189629A1 (en) Pattern-based power-and-ground (pg) routing and via creation
JP2010117963A (ja) 設計支援方法
JP4946655B2 (ja) 設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置および設計支援方法
JP2000133718A (ja) 配線容量改善支援装置、配線容量改善支援方法および配線容量改善支援プログラムを記録した媒体
JP2001298092A (ja) 機能ブロック端子の分割方法とこの方法を記録した記録媒体及びこの方法による自動配線処理装置
JP2964995B2 (ja) 図形処理装置
US7979821B2 (en) Method of verifying semiconductor integrated circuit and design program
JP2017021571A (ja) 半導体集積回路、その設計支援装置および設計方法
WO2014105868A1 (en) What-if partitioning and timing
JP3012429B2 (ja) レイアウト・データ作成装置
JP4537907B2 (ja) ピンレイアウト検証支援システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080317

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080508

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: 20080515

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080528

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130620

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees