JP2923914B2 - 集積回路のcadシステム - Google Patents
集積回路のcadシステムInfo
- Publication number
- JP2923914B2 JP2923914B2 JP9085088A JP8508897A JP2923914B2 JP 2923914 B2 JP2923914 B2 JP 2923914B2 JP 9085088 A JP9085088 A JP 9085088A JP 8508897 A JP8508897 A JP 8508897A JP 2923914 B2 JP2923914 B2 JP 2923914B2
- Authority
- JP
- Japan
- Prior art keywords
- netlist
- layout
- original
- change
- optimized
- 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 - Lifetime
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【0001】
【発明の属する技術分野】本発明は大規模集積回路(L
SI)や論理回路などの集積回路を設計開発する計算機
援用設計(CAD)システムに関し、特に、集積回路を
論理設計して得られる元ネットリストの一部に対して論
理変更を施して得られる論理変更ネットリストに対し
て、レイアウト設計を行って性能要求を満たすように最
適化されたネットリストおよびレイアウトを得るCAD
システムおよび方法に関する。
SI)や論理回路などの集積回路を設計開発する計算機
援用設計(CAD)システムに関し、特に、集積回路を
論理設計して得られる元ネットリストの一部に対して論
理変更を施して得られる論理変更ネットリストに対し
て、レイアウト設計を行って性能要求を満たすように最
適化されたネットリストおよびレイアウトを得るCAD
システムおよび方法に関する。
【0002】
【従来の技術】この種のCADシステムは、いくつかの
フェーズに分けることができる。例えば、5フェーズに
分けたとする。この場合、そのうちの四つは集積回路全
体を設計するフェーズで、システム設計、機能・論理設
計、レイアウト設計、テスト設計からなる。残る一つが
マイクロセル自体の設計フェーズで、回路設計と呼ばれ
る。
フェーズに分けることができる。例えば、5フェーズに
分けたとする。この場合、そのうちの四つは集積回路全
体を設計するフェーズで、システム設計、機能・論理設
計、レイアウト設計、テスト設計からなる。残る一つが
マイクロセル自体の設計フェーズで、回路設計と呼ばれ
る。
【0003】最初のフェーズであるシステム設計フェー
ズでは、集積回路全体をシステムとしてとらえ、その動
作を定義し、ハードウェア構成を明確にする。システム
設計が完了すると、機能・論理設計フェーズに移る。こ
の機能・論理設計フェーズでは、システム設計結果であ
るRTL(register transfer level )記述を、詳細化
しゲート・レベルの論理回路を得る。ここで、「ゲート
・レベルの論理回路」は「ネットリスト」とも呼ばれ、
マクロセルの接続関係データである。次のレイアウト設
計フェーズは、ゲートレベルの論理回路(ネットリス
ト)を構成する各マクロセルを、集積回路チップ内に置
き(配置し)、その間を結ぶ(配線する)フェーズであ
る。本発明はこのレイアウト設計フェーズに係る。
ズでは、集積回路全体をシステムとしてとらえ、その動
作を定義し、ハードウェア構成を明確にする。システム
設計が完了すると、機能・論理設計フェーズに移る。こ
の機能・論理設計フェーズでは、システム設計結果であ
るRTL(register transfer level )記述を、詳細化
しゲート・レベルの論理回路を得る。ここで、「ゲート
・レベルの論理回路」は「ネットリスト」とも呼ばれ、
マクロセルの接続関係データである。次のレイアウト設
計フェーズは、ゲートレベルの論理回路(ネットリス
ト)を構成する各マクロセルを、集積回路チップ内に置
き(配置し)、その間を結ぶ(配線する)フェーズであ
る。本発明はこのレイアウト設計フェーズに係る。
【0004】図11を参照して、従来のレイアウト設計
フェーズについて説明する。
フェーズについて説明する。
【0005】機能・論理設計フェーズによって集積回路
を論理設計して得られる元ネットリストをここでは「ネ
ットリストA」と呼ぶことにする。このネットリストA
に対して配置・配線処理部によって配置・配線を実行す
る(ステップS11)。配置・配線を実行後に、性能最
適化処理部によって性能最適化を行い(ステップS1
2)、性能要求を満たすように最適化された最適化元ネ
ットリストと元レイアウトとを得る。ここでは、最適化
元ネットリストおよび元レイアウトをそれぞれ「ネット
リストB」および「レイアウトB」と呼ぶことにする。
を論理設計して得られる元ネットリストをここでは「ネ
ットリストA」と呼ぶことにする。このネットリストA
に対して配置・配線処理部によって配置・配線を実行す
る(ステップS11)。配置・配線を実行後に、性能最
適化処理部によって性能最適化を行い(ステップS1
2)、性能要求を満たすように最適化された最適化元ネ
ットリストと元レイアウトとを得る。ここでは、最適化
元ネットリストおよび元レイアウトをそれぞれ「ネット
リストB」および「レイアウトB」と呼ぶことにする。
【0006】ステップS12での性能最適化処理部につ
いて説明する。性能最適化処理部では、性能解析を行
い、遅延制約を満たすまで、性能最適化(バッファ挿
入、ゲートリサイズ)によるネットリスト変更、最適化
箇所のレイアウト変更を実行する。この性能最適化処理
は非常に時間がかかることに注意されたい。
いて説明する。性能最適化処理部では、性能解析を行
い、遅延制約を満たすまで、性能最適化(バッファ挿
入、ゲートリサイズ)によるネットリスト変更、最適化
箇所のレイアウト変更を実行する。この性能最適化処理
は非常に時間がかかることに注意されたい。
【0007】さて、このネットリストA(元ネットリス
ト)の一部に対して論理変更が生じたとする。ここで
は、ネットリストAの一部に対して論理変更を施して得
られる論理変更ネットリストを「ネットリストC」と呼
ぶことにする。
ト)の一部に対して論理変更が生じたとする。ここで
は、ネットリストAの一部に対して論理変更を施して得
られる論理変更ネットリストを「ネットリストC」と呼
ぶことにする。
【0008】この場合、従来のレイアウト設計フェーズ
では、ネットリストAに対して実行されたレイアウト設
計と同様の処理が、ネットリストCに対して実行され
る。すなわち、ネットリストCに対して配置・配線処理
部によって配置・配線を実行する(ステップS2
1′)。配置・配線を実行後に、性能最適化処理部によ
って性能最適化を行い(ステップS22′)、性能要求
を満たすように最適化された最適化論理変更ネットリス
トと論理変更レイアウトとを得る。ここでは、最適化論
理変更ネットリストおよび論理変更レイアウトをそれぞ
れ「ネットリストE′」および「レイアウトE′」と呼
ぶことにする。
では、ネットリストAに対して実行されたレイアウト設
計と同様の処理が、ネットリストCに対して実行され
る。すなわち、ネットリストCに対して配置・配線処理
部によって配置・配線を実行する(ステップS2
1′)。配置・配線を実行後に、性能最適化処理部によ
って性能最適化を行い(ステップS22′)、性能要求
を満たすように最適化された最適化論理変更ネットリス
トと論理変更レイアウトとを得る。ここでは、最適化論
理変更ネットリストおよび論理変更レイアウトをそれぞ
れ「ネットリストE′」および「レイアウトE′」と呼
ぶことにする。
【0009】
【発明が解決しようとする課題】上述したように、従来
のレイアウト設計フェーズでは、元ネットリスト(ネッ
トリストA)に対して性能最適化を行った結果(ネット
リストB,レイアウトB)が既に存在するにもかかわら
ず、その後、元ネットリスト(ネットリストA)の一部
に論理変更が生じると、論理変更後のネットリスト(ネ
ットリストC)に対して全体の最適化を再実行しなけれ
ばならない。そのため、元ネットリストの一部に論理変
更が生じるたびに、全体での最適化実行に手間がかかる
という問題がある。また、全体での最適化実行をやり直
すことによって、論理変更されていない箇所の結果も異
なってしまうことがある。
のレイアウト設計フェーズでは、元ネットリスト(ネッ
トリストA)に対して性能最適化を行った結果(ネット
リストB,レイアウトB)が既に存在するにもかかわら
ず、その後、元ネットリスト(ネットリストA)の一部
に論理変更が生じると、論理変更後のネットリスト(ネ
ットリストC)に対して全体の最適化を再実行しなけれ
ばならない。そのため、元ネットリストの一部に論理変
更が生じるたびに、全体での最適化実行に手間がかかる
という問題がある。また、全体での最適化実行をやり直
すことによって、論理変更されていない箇所の結果も異
なってしまうことがある。
【0010】したがって、本発明の課題は、元ネットリ
ストの一部に論理変更が生じた際の全体での最適化再実
行の手間を省くことができる、集積回路のCADシステ
ムを提供することにある。
ストの一部に論理変更が生じた際の全体での最適化再実
行の手間を省くことができる、集積回路のCADシステ
ムを提供することにある。
【0011】本発明の他の課題は、論理変更されていな
い箇所の論理変更前後の最適化結果に違いが出ることを
なくすことができる、集積回路のCADシステムを提供
することにある。
い箇所の論理変更前後の最適化結果に違いが出ることを
なくすことができる、集積回路のCADシステムを提供
することにある。
【0012】尚、本発明に関連する先行技術として、特
開平8−212246号公報には、元ネットリストの一
部に論理変更が生じた際に、論理変更部分のみ最適化を
行って、最適化されたネットリストを生成するようにし
た「論理生成方法」が開示されている。この先行技術
は、本発明でいえば、ネットリストAの一部を論理変更
する際に、最適化されたネットリストCを生成する技術
思想を開示するのみであって、本発明のように、レイア
ウト設計の際に性能最適化を行う技術とは直接の関係は
ない。
開平8−212246号公報には、元ネットリストの一
部に論理変更が生じた際に、論理変更部分のみ最適化を
行って、最適化されたネットリストを生成するようにし
た「論理生成方法」が開示されている。この先行技術
は、本発明でいえば、ネットリストAの一部を論理変更
する際に、最適化されたネットリストCを生成する技術
思想を開示するのみであって、本発明のように、レイア
ウト設計の際に性能最適化を行う技術とは直接の関係は
ない。
【0013】
【課題を解決するための手段】元ネットリストに対して
は、それに対してレイアウト設計を行って性能要求を満
たすように最適化された最適化元ネットリストおよび元
レイアウトが既に得られている。したがって、元ネット
リストの一部に論理変更が生じても、できるだけこれら
最適化元ネットリストおよび元レイアウトを利用するよ
うにすれば、全体での最適化再実行の手間を省くことが
できる筈であると、本発明者は思料した。そうすれば、
当然に、論理変更されていない箇所の論理変更前後の最
適化結果に違いが出ることをなくすことも可能である
と、本発明者は思料した。
は、それに対してレイアウト設計を行って性能要求を満
たすように最適化された最適化元ネットリストおよび元
レイアウトが既に得られている。したがって、元ネット
リストの一部に論理変更が生じても、できるだけこれら
最適化元ネットリストおよび元レイアウトを利用するよ
うにすれば、全体での最適化再実行の手間を省くことが
できる筈であると、本発明者は思料した。そうすれば、
当然に、論理変更されていない箇所の論理変更前後の最
適化結果に違いが出ることをなくすことも可能である
と、本発明者は思料した。
【0014】本発明によれば、集積回路を論理設計して
得られる元ネットリストに対してレイアウト設計を行っ
て性能要求を満たすように最適化された最適化元ネット
リストと元レイアウトとが既に得られている状態で、元
ネットリストの一部に対して論理変更を施して得られる
論理変更ネットリストに対して、レイアウト設計を行っ
て性能要求を満たすように最適化された最適化論理変更
ネットリストと論理変更レイアウトとを得る、集積回路
のCADシステムにおいて、元ネットリストと最適化元
ネットリストとの差分を抽出して、その差分を示す差分
データを出力する手段と、入力された論理変更箇所以外
を示す情報と差分データとに基づいて、論理変更ネット
リストにおける論理変更箇所を含むブロック以外のブロ
ックに対して最適化結果を適用した変更箇所外ネットリ
ストを作成する手段と、最適化元ネットリストと元レイ
アウトとを参照して、変更箇所外ネットリストから変更
箇所外レイアウトを作成する手段と、入力された論理変
更箇所を示す情報に基づいて、変更箇所外ネットリスト
および変更箇所外レイアウトにおける前記論理変更箇所
を含むブロックに対して性能最適化を施して、最適化論
理変更ネットリストと論理変更レイアウトとを作成する
手段と、を有することを特徴とする集積回路のCADシ
ステムが得られる。
得られる元ネットリストに対してレイアウト設計を行っ
て性能要求を満たすように最適化された最適化元ネット
リストと元レイアウトとが既に得られている状態で、元
ネットリストの一部に対して論理変更を施して得られる
論理変更ネットリストに対して、レイアウト設計を行っ
て性能要求を満たすように最適化された最適化論理変更
ネットリストと論理変更レイアウトとを得る、集積回路
のCADシステムにおいて、元ネットリストと最適化元
ネットリストとの差分を抽出して、その差分を示す差分
データを出力する手段と、入力された論理変更箇所以外
を示す情報と差分データとに基づいて、論理変更ネット
リストにおける論理変更箇所を含むブロック以外のブロ
ックに対して最適化結果を適用した変更箇所外ネットリ
ストを作成する手段と、最適化元ネットリストと元レイ
アウトとを参照して、変更箇所外ネットリストから変更
箇所外レイアウトを作成する手段と、入力された論理変
更箇所を示す情報に基づいて、変更箇所外ネットリスト
および変更箇所外レイアウトにおける前記論理変更箇所
を含むブロックに対して性能最適化を施して、最適化論
理変更ネットリストと論理変更レイアウトとを作成する
手段と、を有することを特徴とする集積回路のCADシ
ステムが得られる。
【0015】上記集積回路のCADシステムにおいて、
元ネットリストと論理変更ネットリストとの差分を抽出
して、論理変更箇所以外を示す情報と論理変更箇所を示
す情報とを得る手段をさらに含んでも良い。
元ネットリストと論理変更ネットリストとの差分を抽出
して、論理変更箇所以外を示す情報と論理変更箇所を示
す情報とを得る手段をさらに含んでも良い。
【0016】また、本発明の一態様によれば、集積回路
を論理設計して得られる元ネットリストに対してレイア
ウト設計を行って性能要求を満たすように最適化された
最適化元ネットリストと元レイアウトとが既に得られて
いる状態で、元ネットリストの一部に対して論理変更を
施して得られる論理変更ネットリストに対して、レイア
ウト設計を行って性能要求を満たすように最適化された
最適化論理変更ネットリストと論理変更レイアウトとを
得る、集積回路のレイアウト設計方法において、元ネッ
トリストと最適化元ネットリストとの差分を抽出するス
テップと、入力された論理変更箇所以外を示す情報と上
記差分とに基づいて、論理変更ネットリストにおける論
理変更箇所を含むブロック以外のブロックに対して最適
化結果を適用した変更箇所外ネットリストを作成するス
テップと、最適化元ネットリストと元レイアウトとを参
照して、変更箇所外ネットリストから変更箇所外レイア
ウトを作成するステップと、入力された論理変更箇所を
示す情報に基づいて、変更箇所外ネットリストおよび変
更箇所外レイアウトにおける論理変更箇所を含むブロッ
クに対して性能最適化を施して、最適化論理変更ネット
リストと論理変更レイアウトとを作成するステップと、
を含むことを特徴とする集積回路のレイアウト設計方法
が得られる。
を論理設計して得られる元ネットリストに対してレイア
ウト設計を行って性能要求を満たすように最適化された
最適化元ネットリストと元レイアウトとが既に得られて
いる状態で、元ネットリストの一部に対して論理変更を
施して得られる論理変更ネットリストに対して、レイア
ウト設計を行って性能要求を満たすように最適化された
最適化論理変更ネットリストと論理変更レイアウトとを
得る、集積回路のレイアウト設計方法において、元ネッ
トリストと最適化元ネットリストとの差分を抽出するス
テップと、入力された論理変更箇所以外を示す情報と上
記差分とに基づいて、論理変更ネットリストにおける論
理変更箇所を含むブロック以外のブロックに対して最適
化結果を適用した変更箇所外ネットリストを作成するス
テップと、最適化元ネットリストと元レイアウトとを参
照して、変更箇所外ネットリストから変更箇所外レイア
ウトを作成するステップと、入力された論理変更箇所を
示す情報に基づいて、変更箇所外ネットリストおよび変
更箇所外レイアウトにおける論理変更箇所を含むブロッ
クに対して性能最適化を施して、最適化論理変更ネット
リストと論理変更レイアウトとを作成するステップと、
を含むことを特徴とする集積回路のレイアウト設計方法
が得られる。
【0017】本発明の別態様によれば、集積回路を論理
設計して得られる元ネットリストに対してレイアウト設
計を行って性能要求を満たすように最適化された最適化
元ネットリストと元レイアウトとが既に得られている状
態で、元ネットリストの一部に対して論理変更を施して
得られる論理変更ネットリストに対して、レイアウト設
計を行って性能要求を満たすように最適化された最適化
論理変更ネットリストと論理変更レイアウトとを得る、
集積回路のレイアウト設計方法において、元ネットリス
トと論理変更ネットリストとの差分を抽出して、論理変
更箇所以外を示す情報と論理変更箇所を示す情報とを得
るステップと、元ネットリストと最適化元ネットリスト
との差分を抽出して、その差分を示す差分データを出力
するステップと、論理変更箇所以外を示す情報と差分デ
ータとに基づいて、論理変更ネットリストにおける論理
変更箇所を含むブロック以外のブロックに対して最適化
結果を適用した変更箇所外ネットリストを作成するステ
ップと、最適化元ネットリストと元レイアウトとを参照
して、変更箇所外ネットリストから変更箇所外レイアウ
トを作成するステップと、論理変更箇所を示す情報に基
づいて、変更箇所外ネットリストおよび変更箇所外レイ
アウトにおける前記論理変更箇所を含むブロックに対し
て性能最適化を施して、最適化論理変更ネットリストと
論理変更レイアウトとを作成するステップと、を含むこ
とを特徴とする集積回路のレイアウト設計方法が得られ
る。
設計して得られる元ネットリストに対してレイアウト設
計を行って性能要求を満たすように最適化された最適化
元ネットリストと元レイアウトとが既に得られている状
態で、元ネットリストの一部に対して論理変更を施して
得られる論理変更ネットリストに対して、レイアウト設
計を行って性能要求を満たすように最適化された最適化
論理変更ネットリストと論理変更レイアウトとを得る、
集積回路のレイアウト設計方法において、元ネットリス
トと論理変更ネットリストとの差分を抽出して、論理変
更箇所以外を示す情報と論理変更箇所を示す情報とを得
るステップと、元ネットリストと最適化元ネットリスト
との差分を抽出して、その差分を示す差分データを出力
するステップと、論理変更箇所以外を示す情報と差分デ
ータとに基づいて、論理変更ネットリストにおける論理
変更箇所を含むブロック以外のブロックに対して最適化
結果を適用した変更箇所外ネットリストを作成するステ
ップと、最適化元ネットリストと元レイアウトとを参照
して、変更箇所外ネットリストから変更箇所外レイアウ
トを作成するステップと、論理変更箇所を示す情報に基
づいて、変更箇所外ネットリストおよび変更箇所外レイ
アウトにおける前記論理変更箇所を含むブロックに対し
て性能最適化を施して、最適化論理変更ネットリストと
論理変更レイアウトとを作成するステップと、を含むこ
とを特徴とする集積回路のレイアウト設計方法が得られ
る。
【0018】さらに、本発明の一態様によれば、集積回
路を論理設計して得られる元ネットリストに対してレイ
アウト設計を行って性能要求を満たすように最適化され
た最適化元ネットリストと元レイアウトとが既に得られ
ている状態で、元ネットリストの一部に対して論理変更
を施して得られる論理変更ネットリストに対して、レイ
アウト設計を行って性能要求を満たすように最適化され
た最適化論理変更ネットリストと論理変更レイアウトと
を得る処理を、コンピュータで実行させるためのプログ
ラムを記録した記録媒体において、元ネットリストと最
適化元ネットリストとの差分を抽出する処理と、入力さ
れた論理変更箇所以外を示す情報と上記差分とに基づい
て、論理変更ネットリストにおける論理変更箇所を含む
ブロック以外のブロックに対して最適化結果を適用した
変更箇所外ネットリストを作成する処理と、最適化元ネ
ットリストと元レイアウトとを参照して、変更箇所外ネ
ットリストから変更箇所外レイアウトを作成する処理
と、入力された論理変更箇所を示す情報に基づいて、変
更箇所外ネットリストおよび変更箇所外レイアウトにお
ける論理変更箇所を含むブロックに対して性能最適化を
施して、最適化論理変更ネットリストと論理変更レイア
ウトとを作成する処理と、をコンピュータに実行させる
プログラムを記録した、コンピュータが読取可能な記録
媒体が得られる。
路を論理設計して得られる元ネットリストに対してレイ
アウト設計を行って性能要求を満たすように最適化され
た最適化元ネットリストと元レイアウトとが既に得られ
ている状態で、元ネットリストの一部に対して論理変更
を施して得られる論理変更ネットリストに対して、レイ
アウト設計を行って性能要求を満たすように最適化され
た最適化論理変更ネットリストと論理変更レイアウトと
を得る処理を、コンピュータで実行させるためのプログ
ラムを記録した記録媒体において、元ネットリストと最
適化元ネットリストとの差分を抽出する処理と、入力さ
れた論理変更箇所以外を示す情報と上記差分とに基づい
て、論理変更ネットリストにおける論理変更箇所を含む
ブロック以外のブロックに対して最適化結果を適用した
変更箇所外ネットリストを作成する処理と、最適化元ネ
ットリストと元レイアウトとを参照して、変更箇所外ネ
ットリストから変更箇所外レイアウトを作成する処理
と、入力された論理変更箇所を示す情報に基づいて、変
更箇所外ネットリストおよび変更箇所外レイアウトにお
ける論理変更箇所を含むブロックに対して性能最適化を
施して、最適化論理変更ネットリストと論理変更レイア
ウトとを作成する処理と、をコンピュータに実行させる
プログラムを記録した、コンピュータが読取可能な記録
媒体が得られる。
【0019】本発明の別態様によれば、集積回路を論理
設計して得られる元ネットリストに対してレイアウト設
計を行って性能要求を満たすように最適化された最適化
元ネットリストと元レイアウトとが既に得られている状
態で、元ネットリストの一部に対して論理変更を施して
得られる論理変更ネットリストに対して、レイアウト設
計を行って性能要求を満たすように最適化された最適化
論理変更ネットリストと論理変更レイアウトとを得る処
理を、コンピュータで実行させるためのプログラムを記
録した記録媒体において、元ネットリストと論理変更ネ
ットリストとの差分を抽出して、論理変更箇所以外を示
す情報と論理変更箇所を示す情報とを得る処理と、元ネ
ットリストと最適化元ネットリストとの差分を抽出し
て、その差分を示す差分データを出力する処理と、論理
変更箇所以外を示す情報と差分データとに基づいて、論
理変更ネットリストにおける論理変更箇所を含むブロッ
ク以外のブロックに対して最適化結果を適用した変更箇
所外ネットリストを作成する処理と、最適化元ネットリ
ストと元レイアウトとを参照して、変更箇所外ネットリ
ストから変更箇所外レイアウトを作成する処理と、論理
変更箇所を示す情報に基づいて、変更箇所外ネットリス
トおよび変更箇所外レイアウトにおける論理変更箇所を
含むブロックに対して性能最適化を施して、最適化論理
変更ネットリストと論理変更レイアウトとを作成する処
理と、をコンピュータに実行させるプログラムを記録し
た、コンピュータが読取可能な記録媒体が得られる。
設計して得られる元ネットリストに対してレイアウト設
計を行って性能要求を満たすように最適化された最適化
元ネットリストと元レイアウトとが既に得られている状
態で、元ネットリストの一部に対して論理変更を施して
得られる論理変更ネットリストに対して、レイアウト設
計を行って性能要求を満たすように最適化された最適化
論理変更ネットリストと論理変更レイアウトとを得る処
理を、コンピュータで実行させるためのプログラムを記
録した記録媒体において、元ネットリストと論理変更ネ
ットリストとの差分を抽出して、論理変更箇所以外を示
す情報と論理変更箇所を示す情報とを得る処理と、元ネ
ットリストと最適化元ネットリストとの差分を抽出し
て、その差分を示す差分データを出力する処理と、論理
変更箇所以外を示す情報と差分データとに基づいて、論
理変更ネットリストにおける論理変更箇所を含むブロッ
ク以外のブロックに対して最適化結果を適用した変更箇
所外ネットリストを作成する処理と、最適化元ネットリ
ストと元レイアウトとを参照して、変更箇所外ネットリ
ストから変更箇所外レイアウトを作成する処理と、論理
変更箇所を示す情報に基づいて、変更箇所外ネットリス
トおよび変更箇所外レイアウトにおける論理変更箇所を
含むブロックに対して性能最適化を施して、最適化論理
変更ネットリストと論理変更レイアウトとを作成する処
理と、をコンピュータに実行させるプログラムを記録し
た、コンピュータが読取可能な記録媒体が得られる。
【0020】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して説明する。
て図面を参照して説明する。
【0021】図1に、本発明の第1の実施の形態に係る
集積回路のCADシステムについて説明する。なお、図
1に示すCADシステムを実行するプログラムは、記録
媒体(図示せず)に記録されていても良い。ここで、
「記録媒体」とは、プログラムを記録したコンピュータ
読み取り可能な記録媒体のことをいい、具体的には、C
D−ROM,フレキシブルディスクなどの磁気ディス
ク、半導体メモリなどを含む。さらに、記録媒体はプロ
グラムを記録した紙でも良い。この場合には、コンピュ
ータはOCR(光学的文字読取装置)のような読取装置
と、この読取装置で読み取った文字(コード)をコンピ
ュータが認識できる機械言語に翻訳するコンパイラとを
備えていれば良い。
集積回路のCADシステムについて説明する。なお、図
1に示すCADシステムを実行するプログラムは、記録
媒体(図示せず)に記録されていても良い。ここで、
「記録媒体」とは、プログラムを記録したコンピュータ
読み取り可能な記録媒体のことをいい、具体的には、C
D−ROM,フレキシブルディスクなどの磁気ディス
ク、半導体メモリなどを含む。さらに、記録媒体はプロ
グラムを記録した紙でも良い。この場合には、コンピュ
ータはOCR(光学的文字読取装置)のような読取装置
と、この読取装置で読み取った文字(コード)をコンピ
ュータが認識できる機械言語に翻訳するコンパイラとを
備えていれば良い。
【0022】図示のCADシステムにおいて、元ネット
リスト(ネットリストA)から最適化元ネットリスト
(ネットリストB)と元レイアウト(レイアウトB)と
を生成する手順は従来と同様である。
リスト(ネットリストA)から最適化元ネットリスト
(ネットリストB)と元レイアウト(レイアウトB)と
を生成する手順は従来と同様である。
【0023】すなわち、機能・論理設計フェーズによっ
て集積回路を論理設計して得られる元ネットリスト(ネ
ットリストA)に対して配置・配線処理部によって配置
・配線を実行する(ステップS11)。配置・配線を実
行後に、性能最適化処理部によって性能最適化を行い
(ステップS12)、性能要求を満たすように最適化さ
れた最適化元ネットリスト(ネットリストB)と元レイ
アウト(レイアウトB)とを得る。
て集積回路を論理設計して得られる元ネットリスト(ネ
ットリストA)に対して配置・配線処理部によって配置
・配線を実行する(ステップS11)。配置・配線を実
行後に、性能最適化処理部によって性能最適化を行い
(ステップS12)、性能要求を満たすように最適化さ
れた最適化元ネットリスト(ネットリストB)と元レイ
アウト(レイアウトB)とを得る。
【0024】さて、このネットリストA(元ネットリス
ト)の一部に対して論理変更が生じたとする。すなわ
ち、ネットリストAの一部に対して論理変更を施して論
理変更ネットリスト(ネットリストC)が得られたとす
る。
ト)の一部に対して論理変更が生じたとする。すなわ
ち、ネットリストAの一部に対して論理変更を施して論
理変更ネットリスト(ネットリストC)が得られたとす
る。
【0025】本発明では、ネットリストCに対してレイ
トアウト設計を行う際、既に存在する最適化元ネットリ
スト(ネットリストB)および元レイアウト(レイアウ
トB)をできるだけ利用することにより、全体での最適
化再実行の手間を省くようにしている。それによって、
論理変更されていない箇所に対して論理変更前後の最適
化結果に違いが出ることをなくしている。
トアウト設計を行う際、既に存在する最適化元ネットリ
スト(ネットリストB)および元レイアウト(レイアウ
トB)をできるだけ利用することにより、全体での最適
化再実行の手間を省くようにしている。それによって、
論理変更されていない箇所に対して論理変更前後の最適
化結果に違いが出ることをなくしている。
【0026】まず、差分抽出部によって、ネットリスト
AとネットリストBとの差分を抽出して、その差分を示
す差分データを得る(ステップS21)。この差分抽出
部により抽出された差分データとオペレータ(図示せ
ず)によって入力された「論理変更箇所以外」を示す情
報とに基づいて、変更箇所外ネットリスト作成部によっ
て、ネットリストCに対して論理変更箇所以外に最適化
結果を適用したネットリスト(以下、変更箇所外ネット
リストと呼ぶ)を作成する(ステップS22)。この変
更箇所外ネットリストをここでは「ネットリストD」と
呼ぶことにする。ネットリストBとレイアウトBとを参
照して、ECO(Enginearing Changing Order) 処理部
によって、ネットリストDから変更箇所外レイアウトを
作成する(ステップS23)。ここで「ECO」はこの
技術分野において周知の技術であって、ECO処理部で
は、2つのネットリスト(ネットリストDとネットリス
トB)を比較して、異なる箇所に対してのみレイアウト
変更する。ここでは、変更箇所外レイアウトを「レイア
ウトD」と呼ぶことにする。
AとネットリストBとの差分を抽出して、その差分を示
す差分データを得る(ステップS21)。この差分抽出
部により抽出された差分データとオペレータ(図示せ
ず)によって入力された「論理変更箇所以外」を示す情
報とに基づいて、変更箇所外ネットリスト作成部によっ
て、ネットリストCに対して論理変更箇所以外に最適化
結果を適用したネットリスト(以下、変更箇所外ネット
リストと呼ぶ)を作成する(ステップS22)。この変
更箇所外ネットリストをここでは「ネットリストD」と
呼ぶことにする。ネットリストBとレイアウトBとを参
照して、ECO(Enginearing Changing Order) 処理部
によって、ネットリストDから変更箇所外レイアウトを
作成する(ステップS23)。ここで「ECO」はこの
技術分野において周知の技術であって、ECO処理部で
は、2つのネットリスト(ネットリストDとネットリス
トB)を比較して、異なる箇所に対してのみレイアウト
変更する。ここでは、変更箇所外レイアウトを「レイア
ウトD」と呼ぶことにする。
【0027】引き続いて、上述のようにして作成された
ネットリストDおよびレイアウトDに対して、オペレー
タによって入力された「論理変更箇所」を示す情報に基
づいて、部分性能最適化処理部によって、論理変更箇所
に対して性能最適化を施し、最適化論理変更ネットリス
トと論理変更レイアウトとを作成する(ステップS2
4)。ここでは、最適化論理変更ネットリストおよび論
理変更レイアウトをそれぞれ「ネットリストE」および
「レイアウトE」と呼ぶことにする。
ネットリストDおよびレイアウトDに対して、オペレー
タによって入力された「論理変更箇所」を示す情報に基
づいて、部分性能最適化処理部によって、論理変更箇所
に対して性能最適化を施し、最適化論理変更ネットリス
トと論理変更レイアウトとを作成する(ステップS2
4)。ここでは、最適化論理変更ネットリストおよび論
理変更レイアウトをそれぞれ「ネットリストE」および
「レイアウトE」と呼ぶことにする。
【0028】このように本発明のレイアウト設計フェー
ズでは、最適化前後の差分を抽出し、論理変更されてい
ない箇所には抽出した差分データで示される変更と同様
の変更をするので、論理変更されていない箇所に対して
既に得られている最適化結果(ネットリストBおよびレ
イアウトB)を適用できる。したがって、元ネットリス
ト(ネットリストA)の一部に論理変更が生じた際の、
最適化再実行の手間を省くことができる。また、論理変
更されていない箇所の論理変更前後の最適化結果に違い
が出ることもなくなる。
ズでは、最適化前後の差分を抽出し、論理変更されてい
ない箇所には抽出した差分データで示される変更と同様
の変更をするので、論理変更されていない箇所に対して
既に得られている最適化結果(ネットリストBおよびレ
イアウトB)を適用できる。したがって、元ネットリス
ト(ネットリストA)の一部に論理変更が生じた際の、
最適化再実行の手間を省くことができる。また、論理変
更されていない箇所の論理変更前後の最適化結果に違い
が出ることもなくなる。
【0029】上記第1の実施の形態では、「論理変更箇
所以外」を示す情報と「論理変更箇所」を示す情報とを
人手により入力しているが、次に述べる第2の実施の形
態のように、自動的に入力するようにしても良い。
所以外」を示す情報と「論理変更箇所」を示す情報とを
人手により入力しているが、次に述べる第2の実施の形
態のように、自動的に入力するようにしても良い。
【0030】図2を参照すると、本発明の第2の実施の
形態に係る集積回路のCADシステムは、差分抽出処理
部(ステップS25)が付加されている点を除いて、図
1に示したものと同様の構成を有する。ステップ25の
差分抽出処理部では、ネットリストA(元ネットリス
ト)とネットリストC(論理変更ネットリスト)との差
分を抽出し、論理変更箇所を含むブロックとそれ以外
(論理変更箇所以外)のブロックとを分離して抽出す
る。論理変更箇所以外のブロックを示す情報は、第1の
実施の形態における「論理変更箇所以外」を示す情報と
同一であり、ステップS22の変更箇所外ネットリスト
作成部へ供給される。一方、論理変更箇所を含むブロッ
クを示す情報は、第1の実施の形態における「論理変更
箇所」を示す情報と同一であり、ステップS24の部分
性能最適化処理部へ供給される。
形態に係る集積回路のCADシステムは、差分抽出処理
部(ステップS25)が付加されている点を除いて、図
1に示したものと同様の構成を有する。ステップ25の
差分抽出処理部では、ネットリストA(元ネットリス
ト)とネットリストC(論理変更ネットリスト)との差
分を抽出し、論理変更箇所を含むブロックとそれ以外
(論理変更箇所以外)のブロックとを分離して抽出す
る。論理変更箇所以外のブロックを示す情報は、第1の
実施の形態における「論理変更箇所以外」を示す情報と
同一であり、ステップS22の変更箇所外ネットリスト
作成部へ供給される。一方、論理変更箇所を含むブロッ
クを示す情報は、第1の実施の形態における「論理変更
箇所」を示す情報と同一であり、ステップS24の部分
性能最適化処理部へ供給される。
【0031】第2の実施の形態は、上述した第1の実施
の形態と同様の効果を奏することは明らかである。第2
の実施の形態では、さらに、人手による入力を省くこと
ができるという利点がある。
の形態と同様の効果を奏することは明らかである。第2
の実施の形態では、さらに、人手による入力を省くこと
ができるという利点がある。
【0032】
【実施例】次に、図3乃至図10を参照して、ネットリ
ストA(元ネットリスト)、ネットリストB(最適化元
ネットリスト)、レイアウトB(元レイアウト)、ネッ
トリストC(論理変更ネットリスト)、ネットリストD
(変更箇所外ネットリスト)、レイアウトD(変更箇所
外レイアウト)、ネットリストE(最適化論理変更ネッ
トリスト)、レイアウトE(論理変更レイアウト)の具
体例について説明する。
ストA(元ネットリスト)、ネットリストB(最適化元
ネットリスト)、レイアウトB(元レイアウト)、ネッ
トリストC(論理変更ネットリスト)、ネットリストD
(変更箇所外ネットリスト)、レイアウトD(変更箇所
外レイアウト)、ネットリストE(最適化論理変更ネッ
トリスト)、レイアウトE(論理変更レイアウト)の具
体例について説明する。
【0033】図3はネットリストA(元ネットリスト)
の一例を示す。図示のネットリストAは、第1乃至第4
のゲート1,2,3,4から成る第1のブロックと、第
5乃至第8のゲート5,6,7,8から成る第2のブロ
ックと、第9乃至第12のゲート9,10,11,12
から成る第3のブロックと、の3つのブロックから構成
され、第1のブロックを構成するゲート1〜4の入出力
端、第2のブロックを構成するゲート5〜8の入出力
端、および第3のブロックを構成するゲート9〜12の
入出力端は図示の如く接続されている。すなわち、第1
のブロックにおいて、第1のゲート1の出力端は第2の
ゲート2の入力端に接続され、第2のゲート2の出力端
は第3のゲート3の入力端に接続され、第3のゲート3
の出力端は第4のゲート4の入力端に接続されている。
第2のブロックにおいて、第5のゲート5の出力端は第
6のゲート6の入力端に接続され、第6のゲート6の出
力端は第7のゲート7の入力端に接続され、第7のゲー
ト7の出力端は第8のゲート8の入力端に接続されてい
る。第3のブロックにおいて、第9のゲート9の出力端
は第10のゲート10の入力端に接続され、第10のゲ
ート10の出力端は第11のゲート11の入力端に接続
され、第11のゲート11の出力端は第12のゲート1
2の入力端に接続されている。
の一例を示す。図示のネットリストAは、第1乃至第4
のゲート1,2,3,4から成る第1のブロックと、第
5乃至第8のゲート5,6,7,8から成る第2のブロ
ックと、第9乃至第12のゲート9,10,11,12
から成る第3のブロックと、の3つのブロックから構成
され、第1のブロックを構成するゲート1〜4の入出力
端、第2のブロックを構成するゲート5〜8の入出力
端、および第3のブロックを構成するゲート9〜12の
入出力端は図示の如く接続されている。すなわち、第1
のブロックにおいて、第1のゲート1の出力端は第2の
ゲート2の入力端に接続され、第2のゲート2の出力端
は第3のゲート3の入力端に接続され、第3のゲート3
の出力端は第4のゲート4の入力端に接続されている。
第2のブロックにおいて、第5のゲート5の出力端は第
6のゲート6の入力端に接続され、第6のゲート6の出
力端は第7のゲート7の入力端に接続され、第7のゲー
ト7の出力端は第8のゲート8の入力端に接続されてい
る。第3のブロックにおいて、第9のゲート9の出力端
は第10のゲート10の入力端に接続され、第10のゲ
ート10の出力端は第11のゲート11の入力端に接続
され、第11のゲート11の出力端は第12のゲート1
2の入力端に接続されている。
【0034】図4および図5に、それぞれ、図3に示し
たネットリストA(元ネットリスト)に対してレイアウ
ト設計(ステップS11およびS12)して得られる、
ネットリストB(最適化元ネットリスト)およびレイア
ウトB(元レイアウト)を示す。
たネットリストA(元ネットリスト)に対してレイアウ
ト設計(ステップS11およびS12)して得られる、
ネットリストB(最適化元ネットリスト)およびレイア
ウトB(元レイアウト)を示す。
【0035】図4に示すネットリストBは、性能最適化
のために、図3に示すネットリストAに対して、ゲート
間にバッファが挿入されている。詳細に説明すると、第
1のブロックにおいて、第1のゲート1の出力端と第2
のゲート2の入力端との間には第1のバッファ21が挿
入され、第2のゲート2の出力端と第3のゲート3の入
力端との間には第2のバッファ22が挿入され、第3の
ゲート3の出力端と第4のゲート4の入力端との間には
第3のバッファ23が挿入されている。第2のブロック
において、第5のゲート5の出力端と第6のゲート6の
入力端との間には第4のバッファ24が挿入され、第6
のゲート6の出力端と第7のゲート7の入力端との間に
は第5のバッファ25が挿入され、第7のゲート7の出
力端と第8のゲート8の入力端との間には第6のバッフ
ァ26が挿入されている。第3のブロックにおいて、第
9のゲート9の出力端と第10のゲート10の入力端と
の間には第7のバッファ27が挿入され、第10のゲー
ト10の出力端と第11のゲート11の入力端との間に
は第8のバッファ28が挿入され、第11のゲート11
の出力端と第12のゲート12の入力端との間には第9
のバッファ29が挿入されている。
のために、図3に示すネットリストAに対して、ゲート
間にバッファが挿入されている。詳細に説明すると、第
1のブロックにおいて、第1のゲート1の出力端と第2
のゲート2の入力端との間には第1のバッファ21が挿
入され、第2のゲート2の出力端と第3のゲート3の入
力端との間には第2のバッファ22が挿入され、第3の
ゲート3の出力端と第4のゲート4の入力端との間には
第3のバッファ23が挿入されている。第2のブロック
において、第5のゲート5の出力端と第6のゲート6の
入力端との間には第4のバッファ24が挿入され、第6
のゲート6の出力端と第7のゲート7の入力端との間に
は第5のバッファ25が挿入され、第7のゲート7の出
力端と第8のゲート8の入力端との間には第6のバッフ
ァ26が挿入されている。第3のブロックにおいて、第
9のゲート9の出力端と第10のゲート10の入力端と
の間には第7のバッファ27が挿入され、第10のゲー
ト10の出力端と第11のゲート11の入力端との間に
は第8のバッファ28が挿入され、第11のゲート11
の出力端と第12のゲート12の入力端との間には第9
のバッファ29が挿入されている。
【0036】図5に示すレイアウトBでは、図4に示す
ネットリストBを、上から下へ第1乃至第4行(段)の
4行(段)に分離(分割)した状態で配置・配線を行っ
ている。すなわち、第1行(段)目には、第1のブロッ
クを構成する第1のゲート1および第1のバッファ21
と、第2のブロックを構成する第5のゲート5および第
4のバッファ24と、第3のブロックを構成する第9の
ゲート9および第7のバッファ27が配置・配線されて
いる。第2行(段)目には、第1のブロックを構成する
第2のゲート2および第2のバッファ22と、第2のブ
ロックを構成する第6のゲート6および第5のバッファ
25と、第3のブロックを構成する第10のゲート10
および第8のバッファ28が配置・配線されている。第
3行(段)目には、第1のブロックを構成する第3のゲ
ート3および第3のバッファ23と、第2のブロックを
構成する第7のゲート7および第6のバッファ26と、
第3のブロックを構成する第11のゲート11および第
9のバッファ29が配置・配線されている。第4行
(段)目には、第1のブロックを構成する第4のゲート
4と、第2のブロックを構成する第8のゲート8と、第
3のブロックを構成する第12のゲート12が配置・配
線されている。
ネットリストBを、上から下へ第1乃至第4行(段)の
4行(段)に分離(分割)した状態で配置・配線を行っ
ている。すなわち、第1行(段)目には、第1のブロッ
クを構成する第1のゲート1および第1のバッファ21
と、第2のブロックを構成する第5のゲート5および第
4のバッファ24と、第3のブロックを構成する第9の
ゲート9および第7のバッファ27が配置・配線されて
いる。第2行(段)目には、第1のブロックを構成する
第2のゲート2および第2のバッファ22と、第2のブ
ロックを構成する第6のゲート6および第5のバッファ
25と、第3のブロックを構成する第10のゲート10
および第8のバッファ28が配置・配線されている。第
3行(段)目には、第1のブロックを構成する第3のゲ
ート3および第3のバッファ23と、第2のブロックを
構成する第7のゲート7および第6のバッファ26と、
第3のブロックを構成する第11のゲート11および第
9のバッファ29が配置・配線されている。第4行
(段)目には、第1のブロックを構成する第4のゲート
4と、第2のブロックを構成する第8のゲート8と、第
3のブロックを構成する第12のゲート12が配置・配
線されている。
【0037】図6に、図3に示したネットリストA(元
ネットリスト)の一部を論理変更したネットリストC
(論理変更ネットリスト)を示す。図示のネットリスト
Cは、図3に示したネットリストAに対して、第1のブ
ロックを構成する第2および第3のゲート2および3
を、それぞれ、第2および第3の変更ゲート32および
33に変更したものである。
ネットリスト)の一部を論理変更したネットリストC
(論理変更ネットリスト)を示す。図示のネットリスト
Cは、図3に示したネットリストAに対して、第1のブ
ロックを構成する第2および第3のゲート2および3
を、それぞれ、第2および第3の変更ゲート32および
33に変更したものである。
【0038】図7に、ステップS22の変更箇所外ネッ
トリスト作成部によって、図6に示すネットリストC
(論理変更ネットリスト)に対して論理変更箇所以外に
最適化結果を適用して作成されたネットリストD(変更
箇所外ネットリスト)を示す。図7から明らかなよう
に、ネットリストDは、論理変更箇所以外のブロック
(第2および第3のブロック)に対しては図4に示した
性能最適化したものと同一のものを採用しているが、論
理変更箇所を含むブロック(第1のブロック)に対して
は図3に示した性能最適化する前のものをそのまま採用
している。
トリスト作成部によって、図6に示すネットリストC
(論理変更ネットリスト)に対して論理変更箇所以外に
最適化結果を適用して作成されたネットリストD(変更
箇所外ネットリスト)を示す。図7から明らかなよう
に、ネットリストDは、論理変更箇所以外のブロック
(第2および第3のブロック)に対しては図4に示した
性能最適化したものと同一のものを採用しているが、論
理変更箇所を含むブロック(第1のブロック)に対して
は図3に示した性能最適化する前のものをそのまま採用
している。
【0039】図8に示すレイアウトD(変更箇所外レイ
アウト)では、図7に示すネットリストD(変更箇所外
ネットリスト)を、上から下へ第1乃至第4行(段)の
4行(段)に分離(分割)した状態で配置・配線を行っ
ている。図8から明らかなように、レイアウトDは、論
理変更箇所以外のブロック(第2および第3のブロッ
ク)に対しては図5に示した性能最適化したものと同一
のものが配置・配線されているが、論理変更箇所を含む
ブロック(第1のブロック)に対しては性能最適化する
前のものがそのまま配置・配線されている。
アウト)では、図7に示すネットリストD(変更箇所外
ネットリスト)を、上から下へ第1乃至第4行(段)の
4行(段)に分離(分割)した状態で配置・配線を行っ
ている。図8から明らかなように、レイアウトDは、論
理変更箇所以外のブロック(第2および第3のブロッ
ク)に対しては図5に示した性能最適化したものと同一
のものが配置・配線されているが、論理変更箇所を含む
ブロック(第1のブロック)に対しては性能最適化する
前のものがそのまま配置・配線されている。
【0040】図9および図10に、それぞれ、図7に示
したネットリストD(変更箇所外ネットリスト)および
レイアウトD(変更箇所外レイアウト)に対して部分性
能最適化処理(ステップ24)して得られる、ネットリ
ストE(最適化論理変更ネットリスト)およびレイアウ
トE(論理変更レイアウト)を示す。
したネットリストD(変更箇所外ネットリスト)および
レイアウトD(変更箇所外レイアウト)に対して部分性
能最適化処理(ステップ24)して得られる、ネットリ
ストE(最適化論理変更ネットリスト)およびレイアウ
トE(論理変更レイアウト)を示す。
【0041】図9に示されるように、ネットリストE
は、第1のブロックを構成するゲートの入出力端間にバ
ッファが挿入されている点を除いて、図7に示すネット
リストDと同様である。すなわち、第1のブロックにお
いて、第1のゲート1の出力端と第2の変更ゲート32
の入力端との間には第1の変更バッファ41が挿入さ
れ、第2の変更ゲート32の出力端と第3の変更ゲート
33の入力端との間には第2の変更バッファ42が挿入
され、第3の変更ゲート33の出力端と第4のゲート4
の入力端との間には第3の変更バッファ43が挿入され
ている。
は、第1のブロックを構成するゲートの入出力端間にバ
ッファが挿入されている点を除いて、図7に示すネット
リストDと同様である。すなわち、第1のブロックにお
いて、第1のゲート1の出力端と第2の変更ゲート32
の入力端との間には第1の変更バッファ41が挿入さ
れ、第2の変更ゲート32の出力端と第3の変更ゲート
33の入力端との間には第2の変更バッファ42が挿入
され、第3の変更ゲート33の出力端と第4のゲート4
の入力端との間には第3の変更バッファ43が挿入され
ている。
【0042】図4に示すネットリストB(最適化元ネッ
トリスト)との比較から明らかなように、図9に示すネ
ットリストEは、変更箇所以外のブロック(第2および
第3のブロック)がそのまま採用され、変更箇所を含む
ブロック(第1のブロック)のみが変更されていること
が分かる。
トリスト)との比較から明らかなように、図9に示すネ
ットリストEは、変更箇所以外のブロック(第2および
第3のブロック)がそのまま採用され、変更箇所を含む
ブロック(第1のブロック)のみが変更されていること
が分かる。
【0043】図10に示すように、レイアウトEは、第
1のブロックに対する配置・配線のみが相違している点
を除いて、図8に示すレイアウトDと同一である。すな
わち、第1行(段)目には、第1のブロックを構成する
第1のゲート1および第1の変更バッファ41と、第2
のブロックを構成する第5のゲート5および第4のバッ
ファ24と、第3のブロックを構成する第9のゲート9
および第7のバッファ27とが配置・配線されている。
第2行(段)目には、第1のブロックを構成する第2の
変更ゲート32および第2の変更バッファ42と、第2
のブロックを構成する第6のゲート6および第5のバッ
ファ25と、第3のブロックを構成する第10のゲート
10および第8のバッファ28とが配置・配線されてい
る。第3行(段)目には、第1のブロックを構成する第
3の変更ゲート33および第3の変更バッファ43と、
第2のブロックを構成する第7のゲート7および第6の
バッファ26と、第3のブロックを構成する第11のゲ
ート11および第9のバッファ29とが配置・配線され
ている。第4行(段)目には、第1のブロックを構成す
る第4のゲート4と、第2のブロックを構成する第8の
ゲート8と、第3のブロックを構成する第12のゲート
12とが配置・配線されている。
1のブロックに対する配置・配線のみが相違している点
を除いて、図8に示すレイアウトDと同一である。すな
わち、第1行(段)目には、第1のブロックを構成する
第1のゲート1および第1の変更バッファ41と、第2
のブロックを構成する第5のゲート5および第4のバッ
ファ24と、第3のブロックを構成する第9のゲート9
および第7のバッファ27とが配置・配線されている。
第2行(段)目には、第1のブロックを構成する第2の
変更ゲート32および第2の変更バッファ42と、第2
のブロックを構成する第6のゲート6および第5のバッ
ファ25と、第3のブロックを構成する第10のゲート
10および第8のバッファ28とが配置・配線されてい
る。第3行(段)目には、第1のブロックを構成する第
3の変更ゲート33および第3の変更バッファ43と、
第2のブロックを構成する第7のゲート7および第6の
バッファ26と、第3のブロックを構成する第11のゲ
ート11および第9のバッファ29とが配置・配線され
ている。第4行(段)目には、第1のブロックを構成す
る第4のゲート4と、第2のブロックを構成する第8の
ゲート8と、第3のブロックを構成する第12のゲート
12とが配置・配線されている。
【0044】図5に示すレイアウトB(元レイアウト)
との比較から明らかなように、図10に示すレイアウト
Eは、変更箇所以外のブロック(第2および第3のブロ
ック)に対してそのまま変更なく配置・配線がなされ、
変更箇所を含むブロック(第1のブロック)に対しての
み配置・配線が変更されていることが分かる。
との比較から明らかなように、図10に示すレイアウト
Eは、変更箇所以外のブロック(第2および第3のブロ
ック)に対してそのまま変更なく配置・配線がなされ、
変更箇所を含むブロック(第1のブロック)に対しての
み配置・配線が変更されていることが分かる。
【0045】本発明は上述した実施形態に限定せず、本
発明の趣旨を逸脱しない範囲内で種々の変更・変形が可
能である。
発明の趣旨を逸脱しない範囲内で種々の変更・変形が可
能である。
【0046】
【発明の効果】以上説明したように本発明は、元ネット
リストの一部に対して論理変更を施して得られる論理変
更ネットリストに対してレイトアウト設計を行う際、既
に存在する最適化元ネットリストおよび元レイアウトを
できるだけ利用することにより、全体での最適化再実行
の手間を省くことができる。それによって、論理変更さ
れていない箇所に対して論理変更前後の最適化結果に違
いが出ることをなくすことができる。
リストの一部に対して論理変更を施して得られる論理変
更ネットリストに対してレイトアウト設計を行う際、既
に存在する最適化元ネットリストおよび元レイアウトを
できるだけ利用することにより、全体での最適化再実行
の手間を省くことができる。それによって、論理変更さ
れていない箇所に対して論理変更前後の最適化結果に違
いが出ることをなくすことができる。
【図1】本発明の第1の実施の形態に係る集積回路のC
ADシステム(の流れ)を示すブロック図(フローチャ
ート)である。
ADシステム(の流れ)を示すブロック図(フローチャ
ート)である。
【図2】本発明の第2の実施の形態に係る集積回路のC
ADシステム(の流れ)を示すブロック図(フローチャ
ート)である。
ADシステム(の流れ)を示すブロック図(フローチャ
ート)である。
【図3】ネットリストA(元ネットリスト)の具体例を
示す回路図である。
示す回路図である。
【図4】ネットリストB(最適化元ネットリスト)の具
体例を示す回路図である。
体例を示す回路図である。
【図5】レイアウトB(元レイアウト)の具体例を示す
概略平面図である。
概略平面図である。
【図6】ネットリストC(論理変更ネットリスト)の具
体例を示す回路図である。
体例を示す回路図である。
【図7】ネットリストD(変更箇所外ネットリスト)の
具体例を示す回路図である。
具体例を示す回路図である。
【図8】レイアウトD(変更箇所外レイアウト)の具体
例を示す概略平面図である。
例を示す概略平面図である。
【図9】ネットリストE(最適化論理変更ネットリス
ト)の具体例を示す回路図である。
ト)の具体例を示す回路図である。
【図10】レイアウトE(論理変更レイアウト)の具体
例を示す概略平面図である。
例を示す概略平面図である。
【図11】従来の集積回路のCADシステム(の流れ)
を示すブロック図(フローチャート)である。
を示すブロック図(フローチャート)である。
S11 配置・配線処理部 S12 性能最適化処理部 S21 差分抽出部 S22 変更箇所外ネットリスト作成部 S23 ECO処理部 S24 部分性能最適化処理部 S25 差分抽出処理部
Claims (6)
- 【請求項1】 集積回路を論理設計して得られる元ネッ
トリストに対してレイアウト設計を行って性能要求を満
たすように最適化された最適化元ネットリストと元レイ
アウトとが既に得られている状態で、前記元ネットリス
トの一部に対して論理変更を施して得られる論理変更ネ
ットリストに対して、レイアウト設計を行って性能要求
を満たすように最適化された最適化論理変更ネットリス
トと論理変更レイアウトとを得る、集積回路のCADシ
ステムにおいて、 前記元ネットリストと前記最適化元ネットリストとの差
分を抽出して、該差分を示す差分データを出力する手段
と、 入力された論理変更箇所以外を示す情報と前記差分デー
タとに基づいて、前記論理変更ネットリストにおける前
記論理変更箇所を含むブロック以外のブロックに対して
最適化結果を適用した変更箇所外ネットリストを作成す
る手段と、 前記最適化元ネットリストと前記元レイアウトとを参照
して、前記変更箇所外ネットリストから変更箇所外レイ
アウトを作成する手段と、 入力された論理変更箇所を示す情報に基づいて、前記変
更箇所外ネットリストおよび前記変更箇所外レイアウト
における前記論理変更箇所を含むブロックに対して性能
最適化を施して、前記最適化論理変更ネットリストと前
記論理変更レイアウトとを作成する手段と、 を有すること、を特徴とする集積回路のCADシステ
ム。 - 【請求項2】 前記元ネットリストと前記論理変更ネッ
トリストとの差分を抽出して、前記論理変更箇所以外を
示す情報と前記論理変更箇所を示す情報とを得る手段を
さらに含むこと、を特徴とする請求項1に記載の集積回
路のCADシステム。 - 【請求項3】 集積回路を論理設計して得られる元ネッ
トリストに対してレイアウト設計を行って性能要求を満
たすように最適化された最適化元ネットリストと元レイ
アウトとが既に得られている状態で、前記元ネットリス
トの一部に対して論理変更を施して得られる論理変更ネ
ットリストに対して、レイアウト設計を行って性能要求
を満たすように最適化された最適化論理変更ネットリス
トと論理変更レイアウトとを得る、集積回路のレイアウ
ト設計方法において、 前記元ネットリストと前記最適化元ネットリストとの差
分を抽出するステップと、 入力された論理変更箇所以外を示す情報と前記差分とに
基づいて、前記論理変更ネットリストにおける前記論理
変更箇所を含むブロック以外のブロックに対して最適化
結果を適用した変更箇所外ネットリストを作成するステ
ップと、 前記最適化元ネットリストと前記元レイアウトとを参照
して、前記変更箇所外ネットリストから変更箇所外レイ
アウトを作成するステップと、 入力された論理変更箇所を示す情報に基づいて、前記変
更箇所外ネットリストおよび前記変更箇所外レイアウト
における前記論理変更箇所を含むブロックに対して性能
最適化を施して、前記最適化論理変更ネットリストと前
記論理変更レイアウトとを作成するステップと、 を含むこと、を特徴とする集積回路のレイアウト設計方
法。 - 【請求項4】 集積回路を論理設計して得られる元ネッ
トリストに対してレイアウト設計を行って性能要求を満
たすように最適化された最適化元ネットリストと元レイ
アウトとが既に得られている状態で、前記元ネットリス
トの一部に対して論理変更を施して得られる論理変更ネ
ットリストに対して、レイアウト設計を行って性能要求
を満たすように最適化された最適化論理変更ネットリス
トと論理変更レイアウトとを得る、集積回路のレイアウ
ト設計方法において、 前記元ネットリストと前記論理変更ネットリストとの差
分を抽出して、論理変更箇所以外を示す情報と論理変更
箇所を示す情報とを得るステップと、 前記元ネットリストと前記最適化元ネットリストとの差
分を抽出して、該差分を示す差分データを出力するステ
ップと、 前記論理変更箇所以外を示す情報と前記差分データとに
基づいて、前記論理変更ネットリストにおける前記論理
変更箇所を含むブロック以外のブロックに対して最適化
結果を適用した変更箇所外ネットリストを作成するステ
ップと、 前記最適化元ネットリストと前記元レイアウトとを参照
して、前記変更箇所外ネットリストから変更箇所外レイ
アウトを作成するステップと、 前記論理変更箇所を示す情報に基づいて、前記変更箇所
外ネットリストおよび前記変更箇所外レイアウトにおけ
る前記論理変更箇所を含むブロックに対して性能最適化
を施して、前記最適化論理変更ネットリストと前記論理
変更レイアウトとを作成するステップと、 を含むこと、を特徴とする集積回路のレイアウト設計方
法。 - 【請求項5】 集積回路を論理設計して得られる元ネッ
トリストに対してレイアウト設計を行って性能要求を満
たすように最適化された最適化元ネットリストと元レイ
アウトとが既に得られている状態で、前記元ネットリス
トの一部に対して論理変更を施して得られる論理変更ネ
ットリストに対して、レイアウト設計を行って性能要求
を満たすように最適化された最適化論理変更ネットリス
トと論理変更レイアウトとを得る処理を、コンピュータ
で実行させるためのプログラムを記録した記録媒体にお
いて、 前記元ネットリストと前記最適化元ネットリストとの差
分を抽出する処理と、 入力された論理変更箇所以外を示す情報と前記差分とに
基づいて、前記論理変更ネットリストにおける前記論理
変更箇所を含むブロック以外のブロックに対して最適化
結果を適用した変更箇所外ネットリストを作成する処理
と、 前記最適化元ネットリストと前記元レイアウトとを参照
して、前記変更箇所外ネットリストから変更箇所外レイ
アウトを作成する処理と、 入力された論理変更箇所を示す情報に基づいて、前記変
更箇所外ネットリストおよび前記変更箇所外レイアウト
における前記論理変更箇所を含むブロックに対して性能
最適化を施して、前記最適化論理変更ネットリストと前
記論理変更レイアウトとを作成する処理と、 を前記コンピュータに実行させるプログラムを記録し
た、前記コンピュータが読取可能な記録媒体。 - 【請求項6】 集積回路を論理設計して得られる元ネッ
トリストに対してレイアウト設計を行って性能要求を満
たすように最適化された最適化元ネットリストと元レイ
アウトとが既に得られている状態で、前記元ネットリス
トの一部に対して論理変更を施して得られる論理変更ネ
ットリストに対して、レイアウト設計を行って性能要求
を満たすように最適化された最適化論理変更ネットリス
トと論理変更レイアウトとを得る処理を、コンピュータ
で実行させるためのプログラムを記録した記録媒体にお
いて、 前記元ネットリストと前記論理変更ネットリストとの差
分を抽出して、論理変更箇所以外を示す情報と論理変更
箇所を示す情報とを得る処理と、 前記元ネットリストと前記最適化元ネットリストとの差
分を抽出して、該差分を示す差分データを出力する処理
と、 前記論理変更箇所以外を示す情報と前記差分データとに
基づいて、前記論理変更ネットリストにおける前記論理
変更箇所を含むブロック以外のブロックに対して最適化
結果を適用した変更箇所外ネットリストを作成する処理
と、 前記最適化元ネットリストと前記元レイアウトとを参照
して、前記変更箇所外ネットリストから変更箇所外レイ
アウトを作成する処理と、 前記論理変更箇所を示す情報に基づいて、前記変更箇所
外ネットリストおよび前記変更箇所外レイアウトにおけ
る前記論理変更箇所を含むブロックに対して性能最適化
を施して、前記最適化論理変更ネットリストと前記論理
変更レイアウトとを作成する処理と、 を前記コンピュータに実行させるプログラムを記録し
た、前記コンピュータが読取可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9085088A JP2923914B2 (ja) | 1997-04-03 | 1997-04-03 | 集積回路のcadシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9085088A JP2923914B2 (ja) | 1997-04-03 | 1997-04-03 | 集積回路のcadシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10283382A JPH10283382A (ja) | 1998-10-23 |
JP2923914B2 true JP2923914B2 (ja) | 1999-07-26 |
Family
ID=13848860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9085088A Expired - Lifetime JP2923914B2 (ja) | 1997-04-03 | 1997-04-03 | 集積回路のcadシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2923914B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7191426B1 (en) * | 2004-09-01 | 2007-03-13 | Altera Corporation | Method and apparatus for performing incremental compilation on field programmable gate arrays |
-
1997
- 1997-04-03 JP JP9085088A patent/JP2923914B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH10283382A (ja) | 1998-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2877303B2 (ja) | 集積回路の自動設計装置 | |
US5644498A (en) | Timing shell generation through netlist reduction | |
US20070143731A1 (en) | Method and Program for Supporting Register-Transfer-Level Design of Semiconductor Integrated Circuit | |
US7254796B2 (en) | Method for synthesizing domino logic circuits cross reference to related patent application using partition | |
JP3005538B1 (ja) | 機能ブロックのモデル作成によるlsi設計システム及びそのlsi設計方法 | |
US6964027B2 (en) | System and method for optimizing exceptions | |
JP2996213B2 (ja) | テスト容易化設計方法および装置、情報記憶媒体、集積回路装置 | |
JP2000277617A (ja) | Asic設計方法およびasic設計装置 | |
JP2923914B2 (ja) | 集積回路のcadシステム | |
JP3272915B2 (ja) | スタティックタイミング解析装置 | |
JP5115003B2 (ja) | 論理設計支援システム及びプログラム | |
JP2006338090A (ja) | 半導体集積回路の設計方法および設計装置 | |
JP2872216B1 (ja) | マクロの設計方法 | |
JP2910730B2 (ja) | 階層レイアウト設計方法および階層レイアウト設計装置 | |
JP2930087B2 (ja) | 論理設計支援システム | |
JP2845154B2 (ja) | 論理シミュレーション用モデルの作成方法 | |
JP2962292B2 (ja) | レイアウト設計を考慮したlsi論理設計支援システム | |
JP4448048B2 (ja) | 構造解析プログラム | |
JP3187506B2 (ja) | 論理回路設計支援装置 | |
JP2005339200A (ja) | 半導体集積回路のクロックツリーレイアウト方法 | |
JP2972719B2 (ja) | 半導体集積回路装置及びその配置方法 | |
JP2002015022A (ja) | 消費電力計算装置、消費電力計算方法および消費電力計算プログラムを記録した記録媒体 | |
JP3652220B2 (ja) | 論理回路検証装置及び論理回路検証方法及び論理回路検証プログラムを格納した記録媒体 | |
JP4003071B2 (ja) | 半導体集積回路の設計方法及び設計装置 | |
JP2996153B2 (ja) | Asic検証方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19990331 |