説明

半導体集積回路の設計手法

【課題】設計フローの中で一貫した設計制約の管理を行うことのできる半導体集積回路の設計手法を提供する。
【解決手段】機能記述データ100に記述された信号名やレジスタ名のうち、設計フローの各工程(論理合成201、テスト容易化設計202、レイアウト設計203、スタティックタイミング解析204)で使用するツールへ与える設計制約の対象となる信号名やレジスタ名は、各工程で共通に使用する統一名称とし、統一名称ルール定義ファイル作成1の工程にて、その統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイル11を作成する。次に、設計制約ファイル自動生成2の工程にて、統一名称ルール定義ファイル1にもとづいて、上述の各工程で使用するツールへ与える設計制約ファイル31〜34を自動生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体集積回路の設計手法に関する。
【背景技術】
【0002】
近年の半導体集積回路設計では、設計フローの工程ごとの専用ツールを用いて処理を行う、設計の自動化が進んでいる。その場合、各ツールに設計制約を与え、その設計制約を満たすよう処理を行わせる。
【0003】
例えば、ハードウェア記述言語で記述されたRTLレベルの機能記述データからゲートレベルの回路接続データを生成する論理合成ツールに対しては、チップ面積や遅延時間などに関する制約を与え、論理合成の最適化が図られている。
【0004】
従来、このような設計制約は、各工程別に作成・管理がされてきた。そのため、工程間での設計制約の整合性を取るのが難しく、制約の不整合による設計のやり直し(工程の後戻り)が発生していた。
【0005】
このような設計制約の管理の困難さを緩和するため、RTLレベルのハードウェア記述文の中に、コメントとして設計制約を記述して、論理設計データと設計制約を一元管理する論理合成システムが提案されている(例えば、特許文献1参照。)。
【0006】
しかし、上述の提案の方法では、設計制約がハードウェア記述文中のコメントとして記述されているため、論理合成ツールでしか有効にならない、論理合成後のネットリストに設計制約の記述が残らないので後工程に設計制約が引き継がれない、というような問題が発生する。また、設計制約がハードウェア記述文中に分散して記述されているため、設計制約の全貌が把握しづらい、設計制約相互の関連性がわかりづらい、という問題も生じる。
【特許文献1】特開2007−41868号公報 (第6−7ページ、図2)
【発明の開示】
【発明が解決しようとする課題】
【0007】
そこで、本発明の目的は、設計フローの中で一貫した設計制約の管理を行うことのできる半導体集積回路の設計手法を提供することにある。
【課題を解決するための手段】
【0008】
本発明の一態様によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに前記各工程共通の統一名称を付与し、前記統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイルを作成し、前記各工程で使用するツールへ与える設計制約ファイルを前記統一名称ルール定義ファイルにもとづいて自動的に生成することを特徴とする半導体集積回路の設計手法が提供される。
【0009】
また、本発明の別の一態様によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに設計制約の属性および仕様のキーワードを含む統一名称を付与し、前記各工程で使用するツールが、前記キーワードから与えられた設計制約の内容を解釈し、その解釈にもとづいて前記統一名称が付与された信号やレジスタに対する処理を実行することを特徴とする半導体集積回路の設計手法が提供される。
【発明の効果】
【0010】
本発明によれば、設計フローの中で一貫した設計制約の管理を行うことができる。
【発明を実施するための最良の形態】
【0011】
以下、本発明の実施例について図面を参照して説明する。なお、図中、同一または相当部分には同一の符号を付して、その説明は繰り返さない。
【実施例1】
【0012】
図1は、発明の実施例1に係る集積回路の設計手法の処理手順の例を示すフロー図である。
【0013】
図1に示す設計フローにより、例えばRTLレベルで記述された機能記述データ100は、論理合成201、テスト容易化設計202、レイアウト設計203、スタティックタイミング解析204の各工程を経て、チップ上に形成される集積回路へと具体化される。
【0014】
本実施例では、機能記述データ100に記述された信号名やレジスタ名のうち、上述の各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名は、各工程で共通に使用する統一名称とし、統一名称ルール定義ファイル作成1の工程にて、その統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイル11を作成し、設計制約ファイル自動生成2の工程にて、統一名称ルール定義ファイル1にもとづいて、上述の各工程で使用するツールへ与える設計制約ファイル31〜34を自動生成する。
【0015】
ここで、設計制約ファイル31は、論理合成201工程で使用するツールへ与える設計制約が記述されたファイルであり、設計制約ファイル32は、テスト容易化設計202工程で使用するツールへ与える設計制約が記述されたファイルであり、設計制約ファイル33は、レイアウト設計203工程で使用するツールへ与える設計制約が記述されたファイルであり、設計制約ファイル34は、スタティックタイミング解析204工程で使用するツールへ与える設計制約が記述されたファイルである。
【0016】
図2は、統一名称ルール定義ファイル1のフォーマットの例である。
【0017】
統一名称ルール定義ファイル1のフォーマットとしては、<名前>の項に統一名称を記載し、<属性>の項に、クロック、フォルス・パス、優先配線などの制約種類を定義し、<仕様n(n=1、2、3、・・・)>の項に、関連のあるグループ設定や制約内容を定義する。
【0018】
例えば、統一名称がPLLCKという信号が、周期6nsで、Grp1グループ、Grp4グループのクロック信号であるときは、<名前>の項にPLLCK、<属性>の項にCLOCK、<仕様1>の項に6、<仕様2>の項にGrp1、<仕様3>の項にGrp4、と記載する。また、統一名称がACLKという信号が、Grp1グループのクロックPLLCKの2分周クロックであるときは、<名前>の項にACLK、<属性>の項にCLOCK、<仕様2>の項にGrp1、<仕様3>の項にDiv2、と記載する。
【0019】
このとき、設計工程ごとにグループ化して仕様を記述するようにすると、仕様の全体が把握しやすい。
【0020】
例えば、図2に示す例では、(1)論理合成、テスト容易化設計、レイアウト設計、スタティックタイミング解析に共通の仕様、(2)テスト容易化設計に特化した仕様、(3)レイアウト設計に特化した仕様、に分けて、仕様を記述している。
【0021】
設計制約ファイル自動生成(2)工程では、統一名称ルール定義ファイル1にもとづいて、設計制約ファイル31〜34を自動生成する。
【0022】
このとき、統一名称ルール定義ファイル1の<属性>の項から制約記述のコマンドを選択し、<仕様n>の記述からコマンドの書式に則ったコマンド文を生成する。
【0023】
図3に、設計制約ファイル自動生成(2)工程で生成された設計制約ファイル31〜33の例を示す。
【0024】
この設計制約ファイル31、32、33は、それぞれ、図2に示した仕様のグループ(1)、(2)、(3)に対応している。例えば、設計制約ファイル31の1行目は、仕様のグループ(1)の1行目に記述されているPLLCKという信号に対する<属性>のCLOCKから、制約記述のコマンドとしてcreate_clockが選択され、<仕様1>の値6から、制約記述のコマンド文として、
create_clock −name PLLCK −period 6 PLLCKが生成された例である。
【0025】
同様に、設計制約ファイル32の制約記述のコマンド文は、図2に示した仕様のグループ(2)の記述から生成されたものであり、設計制約ファイル33の制約記述のコマンド文は、図2に示した仕様のグループ(3)の記述から生成されたものである。
【0026】
このような本実施例によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名を統一名称とし、その統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイルを作成し、その統一名称ルール定義ファイルにもとづいて、各工程で使用するツールへ与える設計制約ファイルを自動生成するので、設計フローの中で一貫した設計制約の管理を行うことができる。
【0027】
また、統一名称ルール定義ファイルに、統一名称が付与された信号名やレジスタ名に対する属性および仕様を一括して記述するので、仕様の全体が把握しやすく、設計制約の管理を容易に行うことができる。
【実施例2】
【0028】
本実施例では、実施例1で説明した<属性>と<仕様>のキーワードを予め統一化し、このキーワードに任意の<名前>を付加したものを信号名、レジスタ名の統一名称として集積回路の機能記述をし、設計フローの各工程間でこの統一名称を継承することにより、各工程のツールが、設計制約に従った処理を自動的に行うようにした手法の例を示す。
【0029】
図4は、本実施例における統一名称ルールの記述フォーマットの例である。
【0030】
本実施例では、機能記述を行う際、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名については、その信号やレジスタの<属性>および設計制約に関する<仕様>を付加して、
<属性>_<仕様1_仕様2_・・・>_<名前>
という形式の統一名称を付与する。
【0031】
例えば、論理合成ツールに対して、クロック信号の周期を6nsとするような設計制約を与えたい場合、そのクロックの信号名の統一名称を、例えば、図4に示すように
CLK_6_PLLCK
と記述する。
【0032】
ここで、CLKは、<属性>のキーワードであり、信号の種別がクロック信号であることを表す。また、6は<仕様>が周期6nsであることを示し、PLLCKは任意の<名前>である。
【0033】
図5は、本実施例における処理手順の例を示すフロー図である。
【0034】
本実施例では、上述の統一名称ルールに則って記述された機能記述データ110が入力されると、各工程で使用するツールが、統一名称のキーワードから与えられた設計制約の内容を解釈し、その解釈にもとづいて統一名称が付与された信号やレジスタに対する処理を実行する。
【0035】
すなわち、論理合成201工程では、統一名称が付与された信号やレジスタが、クロック周期やフォルス・パスなどの設計制約を満たすように回路構成の最適化を行う。このとき、統一名称が付与された信号名やレジスタ名は、論理合成後のゲートレベルのネットリストにおいても、そのまま使用することにする。これにより、統一名称中に記載された設計制約が、次の工程へ引き継がれる。
【0036】
同様に、テスト容易化設計202工程、レイアウト設計203工程でも、統一名称が付与された信号やレジスタについては、その統一名称を次工程へ引き継いで行く。各工程で使用するツールは、その統一名称に記載されているキーワードからそれぞれの工程に対する設計制約を解釈し、その設計制約を満たすよう処理を行う。
【0037】
図6に、本実施例における統一名称の記述例を示し、図7に、その統一名称に対する設計制約の解釈の例を示す。
【0038】
図6に示した統一名称の記述では、(1)の部分に、論理合成、テスト容易化設計、レイアウト設計、スタティックタイミング解析に共通の仕様が記述され、(2)の部分に、テスト容易化設計に特化した仕様が記述され、(3)の部分に、レイアウト設計に特化した仕様が記述されている。
【0039】
この図6の(1)の部分の統一名称の記述に対して、例えば、論理合成201工程で使用するツールは、図7(a)に示すような設計制約が記載されているものと解釈し、この設計制約にもとづいて論理合成の最適化を図る。
【0040】
例えば、
CLK_G1_133_CLKA、CLK_G1_D2_CLKA
という記述に対しては、
set_clock_groups −asynchronous
−group {CLK_G1_133_CLKA CLK_G1_D2_CLKA}
という設計制約が記載されているものと解釈し、G1グループのクロックどうしのスキューが最小となるよう、論理合成を行う。
【0041】
また、図6の(2)の部分の統一名称の記述に対して、テスト容易化設計202工程で使用するツールは、図7(b)に示すようなスキャンパスに関する設計制約
set_scan_path −view spec
−scan_enable DATA
−scan_data_in DIN
−scan_data_out DOUT
が記載されているものと解釈し、スキャンテスト用のスキャンパスを生成する。
【0042】
同様に、図6の(3)の部分の統一名称の記述に対して、レイアウト設計203工程で使用するツールは、図7(c)に示すような設計制約が記載されているものと解釈し、配置・配線の最適化を図る。
【0043】
このような本実施例によれば、設計フローの各工程で使用するツールへ与える設計制約の対象となる信号名やレジスタ名に、その信号やレジスタの<属性>および設計制約に関する<仕様>を付加した統一名称を付与して機能記述を行い、各工程で使用するツールがその統一名称を継承することより、設計制約ファイルを生成することなく、各工程で使用するツールへ設計制約を与えることができる。
【0044】
これにより、設計フローから設計制約ファイル生成工程を省略することができ、設計フローの簡素化を図ることができる。
【図面の簡単な説明】
【0045】
【図1】本発明の実施例1に係る集積回路の設計手法の処理手順の例を示すフロー図。
【図2】実施例1の設計手法の統一名称ルール定義ファイルのフォーマットの例を示す図。
【図3】実施例1の設計手法により自動生成された設計制約ファイルの例を示す図。
【図4】本発明の実施例2に係る集積回路の設計手法の統一名称ルールの記述フォーマットの例を示す図。
【図5】本発明の実施例2に係る集積回路の設計手法の処理手順の例を示すフロー図。
【図6】実施例2の設計手法における統一名称の記述の例。
【図7】図6に示した統一名称の記述例に対する設計制約の解釈の例を示す図。
【符号の説明】
【0046】
1 統一名称ルール定義ファイル作成
2 設計制約ファイル自動生成
11 統一名称ルール定義ファイル
31〜34 設計制約ファイル

【特許請求の範囲】
【請求項1】
設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに前記各工程共通の統一名称を付与し、
前記統一名称が付与された信号名やレジスタ名に対する属性および仕様を記述した統一名称ルール定義ファイルを作成し、
前記各工程で使用するツールへ与える設計制約ファイルを前記統一名称ルール定義ファイルにもとづいて自動的に生成する
ことを特徴とする半導体集積回路の設計手法。
【請求項2】
前記統一名称ルール定義ファイルは、
前記属性の項に設計制約の種類が定義され、
前記仕様の項に設計制約の対象となるグループの設定や制約内容が定義される
ことを特徴とする請求項1に記載の半導体集積回路の設計手法。
【請求項3】
前記設計制約ファイルは、
前記統一名称ルール定義ファイルの前記属性の記述から制約記述コマンドが選択され、
前記統一名称ルール定義ファイルの前記仕様の記述から前記制約記述コマンドの書式に則ったコマンド文が生成される
ことを特徴とする請求項2に記載の半導体集積回路の設計手法。
【請求項4】
設計フローの各工程で使用するツールへ与える設計制約の対象となる信号やレジスタに設計制約の属性および仕様のキーワードを含む統一名称を付与し、
前記各工程で使用するツールが、前記キーワードから与えられた設計制約の内容を解釈し、その解釈にもとづいて前記統一名称が付与された信号やレジスタに対する処理を実行する
ことを特徴とする半導体集積回路の設計手法。
【請求項5】
前記統一名称は、
前記各工程で使用するツール間で受け渡される設計データの中で引き継がれる
ことを特徴とする請求項4に記載の半導体集積回路の設計手法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2010−140147(P2010−140147A)
【公開日】平成22年6月24日(2010.6.24)
【国際特許分類】
【出願番号】特願2008−314286(P2008−314286)
【出願日】平成20年12月10日(2008.12.10)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】