(57)【要約】【課題】設計フローの中で一貫した設計制約の管理を行うことのできる半導体集積回路の設計手法を提供する。【解決手段】機能記述データ１００に記述された信号名やレジスタ名のうち、設計フローの各工程（論理合成２０１、テスト容易化設計２０２、レイアウト設計２０３、スタティックタイミング解析２０４）で使用するツールへ与える設計制約の対象となる信号名やレジスタ名は、各工程で共通に使用する統一名称とし、統一名称ルール定義ファイル作成１の工程にて、その統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイル１１を作成する。次に、設計制約ファイル自動生成２の工程にて、統一名称ルール定義ファイル１にもとづいて、上述の各工程で使用するツールへ与える設計制約ファイル３１〜３４を自動生成する。【選択図】図１
2010140147.tif 000002
【特許請求の範囲】
【請求項１】
設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに前記各工程共通の統一名称を付与し、
前記統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイルを作成し、
前記各工程で使用するツールへ与える設計制約ファイルを前記統一名称ルール定義ファイルにもとづいて自動的に生成する
ことを特徴とする半導体集積回路の設計手法。
【請求項２】
前記統一名称ルール定義ファイルは、
前記属性の項に設計制約の種類が定義され、
前記仕様の項に設計制約の対象となるグループの設定や制約内容が定義される
ことを特徴とする請求項１に記載の半導体集積回路の設計手法。
【請求項３】
前記設計制約ファイルは、
前記統一名称ルール定義ファイルの前記属性の記述から制約記述コマンドが選択され、
前記統一名称ルール定義ファイルの前記仕様の記述から前記制約記述コマンドの書式に則ったコマンド文が生成される
ことを特徴とする請求項２に記載の半導体集積回路の設計手法。
【請求項４】
設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに設計制約の属性および仕様のキーワードを含む統一名称を付与し、
前記各工程で使用するツールが、前記キーワードから与えられた設計制約の内容を解釈し、その解釈にもとづいて前記統一名称が付与された信号やレジスタに対する処理を実行する
ことを特徴とする半導体集積回路の設計手法。
【請求項５】
前記統一名称は、
前記各工程で使用するツール間で受け渡される設計データの中で引き継がれる
ことを特徴とする請求項４に記載の半導体集積回路の設計手法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計手法に関する。
【背景技術】
【０００２】
近年の半導体集積回路設計では、設計フローの工程ごとの専用ツールを用いて処理を行う、設計の自動化が進んでいる。その場合、各ツールに設計制約を与え、その設計制約を満たすよう処理を行わせる。
【０００３】
例えば、ハードウェア記述言語で記述されたＲＴＬレベルの機能記述データからゲートレベルの回路接続データを生成する論理合成ツールに対しては、チップ面積や遅延時間などに関する制約を与え、論理合成の最適化が図られている。
【０００４】
従来、このような設計制約は、各工程別に作成・管理がされてきた。そのため、工程間での設計制約の整合性を取るのが難しく、制約の不整合による設計のやり直し（工程の後戻り）が発生していた。
【０００５】
このような設計制約の管理の困難さを緩和するため、ＲＴＬレベルのハードウェア記述文の中に、コメントとして設計制約を記述して、論理設計データと設計制約を一元管理する論理合成システムが提案されている（例えば、特許文献１参照。）。
【０００６】
しかし、上述の提案の方法では、設計制約がハードウェア記述文中のコメントとして記述されているため、論理合成ツールでしか有効にならない、論理合成後のネットリストに設計制約の記述が残らないので後工程に設計制約が引き継がれない、というような問題が発生する。また、設計制約がハードウェア記述文中に分散して記述されているため、設計制約の全貌が把握しづらい、設計制約相互の関連性がわかりづらい、という問題も生じる。
【特許文献１】特開２００７−４１８６８号公報  （第６−７ページ、図２）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで、本発明の目的は、設計フローの中で一貫した設計制約の管理を行うことのできる半導体集積回路の設計手法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の一態様によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに前記各工程共通の統一名称を付与し、前記統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイルを作成し、前記各工程で使用するツールへ与える設計制約ファイルを前記統一名称ルール定義ファイルにもとづいて自動的に生成することを特徴とする半導体集積回路の設計手法が提供される。
【０００９】
また、本発明の別の一態様によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに設計制約の属性および仕様のキーワードを含む統一名称を付与し、前記各工程で使用するツールが、前記キーワードから与えられた設計制約の内容を解釈し、その解釈にもとづいて前記統一名称が付与された信号やレジスタに対する処理を実行することを特徴とする半導体集積回路の設計手法が提供される。
【発明の効果】
【００１０】
本発明によれば、設計フローの中で一貫した設計制約の管理を行うことができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施例について図面を参照して説明する。なお、図中、同一または相当部分には同一の符号を付して、その説明は繰り返さない。
【実施例１】
【００１２】
図１は、発明の実施例１に係る集積回路の設計手法の処理手順の例を示すフロー図である。
【００１３】
図１に示す設計フローにより、例えばＲＴＬレベルで記述された機能記述データ１００は、論理合成２０１、テスト容易化設計２０２、レイアウト設計２０３、スタティックタイミング解析２０４の各工程を経て、チップ上に形成される集積回路へと具体化される。
【００１４】
本実施例では、機能記述データ１００に記述された信号名やレジスタ名のうち、上述の各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名は、各工程で共通に使用する統一名称とし、統一名称ルール定義ファイル作成１の工程にて、その統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイル１１を作成し、設計制約ファイル自動生成２の工程にて、統一名称ルール定義ファイル１にもとづいて、上述の各工程で使用するツールへ与える設計制約ファイル３１〜３４を自動生成する。
【００１５】
ここで、設計制約ファイル３１は、論理合成２０１工程で使用するツールへ与える設計制約が記述されたファイルであり、設計制約ファイル３２は、テスト容易化設計２０２工程で使用するツールへ与える設計制約が記述されたファイルであり、設計制約ファイル３３は、レイアウト設計２０３工程で使用するツールへ与える設計制約が記述されたファイルであり、設計制約ファイル３４は、スタティックタイミング解析２０４工程で使用するツールへ与える設計制約が記述されたファイルである。
【００１６】
図２は、統一名称ルール定義ファイル１のフォーマットの例である。
【００１７】
統一名称ルール定義ファイル１のフォーマットとしては、＜名前＞の項に統一名称を記載し、＜属性＞の項に、クロック、フォルス・パス、優先配線などの制約種類を定義し、＜仕様ｎ（ｎ＝１、２、３、・・・）＞の項に、関連のあるグループ設定や制約内容を定義する。
【００１８】
例えば、統一名称がＰＬＬＣＫという信号が、周期６ｎｓで、Ｇｒｐ１グループ、Ｇｒｐ４グループのクロック信号であるときは、＜名前＞の項にＰＬＬＣＫ、＜属性＞の項にＣＬＯＣＫ、＜仕様１＞の項に６、＜仕様２＞の項にＧｒｐ１、＜仕様３＞の項にＧｒｐ４、と記載する。また、統一名称がＡＣＬＫという信号が、Ｇｒｐ１グループのクロックＰＬＬＣＫの２分周クロックであるときは、＜名前＞の項にＡＣＬＫ、＜属性＞の項にＣＬＯＣＫ、＜仕様２＞の項にＧｒｐ１、＜仕様３＞の項にＤｉｖ２、と記載する。
【００１９】
このとき、設計工程ごとにグループ化して仕様を記述するようにすると、仕様の全体が把握しやすい。
【００２０】
例えば、図２に示す例では、（１）論理合成、テスト容易化設計、レイアウト設計、スタティックタイミング解析に共通の仕様、（２）テスト容易化設計に特化した仕様、（３）レイアウト設計に特化した仕様、に分けて、仕様を記述している。
【００２１】
設計制約ファイル自動生成（２）工程では、統一名称ルール定義ファイル１にもとづいて、設計制約ファイル３１〜３４を自動生成する。
【００２２】
このとき、統一名称ルール定義ファイル１の＜属性＞の項から制約記述のコマンドを選択し、＜仕様ｎ＞の記述からコマンドの書式に則ったコマンド文を生成する。
【００２３】
図３に、設計制約ファイル自動生成（２）工程で生成された設計制約ファイル３１〜３３の例を示す。
【００２４】
この設計制約ファイル３１、３２、３３は、それぞれ、図２に示した仕様のグループ（１）、（２）、（３）に対応している。例えば、設計制約ファイル３１の１行目は、仕様のグループ（１）の１行目に記述されているＰＬＬＣＫという信号に対する＜属性＞のＣＬＯＣＫから、制約記述のコマンドとしてｃｒｅａｔｅ＿ｃｌｏｃｋが選択され、＜仕様１＞の値６から、制約記述のコマンド文として、
ｃｒｅａｔｅ＿ｃｌｏｃｋ  −ｎａｍｅ  ＰＬＬＣＫ  −ｐｅｒｉｏｄ  ６  ＰＬＬＣＫが生成された例である。
【００２５】
同様に、設計制約ファイル３２の制約記述のコマンド文は、図２に示した仕様のグループ（２）の記述から生成されたものであり、設計制約ファイル３３の制約記述のコマンド文は、図２に示した仕様のグループ（３）の記述から生成されたものである。
【００２６】
このような本実施例によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名を統一名称とし、その統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイルを作成し、その統一名称ルール定義ファイルにもとづいて、各工程で使用するツールへ与える設計制約ファイルを自動生成するので、設計フローの中で一貫した設計制約の管理を行うことができる。
【００２７】
また、統一名称ルール定義ファイルに、統一名称が付与された信号名やレジスタ名に対する属性および仕様を一括して記述するので、仕様の全体が把握しやすく、設計制約の管理を容易に行うことができる。
【実施例２】
【００２８】
本実施例では、実施例１で説明した＜属性＞と＜仕様＞のキーワードを予め統一化し、このキーワードに任意の＜名前＞を付加したものを信号名、レジスタ名の統一名称として集積回路の機能記述をし、設計フローの各工程間でこの統一名称を継承することにより、各工程のツールが、設計制約に従った処理を自動的に行うようにした手法の例を示す。
【００２９】
図４は、本実施例における統一名称ルールの記述フォーマットの例である。
【００３０】
本実施例では、機能記述を行う際、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名については、その信号やレジスタの＜属性＞および設計制約に関する＜仕様＞を付加して、
＜属性＞＿＜仕様１＿仕様２＿・・・＞＿＜名前＞
という形式の統一名称を付与する。
【００３１】
例えば、論理合成ツールに対して、クロック信号の周期を６ｎｓとするような設計制約を与えたい場合、そのクロックの信号名の統一名称を、例えば、図４に示すように
ＣＬＫ＿６＿ＰＬＬＣＫ
と記述する。
【００３２】
ここで、ＣＬＫは、＜属性＞のキーワードであり、信号の種別がクロック信号であることを表す。また、６は＜仕様＞が周期６ｎｓであることを示し、ＰＬＬＣＫは任意の＜名前＞である。
【００３３】
図５は、本実施例における処理手順の例を示すフロー図である。
【００３４】
本実施例では、上述の統一名称ルールに則って記述された機能記述データ１１０が入力されると、各工程で使用するツールが、統一名称のキーワードから与えられた設計制約の内容を解釈し、その解釈にもとづいて統一名称が付与された信号やレジスタに対する処理を実行する。
【００３５】
すなわち、論理合成２０１工程では、統一名称が付与された信号やレジスタが、クロック周期やフォルス・パスなどの設計制約を満たすように回路構成の最適化を行う。このとき、統一名称が付与された信号名やレジスタ名は、論理合成後のゲートレベルのネットリストにおいても、そのまま使用することにする。これにより、統一名称中に記載された設計制約が、次の工程へ引き継がれる。
【００３６】
同様に、テスト容易化設計２０２工程、レイアウト設計２０３工程でも、統一名称が付与された信号やレジスタについては、その統一名称を次工程へ引き継いで行く。各工程で使用するツールは、その統一名称に記載されているキーワードからそれぞれの工程に対する設計制約を解釈し、その設計制約を満たすよう処理を行う。
【００３７】
図６に、本実施例における統一名称の記述例を示し、図７に、その統一名称に対する設計制約の解釈の例を示す。
【００３８】
図６に示した統一名称の記述では、（１）の部分に、論理合成、テスト容易化設計、レイアウト設計、スタティックタイミング解析に共通の仕様が記述され、（２）の部分に、テスト容易化設計に特化した仕様が記述され、（３）の部分に、レイアウト設計に特化した仕様が記述されている。
【００３９】
この図６の（１）の部分の統一名称の記述に対して、例えば、論理合成２０１工程で使用するツールは、図７（ａ）に示すような設計制約が記載されているものと解釈し、この設計制約にもとづいて論理合成の最適化を図る。
【００４０】
例えば、
ＣＬＫ＿Ｇ１＿１３３＿ＣＬＫＡ、ＣＬＫ＿Ｇ１＿Ｄ２＿ＣＬＫＡ
という記述に対しては、
ｓｅｔ＿ｃｌｏｃｋ＿ｇｒｏｕｐｓ  −ａｓｙｎｃｈｒｏｎｏｕｓ
−ｇｒｏｕｐ  ｛ＣＬＫ＿Ｇ１＿１３３＿ＣＬＫＡ ＣＬＫ＿Ｇ１＿Ｄ２＿ＣＬＫＡ｝
という設計制約が記載されているものと解釈し、Ｇ１グループのクロックどうしのスキューが最小となるよう、論理合成を行う。
【００４１】
また、図６の（２）の部分の統一名称の記述に対して、テスト容易化設計２０２工程で使用するツールは、図７（ｂ）に示すようなスキャンパスに関する設計制約
ｓｅｔ＿ｓｃａｎ＿ｐａｔｈ  −ｖｉｅｗ  ｓｐｅｃ
−ｓｃａｎ＿ｅｎａｂｌｅ  ＤＡＴＡ
−ｓｃａｎ＿ｄａｔａ＿ｉｎ  ＤＩＮ
−ｓｃａｎ＿ｄａｔａ＿ｏｕｔ  ＤＯＵＴ
が記載されているものと解釈し、スキャンテスト用のスキャンパスを生成する。
【００４２】
同様に、図６の（３）の部分の統一名称の記述に対して、レイアウト設計２０３工程で使用するツールは、図７（ｃ）に示すような設計制約が記載されているものと解釈し、配置・配線の最適化を図る。
【００４３】
このような本実施例によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名に、その信号やレジスタの＜属性＞および設計制約に関する＜仕様＞を付加した統一名称を付与して機能記述を行い、各工程で使用するツールがその統一名称を継承することより、設計制約ファイルを生成することなく、各工程で使用するツールへ設計制約を与えることができる。
【００４４】
これにより、設計フローから設計制約ファイル生成工程を省略することができ、設計フローの簡素化を図ることができる。
【図面の簡単な説明】
【００４５】
【図１】本発明の実施例１に係る集積回路の設計手法の処理手順の例を示すフロー図。
【図２】実施例１の設計手法の統一名称ルール定義ファイルのフォーマットの例を示す図。
【図３】実施例１の設計手法により自動生成された設計制約ファイルの例を示す図。
【図４】本発明の実施例２に係る集積回路の設計手法の統一名称ルールの記述フォーマットの例を示す図。
【図５】本発明の実施例２に係る集積回路の設計手法の処理手順の例を示すフロー図。
【図６】実施例２の設計手法における統一名称の記述の例。
【図７】図６に示した統一名称の記述例に対する設計制約の解釈の例を示す図。
【符号の説明】
【００４６】
１  統一名称ルール定義ファイル作成
２  設計制約ファイル自動生成
１１  統一名称ルール定義ファイル
３１〜３４  設計制約ファイル
【図１】
2010140147.tif 000003
【図２】
2010140147.tif 000004
【図３】
2010140147.tif 000005
【図４】
2010140147.tif 000006
【図５】
2010140147.tif 000007
【図６】
2010140147.tif 000008
【図７】
2010140147.tif 000009