JP2008217365A - 集積回路のレイアウト設計支援装置、方法、プログラム、及びデータ構造 - Google Patents
集積回路のレイアウト設計支援装置、方法、プログラム、及びデータ構造 Download PDFInfo
- Publication number
- JP2008217365A JP2008217365A JP2007053302A JP2007053302A JP2008217365A JP 2008217365 A JP2008217365 A JP 2008217365A JP 2007053302 A JP2007053302 A JP 2007053302A JP 2007053302 A JP2007053302 A JP 2007053302A JP 2008217365 A JP2008217365 A JP 2008217365A
- Authority
- JP
- Japan
- Prior art keywords
- macro
- layout
- terminal
- name
- information
- 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.)
- Granted
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
Abstract
【解決手段】集積回路のレイアウト設計支援装置であって、端子座標算出制御部(4)と、レイアウト処理制御部(6)とを含む構成とした。端子座標算出制御部(4)は、複数種類のマクロブロックに含まれる複数の同一種類マクロブロックを異なる種類の各マクロブロックとみなして、各マクロブロックの各マクロ端子の最適座標位置を各々算出する。レイアウト処理制御部(6)は、端子座標算出制御部(4)にて算出された各マクロ端子位置に基づいて、各前記マクロ端子に関連する種々の配線レイアウト処理を行う。
【選択図】図1
Description
本発明の集積回路のレイアウト設計支援装置は、端子座標算出制御部と、レイアウト処理制御部と、を含む構成とした。端子座標算出制御部は、複数種類のマクロブロックに含まれる複数の同一種類マクロブロックを異なる種類の各マクロブロックとみなして、各前記マクロブロックの各マクロ端子の最適座標位置を各々算出する。レイアウト処理制御部は、前記端子座標算出制御部にて算出された各マクロ端子位置に基づいて、各前記マクロ端子に関連する種々の配線レイアウト処理を行う。
〔第1の実施の形態〕
(集積回路のレイアウト設計支援装置の全体構成)
先ず、本発明の集積回路のレイアウト設計支援装置の全体構成について、図1を参照して説明する。図1は、本実施の形態によるLSIのレイアウト設計支援装置の全体の概略構成を示すブロック図である。
制御部2は、図1に示すように、複数種類のマクロブロックに含まれる複数の同一種類マクロブロックを異なる種類の各マクロブロックとみなして、各前記マクロブロックの各マクロ端子の最適座標位置を各々算出する端子座標算出制御部4と、端子座標算出制御部4にて算出された各マクロ端子位置に基づいて、各前記マクロ端子に関連する種々の配線レイアウト処理を行うレイアウト処理制御部6と、を含んで構成される。
次に、各部の構成の詳細について、図1及び図2を参照しつつ説明する。図1に示すように、各種情報入力部11は、LSIの物理ライブラリ情報、トップレイアウト情報、トップネットリスト情報、マクロネットリスト情報、などLSIレイアウトを行う際に必要な情報を入力する。そして、入力された情報(LSIの物理ライブラリ情報、トップレイアウト情報、トップネットリスト情報、マクロネットリスト情報等)は、それぞれ、物理ライブラリ情報記憶部81、トップレイアウト情報記憶部82、トップネットリスト情報記憶部83、マクロネットリスト情報記憶部84などに各々記憶される。ここで、「ネット」は、論理設計においては、マクロや論理回路素子間を結ぶ接続関係を示す。
次に、記憶部8の各部の詳細な構成について、図3を参照しつつ説明する。図3は、図1に示すレイアウト設計支援装置1の記憶部8の各部のさらに詳細な構成の一例を示すブロック図である。以下に、「トップレイアウト情報」、「トップネットリスト情報」、「マクロネットリスト情報」、「マクロ変更リスト情報」、「マクロレイアウト情報」、「チップレイアウト情報」の順に説明する。
トップレイアウト情報記憶部82は、図3に示すように、情報入力された直後の状態である各マクロブロックの配置関係(位置関係)を規定して配置した後のトップレイアウト情報82a(第1トップレイアウト情報)<例えば図5の状態>と、マクロ名が変更された名称変更後のトップレイアウト情報82a(第2トップレイウアト情報)<例えば図7の状態>と、算出された第1座標位置にマクロ端子が配置された端子配置後のトップレイアウト情報82c(第3トップレイウアウト情報)<例えば図14の状態>と、マクロブロック間の配線レイアウト処理がなされたマクロ間配線後のトップレイアウト情報82d(第4のトップレイアウト情報)<例えば図15の状態>と、を含んで構成され、この順で遷移していく。
トップネットリスト情報記憶部83は、図3に示すように、情報入力された直後の状態である各マクロブロックの接続関係を規定した後のトップネットリスト情報83a(第1トップネットリスト情報)<例えば図4の状態>と、同一種類マクロブロックのマクロ名及びマクロ端子の端子名が変更された名称変更後のトップネットリスト情報83a(第2トップネットリスト情報)<例えば図8の状態>と、を含んで構成され、この順で遷移していく。
マクロネットリスト情報記憶部84は、図3に示すように、情報入力された直後の状態であって、マクロブロック内での機能素子(例えば論理回路素子など)の接続関係が規定された状態でのマクロネットリスト情報84a(第1マクロネットリスト情報)<例えば図6の状態>と、複数の同一種類マクロブロックの各マクロ端子の端子名が変更されて全端子が割り当てられた状態で内部の機能素子との接続関係が規定された状態での変更後のマクロネットリスト情報84b(第2マクロネットリスト情報)<例えば図16の状態>と、を含んで構成され、この順で遷移していく。
階層マクロ変更リスト情報記憶部85は、図3に示すように、マクロ変更リスト情報85aを記憶している。
マクロレイアウト情報記憶部86は、図3に示すように、マクロブロック内での機能素子(例えば論理回路素子など)の数と配置関係が規定された状態でのマクロレイアウト情報86a(第1マクロレイアウト情報)と、通常のマクロブロックにおいては各マクロ端子と特定機能素子間での配線レイアウト処理がなされた状態であり、複数の同一種類マクロブロックにおいては割り当てられた全マクロ端子と特定機能素子との間の配線レイアウト処理がなされた状態での変更後のマクロレイアウト情報86b(第2マクロレイアウト情報)<例えば図18の状態>と、を含んで構成され、この順で遷移していく。
チップレイアウト情報記憶部87は、図3に示すように、トップレイアウト情報とマクロレイアウト情報とがマージされた状態でのチップレイアウト情報87a(第1チップレイアウト情報)<例えば図20の状態>と、余分な配線部が削除された状態である削除後のチップレアイウト情報87b(第2チップレイアウト情報)<例えば図21の状態>と、を含んで構成され、この順で遷移していく。
以上のような構成からなる本実施の形態の集積回路のレイアウト設計支援装置1において、概略次のように動作する。すなわち、図1に示すように、各種情報入力部11は、LSIの物理ライブラリ情報、トップレイアウト情報、トップネットリスト情報、マクロネットリスト情報、などLSIレイアウトを行う際に必要な情報を入力する。
次に、本実施の形態のマクロ名変更及び端子名変更は、単に変更するのみではなく、各レイアウト処理(トップレイアウト処理、マクロレイアウト処理、チップレアイウト処理)に応じて、あるいはレイアウト情報とネットリスト情報に応じて使い分けている点に特徴を有するから、以下にはこの点について詳述する。
次に、マクロ名・端子名変更に関連する制御系について、図11を参照しつつ説明する。図11は、図1のレイアウト設計支援装置において、マクロ名変更、端子名変更に関係する部分をピックアップし、制御に関連する部分を誇張して表現したブロック図である。
次に、本実施の形態の端子位置計算は、各レイアウト処理(トップレイアウト処理、マクロレイアウト処理)に応じて各々計算する必要がある点に特徴を有するから、以下にはこの点について詳述する。端子位置算出関連の制御系について、図12を参照しつつ説明する。図12は、図1のレイアウト設計支援装置において、マクロ端子位置の計算に関係する部分をピックアップし、制御に関連する部分を誇張して表現したブロック図である。
次に、上述のような構成を有するレイアウト設計支援装置における各種の処理手順について、図22乃至図25を参照しつつ説明する。
先ず、全体処理について、図22のフローチャートを参照して説明する。図22は、図1のレイアウト設計支援装置の処理手順の一例を示すフローチャートである。先ず、各種情報を入力する処理が行われる(ステップS101)<各種情報入力工程ないしは各種情報入力処理>。ここにおいて、入力される情報としては、物理ライブラリ情報、トップレイアウト情報、トップネットリスト情報、マクロネットリスト情報などが挙げられる。
次に、上述の各ステップにおいて、S108の端子座標を算出する処理の詳細について、図23を用いて説明する。図23は、端子座標を算出する処理の詳細な処理手順を示すフローチャートである。図23に示すように、ステップS108において、先ず、トップネットリスト情報から特定の2つのマクロブロック同士の接続関係情報を取得する処理を行う(ステップS201)<マクロブロック接続関係情報取得工程ないしはマクロブロック接続関係情報取得処理>。
次に、上述のS121における、変更前の端子を、変更後の全端子に置き換える処理の詳細な処理手順について、図24を参照しつつ説明する。図24は、変更前の端子を、変更後の全端子に置き換える処理をさらに詳細な処理手順の一例を示したフローチャートである。
次に、上述したステップS133の余分な配線部を削除する処理のさらに詳細な処理手順について、図25を参照しつつ説明する。図25は、余分な配線部を削除する処理の詳細な処理手順の一例を示したフローチャートである。
以上のように本実施の形態によれば、複数の同一種類のマクロブロックを含む複数のマクロブロック内外での配線レイアウト処理において、仮レイアウトや概略配線処理、オフセット処理あるいはクランプ処理などの不要な処理を行うことなく、また、無駄な素子を形成することなく必要なマクロブロック領域を確保しながらも、マクロ端子に接続する全ての配線を短小化した形でレイアウトを行うことができ、迂回配線(配線引き回し)をなくし、集積回路の配線性を向上させ配線遅延時間の悪化を抑制できる。
次に、本発明にかかる第2の実施の形態について、図27乃至図30に基づいて説明する。なお、以下には、前記第1の実施の形態の実質的に同様の構成に関しては説明を省略し、異なる部分についてのみ述べる。図8は、本発明のレイアウト設計支援装置の第2の実施の形態の一例を示すブロック図である。本実施の形態のレアイウト設計補助装置の構成は、上述の第1の実施の形態のレイアウト設計支援装置の構成と比較すると、階層マクロ端子座標決定部の構成が異なる。
次に、上述のような構成からなる集積回路のレイアウト設計支援装置の詳細な処理手順について、図30を参照しつつ説明する。図30は、第2の実施の形態の端子座標を算出する処理の詳細な処理手順の一例を示すフローチャートである。
なお、本発明にかかるLSIのレイアウト設計支援装置、LSIのレイアウト設計方法は、そのいくつかの特定の実施の形態に従って説明してきたが、本発明の主旨および範囲から逸脱することなく本発明の本文に記述した実施の形態に対して種々の変形が可能である。例えば、上述の第1の実施の形態では、マクロ端子の最適位置を算出する結合関数として1次関数(直線)を用いる例を説明したが、これに限定されるものではなく、図31に示すように、3点を通る略3次関数であってもよい。あるいは、2点を通る自由曲線であってもよい。
また、前述した実施形態の機能を実現する本発明のソフトウエアのプログラム(集積回路のレイアウト設計用プログラム)は、前述した各実施の形態における図1、図2、図3、図11、図12、及び図27に示すブロック図、図22、図23、図24、及び図25等に示すフローチャートなどに示された各部、各処理工程(処理手順)、機能などに対応したプログラムや、(上述の各実施の形態の図2の制御部2など)において各々処理される各処理プログラム、本明細書で全般的に記述される方法(ステップ)、説明された処理、データ(例えば、トップレイアウト情報、トップネットリスト情報、マクロネットリスト情報、階層マクロ変更リスト情報、マクロレイアウト情報、チップレアウト情報、物理ライブラリ情報、各種テーブル等)、各種DB(データベース)のデータの全体もしくは各部を含む。
また、レイアウト設計支援プログラムを、情報記録媒体に記録した構成であってもよい。情報記録媒体には、レイアウト設計支援プログラムを含むアプリケーションプログラムが格納されており、コンピュータが当該情報記録媒体からアプリケーションプログラムを読み出し、当該アプリケーションプログラムをハードディスクにインストールすることが可能である。これにより、上述のプログラムは、磁気記録媒体、光記録媒体あるいはROMなどの情報記録媒体に記録してプログラムを提供することができる。そのようなプログラムが記録された情報記録媒体を、コンピュータにおいて使用することは、好都合な情報処理装置を構成する。
2 制御部
4 端子座標算出制御部
5a 第1の端子座標算出処理部
5b 第2の端子座標算出処理部
6 レイアウト処理制御部
11 各種情報入力部
21 トップ階層変更部
22 マクロ名変更部
23 端子名変更部
31 階層マクロ端子座標決定部
33 中心点結合関数算出部(特定点結合関数算出部)
34 交差部座標算出部
35 トップレイアウト処理部(第1のレイアウト処理部)
41 階層マクロ端子追加及び端子座標設定処理部
42 端子名変更部
44 マクロレイアウト処理部(第2のレイアウト処理部)
51 チップレイアウト前処理部
54 チップレイアウト処理部(第3ノレイアウト処理部)
55 マージ処理部
56 余分配線削除処理部
61 配置配線結果出力部
70 中央制御部
90 その他の各部
91 マクロ名制御部
92 端子名制御部
93 同一機能マクロ制御部
94 階層制御部
81 物理ライブラリ情報記憶部
82 トップレイアウト情報記憶部(第1レイアウト蓄積処理部)
83 トップネットリスト情報記憶部(第1ネットリスト蓄積処理部)
84 マクロネットリスト情報記憶部(第2ネットリスト蓄積処理部)
85 階層マクロ変更リスト情報記憶部(マクロ変更リスト蓄積処理部)
86 マクロレイアウト情報記憶部(第2レイアウト蓄積処理部)
87 チップレイアウト情報記憶部
202 階層マクロ端子座標決定部
204 辺関数算出部(辺算出部)
206 辺上特定位置算出部(特定位置算出部)
208 端子配置処理部
Claims (38)
- 複数種類のマクロブロックに含まれる複数の同一種類マクロブロックを異なる種類の各マクロブロックとみなして、各前記マクロブロックの各マクロ端子の最適座標位置を各々算出する端子座標算出制御部と、
前記端子座標算出制御部にて算出された各マクロ端子位置に基づいて、各前記マクロ端子に関連する種々の配線レイアウト処理を行うレイアウト処理制御部と、
を含むことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項1に記載の集積回路のレイアウト設計支援装置において、
前記端子座標算出制御部は、
各前記マクロブロックのブロック境界領域にある各マクロ端子の各第1座標位置を算出する第1の端子座標算出処理部、
を含み、
前記レイアウト処理制御部は、
前記第1の端子座標算出処理部にて算出された各前記マクロ端子の各前記第1座標位置に基づいて、前記各マクロブロック間に形成される第1レイアウト領域内にて各前記マクロ端子間を配線接続する配線レイアウト処理を行う第1のレイアウト処理部、
を含むことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項2に記載の集積回路のレイアウト設計支援装置において、
前記端子座標算出制御部は、
前記第1の端子座標算出処理部にて算出された各前記マクロ端子の各前記第1座標位置に基づいて、前記マクロブロック内の特定原点に対する前記第1座標位置の相対位置である第2座標位置を算出し、一つの前記同一種類マクロブロックの境界領域上であって、各前記第2座標位置に、異なる種類とみなされた複数の前記同一種類マクロブロックのそれぞれのマクロ端子の全てを配置する第2の端子座標算出処理部、
を含み、
前記レイアウト処理制御部は、
前記同一種類マクロブロックに対しては、前記マクロブロック内に形成される第2レイアウト領域内にて、機能素子と前記全端子配置処理部にて配置された全マクロ端子とを配線接続する配線レイアウト処理を行い、かつ、他の前記マクロブロックに対しては、機能素子と前記マクロ端子とを配線接続する配線レイアウト処理を行う第2のレイアウト処理部、
を含むことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項3に記載の集積回路のレイアウト設計支援装置において、
前記レイアウト処理制御部は、
前記第1のレイアウト処理部にて配線レイアウト処理された前記第1レイアウト領域と、前記第2のレイアウト処理部にて配線レイアウト処理された前記第2レイアウト領域と、をマージさせて、前記第1のレイアウト領域と前記第2のレイアウト領域よりなる第3レイアウト領域を作成するとともに、前記第3レイアウト領域にて、前記全マクロ端子に向けて配線した各配線部のうち、接続が完結しない余分配線部を削除する第3のレイアウト処理部、
を含むことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項1に記載の集積回路のレイアウト設計支援装置において、
前記端子座標算出制御部は、
前記各マクロブロックの位置関係情報と、前記各マクロブロックの接続関係情報とに基づいて、前記各マクロブロックの各マクロ端子間の距離が短くなる座標位置を算出することを特徴とする集積回路のレイアウト設計支援装置。 - 請求項1に記載の集積回路のレイアウト設計支援装置において、
前記端子座標算出制御部は、
少なくとも2つの各マクロブロックの各特定点同士を結ぶ特定点結合関数を算出する特定点結合関数算出部と、
前記特定点結合関数算出部にて算出された前記特定点結合関数と、前記各マクロブロックの各境界線とが交差する交差部の座標位置を算出する交差部座標算出部と、
を含むことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項1に記載の集積回路のレイアウト設計支援装置において、
前記端子座標算出制御部は、
少なくとも2つの各マクロブロックの距離が最短となる互いに対向する一対の辺を求める辺算出部と、
前記辺上の特定位置を算出する特定位置算出部と、
を含むことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項1又は2に記載の集積回路のレイアウト設計支援装置において、
前記端子座標算出制御部は、
複数の同一種類マクロブロックに対して各々異なるマクロ名を割り当てて当初の共通マクロ名を個別マクロ名に変更するマクロ名変更部と、
各前記同一種類マクロブロックの各前記マクロ端子に対して各々異なるマクロ端子名を割り当てて当初の共通端子名を個別端子名に変更する端子名変更部と、
を含み、
端子座標算出前に、予めマクロ名及び端子名を変更することで複数の前記同一種類マクロブロックを識別して異なる種類のマクロブロック及び異なるマクロ端子とみなすことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項8に記載の集積回路のレイアウト設計支援装置において、
複数種類の各マクロブロックの位置関係を示した第1レイアウト情報を蓄積する第1レイアウト情報蓄積処理部と、
各前記マクロブロック間の接続関係を示した第1ネットリスト情報を蓄積する第1ネットリスト情報蓄積処理部と、
を含み、
前記マクロ名変更部は、
前記第1レイアウト情報及び前記第1ネットリスト情報のそれぞれの前記マクロブロックについての名称変更を行うことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項9に記載の集積回路のレイアウト設計支援装置において、
前記マクロブロック内の機能素子及び前記マクロブロックの境界上のマクロ端子の位置関係を示した第2レイアウト情報を記憶した第2レイアウト情報蓄積処理部と、
前記機能素子と前記マクロ端子との接続関係を示した第2ネットリスト情報を記憶した第2ネットリスト情報蓄積処理部と、
を含み、
前記端子名変更部は、
前記第1レイアウト情報、前記第1ネットリスト情報、前記第2レイアウト情報、前記第2ネットリスト情報のそれぞれの前記マクロ端子についての名称変更を行うことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項8に記載の集積回路のレイアウト設計支援装置において、
前記レイアウト処理制御部は、
前記第1のレイアウト領域に関連する処理を行う第1の期間、前記第2のレイアウト領域に関連する処理を行う第2の期間、前記第3のレイアウト領域に関連する処理を行う第3の期間のうち、前記第1の期間中には、前記マクロ名変更部にて変更された個別マクロ名を用いて処理を行い、前記第2の期間及び前記第3の期間中には、当初の共通マクロ名を用いて各処理を行うように制御するマクロ名制御部と、
前記第1の期間及び前記第2の期間中には、前記端子名変更部にて変更された個別端子名を用いて各処理を行い、前記第3の期間中には、当初の共通端子名を用いて処理を行うように制御する端子名制御部と、
を含むことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項11に記載の集積回路のレイアウト設計支援装置において、
変更前後のマクロ名の対応関係を示す第1名称対応関係情報と、変更前後のマクロ端子名の対応関係を示す第2名称対応関係情報とを規定したマクロ変更リスト情報を蓄積するマクロ変更リスト情報蓄積処理部を含み、
前記レイアウト処理制御部は、前記マクロ変更リスト情報を参照して各期間での名称変更制御を行うことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項12に記載の集積回路のレイアウト設計支援装置において、
前記マクロ変更リスト情報蓄積処理部は、
前記マクロブロックの種類を示すマクロ種類名に応じて、前記第1名称対応関係情報及び前記第2名称対応関係情報が対応付けられることを特徴とする集積回路のレイアウト設計支援装置。 - 請求項1に記載の集積回路のレイアウト設計支援装置において、
レイアウトに必要な情報を入力する情報入力部、
を含み、
前記端子座標算出制御部及び前記レイアウト処理制御部は、
前記情報入力部より入力された情報に基づいて、制御を各々行うことを特徴とする集積回路のレイアウト設計支援装置。 - 請求項1に記載の集積回路のレイアウト設計支援装置において、
レイアウト結果を出力する配置配線結果出力部を、
含み、
前記レイアウト処理制御部は、
前記配置配線結果出力部より配線レイアウト処理の結果情報を出力するように制御することを特徴とする集積回路のレイアウト設計支援装置。 - 複数種類のマクロブロックに含まれる同一種類マクロブロックを別々の種類のマクロブロックとみなして、前記マクロブロックの境界領域上のマクロ端子の最適座標位置を算出する第1の端子座標算出処理工程と、
各前記マクロブロック間に形成される第1レイアウト領域内にて、各マクロ端子間を配線接続する配線レイアウト処理を行う第1レイアウト処理工程と、
別々の座標位置として算出された前記複数の同一種類マクロブロックの各マクロ端子を、1つの前記同一種類マクロブロック上に全て配置するように前記マクロ端子の座標位置を算出する第2の端子座標算出処理工程と、
前記マクロブロック内に形成される第2レイアウト領域にて、一つの前記同一種類マクロブロックの前記全マクロ端子に関連する配線レイアウト処理を行う第2レイアウト処理工程と、
前記第1レイアウト領域と前記第2レイアウト領域をマージして第3レイアウト領域を生成する第3レイアウト処理工程と、
前記第2レイアウト処理工程にて、全マクロ端子に対して配線した各配線部のうち、接続が完結しない余分な配線部を削除する余分配線部削除工程と、
を含むことを特徴とする集積回路のレイアウト設計支援方法。 - 請求項16に記載の集積回路のレイアウト設計支援方法において、
前記第1の端子座標算出処理工程は、
少なくとも2つの各マクロブロックの各特定点同士を結ぶ特定点結合関数を算出する特定点結合関数算出制御工程と、
前記特定点結合関数算出部にて算出された前記特定点結合関数と、前記各マクロブロックの各境界線とが交差する交差部の座標位置を算出する交差部座標算出制御工程と、
を含むことを特徴とする集積回路のレイアウト設計支援方法。 - 請求項16に記載の集積回路のレイアウト設計支援方法において、
前記第1の端子座標算出処理工程は、
少なくとも2つの各マクロブロックの距離が最短となる互いに対向する一対の辺を求める辺算出制御工程と、
前記辺上の特定位置を算出する特定位置算出制御工程と、
を含むことを特徴とする集積回路のレイアウト設計支援方法。 - 請求項17又は請求項18に記載の集積回路のレイアウト設計支援方法において、
前記第1の端子座標算出処理工程は、
端子座標算出前に、複数の同一種類マクロブロックに対して各々異なるマクロ名を割り当てて当初の共通マクロ名を個別マクロ名に変更するマクロ名変更工程と、
端子座標算出前に、各前記同一種類マクロブロックの各前記マクロ端子に対して各々異なるマクロ端子名を割り当てて当初の共通端子名を個別端子名に変更する端子名変更工程と、
を含むことを特徴とする集積回路のレイアウト設計支援方法。 - 請求項19に記載の集積回路のレイアウト設計支援方法において、
前記第2の端子座標算出処理工程は、
前記複数の同一種類マクロブロックに対しては、共通マクロ名及び個別端子名を用いて処理を行うことを特徴とする集積回路のレイアウト設計支援方法。 - 請求項19に記載の集積回路のレイアウト設計支援方法において、
前記第3レイアウト処理工程は、
変更されたマクロ名及びマクロ端子名を元に戻した後に、マージを行うことを特徴とする集積回路のレイアウト設計支援方法。 - 集積回路のレイアウト処理を行うコンピュータが実行可能なプログラムであって、
複数種類のマクロブロックに含まれる複数の同一種類マクロブロックを異なる種類の各マクロブロックとみなして、各前記マクロブロックの各マクロ端子の最適座標位置を各々算出する端子座標算出制御部と、
前記端子座標算出制御部にて算出された各マクロ端子位置に基づいて、各前記マクロ端子に関連する種々の配線レイアウト処理を行うレイアウト処理制御部として、
コンピュータを機能させることを特徴とするプログラム。 - 請求項22に記載のプログラムにおいて、
前記端子座標算出制御部は、
各前記マクロブロックのブロック境界領域にある各マクロ端子の各第1座標位置を算出する第1の端子座標算出処理部、
を含み、
前記レイアウト処理制御部は、
前記第1の端子座標算出処理部にて算出された各前記マクロ端子の各前記第1座標位置に基づいて、前記各マクロブロック間に形成される第1レイアウト領域内にて各前記マクロ端子間を配線接続する配線レイアウト処理を行う第1のレイアウト処理部、
を含むことを特徴とするプログラム。 - 請求項23に記載のプログラムにおいて、
前記端子座標算出制御部は、
前記第1の端子座標算出処理部にて算出された各前記マクロ端子の各前記第1座標位置に基づいて、前記マクロブロック内の特定原点に対する前記第1座標位置の相対位置である第2座標位置を算出し、一つの前記同一種類マクロブロックの境界領域上であって、各前記第2座標位置に、異なる種類とみなされた複数の前記同一種類マクロブロックのそれぞれのマクロ端子の全てを配置する第2の端子座標算出処理部、
を含み、
前記レイアウト処理制御部は、
前記同一種類マクロブロックに対しては、前記マクロブロック内に形成される第2レイアウト領域内にて、機能素子と前記全端子配置処理部にて配置された全マクロ端子とを配線接続する配線レイアウト処理を行い、かつ、他の前記マクロブロックに対しては、機能素子と前記マクロ端子とを配線接続する配線レイアウト処理を行う第2のレイアウト処理部、
を含むことを特徴とするプログラム。 - 請求項24に記載のプログラムにおいて、
前記レイアウト処理制御部は、
前記第1のレイアウト処理部にて配線レイアウト処理された前記第1レイアウト領域と、前記第2のレイアウト処理部にて配線レイアウト処理された前記第2レイアウト領域と、をマージさせて、前記第1のレイアウト領域と前記第2のレイアウト領域よりなる第3レイアウト領域を作成するとともに、前記第3レイアウト領域にて、前記全マクロ端子に向けて配線した各配線部のうち、接続が完結しない余分配線部を削除する第3のレイアウト処理部、
を含むことを特徴とするプログラム。 - 請求項22に記載のプログラムにおいて、
前記端子座標算出制御部は、
前記各マクロブロックの位置関係情報と、前記各マクロブロックの接続関係情報とに基づいて、前記各マクロブロックの各マクロ端子間の距離が短くなる座標位置を算出することを特徴とするプログラム。 - 請求項22に記載のプログラムにおいて、
前記端子座標算出制御部は、
少なくとも2つの各マクロブロックの各特定点同士を結ぶ特定点結合関数を算出し、
算出された前記特定点結合関数と、前記各マクロブロックの各境界線とが交差する交差部の座標位置を算出することを特徴とするプログラム。 - 請求項22に記載のプログラムにおいて、
前記端子座標算出制御部は、
少なくとも2つの各マクロブロックの距離が最短となる互いに対向する一対の辺を求め、前記辺上の特定位置を算出することを特徴とするプログラム。 - 請求項22又は23に記載のプログラムにおいて、
前記端子座標算出制御部は、
端子座標算出前に、複数の同一種類マクロブロックに対して各々異なるマクロ名を割り当てて当初の共通マクロ名を個別マクロ名に変更し、各前記同一種類マクロブロックの各前記マクロ端子に対して各々異なるマクロ端子名を割り当てて当初の共通端子名を個別端子名に変更し、複数の前記同一種類マクロブロックを識別して異なる種類のマクロブロックとみなすことを特徴とするプログラム。 - 請求項29に記載のプログラムにおいて、
複数種類の各マクロブロックの位置関係を示した第1レイアウト情報を蓄積する第1レイアウト情報蓄積処理部と、
各前記マクロブロック間の接続関係を示した第1ネットリスト情報を蓄積する第1ネットリスト情報蓄積処理部として、
コンピュータを機能させ、
前記マクロ名変更部は、
前記第1レイアウト情報及び前記第1ネットリスト情報のそれぞれの前記マクロブロックについての名称変更を行うことを特徴とするプログラム。 - 請求項30に記載のプログラムにおいて、
前記マクロブロック内の機能素子及び前記マクロブロックの境界上のマクロ端子の位置関係を示した第2レイアウト情報を蓄積する第2レイアウト情報蓄積処理部と、
前記機能素子と前記マクロ端子との接続関係を示した第2ネットリスト情報を蓄積する第2ネットリスト情報蓄積処理部として、
コンピュータを機能させ、
前記端子名変更部は、
前記第1レイアウト情報、前記第1ネットリスト情報、前記第2レイアウト情報、前記第2ネットリスト情報のそれぞれの前記マクロ端子についての名称変更を行うことを特徴とするプログラム。 - 請求項30に記載のプログラムにおいて、
前記レイアウト処理制御部は、
前記第1のレイアウト領域に関連する処理を行う第1の期間、前記第2のレイアウト領域に関連する処理を行う第2の期間、前記第3のレイアウト領域に関連する処理を行う第3の期間のうち、前記第1の期間中には、前記マクロ名変更部にて変更された個別マクロ名を用いて処理を行い、前記第2の期間及び前記第3の期間中には、当初の共通マクロ名を用いて各処理を行うように制御するマクロ名制御部と、
前記第1の期間及び前記第2の期間中には、前記端子名変更部にて変更された個別端子名を用いて各処理を行い、前記第3の期間中には、当初の共通端子名を用いて処理を行うように制御する端子名制御部と、
を含むことを特徴とするプログラム。 - 請求項32に記載のプログラムにおいて、
変更前後のマクロ名の対応関係を示す第1名称対応関係情報と、変更前後のマクロ端子名の対応関係を示す第2名称対応関係情報とを規定したマクロ変更リスト情報を蓄積するマクロ変更リスト情報蓄積処理部として、
コンピュータを機能させ、
前記レイアウト処理制御部は、前記マクロ変更リスト情報を参照して各期間での名称変更制御を行うことを特徴とするプログラム。 - 請求項33に記載のプログラムにおいて、
前記マクロ変更リスト情報蓄積処理部は、
前記マクロブロックの種類を示すマクロ種類名に応じて、前記第1名称対応関係情報及び前記第2名称対応関係情報が対応付けられることを特徴とするプログラム。 - コンピュータが行う集積回路のレイアウト処理に用いられるレイアウト情報のデータ構造であって、
複数種類の各マクロブロックの位置関係を示した第1レイアウト情報と、
各前記マクロブロック間の接続関係を示した第1ネットリスト情報と、
前記複数種類の各マクロブロックに含まれる同一種類マクロブロックのマクロ名が変更される前後の第1名称対応関係情報と、前記同一種類マクロブロックのマクロ端子名が変更される前後の第2名称対応関係情報とを規定したマクロ変更リスト情報と、
を含み、
前記第1レイアウト情報、前記第1ネットリスト情報、及び前記マクロ変更リスト情報は、
コンピュータが、
複数種類のマクロブロックに含まれる複数の同一種類マクロブロックを異なる種類の各マクロブロックとみなして、各前記マクロブロックの各マクロ端子の最適座標位置を各々算出する端子座標計算と、
前記端子座標計算により求められた一方のマクロブロックの最適座標位置と他方のマクロブロックの最適座標位置との間で配線接続する第1レイアウト処理と、を行うのに、
利用されることを特徴とするデータ構造。 - 請求項35に記載のデータ構造において、
前記マクロブロック内の機能素子及び前記マクロブロックの境界上のマクロ端子の位置関係を示した第2レイアウト情報と、
前記機能素子と前記マクロ端子との接続関係を示した第2ネットリスト情報と、
を含み、
前記第2レイアウト情報及び前記第2ネットリスト情報は、
コンピュータが、
複数の同一種類マクロブロックに設定されたマクロ端子の全てを、一つの同一種類マクロブロックに配置させる全端子配置処理と、
前記一つの同一種類マクロブロック内の特定の機能素子から配置された全ての前記マクロ端子に対して配線接続する第2レイアウト処理と、を行うのに、
利用されることを特徴とするデータ構造。 - 請求項35に記載のデータ構造において、
配線処理後の前記第1レイアウト情報と、配線処理後の前記第2のレイアウト情報とをマージした第3レイアウト情報を含み、
前記第3レイアウト情報は、
コンピュータが、配線部のうち線分の一端が機能素子又は他の線分に繋がらない余分配線部を削除する処理を行うのに、
利用されることを特徴とするレイアウト情報のデータ構造。 - 請求項35に記載のデータ構造において、
前記第1のレイアウト情報は、
コンピュータが、
複数の同一種類マクロブロックに対して各々異なるマクロ名が割り当てられるマクロ名変更処理と、
各マクロ端子に対して各々異なるマクロ端子名が割り当てられる端子名変更処理と、
を行うのに、
利用されることを特徴とするデータ構造。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007053302A JP5029070B2 (ja) | 2007-03-02 | 2007-03-02 | 集積回路のレイアウト設計支援装置、方法、及びプログラム |
US12/036,643 US8117583B2 (en) | 2007-03-02 | 2008-02-25 | Determining macro blocks terminal for integrated circuit layout |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007053302A JP5029070B2 (ja) | 2007-03-02 | 2007-03-02 | 集積回路のレイアウト設計支援装置、方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008217365A true JP2008217365A (ja) | 2008-09-18 |
JP5029070B2 JP5029070B2 (ja) | 2012-09-19 |
Family
ID=39734029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007053302A Expired - Fee Related JP5029070B2 (ja) | 2007-03-02 | 2007-03-02 | 集積回路のレイアウト設計支援装置、方法、及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8117583B2 (ja) |
JP (1) | JP5029070B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010160598A (ja) * | 2009-01-07 | 2010-07-22 | Nec Corp | 集積回路設計装置、設計方法およびプログラム |
JP5229834B2 (ja) * | 2008-09-30 | 2013-07-03 | 株式会社アドバンテスト | 回路設計方法、回路設計システム及び記録媒体 |
WO2014105802A1 (en) * | 2012-12-27 | 2014-07-03 | Synopsys, Inc. | Graphical user interface for a floorplanning tool for electronic design automation |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7461364B2 (en) * | 2006-04-10 | 2008-12-02 | International Business Machines Corporation | Methods and readable media for using relative positioning in structures with dynamic ranges |
JP2010257164A (ja) * | 2009-04-24 | 2010-11-11 | Renesas Electronics Corp | 半導体集積回路装置の設計方法およびプログラム |
JP5293488B2 (ja) * | 2009-08-05 | 2013-09-18 | 富士通セミコンダクター株式会社 | 設計支援プログラム、設計支援装置、および設計支援方法 |
JP5299198B2 (ja) * | 2009-09-29 | 2013-09-25 | 富士通セミコンダクター株式会社 | 設計支援プログラム、設計支援装置、および設計支援方法 |
US8499263B1 (en) * | 2012-03-29 | 2013-07-30 | Mentor Graphics Corporation | Encrypted profiles for parasitic extraction |
US9792399B2 (en) | 2013-01-07 | 2017-10-17 | Nxp Usa, Inc. | Integrated circuit hierarchical design tool apparatus and method of hierarchically designing an integrated circuit |
JP2014211824A (ja) * | 2013-04-19 | 2014-11-13 | 富士通株式会社 | 設計支援装置、設計支援方法、および設計支援プログラム |
US10671788B2 (en) * | 2017-11-21 | 2020-06-02 | Taiwan Semiconductor Manufacturing Company Ltd. | Method, system, and storage medium of resource planning for designing semiconductor device |
US11227084B2 (en) * | 2018-11-14 | 2022-01-18 | Taiwan Semiconductor Manufacturing Company Ltd. | Multi-bit standard cell |
US11741284B2 (en) * | 2021-09-28 | 2023-08-29 | GBT Technologies, Inc. | Systems and methods of automatic generation of integrated circuit IP blocks |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11307644A (ja) * | 1998-04-17 | 1999-11-05 | Nec Ic Microcomput Syst Ltd | 特定用途向けicの配置配線方法 |
JP2001147954A (ja) * | 1999-11-24 | 2001-05-29 | Nec Ic Microcomput Syst Ltd | 半導体集積回路のフロアプラン作成方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03209848A (ja) | 1990-01-12 | 1991-09-12 | Nec Corp | 半導体集積回路のレイアウト設計方法 |
JP2734180B2 (ja) | 1990-06-29 | 1998-03-30 | 日本電気株式会社 | 集積回路の設計方法 |
US6415428B1 (en) * | 1999-10-21 | 2002-07-02 | International Business Machines Corporation | Minimal length method for positioning unit pins in a hierarchically designed VLSI chip |
JP4676123B2 (ja) * | 2000-01-18 | 2011-04-27 | ケイデンス・デザイン・システムズ・インコーポレーテッド | H形木構造クロックレイアウトのシステムと方法 |
JP2001319976A (ja) | 2000-05-11 | 2001-11-16 | Nec Corp | 半導体装置 |
JP2003208454A (ja) * | 2002-01-17 | 2003-07-25 | Nec Microsystems Ltd | 半導体集積回路におけるレイアウト設計の自動配置配線方法及び装置並びに自動配置配線プログラム |
US20050028113A1 (en) * | 2003-08-01 | 2005-02-03 | Intersil Americas Inc. | Process translation tool for analog/RF IP reuse |
JP4179221B2 (ja) | 2004-05-18 | 2008-11-12 | 日本電気株式会社 | Lsiのレイアウト設計方法、レイアウト設計装置及びレイアウト設計プログラム |
US20070044056A1 (en) * | 2005-08-16 | 2007-02-22 | Lsi Logic Corporation | Macro block placement by pin connectivity |
US7343570B2 (en) * | 2005-11-02 | 2008-03-11 | International Business Machines Corporation | Methods, systems, and media to improve manufacturability of semiconductor devices |
-
2007
- 2007-03-02 JP JP2007053302A patent/JP5029070B2/ja not_active Expired - Fee Related
-
2008
- 2008-02-25 US US12/036,643 patent/US8117583B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11307644A (ja) * | 1998-04-17 | 1999-11-05 | Nec Ic Microcomput Syst Ltd | 特定用途向けicの配置配線方法 |
JP2001147954A (ja) * | 1999-11-24 | 2001-05-29 | Nec Ic Microcomput Syst Ltd | 半導体集積回路のフロアプラン作成方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5229834B2 (ja) * | 2008-09-30 | 2013-07-03 | 株式会社アドバンテスト | 回路設計方法、回路設計システム及び記録媒体 |
JP2010160598A (ja) * | 2009-01-07 | 2010-07-22 | Nec Corp | 集積回路設計装置、設計方法およびプログラム |
WO2014105802A1 (en) * | 2012-12-27 | 2014-07-03 | Synopsys, Inc. | Graphical user interface for a floorplanning tool for electronic design automation |
US8893073B2 (en) | 2012-12-27 | 2014-11-18 | Synopsys, Inc. | Displaying a congestion indicator for a channel in a circuit design layout |
US9064082B2 (en) | 2012-12-27 | 2015-06-23 | Synopsys, Inc. | Updating pin locations in a graphical user interface of an electronic design automation tool |
Also Published As
Publication number | Publication date |
---|---|
US20080216026A1 (en) | 2008-09-04 |
US8117583B2 (en) | 2012-02-14 |
JP5029070B2 (ja) | 2012-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5029070B2 (ja) | 集積回路のレイアウト設計支援装置、方法、及びプログラム | |
US10116735B2 (en) | Service migration across cluster boundaries | |
KR100831271B1 (ko) | 물리적 레이어의 프로그램적 생성을 통한 물리적 레이아웃 데이터를 변경하는 방법 | |
JP2016505930A (ja) | 協調的cax編集のためのシステム、方法、および装置 | |
CN102087594B (zh) | 扩展点和插件的管理方法和装置 | |
US7590963B2 (en) | Integrating multiple electronic design applications | |
JP2008147217A (ja) | 半導体集積回路のレイアウト方法、レイアウトプログラム | |
US6941528B2 (en) | Use of a layout-optimization tool to increase the yield and reliability of VLSI designs | |
US7302666B2 (en) | Logic circuit design method, computer-readable recording medium having logic circuit design program stored therein, and logic circuit design device | |
CN105653348A (zh) | 一种虚拟机的克隆方法及系统 | |
JP3042443B2 (ja) | マスクパターンデータの作成方法 | |
US7487488B1 (en) | Predictable repeater routing in an integrated circuit design | |
JP2012174226A (ja) | 半導体集積回路のレイアウト設計方法 | |
US7958482B2 (en) | Stitched circuitry region boundary identification for stitched IC chip layout | |
US8762898B1 (en) | Double patterning aware routing without stitching | |
US20080270957A1 (en) | Semiconductor integrated circuit designing apparatus, semiconductor integrated circuit designing method and semiconductor device | |
US8006211B2 (en) | IC chip and design structure including stitched circuitry region boundary identification | |
Yan et al. | Liming-constrained congestion-driven global routing | |
JP6185732B2 (ja) | 画像処理装置 | |
US20050050501A1 (en) | The use of a layout-optimization tool to increase the yield and reliability of vlsi designs | |
JP2016189045A (ja) | システム環境変更支援システム、方法およびプログラム | |
US8286115B2 (en) | Fast routing of custom macros | |
US6654942B2 (en) | Method and system for providing a netlist driven integrated router in a non-netlist driven environment | |
JP2014032584A (ja) | 部品置換のための情報処理方法及び装置 | |
JP2016071725A (ja) | ワークフロー制御プログラム、ワークフロー制御方法及び情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100218 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120131 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120402 |
|
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: 20120529 |
|
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: 20120611 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5029070 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150706 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |