図面 (/)

技術 決定装置、決定方法、および決定プログラム

出願人 富士通株式会社
発明者 黒川日高磯村直美
出願日 2012年9月21日 (8年2ヶ月経過) 出願番号 2012-208982
公開日 2014年4月10日 (6年7ヶ月経過) 公開番号 2014-063405
状態 特許登録済
技術分野 CAD ICの設計・製造(配線設計等)
主要キーワード 接触辺 集中度合 設計変更箇所 仮想階層 分割領域群 Y座標 ワイヤ幅 分割係数
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2014年4月10日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

タイミング解析で必要とされる精度を保てる範囲でRC抽出の処理時間を削減すること。

解決手段

設計対象回路レイアウトデータ100は、格子状に分割されている。レイアウトデータ100上には、セルインスタンスワイヤ実装されている。また、レイアウトデータ100を利用してタイミング解析を実行した結果、タイミング制約を満たしていない場合には、設計者は、セルインスタンスやワイヤなどの実装部品設計変更を行う。設計変更範囲の近傍に位置する分割エリアもRC抽出範囲となりうる。補正範囲1,2は、設計変更範囲の集中度合を考慮して特定される範囲である。補正範囲3は、隣接する分割エリア内の配線密度配線幅を考慮して特定される範囲である。

概要

背景

LSI(Large Scale Integration)設計におけるタイミング解析では、配線寄生容量抽出(以下、「RC抽出」と称す。)が必要である。RC抽出は、どのセルビアワイヤが、チップ上のどの位置に配置、配線されるかといった実装情報の影響を考慮して行われる。また、タイミング解析において設計変更があると、設計変更に合わせてすべての実装情報に対して再度RC抽出を実行する必要がある。

近年、設計規模が大きくなり、それに伴い実装情報も増加しているため、タイミング解析の中でRC抽出時間の割合が増大してきている。現在の設計規模でRC抽出が繰り返し行われると、TAT(Turn Around Time)が悪化してしまい、実用的でなくなる。このため、レイアウト設計で一部レイアウトを変更した場合に、変更した箇所に関連する範囲についてRC抽出を行う技術が開示されている。

概要

タイミング解析で必要とされる精度を保てる範囲でRC抽出の処理時間を削減すること。設計対象回路レイアウトデータ100は、格子状に分割されている。レイアウトデータ100上には、セルインスタンスやワイヤが実装されている。また、レイアウトデータ100を利用してタイミング解析を実行した結果、タイミング制約を満たしていない場合には、設計者は、セルインスタンスやワイヤなどの実装部品の設計変更を行う。設計変更範囲の近傍に位置する分割エリアもRC抽出範囲となりうる。補正範囲1,2は、設計変更範囲の集中度合を考慮して特定される範囲である。補正範囲3は、隣接する分割エリア内の配線密度配線幅を考慮して特定される範囲である。

目的

本発明は、タイミング解析で必要とされる精度を保てる範囲でRC抽出の処理時間を削減することを目的とする

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

記憶装置に記憶されている設計対象回路に関する設計範囲を示すレイアウトデータを分割した分割領域群の中から、設計変更範囲内の分割領域に隣接する設計変更範囲外の隣接分割領域を検出する検出部と、前記分割領域群のうち前記設計変更範囲外の各分割領域について前記検出部によって隣接分割領域として検出された検出回数計数する計数部と、前記計数部によって計数された検出回数が2以上となる所定回数以上であるか否かを判断する判断部と、前記判断部によって前記所定回数以上であると判断された分割領域を、配線寄生容量抽出対象領域に決定する決定部と、を有することを特徴とする決定装置

請求項2

前記検出部は、前記分割領域群の中から、前記設計変更範囲内の分割領域および前記決定部によって前記抽出対象領域(以下、「第1の抽出対象領域」という)に決定された分割領域に隣接し、かつ、前記第1の抽出対象領域に決定されていない前記設計変更範囲外の隣接分割領域を検出し、前記決定部は、前記検出部によって検出された、前記設計変更範囲内の分割領域および前記第1の抽出対象領域に決定された分割領域に隣接し、かつ、前記第1の抽出対象領域に決定されていない前記設計変更範囲外の隣接分割領域を、配線寄生容量の第2の抽出対象領域に決定することを特徴とする請求項1に記載の決定装置。

請求項3

前記検出部は、前記分割領域群の中から、前記設計変更範囲内の分割領域および前記決定部によって前記第2の抽出対象領域に決定された分割領域に隣接し、かつ、前記第1または第2の抽出対象領域に決定されていない前記設計変更範囲外の隣接分割領域を検出し、前記決定部は、前記検出部によって検出された、前記設計変更範囲内の分割領域および前記第2の抽出対象領域に決定された分割領域に隣接し、かつ、前記第2の抽出対象領域に決定されていない前記設計変更範囲外の隣接分割領域を、前記第2の抽出対象領域に決定することを特徴とする請求項2に記載の決定装置。

請求項4

前記検出部は、隣接する分割領域が前記設計変更範囲外で、かつ、前記抽出対象領域(以下、「第1の抽出対象領域」という)に決定されていない、前記設計変更範囲内の特定の分割領域を検出するとともに、前記設計変更範囲外で、かつ、前記第1の抽出対象領域に決定されていない、前記特定の分割領域に隣接する特定の隣接分割領域を検出し、前記決定部は、前記検出部によって検出された前記特定の分割領域から前記特定の隣接分割領域への配列方向に沿って、前記特定の分割領域から、少なくとも前記特定の隣接分割領域を含む1以上の分割領域を、配線寄生容量の第3の抽出対象領域に決定することを特徴とする請求項1に記載の決定装置。

請求項5

前記設計範囲の面積に対する前記設計範囲上の配線の面積の割合に基づいて、前記配列方向に沿う前記第3の抽出対象領域の配列個数を設定する設定部を有し、前記決定部は、前記配列方向に沿って、前記特定の分割領域から前記設定部によって設定された配列個数分の分割領域を、前記第3の抽出対象領域に決定することを特徴とする請求項4に記載の決定装置。

請求項6

前記設計変更範囲内の分割領域および前記抽出対象領域の位置を、前記記憶装置での読み出し開始位置が近くなる位置に変更する変更部を有することを特徴とする請求項1に記載の決定装置。

請求項7

前記設計範囲に実装される実装部品の面積に基づく前記設計範囲の分割数を算出する算出部と、前記算出部によって算出された分割数に基づいて前記設計範囲を分割する分割部と、を有し、前記検出部は、前記分割部によって前記設計範囲を示すレイアウトデータから分割された分割領域群の中から、前記設計変更範囲内の分割領域に隣接する設計変更範囲外の隣接分割領域を検出することを特徴とする請求項1〜6のいずれか一つに記載の決定装置。

請求項8

設計範囲に実装される実装部品の面積に基づく前記設計範囲の分割数を算出する算出部と、前記算出部によって算出された分割数に基づいて前記設計範囲を示すレイアウトデータを分割する分割部と、前記分割部によって前記設計範囲を示すレイアウトデータから分割された分割領域群の中から、設計変更範囲内の分割領域を、配線寄生容量の抽出対象領域に決定する決定部と、を有することを特徴とする決定装置。

請求項9

コンピュータが、記憶装置に記憶されている設計対象回路に関する設計範囲を示すレイアウトデータを分割した分割領域群の中から、設計変更範囲内の分割領域に隣接する設計変更範囲外の隣接分割領域を検出し、前記分割領域群のうち前記設計変更範囲外の各分割領域について隣接分割領域として検出された検出回数を計数し、計数された検出回数が2以上となる所定回数以上であるか否かを判断し、前記所定回数以上であると判断された分割領域を、配線寄生容量の抽出対象領域に決定する、処理を実行することを特徴とする決定方法

請求項10

記憶装置に記憶されている設計対象回路に関する設計範囲を示すレイアウトデータを分割した分割領域群の中から、設計変更範囲内の分割領域に隣接する設計変更範囲外の隣接分割領域を検出し、前記分割領域群のうち前記設計変更範囲外の各分割領域について隣接分割領域として検出された検出回数を計数し、計数された検出回数が2以上となる所定回数以上であるか否かを判断し、前記所定回数以上であると判断された分割領域を、配線寄生容量の抽出対象領域に決定する、処理をコンピュータに実行させることを特徴とする決定プログラム

技術分野

0001

本発明は、決定装置決定方法、および決定プログラムに関する。

背景技術

0002

LSI(Large Scale Integration)設計におけるタイミング解析では、配線寄生容量抽出(以下、「RC抽出」と称す。)が必要である。RC抽出は、どのセルビアワイヤが、チップ上のどの位置に配置、配線されるかといった実装情報の影響を考慮して行われる。また、タイミング解析において設計変更があると、設計変更に合わせてすべての実装情報に対して再度RC抽出を実行する必要がある。

0003

近年、設計規模が大きくなり、それに伴い実装情報も増加しているため、タイミング解析の中でRC抽出時間の割合が増大してきている。現在の設計規模でRC抽出が繰り返し行われると、TAT(Turn Around Time)が悪化してしまい、実用的でなくなる。このため、レイアウト設計で一部レイアウトを変更した場合に、変更した箇所に関連する範囲についてRC抽出を行う技術が開示されている。

先行技術

0004

特開2009−271607号公報
特開平8−320888号公報

発明が解決しようとする課題

0005

しかしながら、LSIの微細化が進み、実装密度飛躍的に増加している現在の設計環境では、様々な部位で設計変更が生じることから、上述した従来技術では、レイアウト変更した際のRC抽出範囲を適切に定めることが困難である。具体的には、RC抽出範囲が広すぎるとメモリ使用量が多くなるため、解析時間の長期化を招くという問題がある。また、RC抽出範囲を制限するとRC抽出の精度が低減するという問題がある。

0006

本発明は、タイミング解析で必要とされる精度を保てる範囲でRC抽出の処理時間を削減することを目的とする。

課題を解決するための手段

0007

本発明の一側面によれば、記憶装置に記憶されている設計対象回路に関する設計範囲を分割した分割領域群の中から、設計変更範囲内の分割領域に隣接する設計変更範囲外の隣接分割領域を検出し、前記分割領域群のうち前記設計変更範囲外の各分割領域について前記隣接分割領域として検出された検出回数計数し、計数された検出回数が2以上となる所定回数以上であるか否かを判断し、前記所定回数以上であると判断された分割領域を、配線寄生容量の抽出対象領域に決定する決定装置、決定方法、および決定プログラムが提案される。

発明の効果

0008

本発明の一側面によれば、タイミング解析で必要とされる精度を保てる範囲でRC抽出の処理時間を削減することができるという効果を奏する。

図面の簡単な説明

0009

図1は、RC抽出範囲の決定例を示す説明図である。
図2は、決定装置のハードウェア構成例を示すブロック図である。
図3は、決定装置200の機能的構成例を示すブロック図である。
図4は、設計範囲情報のデータ構造の一例を示す説明図である。
図5は、分割エリア情報のデータ構造の一例を示す説明図である。
図6は、レイアウトデータ100上の設計変更範囲を示す説明図である。
図7は、決定部307による決定で得られた補正範囲1を示す説明図である。
図8は、補正範囲2に決定された分割エリアを示す説明図(その1)である。
図9は、補正範囲2に決定された分割エリアを示す説明図(その2)である。
図10は、補正範囲2に決定された分割エリアを示す説明図(その3)である。
図11は、補正範囲2に決定された分割エリアを示す説明図(その4)である。
図12は、補正範囲2に決定された分割エリアを示す説明図(その5)である。
図13は、補正範囲2に決定された分割エリアを示す説明図(その6)である。
図14は、RC抽出範囲の一例を示す説明図である。
図15は、RC抽出範囲外の情報を削除した例を示す説明図である。
図16は、変更部309によるRC抽出範囲の移動後の状態を示す説明図である。
図17は、移動後のRC抽出範囲となる仮想階層を示す説明図である。
図18は、決定装置200によるRC抽出範囲の決定処理手順例を示すフローチャートである。
図19は、図18に示した更新処理(ステップS1802)の詳細な処理手順例を示すフローチャートである。
図20は、図18に示した補正範囲1の設定処理(ステップS1803)の詳細な処理手順例を示すフローチャートである。
図21は、図18に示した補正範囲2の設定処理(ステップS1804)の詳細な処理手順例を示すフローチャート(その1)である。
図22は、図18に示した補正範囲2の設定処理(ステップS1804)の詳細な処理手順例を示すフローチャート(その2)である。
図23は、図18に示した補正範囲3の設定処理(ステップS1805)の詳細な処理手順例を示すフローチャートである。
図24は、図18に示した抽出処理(ステップS1806)の詳細な処理手順例を示すフローチャートである。
図25は、本実施の形態にかかる決定装置200での入出力画面例を示す説明図である。

実施例

0010

以下に添付図面を参照して、この発明にかかる決定装置、決定方法、および決定プログラムの実施の形態を詳細に説明する。

0011

<RC抽出範囲の決定例>
図1は、RC抽出範囲の決定例を示す説明図である。RC抽出範囲とは、配線寄生容量の抽出対象領域となる分割エリアの集合である。設計対象回路のレイアウトデータ100は、格子状に分割されている。レイアウトデータ100の左下頂点原点であり、横軸がX軸、縦軸がY軸である。

0012

また、格子状に分割された各ブロックを、分割エリアと称す。全分割エリアが設計範囲となる。レイアウトデータ100上には、セルインスタンスやワイヤが実装されている。また、レイアウトデータ100を利用してタイミング解析を実行した結果、タイミング制約を満たしていない場合には、設計者は、セルインスタンスやワイヤなどの実装部品の設計変更を行う。設計変更セルインスタンスおよび設計変更ワイヤは、設計変更後の実装部品である。設計変更後の実装部品を含む分割エリア群が設計変更範囲である。設計変更範囲は、RC抽出範囲となる。なお、設計変更前の実装部品が存在する分割エリアや下位階層ブロックが存在する分割エリアは、RC抽出範囲には含まれない。

0013

設計変更範囲の近傍に位置する分割エリアもRC抽出範囲となりうる。設計変更範囲の外周の分割エリア群をRC抽出範囲に含めると、含めない場合に比べてメモリ使用量が多くなり、処理時間が増加する。一方、全く含めないとRC抽出の精度が低減する。本実施の形態では、RC抽出の精度が低減しない必要最小限の設計変更範囲外の分割エリアを、RC抽出範囲に決定することにより、タイミング解析で必要とされる精度を保てる範囲でRC抽出の処理時間の削減を図る。

0014

図1において、補正範囲1は、設計変更範囲の集中度合を考慮して特定される範囲である。補正範囲1は、設計変更範囲外の分割エリアの中で2以上の辺が設計変更範囲に囲まれた分割エリアの集合であり、RC抽出範囲に含まれる。このように、設計変更範囲との接触辺個数の多さにより、周囲の分割エリアがRC抽出範囲となる。たとえば、2辺以上の分割エリアが補正範囲1に含まれ、1辺以下の分割エリアは補正範囲1に含まれない。これにより、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0015

また、補正範囲2は、設計変更範囲の集中度合を考慮して特定される範囲である。補正範囲2は、以下の3種類の分割エリアの集合である。
1)設計変更範囲および補正範囲1以外の分割エリアの中で、1辺が設計変更範囲に隣接し、かつ1辺が補正範囲1に隣接する分割エリア
2)設計変更範囲、補正範囲1、および上記1)の分割エリア以外の分割エリアの中で、上記1)で特定された分割エリアと隣接して、かつ設計変更範囲に隣接する分割エリア
3)設計変更エリア、補正範囲1、上記1)の分割エリア、および上記2)の分割エリア以外の分割エリアの中で、上記2)で特定された分割エリアと隣接して、かつ設計変更範囲に隣接する分割エリア

0016

また、補正範囲3は、隣接する分割エリア内の配線密度配線幅を考慮して特定される範囲である。補正範囲3とは、補正範囲1および補正範囲2を含めたRC抽出範囲と隣接する分割エリア内のワイヤの実装状態に応じて、RC抽出範囲を隣接辺垂直方向にNエリア広げた分割エリアの集合である。変数Nは、分割エリア内の配線密度や配線幅を考慮するために、実装されたワイヤの総面積をWa、フロア面積をFa、使用者から受けた係数をβとして、下記式(1)から求められる。ここで用いる係数βとは、初期値が1である0以上の実数である。βを1以上の値にすることで、補正範囲3に含まれるエリアを大きくすることができる。

0017

N=β(Wa/Fa)・・・(1)

0018

補正範囲3が特定されることにより、補正範囲1および補正範囲2で考慮した設計変更範囲の集中度合だけでは分からない分割エリア内の配線密度や配線幅を考慮して、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0019

<決定装置のハードウェア構成例>
図2は、決定装置のハードウェア構成例を示すブロック図である。図2において、決定装置200は、プロセッサ201、記憶装置202、入力装置203、出力装置204、および通信装置205が、バス206に接続されて構成されている。

0020

プロセッサ201は、決定装置200の全体の制御を司る。また、プロセッサ201は、記憶装置202に記憶されている各種プログラム(OS(Operating System)や本実施の形態の決定プログラム)を実行することで、記憶装置202内のデータを読み出したり、実行結果となるデータを記憶装置202に書き込んだりする。

0021

記憶装置202は、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ磁気ディスクドライブなどで構成され、プロセッサ201のワークエリアになったり、各種プログラム(OSや本実施の形態の表示制御プログラム)や各種データ(各プログラムの実行により得られたデータを含む)を記憶したりする。

0022

入力装置203は、キーボードマウスタッチパネルなどユーザの操作により、各種データの入力を行うインターフェースである。出力装置204は、プロセッサ201の指示により、データを出力するインターフェースである。出力装置204には、ディスプレイプリンタが挙げられる。通信装置205は、ネットワークを介して外部からデータを受信したり、外部にデータを送信したりするインターフェースである。

0023

<決定装置200の機能的構成例>
図3は、決定装置200の機能的構成例を示すブロック図である。決定装置200は、算出部301と、分割部302と、生成部303と、検出部304と、計数部305と、判断部306と、決定部307と、設定部308と、変更部309と、抽出部310と、を有する。算出部301、分割部302、生成部303、検出部304、計数部305、判断部306、決定部307、設定部308、変更部309、および抽出部310は、具体的には、たとえば、図2に示した記憶装置202に記憶されたプログラムをプロセッサ201に実行させることにより、その機能を実現する。

0024

算出部301は、設計範囲に実装される実装部品の面積に基づく設計範囲の分割数を算出する。設計範囲に実装される実装部品とは、レイアウトデータ100に配置・配線されたセルやワイヤである。分割数は、分割エリアの総数である。分割数を多くすると、個々の分割エリアの面積が小さくなり、RC抽出範囲を細かく指定することが可能となる。しかし、後述するように、分割エリアごとに分割エリアを管理する分割エリア情報を持たせているため、分割数を多くすると、分割エリア情報の数も多くなる。分割エリア情報の数が多くなると、後述する、レイアウトデータ100全体の設計範囲情報の作成や、RC抽出の処理に時間がかかる。また、使用メモリ量も増加する。

0025

したがって、分割数の設定に際しては、個々の分割エリアのデータ量と分割数のバランスを考慮する必要があり、そのためには設計範囲の単位面積当たりのデータ量、すなわち、実装密度を基準にする必要がある。以上の要因から、算出部301は、分割サイズを決定する分割数Aを、下記式(2)により算出する。

0026

なお、下記式(2)において、設計範囲の面積はSである。また、実装部品であるセル,ワイヤ,ビアそれぞれの総面積はCa,Wa,Vaである。また、テクノロジ係数は、Cα,Wβ,Vγである。また、設計者により、分割係数αが指定される。分割係数αは0以上の実数であり、初期値はα=1である。また、αを1以上の値とすることにより、分割エリアを大きくすることができる。

0027

A=α(Cα×Ca +Wβ×Wa +Vγ×Va)/S・・・(2)

0028

なお、テクノロジ係数Cα,Wβ,Vγとは、セル,ワイヤ,ビアの特性がチップ設計を行う際に用いるテクノロジによって異なる数値であるため、様々なテクノロジに対応するために設定する係数である。

0029

たとえば、テクノロジ係数Cαは、セルのテクノロジ係数であり、セルの設計に使用するトランジスタの性能や数に比例した係数である。一般的に、同一のテクノロジで設計したセルで比較した場合、トランジスタが高速になるほど、集積度消費電力は高くなる。一方で、RC抽出に与える影響も、速度や集積度に比例して大きくなることから、トランジスタの性能や数に比例したテクノロジ係数Cαを定義することで分割数Aを増減させ、RC抽出の精度を一定に維持することができる。

0030

また、テクノロジ係数Wβは、ワイヤのテクノロジ係数であり、配線幅と反比例した係数である。半導体設計の微細化が進むと、配線幅も細くなり、配線寄生素子の影響を受けやすくなる。そのため、配線幅に反比例したテクノロジ係数Wβを定義することで分割数Aを増減させ、RC抽出の精度を一定に維持することができる。

0031

また、テクノロジ係数Vγは、ビアのテクノロジ係数であり、ビアの配置数抵抗値に比例した係数である。半導体設計の微細化に伴い、ビアの単位面積は小さくなる。その一方で、LSI設計多層化が進み、LSI設計で使用するビアの数は増加する。その際、複数の種類のビアが使用されるが、ビアの種類によって抵抗値は大きく異なる。そのため、ビアがRC抽出に与える影響は、ビアの総面積の他に、ビアの配置数とそれぞれの抵抗値が重要になる。これにより、ビアの配置数と抵抗値に比例したテクノロジ係数Vγを定義することで分割数Aを増減させ、RC抽出の精度を一定に維持することができる。

0032

テクノロジ係数Cα,Wβ,Vγの組み合わせとしては、以下の組み合わせがある。なお、セルの種類、配置位置は固定とし、ワイヤとビアを変化させた例とする。テクノロジ係数Cα,Wβ,Vγの組み合わせは、あらかじめ記憶装置202に記憶させておいてもよいし、設計者が入力装置から入力してもよい。

0033

例1)
設計範囲の総面積S=3000
分割係数α=1
セル総面積:500
テクノロジ係数Cα=60
ワイヤ幅:0.07
ワイヤ総面積:100
テクノロジ係数Wβ=50
ビア抵抗値:200
ビア数:10
ビア総面積:10
テクノロジ係数Vγ=100

0034

この例1)の場合の分割数Aは、上記式(2)を用いると、
A=1×(60×500+50×100+100×10)/3000=12

0035

例2)
設計範囲の総面積S=3000
分割係数α=1
セル総面積:500
テクノロジ係数Cα=60
ワイヤ幅:0.7
ワイヤ総面積:1000
テクノロジ係数Wβ=60
ビア抵抗値:400
ビア数:15
ビア総面積:15
テクノロジ係数Vγ=1200

0036

この例2)の場合の分割数Aは、上記式(2)を用いると、
A=1×(60×500+60×1000+1200×15)/3000=36

0037

分割部302は、算出部301によって算出された分割数Aに基づいて設計範囲を分割する。具体的には、たとえば、分割部302は、X軸方向の分割エリアの個数とY軸方向の分割エリアの個数が均等になるように、設計範囲を分割する。上記の例1)の場合、分割数A=12であるため、分割エリアの個数がX軸方向に3個(または4個)、Y軸方向に4個(または3個)となるように、設計範囲を分割する。上記の例2)の場合、分割数A=36であるため、分割エリアの個数がX軸方向に6個、Y軸方向に6個となるように、設計範囲を分割する。

0038

生成部303は、分割数Aにより分割されたレイアウトデータ100に基づいて、設計範囲情報および分割エリア情報群を生成する。

0039

図4は、設計範囲情報のデータ構造の一例を示す説明図である。設計範囲情報は、分割数Aと、補正範囲1フラグと、補正範囲2フラグと、を記憶する。分割数Aは、算出部301により分割数Aが算出されたとき、または、分割部302により分割数Aで分割されたときに書き込まれる。

0040

補正範囲1フラグは、分割エリア群のうち1つでも補正範囲1となったことを示すフラグである。補正範囲1フラグの初期状態は、「0」である。補正範囲1フラグは、補正範囲1となった分割エリアが出現したときに「1」に設定される。

0041

補正範囲2フラグは、分割エリア群のうち1つでも補正範囲2となったことを示すフラグである。補正範囲2フラグの初期状態は、「0」である。補正範囲2フラグは、補正範囲2となった分割エリアが出現したときに「1」に設定される。

0042

図5は、分割エリア情報のデータ構造の一例を示す説明図である。分割エリア情報は、座標値と、実装情報と、設計変更フラグと、隣接カウンタと、補正フラグと、補正範囲1フラグと、補正範囲2フラグと、補正範囲3フラグと、上部分割エリア情報へのポインタと、下部分割エリア情報へのポインタと、左部分割エリア情報へのポインタと、右部分割エリア情報へのポインタと、を記憶する。分割エリア情報は、分割エリアごとに存在する。

0043

座標値は、その分割エリアの位置を特定する情報である。たとえば、分割エリアの右上頂点の座標値が用いられる。したがって、たとえば、原点Oを左下頂点とする分割エリアの座標値(x,y)は、(x,y)=(1,1)となる。

0044

実装情報は、その分割エリアに実装された部品が何であるかを示す情報である。たとえば、セルやワイヤ、ビアなどが記憶される。また、ANDやORなどのセルの種類、ワイヤの幅、ビアの形状など詳細な情報も記憶してもよい。

0045

設計変更フラグは、その分割エリアが設計変更範囲に該当するか否かを示すフラグである。設計変更フラグの初期状態は、「0」である。設計変更フラグは、設計変更範囲に重複した場合に「1」に設定される。

0046

隣接カウンタは、その分割エリアが何回、設計変更範囲に隣接したかを示すカウンタである。隣接カウンタの初期値は、「0」である。隣接カウンタの値は、その分割エリアの辺がいくつ設計変更範囲と隣接するかを示す。たとえば、隣接カウンタの値が「1」である場合は、その分割エリアのいずれか1辺が設計変更範囲と隣接することを示し、隣接カウンタの値が「2」である場合は、その分割エリアのいずれか2辺が設計変更範囲と隣接することを示す。隣接カウンタの値が「0」である場合は、その分割エリアのいずれの辺も設計変更範囲と隣接していないことを示す。

0047

補正フラグは、その分割エリアが、補正範囲1または補正範囲2に指定された分割エリアに隣接するか否かを示すフラグである。補正フラグの初期状態は、「0」である。補正フラグは、補正範囲1または補正範囲2に指定された分割エリアに隣接する場合に「1」に設定される。

0048

補正範囲1フラグは、その分割エリアが補正範囲1となったことを示すフラグである。補正範囲1フラグの初期状態は、「0」である。補正範囲1フラグは、その分割エリアが補正範囲1に指定されたときに「1」に設定される。

0049

補正範囲2フラグは、その分割エリアが補正範囲2となったことを示すフラグである。補正範囲2フラグの初期状態は、「0」である。補正範囲2フラグは、その分割エリアが補正範囲2に指定されたときに「1」に設定される。

0050

補正範囲3フラグは、その分割エリアが補正範囲3となったことを示すフラグである。補正範囲3フラグの初期状態は、「0」である。補正範囲3フラグは、その分割エリアが補正範囲3に指定されたときに「1」に設定される。

0051

上部分割エリア情報へのポインタは、その分割エリアの上部に隣接する上部分割エリアの分割エリア情報を指定する情報である。下部分割エリア情報へのポインタは、その分割エリアの下部に隣接する下部分割エリアの分割エリア情報を指定する情報である。左部分割エリア情報へのポインタは、その分割エリアの左部に隣接する左部分割エリアの分割エリア情報を指定する情報である。右部分割エリア情報へのポインタは、その分割エリアの右部に隣接する右部分割エリアの分割エリア情報を指定する情報である。

0052

図3戻り、検出部304は、記憶装置202に記憶されている設計対象回路に関する設計範囲を分割した分割領域群の中から、設計変更範囲内の分割領域に隣接する設計変更範囲外の隣接分割領域を検出する。具体的には、例えば、検出部304は、分割エリア群の中から、設計変更範囲の分割エリアに隣接し、かつ、設計変更範囲外に存在する分割エリアを検出する。ここで、設計変更範囲について具体的に説明する。

0053

図6は、レイアウトデータ100上の設計変更範囲を示す説明図である。設計変更範囲は、設計変更ワイヤや設計変更セルインスタンス、設計変更ビア(不図示)などの設計変更箇所を含む分割エリアの集合である。設計変更範囲は、RC抽出範囲に含まれる。検出部304は、設計変更箇所を含む分割エリアの集合を、設計変更範囲として検出する。そして、検出部304は、設計変更範囲に隣接する分割エリアを検出する。検出部304により検出された分割エリアを「隣接分割エリア」と称す。

0054

図3に戻り、計数部305は、分割領域群のうち設計変更範囲外の各分割領域について検出部304によって隣接分割領域として検出された検出回数を計数する。具体的には、たとえば、計数部305は、分割エリア群のうち設計変更範囲外の各分割エリアについて、検出部304によって隣接分割エリアとして検出された検出回数を計数する。

0055

判断部306は、計数部305によって計数された検出回数が2以上となる所定回数以上であるか否かを判断する。所定回数以上と判断された隣接分割エリアが補正範囲1に指定される。所定回数はあらかじめ設定される。所定回数が「2」である場合は、隣接分割エリアのいずれか2辺以上が設計変更範囲と隣接したか否かが判断される。すなわち、所定回数が1回である場合は、設計変更範囲に隣接するすべての隣接分割エリアが補正範囲1に指定されてしまい、補正範囲1の分割エリア数が増大し、メモリ使用量が増大する。したがって、所定回数を2回以上に設定しておくことで、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0056

決定部307は、判断部306によって所定回数以上であると判断された分割領域を、配線寄生容量の抽出対象領域に決定する。具体的には、たとえば、決定部307は、検出回数が所定回数と判断された隣接分割エリアを、配線寄生容量の抽出対象エリアに決定する。配線寄生容量の抽出対象エリアに決定された隣接分割エリアは、RC抽出範囲に含まれることになる。

0057

図7は、決定部307による決定で得られた補正範囲1を示す説明図である。図7に示すように、設計変更範囲の外周の分割エリアすべてではなく、隣接分割エリアのうち検出回数が2回以上の隣接分割エリアの集合が補正範囲1となる。したがって、所定回数を2回以上に設定しておくことで、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0058

図3に戻り、補正範囲2の決定機能(その1)について説明する。検出部304は、分割領域群の中から、設計変更範囲内の分割領域および決定部307によって抽出対象領域(「第1の抽出対象領域」)に決定された分割領域に隣接し、かつ、第1の抽出対象領域に決定されていない設計変更範囲外の隣接分割領域を検出する。具体的には、たとえば、検出部304は、分割エリア群から設計変更範囲内の分割エリアおよび補正範囲1に決定された分割エリアに隣接し、かつ、補正範囲1に決定された分割エリアに決定されていない設計変更範囲外の分割エリアを検出する。

0059

補正範囲1の決定後の段階では、RC抽出範囲は、設計変更範囲および補正範囲1である。したがって、検出部304は、RC抽出範囲である設計変更範囲および補正範囲1の両方に隣接する分割エリアを検出することになる。より具体的には、設計変更範囲と1辺が隣接し、かつ、補正範囲1と1辺が隣接する分割エリアが検出される。なお、すでに補正範囲1に決定された分割エリアや設計変更範囲内の分割エリアは、検出対象から除外される。

0060

また、決定部307は、検出部304によって検出された、設計変更範囲内の分割領域および第1の抽出対象領域に決定された分割領域に隣接し、かつ、第1の抽出対象領域に決定されていない設計変更範囲外の隣接分割領域を、配線寄生容量の第2の抽出対象領域に決定する。具体的には、たとえば、決定部307は、RC抽出範囲である設計変更範囲および補正範囲1の両方に隣接する分割エリアを、補正範囲2の分割エリアに決定する。

0061

図8は、補正範囲2に決定された分割エリアを示す説明図(その1)である。図8は、図7次状態を示している。これにより、補正範囲1には決定されなかったが、RC抽出範囲にふさわしい分割エリアをピンポイントで指定することができるため、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0062

図3に戻り、補正範囲2の決定機能(その2)について説明する。検出部304は、分割領域群の中から、設計変更範囲内の分割領域および決定部307によって第2の抽出対象領域に決定された分割領域に隣接し、かつ、第1または第2の抽出対象領域に決定されていない設計変更範囲外の隣接分割領域を検出する。具体的には、たとえば、検出部304は、分割エリア群から設計変更範囲内の分割エリアおよび補正範囲2に決定された分割エリアに隣接し、かつ、補正範囲1,2に決定された分割エリアに決定されていない設計変更範囲外の分割エリアを検出する。

0063

補正範囲2の決定中の段階では、RC抽出範囲は、設計変更範囲および補正範囲1,2である。したがって、検出部304は、RC抽出範囲である設計変更範囲および補正範囲2の両方に隣接する分割エリアを検出することになる。より具体的には、設計変更範囲と1辺が隣接し、かつ、補正範囲2と1辺が隣接する分割エリアが検出される。なお、すでに補正範囲1,2に決定された分割エリアや設計変更範囲内の分割エリアは、検出対象から除外される。

0064

また、決定部307は、検出部304によって検出された、設計変更範囲内の分割領域および第2の抽出対象領域に決定された分割領域に隣接し、かつ、第2の抽出対象領域に決定されていない前記設計変更範囲外の隣接分割領域を、第2の抽出対象領域に決定する。具体的には、たとえば、決定部307は、RC抽出範囲である設計変更範囲および補正範囲2の両方に隣接する分割エリアを、補正範囲2の分割エリアに決定する。

0065

図9は、補正範囲2に決定された分割エリアを示す説明図(その2)である。図9は、図8の次状態を示している。また、図10は、補正範囲2に決定された分割エリアを示す説明図(その3)である。図10は、図9の次状態を示している。また、図11は、補正範囲2に決定された分割エリアを示す説明図(その4)である。図11は、図10の次状態を示している。また、図12は、補正範囲2に決定された分割エリアを示す説明図(その5)である。図12は、図11の次状態を示している。また、図13は、補正範囲2に決定された分割エリアを示す説明図(その6)である。図13は、補正範囲2の決定機能(その2)の実行を継続した最終結果を示している。これにより、RC抽出範囲にふさわしい分割エリアをピンポイントで指定することができるため、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0066

図3に戻り、補正範囲3の決定機能について説明する。検出部304は、隣接する分割領域が設計変更範囲外で、かつ、第1の抽出対象領域に決定されていない、設計変更範囲内の特定の分割領域を検出する。具体的には、たとえば、検出部304は、設計変更範囲外の分割エリアと隣接する設計変更範囲内の分割エリアを検出する。検出された分割エリアを、特定の分割エリアと称す。

0067

また、検出部304は、設計変更範囲外で、かつ、第1の抽出対象領域に決定されていない、特定の分割領域に隣接する特定の隣接分割領域を検出する。具体的には、たとえば、検出部304は、設計変更範囲外で、かつ、補正範囲1に決定されていない特定の分割エリアに隣接する分割エリアを検出する。検出された分割エリアを特定の隣接分割エリアと称す。特定の分割エリアの配置位置から特定の隣接分割エリアの配置位置へ向かう方向を、配列方向と称す。

0068

決定部307は、検出部304によって検出された特定の分割領域から特定の隣接分割領域への配列方向に沿って、特定の分割領域から、少なくとも特定の隣接分割領域を含む1以上の分割領域を、配線寄生容量の第3の抽出対象領域に決定する。具体的には、たとえば、決定部307は、配列方向に沿って特定の分割エリアから少なくとも特定の隣接分割エリアを含む1以上の分割エリアを、補正範囲3の分割エリアに決定する。より具体的には、配列方向に沿って特定の分割エリアから少なくとも特定の隣接分割エリアを含む1以上の分割領域の配列個数は、設定部308により設定される。

0069

設定部308は、設計範囲の面積に対する設計範囲上の配線の面積の割合に基づいて、配列方向に沿う第3の抽出対象領域の配列個数を設定する。具体的には、たとえば、設定部308は、上記式(1)のN=β(Wa/Fa)を求める。Waは、実装されたワイヤの総面積である。簡略化のため、Waは、分割エリア情報の実装情報にワイヤが記憶されている分割エリアの個数に、分割エリアの面積を乗じた値でもよい。Faは、分割数Aに分割エリアの面積を乗じた値となる。これにより、決定部307は、配列方向に沿って特定の分割エリアから少なくとも特定の隣接分割エリアを含むN個の分割エリアを、補正範囲3の分割エリアに決定することができる。

0070

このように、図1に示したように、配列方向に沿った補正範囲3が得られることになる。したがって、補正範囲1および補正範囲2で考慮した設計変更範囲の集中度合だけでは分からない分割エリア内の配線密度や配線幅を考慮して、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0071

図3に戻り、変更部309は、設計変更範囲内の分割領域および抽出対象領域の位置を、記憶装置202での読み出し開始位置が近くなる位置に変更する。具体的には、たとえば、変更部309は、設計変更範囲内の分割エリアおよび補正範囲1〜3内の分割エリアの位置を、記憶装置202での読み出し開始位置が近くなる位置に変更する。記憶装置202での読み出し開始位置とは、本例では、原点Oとする。したがって、変更部309は、設計変更範囲内の分割エリアおよび補正範囲1〜3内の分割エリアであるRC抽出範囲を、原点Oに向かって平行移動させる。

0072

図14は、RC抽出範囲の一例を示す説明図である。図14のRC抽出範囲は、図1における設計変更範囲、補正範囲1〜3をあわせた範囲である。

0073

図15は、RC抽出範囲外の情報を削除した例を示す説明図である。図15は、図14の次状態を示す。変更部309により、レイアウトデータ100からRC抽出範囲外の情報を削除することで、メモリ使用量の低減化を図ることができる。

0074

図16は、変更部309によるRC抽出範囲の移動後の状態を示す説明図である。図16は、図15の次状態を示す。RC抽出範囲の左端縁の分割エリア列がY軸に一致し、RC抽出範囲の下端縁の分割エリア列がX軸に一致するように、変更部309は、RC抽出範囲を平行移動させる。

0075

図17は、移動後のRC抽出範囲となる仮想階層を示す説明図である。図17は、図16の次状態を示す。図17に示すように、同一階層上にはRC抽出範囲のみが配置配線された状態が仮想的に作成される。この状態を仮想階層と称す。仮想階層を作成することにより、RC抽出に必要なデータを保持するためのテーブルがRC抽出範囲のみとなるため、使用メモリ量を削減することができる。

0076

図3に戻り、抽出部310は、レイアウトデータ100からRC抽出範囲を抽出する。具体的には、たとえば、記憶装置202に記憶されているRC抽出範囲を読み出す。読み出されたRC抽出範囲でRC抽出が実行され、その結果を基にタイミング解析が再度実行されることになる。

0077

なお、ここでは、算出部301および分割部302を用いてレイアウトデータ100を分割する例について説明したが、算出部301を備えない構成としてもよい。この場合、記憶装置202にあらかじめ分割数Aが記憶されているものとする。また、分割部302も備えない構成としてもよい。この場合、分割数Aにより分割されたレイアウトデータ100が記憶装置202に記憶されているものとする。また、決定部307は、検出部304〜判断部306による処理を実行せずに、すなわち、補正範囲1〜3を決定せずに、分割数Aで分割されたレイアウトデータ100について、設計変更範囲をRC抽出範囲に決定してもよい。

0078

<RC抽出範囲の決定処理手順>
図18は、決定装置200によるRC抽出範囲の決定処理手順例を示すフローチャートである。まず、決定装置200は、算出部301および分割部302による分割処理を実行する(ステップS1801)。つぎに、決定装置200は、更新処理(ステップS1802)、補正範囲1の設定処理(ステップS1803)、補正範囲2の設定処理(ステップS1804)、および補正範囲3の設定処理(ステップS1805)を実行する。最後に、決定装置200は、変更部309および抽出部310による抽出処理(ステップS1806)を実行する。

0079

図19は、図18に示した更新処理(ステップS1802)の詳細な処理手順例を示すフローチャートである。まず、決定装置200は、設計範囲情報を読み込む(ステップS1901)。つぎに、決定装置200は、処理カウンタCPを分割数Aに設定する(ステップS1902)。そして、決定装置200は、CP≦1であるか否かを判断する(ステップS1903)。CP≦1である場合(ステップS1903:Yes)、分割エリア情報群から未選択の分割エリア情報を選択する(ステップS1904)。そして、決定装置200は、選択した分割エリア情報分、処理カウンタを減らすため、CPをデクリメントする(ステップS1905)。

0080

このあと、決定装置200は、選択した分割エリア情報の実装情報を参照して、選択した分割エリア情報により特定される分割エリア(以下、選択分割エリア)が、設計変更ワイヤや設計変更セルインスタンス、設計変更ビアなどの設計変更部位を含むか否かを判断する(ステップS1906)。設計変更部位を含まない場合(ステップS1906:No)、ステップS1903に戻る。

0081

一方、設計変更部位を含む場合(ステップS1906:Yes)、決定装置200は、選択した分割エリア情報の設計変更フラグを「1」に設定することで、設計変更範囲に指定する(ステップS1907)。また、決定装置200は、設計変更範囲に指定された選択分割エリアの上下左右の分割エリアの分割エリア情報を呼び出し、呼び出された分割エリア情報の隣接カウンタを1加算する(ステップS1908)。そして、ステップS1903に戻る。

0082

また、ステップS1903において、CP≦1でない場合(ステップS1903:No)、更新処理(ステップS1802)が終了し、補正範囲1の設定処理(ステップS1803)が実行される。

0083

図20は、図18に示した補正範囲1の設定処理(ステップS1803)の詳細な処理手順例を示すフローチャートである。まず、決定装置200は、処理カウンタCPを分割数Aに設定する(ステップS2001)。つぎに、決定装置200は、CP≦1であるか否かを判断する(ステップS2002)。決定装置200は、CP≦1である場合(ステップS2002:Yes)、分割エリア情報群から未選択の分割エリア情報を選択する(ステップS2003)。そして、決定装置200は、選択した分割エリア情報分、処理カウンタを減らすため、CPをデクリメントする(ステップS2004)。

0084

このあと、決定装置200は、選択した分割エリア情報の設計変更フラグを参照して、選択分割エリアが設計変更範囲内の分割エリアであるか否かを判断する(ステップS2005)。設計変更範囲内である場合(ステップS2005:Yes)、補正範囲1の対象外となるため、ステップS2002に戻る。一方、設計変更範囲内でない場合(ステップS2005:No)、決定装置200は、隣接カウンタの値をチェックする(ステップS2006)。

0085

隣接カウンタの値が1以下である場合(ステップS2006:1以下)、補正範囲1の対象外となるため、ステップS2002に戻る。一方、隣接カウンタの値が2以上である場合(ステップS2006:2以上)、決定装置200は、選択分割エリアを補正範囲1に指定する(ステップS2007)。具体的には、決定装置200は、選択分割エリアの分割エリア情報の補正範囲1フラグを「1」に設定する。

0086

そして、決定装置200は、設計範囲情報の補正範囲1フラグをチェックする(ステップS2008)。補正範囲1フラグが「1」である場合(ステップS2008:1)、ステップS2010に移行する。一方、補正範囲1フラグが「0」である場合(ステップS2008:0)、決定装置200は、設計範囲情報の補正範囲1フラグを「1」に設定し(ステップS2009)、ステップS2010に移行する。このあと、決定装置200は、補正範囲1に指定された選択分割エリアの上下左右の分割エリアの分割エリア情報を呼び出し、呼び出した分割エリア情報の補正フラグを「1」に設定する(ステップS2010)。そして、ステップS2002に戻る。

0087

また、ステップS2002において、CP≦1でない場合(ステップS2002:No)、補正範囲1の設定処理(ステップS1803)が終了し、補正範囲2の設定処理(ステップS1804)が実行される。

0088

図21は、図18に示した補正範囲2の設定処理(ステップS1804)の詳細な処理手順例を示すフローチャート(その1)である。まず、決定装置200は、処理カウンタCPを分割数Aに設定する(ステップS2101)。つぎに、決定装置200は、設計範囲情報の補正範囲1フラグをチェックする(ステップS2102)。補正範囲1フラグが「0」である場合(ステップS2102:0)、補正範囲2を設定できないため、補正範囲3の設定処理(ステップS1805)に移行する。

0089

一方、補正範囲1フラグが「1」である場合(ステップS2102:1)、補正範囲1に指定された分割エリアが存在するため、決定装置200は、x=1、y=1とし(ステップS2103)、x列y行の分割エリアを評価対象分割エリアに設定する(ステップS2104)。評価対象分割エリアは、X座標値がx、Y座標値がyの分割エリアである。

0090

そして、決定装置200は、評価対象分割エリアの分割エリア情報の設計変更フラグを参照して、評価対象分割エリアが設計変更範囲内の分割エリアであるか否かを判断する(ステップS2105)。設計変更範囲内である場合(ステップS2105:Yes)、図22のステップS2201に移行する。これにより、設計変更範囲内の分割エリアを補正範囲2の対象外とすることができる。

0091

一方、設計変更範囲内でない場合(ステップS2105:No)、決定装置200は、評価対象分割エリアの分割エリア情報の補正範囲1フラグを参照して、評価対象分割エリアが補正範囲1内の分割エリアであるか否かを判断する(ステップS2106)。補正範囲1内である場合(ステップS2106:Yes)、図22のステップS2201に移行する。これにより、補正範囲1の分割エリアを補正範囲2の対象外とすることができる。

0092

一方、補正範囲1内でない場合(ステップS2106:No)、決定装置200は、評価対象分割エリアの分割エリア情報の補正範囲2フラグを参照して、評価対象分割エリアが補正範囲2内の分割エリアであるか否かを判断する(ステップS2107)。補正範囲2内である場合(ステップS2107:Yes)、図22のステップS2201に移行する。これにより、すでに補正範囲2に指定済みの分割エリアを補正範囲2の対象外とすることができる。

0093

一方、補正範囲2内でない場合(ステップS2107:No)、決定装置200は、評価対象分割エリアの分割エリア情報の隣接カウンタをチェックする(ステップS2108)。隣接カウンタの値が「1」以外である場合(ステップS2108:1以外)、図22のステップS2201に移行する。これにより、1辺のみ設計変更範囲に接する分割エリア以外の分割エリアを対象外とすることができる。

0094

一方、隣接カウンタの値が「1」である場合(ステップS2108:1)、決定装置200は、評価対象分割エリアの分割エリア情報の補正フラグをチェックする(ステップS2109)。補正フラグが「0」である場合(ステップS2109:0)、図22のステップS2201に移行する。これにより、1辺が設計変更範囲に接していても補正範囲1に接していない分割エリアを対象外とすることができる。

0095

一方、補正フラグが「1」である場合(ステップS2109:1)、1辺が設計変更範囲に接し、1辺が補正範囲1または補正範囲2に接することになるため、決定装置200は、評価対象分割エリアを補正範囲2に指定する(ステップS2110)。具体的には、決定装置200は、評価対象分割エリアの分割エリア情報の補正範囲2フラグを「1」に設定する。また、決定装置200は、評価対象分割エリアの上下左右の分割エリアの分割エリア情報に対し、補正フラグを「1」に設定する(ステップS2111)。そして、ステップS2103に戻る。

0096

図22は、図18に示した補正範囲2の設定処理(ステップS1804)の詳細な処理手順例を示すフローチャート(その2)である。まず、決定装置200は、評価対象分割エリアのY座標値yがy=ymaxであるか否かを判断する(ステップS2201)。ymaxは、評価対象分割エリアのY座標値の最大値である。y=ymaxでない場合(ステップS2201:No)、決定装置200は、yをインクリメントしてつぎのy行に移行して、(ステップS2202)、図21のステップS2104に戻る。

0097

一方、y=ymaxである場合(ステップS2201:Yes)、決定装置200は、CPをy分デクリメントし(ステップS2203)、デクリメント後のCPがCP=0であるか否かを判断する(ステップS2204)。CP=0でない場合(ステップS2204:No)、xをインクリメントしてつぎのx列に移行して(ステップS2205)、図21のステップS2104に戻る。一方、CP=0である場合(ステップS2204:Yes)、補正範囲2の設定処理(ステップS1804)が終了し、補正範囲3の設定処理(ステップS1805)が実行される。

0098

図23は、図18に示した補正範囲3の設定処理(ステップS1805)の詳細な処理手順例を示すフローチャートである。まず、決定装置200は、処理カウンタCPを分割数Aに設定する(ステップS2301)。つぎに、決定装置200は、CP≦1であるか否かを判断する(ステップS2302)。決定装置200は、CP≦1である場合(ステップS2302:Yes)、分割エリア情報群から未選択の分割エリア情報を選択する(ステップS2303)。そして、決定装置200は、選択した分割エリア情報分、処理カウンタを減らすため、CPをデクリメントする(ステップS2304)。

0099

このあと、決定装置200は、選択した分割エリア情報の設計変更フラグを参照して、選択分割エリアが設計変更範囲内の分割エリアであるか否かを判断する(ステップS2305)。設計変更範囲内でない場合(ステップS2305:No)、補正範囲3の対象外となるため、ステップS2302に戻る。一方、設計変更範囲内である場合(ステップS2305:Yes)、決定装置200は、選択分割エリアが設計未変更範囲に隣接するか否かを判断する(ステップS2306)。設計未変更範囲に隣接しない場合(ステップS2306:No)、ステップS2302に戻る。

0100

一方、設計未変更範囲に隣接する場合(ステップS2306:Yes)、選択分割エリアは、設計変更範囲内でかつ設計変更範囲外に隣接する分割エリアとなるため、式(1)によりNを求め、NがN≧1であるか否かを判断する(ステップS2307)。N<1である場合(ステップS2307:N<1)、ステップS2302に戻る。一方、N≧1である場合(ステップS2307:N≧1)、選択分割エリアから配列方向にN個配列した分割エリアを補正範囲3に指定する(ステップS2308)。具体的には、決定装置200は、選択分割エリアから配列方向にN個配列した分割エリアの分割エリア情報を呼び出し、呼び出した分割エリア情報の補正範囲3フラグを「1」に設定する。そして、ステップS2302に戻る。

0101

また、ステップS2302において、CP≦1でない場合(ステップS2302:No)、補正範囲3の設定処理(ステップS1805)が終了し、抽出処理(ステップS1806)が実行される。

0102

図24は、図18に示した抽出処理(ステップS1806)の詳細な処理手順例を示すフローチャートである。まず、決定装置200は、処理カウンタCPを分割数Aに設定する(ステップS2401)。つぎに、決定装置200は、CP≦1であるか否かを判断する(ステップS2402)。決定装置200は、CP≦1である場合(ステップS2402:Yes)、分割エリア情報群から未選択の分割エリア情報を選択する(ステップS2403)。そして、決定装置200は、選択した分割エリア情報分、処理カウンタを減らすため、CPをデクリメントする(ステップS2404)。

0103

このあと、決定装置200は、選択した分割エリア情報の設計変更フラグ、補正範囲1フラグ〜補正範囲3を参照して、選択分割エリアがRC抽出範囲内の分割エリアであるか否かを判断する(ステップS2405)。RC抽出範囲内である場合(ステップS2405:Yes)、消去対象外となるため、ステップS2402に戻る。一方、RC抽出範囲内でない場合(ステップS2405:No)、決定装置200は、選択した分割エリア情報を消去し(ステップS2406)、ステップS2402に戻る。

0104

また、ステップS2402において、CP≦1でない場合(ステップS2402:No)、決定装置200は、残存する分割エリア情報群を参照して、RC抽出範囲のX座標値の最小値xminとY座標値の最小値yminとを取得する(ステップS2407)。そして、決定装置200は、RC抽出範囲を、取得した(xmin,ymin)分、原点方向に平行移動する(ステップS2408)。これにより、抽出処理(ステップS1806)が終了する。

0105

<入出力画面例>
図25は、本実施の形態にかかる決定装置200での入出力画面例を示す説明図である。(A)は、設計変更後における決定処理の実行前の画面2501であり、(B)は、決定処理の実行後の画面2502である。(A)では、図6に示したレイアウトデータ100が表示されている。(A)において、分割係数の入力欄2511および補正係数の入力欄2512にそれぞれ上述したα、βの値が入力され、実行ボタン2513が押下されることにより、決定処理が実行され、画面2501が(B)の状態の画面2502に遷移する。画面2502では、図1に示したような実行後のレイアウトデータ100が表示される。

0106

以上説明したように、本実施の形態によれば、タイミング解析で必要とされる精度を保てる範囲でRC抽出の処理時間を削減することができる。特に、補正範囲1を設定することにより、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0107

また、本実施の形態によれば、補正範囲2を設定することにより、RC抽出範囲にふさわしい分割エリアをピンポイントで指定することができるため、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0108

また、本実施の形態によれば、補正範囲3を設定することにより、補正範囲1および補正範囲2で考慮した設計変更範囲の集中度合だけでは分からない分割エリア内の配線密度や配線幅を考慮して、RC抽出範囲の増加を抑制しつつ、RC抽出の高精度化を図ることができる。

0109

また、本実施の形態によれば、RC抽出範囲外の情報を消去することによりメモリ使用量を削減することができる。また、RC抽出範囲を原点Oに近い位置に移動させることにより、メモリアクセスの効率化を図ることができ、処理速度の向上を図ることができる。

0110

100レイアウトデータ
200決定装置
201プロセッサ
202記憶装置
301 算出部
302 分割部
303 生成部
304 検出部
305計数部
306 判断部
307 決定部
308 設定部
309 変更部
310 抽出部

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ