(57)【要約】【課題】熟練していない技術者でも半導体集積回路の設計を容易に行うことができるようにすること。【解決手段】半導体集積回路設計装置１００のＣＰＵ１０２は、外部記憶装置１０５のネットリスト情報記憶部１０６に記憶したネットリストデータからアライン制約、シンメトリ制約及びグループ制約を抽出し、レイアウト情報記憶部１０７に記憶したレイアウトデータから位置等の制約を抽出し、回路図情報記憶部１０８に記憶した回路図データから各回路構成要素の位置制約を抽出し、特性解析情報記憶部１０９に記憶した特性解析データからセンシビリティ制約を抽出し、前記抽出した各制約が相互に矛盾しないように選択した後、該制約を満たすようにレイアウト設計を行う。【選択図】    図１
2005062943.tif 000002
【特許請求の範囲】
【請求項１】
少なくともネットリスト情報を含む設計情報を記憶する設計情報記憶手段と、
前記設計情報から制約を抽出する制約抽出手段と、
前記制約抽出手段で抽出した制約を満たすようにレイアウト設計を行うレイアウト設計手段とを備えて成ることを特徴とする集積回路設計装置。
【請求項２】
前記設計情報記憶手段には、更に、レイアウト情報、回路図情報が含まれて成り、
前記制約抽出手段は、ネットリスト情報、レイアウト情報、回路図情報から制約を抽出することを特徴とする請求項１記載の集積回路設計装置。
【請求項３】
前記レイアウト設計手段は、前記制約抽出手段が抽出した複数の制約が相互に矛盾する場合、前記矛盾が生じないように制約を選定し、該選定した制約を満たすようにレイアウト設計を行うことを特徴とする請求項１又は２記載の集積回路設計装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路における図形データのレイアウト設計を行う集積回路設計装置に関する。
【０００２】
【従来の技術】
従来から、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等の半導体集積回路において、回路要素に相当する図形データのレイアウト設計を行うために、集積回路設計装置が利用されている。
アナログ半導体集積回路における各構成要素のレイアウト配置や各構成要素間の配線は、所定の特性を得るためには、複数の法則、例えば、アライン（各構成要素の配置関係）、シンメトリ（各構成要素間の対称関係）、グループ（各構成要素の一体的関係）に従わなければならない。
また、ダミー素子などを生成し、歩留まりを向上させることも必要とされている（例えば、特許文献１〜特許文献５参照）。
【０００３】
【特許文献１】
特開平７−７３２１７号公報
【特許文献２】
特開平１０−２５６３８０号公報
【特許文献３】
特開平１０−２４７６８７号公報
【特許文献４】
特開２００２−９３９１２号公報
【特許文献５】
特開２００２−９２０６０号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、前記特許文献１〜５記載の発明では、前記法則や処理は、設計者の経験と勘のみに頼っており又、その作業は、ほぼ手作業に頼っているため、熟練した技術者に頼らざるを得ないため、半導体集積回路の特性に精通していない技術者には設計が困難であるという問題がある。また、半導体集積回路のレイアウト設計は非常に時間がかかるという問題がある。
【０００５】
本発明は、熟練していない技術者でも半導体集積回路の設計を容易に行うことができるようにすることを課題としている。
【０００６】
【課題を解決するための手段】
本発明によれば、少なくともネットリスト情報を含む設計情報を記憶する設計情報記憶手段と、前記設計情報から制約を抽出する制約抽出手段と、前記制約抽出手段で抽出した制約を満たすようにレイアウト設計を行うレイアウト設計手段とを備えて成ることを特徴とする集積回路設計装置が提供される。
制約抽出手段は、設計情報記憶手段に記憶した設計情報から制約を抽出する。レイアウト設計手段は、前記制約抽出手段で抽出した制約を満たすようにレイアウト設計を行う。
【０００７】
ここで、前記設計情報記憶手段には、更に、レイアウト情報、回路図情報が含まれて成り、前記制約抽出手段は、ネットリスト情報、レイアウト情報、回路図情報から制約を抽出するように構成してもよい。
また、前記レイアウト設計手段は、前記制約抽出手段が抽出した複数の制約が相互に矛盾する場合、前記矛盾が生じないように制約を選定し、該選定した制約を満たすようにレイアウト設計を行うように構成してもよい。
【０００８】
【発明の実施の形態】
図１は、本発明の実施の形態に係る集積回路設計装置のブロック図であり、アナログ半導体集積回路の設計に適したアナログ半導体集積回路設計装置の例を示している。
図１において、集積回路設計装置１００は、キーボードやマウス等によって構成され入力手段を構成する入力装置１０１、制約抽出手段及びレイアウト設計手段を構成する中央処理装置（ＣＰＵ）１０２、表示手段を構成する表示装置１０３、半導体メモリによって構成された主記憶装置１０４、磁気ディスクによって構成され設計情報記憶手段を構成する外部記憶装置１０５を備えている。
【０００９】
外部記憶装置１０５内には、アナログ半導体集積回路のネットリストデータを予め記憶したネットリスト情報記憶部１０６、アナログ半導体集積回路のレイアウトデータを予め記憶したレイアウト情報記憶部１０７、アナログ半導体集積回路の回路図データを予め記憶した回路図情報記憶部１０８、アナログ半導体集積回路の特性を解析したデータである特性解析情報を予め記憶した特性解析情報記憶部１０９、制約の利用履歴を記憶する制約履歴記憶部１１０を有している。
【００１０】
前記ネットリストデータ、レイアウトデータ、回路図データ、特性解析データは設計情報を構成しており、今回行う半導体集積回路の設計に利用するための他のアナログ半導体集積回路の設計情報である。
尚、外部記憶装置１０５は、ＣＰＵ１０２が実行する半導体集積回路設計用の設計処理プログラムも記憶している。主記憶装置１０４及び外部記憶装置１０５は記憶手段を構成している。
【００１１】
図２は、図１の集積回路設計装置１００の処理を示すフローチャートで、外部記憶装置１０５に記憶された設計処理プログラムを主記憶装置１０４に展開し、該プログラムをＣＰＵ１０２が実行することにより行う処理を示している。
図３は、図１の集積回路設計装置１００において、制約の矛盾の有無を判別する際に使用する制約グラフの一例を示す図である。
【００１２】
以下、図１〜図３を用いて、本実施の形態に係る集積回路設計装置１００の動作を詳細に説明する。
先ず、ユーザ（例えば、半導体集積回路の設計者）が入力装置１０１を操作すると、ＣＰＵ１０２は外部記憶装置１０５に記憶しておいた他の半導体集積回路の設計情報２０１（ネットリストデータ２０２、レイアウトデータ２０３、回路図データ２０４および特性解析データ２０５）を主記憶装置１０４に読み込む（ステップＳ２０１）。
次に、ＣＰＵ１０２は、主記憶装置１０４に読み込んだ前記設計情報２０１から、レイアウト処理や配線処理に要求される複数の制約を抽出し（ステップＳ２０２）、前記抽出した複数の制約を制約データベース２０６として外部記憶装置１０５に記憶する。
【００１３】
ここで、制約には、ネットやノード等に関する制約があり、例えば、対称性が要求される制約（シンメトリ制約）、各図形データの垂直（縦）方向や水平（横）方向の配列に関する制約（アライン制約）、複数の図形データを１つのグループとして扱う制約（グループ制約）、各図形間の距離に関する制約（近接度合制約）等がある。ＣＰＵ１０２は、外部記憶装置１０５のネットリスト情報記憶部１０６に記憶したネットリストデータ２０１からアライン制約、シンメトリ制約及びグループ制約を抽出し、レイアウト情報記憶部１０７に記憶したレイアウトデータ２０３から位置等の制約を抽出し、回路図情報記憶部１０８に記憶した回路図データ２０４から各回路構成要素の位置の制約を抽出し、特性解析情報記憶部１０９に記憶した特性解析データ２０５からセンシビリティ制約を抽出し、制約データベースとして外部記憶装置１０５に記憶する。
尚、前記設計情報としては、少なくともネットリスト情報記憶部１０６に記憶したネットリストデータを用いるようにしてもよい。また、前記設計情報として、少なくともネットリストデータ、レイアウトデータ、回路図データを用いるようにしてもよい。
【００１４】
次に、ＣＰＵ１０２は、制約データベース２０６に格納した前記制約に基づいて、今回設計を行うために最適な制約を作成する処理（制約マージ処理）を行う（ステップＳ２０３〜Ｓ２１０）。
即ち、先ずＣＰＵ１０２は、制約データベースに記憶した前記全ての制約を主記憶装置１０４に読み込み（ステップＳ２０４）、各制約に矛盾が無いか否かを判断する（ステップＳ２０５）。
ＣＰＵ１０２は、ステップＳ２０５において、各制約相互間に矛盾がないか否かを、グラフ理論を用いて判断する。即ち、ＣＰＵ１０２は、各制約相互間に矛盾がないか否かを判断する際に、制約グラフを作成して判断する。
【００１５】
図３は前記制約グラフの一例であり、Ｃ１〜Ｃ３、ＴＲ１〜ＴＲ３、Ｒ１〜Ｒ３はノードであり又、Ｎｅｔ１〜Ｎｅｔ１０は各ノードを接続するためのネットを示している。ノードＣ１〜Ｃ３はキャパシタ、ノードＴＲ１〜ＴＲ３はトランジスタ、ノードＲ１〜Ｒ３は抵抗である。実線で接続されたノードＣ１〜Ｃ３及びネットＮｅｔ１、２にはグループ制約が与えられており、これらは１つのグループとして処理される。同様に、破線で接続されたノードやネットには水平制約、即ち、水平方向に並ぶように配置する制約が与えられている。また、一点鎖線で接続されたノードやネットには垂直制約、即ち、垂直方向に並ぶように配置する制約が与えられている。また、二点鎖線で接続されたノードやネットにはシンメトリ制約、即ち、対称になるような制約が与えられている。ＣＰＵ１０２は、前記制約グラフを矛盾無く作成できるか否かによって、各制約間の矛盾の有無を判断する。
【００１６】
ＣＰＵ１０２は、ステップＳ２０５において、各制約間に矛盾が有ると判断した場合には、矛盾する制約をユーザが修正するか否かを判断する（ステップＳ２０６）。例えば、表示装置１０３に、ユーザが修正するか否か選択する選択画面を表示し、ユーザが入力装置１０１で「ユーザ修正」を選択した場合には、ステップＳ２０７へ移行して、ユーザが入力装置１０１で修正した制約を採用し、矛盾する他の制約を削除等して、再びステップＳ２０５に戻る。
【００１７】
ＣＰＵ１０２は、ステップ２０６において、ユーザが「ユーザ修正」を選択しない場合は、自動で矛盾を解消して最適な制約を選択し、ステップＳ２０５へ戻る（ステップＳ２０８）。例えば、ステップ２０８においてＣＰＵ１０２は、各制約に予め重み付けをしておき、重みの大きい制約を採用して、矛盾する他の制約を削除するようにしてもよい。
ＣＰＵ１０２は、前記処理を繰り返すことにより、各制約相互間に矛盾が無くなったと判断すると（ステップＳ２０５）、該矛盾のない複数の制約をまとめた制約ファイル２０７を作成し（ステップＳ２０９）、主記憶装置１０４の使用制約記憶部１１１に記憶して、制約マージ処理を終了する（ステップＳ２１０）。
【００１８】
次に、ＣＰＵ１０２は、制約ファイル２０７を主記憶装置１０４の使用制約記憶部１１１に読み込み、該制約ファイル２０７に格納されている制約を満たすように、今回設計を行う半導体集積回路のレイアウト（配置対象レイアウト）に対して配置処理や配線処理を行うことにより、半導体集積回路の設計処理を行う（ステップＳ２１１）。
ＣＰＵ１０２は、以上のようにして設計した半導体集積回路のレイアウトの良否を検証し（ステップＳ２１２）、所望の特性を得るための制約として、制約データベース２０６に記憶されている制約に反映させる。
【００１９】
以上述べたように、本実施の形態に係る集積回路設計装置１００は、少なくともネットリストデータ２０２を含む設計情報２０１を記憶する外部記憶装置１０５と、前記設計情報から制約を抽出する制約抽出手段と、前記制約抽出手段で抽出した制約を満たすようにレイアウト設計を行うレイアウト設計手段とを備えて成ることを特徴としている。
また、外部記憶装置１０５には、更に、レイアウトデータ２０３、回路図データ２０４が含まれて成り、前記制約抽出手段は、ネットリストデータ２０２、レイアウトデータ２０３、回路図データ２０４から制約を抽出するようにしている。
【００２０】
また、前記レイアウト設計手段は、前記制約抽出手段が抽出した複数の制約が相互に矛盾する場合、前記矛盾が生じないように制約を選定し、該選定した制約を満たすようにレイアウト設計を行うようにしている。
したがって、アナログ半導体集積回路の設計に熟練していない技術者でも容易に設計を行うことが可能になる。また、アナログ半導体集積回路のレイアウト設計を短時間で行うことが可能になる。
尚、前記実施の形態では、アナログ集積回路の例で説明したが、デジタル集積回路にも適用可能である。
【００２１】
【発明の効果】
本発明に係る集積回路設計装置によれば、半導体集積回路の設計に熟練していない技術者でも容易に設計を行うことが可能になる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る集積回路設計装置のブロック図である。
【図２】本発明の実施の形態に係る集積回路設計装置の動作を示すフローチャートである。
【図３】本発明の実施の形態に係る集積回路設計装置の処理を説明するための説明図である。
【符号の説明】
１０１・・・入力手段を構成する入力装置
１０２・・・制約抽出手段及びレイアウト設計手段を構成するＣＰＵ
１０３・・・表示手段を構成する表示装置
１０４・・・記憶手段を構成する主記憶装置
１０５・・・設計情報記憶手段を構成する外部記憶装置
１０６・・・ネットリスト情報記憶部
１０７・・・レイアウト情報記憶手段
１０８・・・回路図情報記憶手段
１０９・・・特性解析情報記憶部
１１０・・・制約履歴記憶部
１１１・・・使用制約記憶部
【図１】
2005062943.tif 000003
【図２】
2005062943.tif 000004
【図３】
2005062943.tif 000005