(57)【要約】【課題】  下位階層回路を流用して論理回路を階層設計する際に、各下位階層間のタイミング制約のインターフェイス仕様の不整合によって、上位階層のタイミング制約が過剰又は過小に作成されることを回避する。【解決手段】  階層構造を持つ論理回路データ、論理回路のプリミティブ情報を保持するライブラリデータ、及び論理回路の下位階層のタイミング制約を入力するデータ入力ステップ１１から、このデータ入力ステップ１１で入力されたデータに基づいて、下位階層のタイミング制約を上位階層のタイミング制約に変換する制約変換ステップ１３へ移る前に、下位階層間の互いのタイミング制約間のインターフェイス仕様の整合性を判定する整合性判定ステップ１２を設ける。【選択図】  図１
2005321980.tif 000002
【特許請求の範囲】
【請求項１】
論理回路の下位階層回路及び上位階層回路のデータからなる階層関係を考慮した階層設計上の前記上位階層のタイミング制約を作成するタイミング制約作成方法において、
階層構造を持つ前記論理回路のデータ、前記論理回路のプリミティブ情報を保持するライブラリデータ、及び前記下位階層回路が有するタイミング制約を入力するデータ入力ステップと、
互いに接続される前記各下位階層回路が有する下位階層のタイミング制約間の少なくとも１つのインターフェイス仕様の整合性を判定する整合性判定ステップとを含む
ことを特徴とするタイミング制約作成方法。
【請求項２】
請求項１記載のタイミング制約作成方法において、
前記インターフェイス仕様は、前記下位階層回路の有するタイミング制約であって、前記下位階層回路が参照するクロックである参照クロック情報、前記下位階層回路と接続される他の下位階層回路間のタイミングを変更するタイミング例外情報、前記下位階層回路の入力又は出力に付される外部遅延制約としての入力遅延情報又は出力遅延情報を含む
ことを特徴とするタイミング制約作成方法。
【請求項３】
請求項２記載のタイミング制約作成方法において、
前記整合性判定ステップは、
前記下位階層回路の入力ピン又は出力ピンに設定された前記入力遅延情報又は前記出力遅延情報が参照する前記参照クロック情報を抽出する参照クロック情報抽出ステップと、
接続される前記下位階層回路と前記他の下位階層回路において前記入力ピンを経由するパスの始点又は前記出力ピンを経由するパスの終点の前記参照クロック情報を抽出する参照先クロック情報抽出ステップと、
前記参照クロック情報抽出ステップ及び前記参照先クロック情報抽出ステップでそれぞれ抽出した前記参照クロック情報同士を比較するクロック情報比較ステップとを含む
ことを特徴とするタイミング制約作成方法。
【請求項４】
請求項２記載のタイミング制約作成方法において、
前記整合性判定ステップは、
前記下位階層回路の入力ピン又は出力ピンに設定された前記タイミング例外情報を抽出するタイミング例外情報抽出ステップと、
前記入力ピンを有する前記下位階層回路の接続対象となる接続先下位階層回路のピン又は前記出力ピンを有する前記接続先下位階層回路のピンに設定された接続先の前記タイミング例外情報を抽出する接続先タイミング例外情報抽出ステップと、
前記タイミング例外情報抽出ステップ及び前記接続先タイミング例外情報抽出ステップでそれぞれ抽出した前記タイミング例外情報と前記接続先のタイミング例外情報とを比較するタイミング例外情報比較ステップとを含む
ことを特徴とするタイミング制約作成方法。
【請求項５】
請求項２記載のタイミング制約作成方法において、
前記整合性判定ステップは、
前記下位階層回路の入力ピンに設定された前記入力遅延情報又は出力ピンに設定された前記出力遅延情報を抽出する入出力遅延情報抽出ステップと、
前記入力ピン又は出力ピンの接続対象となる接続先下位階層回路の出力ピン又は入力ピンに設定された接続先入出力遅延情報を抽出する接続先入出力遅延情報抽出ステップと、
前記入出力遅延情報抽出ステップで前記入出力遅延情報が抽出された前記入力ピン又は出力ピンと、この入力ピン又は出力ピンの接続対象となる下位階層回路のピンであって、前記接続先入出力遅延情報抽出ステップで入出力遅延情報が抽出された出力ピン又は入力ピンを経由するパスの始点又は終点の参照クロック情報に基づいて前記パスの始点から終点までの信号の伝播時間の最大許容値を算出するパス要求時間算出ステップと、
前記入力ピンとこの入力ピンを経由するパスの終点との間における信号伝播時間の最大制約要求時間と、前記出力ピンとこの出力ピンを経由するパスの始点との間における信号伝播時間の最大制約要求時間とを、前記入出力遅延情報と、前記出力ピン又は入力ピンを経由するパスの始点又は終点の参照クロック情報とに基づいて算出する、制約要求時間算出ステップと、
整合性判定の基準となる許容値を指定する許容値指定ステップと、
前記パス要求時間算出ステップ及び前記制約要求時間算出ステップで算出した伝播時間の前記最大許容値及び前記最大制約要求時間と前記許容値指定ステップで指定した前記許容値とに基づいて、入出力遅延情報の妥当性を判定する入出力遅延情報判定ステップとを含む
ことを特徴とするタイミング制約作成方法。
【請求項６】
請求項２記載のタイミング制約作成方法において、
前記整合性判定ステップで不整合であると判断された場合、不整合箇所を警告表示する警告表示ステップを有する
ことを特徴とするタイミング制約作成方法。
【請求項７】
請求項６記載のタイミング制約作成方法において、
前記警告表示ステップで警告表示された不整合箇所のタイミング制約を整合の取れるように編集するタイミング制約編集ステップを有する
ことを特徴とするタイミング制約作成方法。
【請求項８】
請求項７記載のタイミング制約作成方法において、
前記整合性判定ステップで不整合であると判断された場合、前記下位階層回路のタイミング制約情報に対して前記タイミング制約編集ステップで編集した結果に基づいて、入力された前記下位階層回路のタイミング制約を上位階層回路のタイミング制約に変換する制約変換ステップを有する
ことを特徴とするタイミング制約作成方法。
【請求項９】
請求項８記載のタイミング制約作成方法において、
前記制約変換ステップは、前記上位階層回路のタイミング制約及び編集後の下位階層回路のタイミング制約を出力する
ことを特徴とするタイミング制約作成方法。
【請求項１０】
請求項８記載のタイミング制約作成方法において、
前記下位階層回路のタイミング制約情報は、前記制約変換ステップにより制約変換されて、前記上位階層回路のタイミング制約となる上位変換タイミング制約と、前記制約変換ステップにより制約変換されて、前記上位階層回路のタイミング制約に現れない下位限定タイミング制約とのうち、少なくとも一方を含む
ことを特徴とするタイミング制約作成方法。
【請求項１１】
請求項１０記載のタイミング制約作成方法において、
前記上位変換タイミング制約は、マルチサイクル制約である
ことを特徴とするタイミング制約作成方法。
【請求項１２】
請求項１０記載のタイミング制約作成方法において、
前記下位限定タイミング制約は、入出力遅延制約である
ことを特徴とするタイミング制約作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は論理回路のタイミング制約作成方法に関し、階層設計において特に誤りのない上位階層のタイミング制約を作成するタイミング制約作成方法に関するものである。
【背景技術】
【０００２】
近年におけるプロセスの微細化に伴い、設計される回路は大規模化、且つ複雑化しており、実現すべき回路を特定の部分機能に分割し、部分回路毎に並行して設計を進める階層設計が主流になっている。
【０００３】
また、上位階層のタイミング制約に基づき、下位階層のタイミング制約を作成し、論理回路を設計する技術に関しては、例えば、特許文献１に記載がある。
【０００４】
ここで、階層設計した論理回路の一例を図３に示す。最上位階層３１は設計対象の論理回路全体を示し、部分回路を構成する回路ブロック３２、３３から構成される。さらに、回路ブロック３２は部分回路を構成する回路ブロック３４、３５から構成される。回路ブロック３４はプリミティブ回路３６、３７、３８から構成され、最下位階層であることを示す。
【特許文献１】特開平１０−１８７７８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、一般的に、論理回路のタイミング設計は論理合成ツール、論理最適化ツール、タイミング解析ツール等を用いて行われ、実現すべき回路仕様を規定した回路制約が必要である。この回路制約には、回路内のある素子からそれに接続されている素子までの信号の伝播時間を規定する制約等のタイミング制約が含まれる。
【０００６】
階層毎にタイミング設計を進める場合、各階層に対応したタイミング制約が必要となり、設計対象が論理回路全体の場合、最上位階層に対応するタイミング制約を作成することになる。最上位階層に対応するタイミング制約の作成は回路仕様を基に設計者自身が作成する場合もあるが、設計資産の流用という観点から、既に存在する下位階層のタイミング制約を基に上位階層のタイミング制約を作成する方法も提案されており、これまで複数のチップで実現していた機能を１チップ化するＳＯＣ設計で利用される場合が多い。
【０００７】
図４はこのタイミング制約作成方法の本発明者の提案を示す処理ステップの流れ図であり、ステップ４１は、階層構造を持つ論理回路データ、論理回路のプリミティブ情報を保持するライブラリデータおよび前記論理回路の下位階層のタイミング制約を入力するデータ入力ステップ、ステップ４２は下位階層の制約を上位階層の制約に変換する制約変換ステップである。
【０００８】
以上のように構成されたタイミング制約作成方法について、図５および図６を参照しながらその動作について説明する。
【０００９】
図５は、図４に示した制約変換ステップ４２の詳細を示す流れ図である。また、図６は、入力された論理回路及びタイミング制約の提案例を示す図である。６０は、図中の全ての論理回路を含む上位階層を示している。下位階層ブロックＢＬＫＡ６１及び下位階層ブロックＢＬＫＢ６２は、上位階層６０の１つ下の階層を示しており、下位階層ブロックＢＬＫＡ６１は、フリップフロップ（ＦＦ）６１１と組合せ回路６１２とからなり、また、下位階層ブロックＢＬＫＢ６２は、ＦＦ６２１と組合せ回路６２２とからなる。下位階層ブロックＢＬＫＡ６１のＦＦ６１１はクロックＣＫ１を受け、下位階層ブロックＢＬＫＢ６２のＦＦ６２２はクロックＣＫ２を受ける。下位階層６１のブロックピンＯＵＴ６１３にはタイミング制約６３が設定されており、出力遅延制約６３１及びマルチサイクル制約６３２を含み、また、下位階層６２のブロックピンＩＮ６２３にはタイミング制約６４が設定されており、入力遅延制約６４１及びマルチサイクル制約６４２を含む。
【００１０】
ここで、図６を用いて、図５の制約変換ステップの流れを説明する。
【００１１】
まず、ステップ５１において下位階層に設定されているタイミング制約を一つ抽出し、続くステップ５２で、その抽出したタイミング制約が変換対象の制約であるか否かを判定する。例えば、図６に示す提案例では、抽出されたタイミング制約が出力遅延制約６３１の場合は、上位階層においては不必要なタイミング制約であると判断され、マルチサイクル制約６３２の場合は必要と判断される。変換対象であると判断された場合は、ステップ５３でタイミング制約の下位階層の設定ポイントを上位階層の設定ポイントへ読み替える設定ポイントの変更を行う。例えば、マルチサイクル制約６３２の設定ポイントは下位階層におけるＯＵＴから上位階層における下位階層ブロックＢＬＫＡ／ＯＵＴに変更される。
【００１２】
一方、変換対象ではないと判断された場合は、ステップ５４において、すべてのタイミング制約が抽出されたかどうかを判断し、未抽出のタイミング制約が存在する時はステップ５１に戻る。そして、すべてのタイミング制約が抽出された後、ステップ５５で変更後のタイミング制約を出力する。この出力としては、上位階層６０に対し、図７に示すようなタイミング制約が出力される。すなわち、図６の下位階層ブロックＢＬＫＡ６１のブロックピンＯＵＴ６１３に設定されたタイミング制約６３中のマルチサイクル制約６３２である「ｍｃｐ  ２  ‐ｔｏ  ＯＵＴ」が、図７の「ｍｃｐ  ２  ‐ｔｈｒｏｕｇｈ  ＢＬＫＡ/ＯＵＴ」として設定ポイントの変更が行われ、上位階層におけるタイミング制約として出力される。下位階層ブロックＢＬＫＢ６２のブロックピンＩＮ６２３のタイミング制約６４に対しても同様である。
【００１３】
しかしながら、上述のようなタイミング制約作成方法では、例えば、上記のマルチサイクル制約のように、下位階層のタイミング制約であり、且つ上位階層のタイミング制約としても反映される制約である場合、それぞれの下位階層の参照するクロックＣＫ１及びＣＫ２の整合性を考慮せず、下位階層のタイミング制約としてのマルチサイクル制約をそのまま上位階層のタイミング制約としてしまうため、種々の参照クロックを含むタイミング制約を有する下位階層回路を組み合わせる場合、組み合わされた上位階層回路においては、タイミングが不適切な設計となってしまう場合がある。すなわち、下位階層同士の接続において、整合性を考慮せず、接続を行ってしまうため、不整合な要素を含んでいた場合には、上位階層においては、過剰もしくは過小なタイミング制約が作成される場合があり、更には、下位階層間のインタフェース仕様の誤りを解析するためのデバッグ工程が必要になる可能性がある。また、場合によっては、回路仕様を満たすことができず、上位階層の設計後に下位階層のタイミング設計を再度やり直すことになる。
【００１４】
本発明は、上記の問題点を解決するものであり、下位階層間のインタフェース仕様の整合性を判断することにより、誤りのない上位階層のタイミング制約を作成するタイミング制約作成方法を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するために、本発明のタイミング制約作成方法は、下位階層回路を組み合わせて論理回路を設計する階層設計において、下位階層の個々の下位階層回路に設定されたタイミング制約に基づき、これらの下位階層のタイミング制約間のインターフェイス仕様の整合性を判断する構成を採用する。
【００１６】
更に、不整合が見つかった場合には下位階層のタイミング制約に修正を施した後に、確実に上位階層のタイミング制約を満たす状態にして、上位階層のタイミング制約へ制約変換する。
【００１７】
すなわち、請求項１記載の発明のタイミング制約作成方法は、論理回路の下位階層回路及び上位階層回路のデータからなる階層関係を考慮した階層設計上の前記上位階層のタイミング制約を作成するタイミング制約作成方法において、階層構造を持つ前記論理回路のデータ、前記論理回路のプリミティブ情報を保持するライブラリデータ、及び前記下位階層回路が有するタイミング制約を入力するデータ入力ステップと、互いに接続される前記各下位階層回路が有する下位階層のタイミング制約間の少なくとも１つのインターフェイス仕様の整合性を判定する整合性判定ステップとを含むことを特徴とする。
【００１８】
請求項２記載の発明は、請求項１記載のタイミング制約作成方法において、前記インターフェイス仕様は、前記下位階層回路の有するタイミング制約であって、前記下位階層回路が参照するクロックである参照クロック情報、前記下位階層回路と接続される他の下位階層回路間のタイミングを変更するタイミング例外情報、前記下位階層回路の入力又は出力に付される外部遅延制約としての入力遅延情報又は出力遅延情報を含むことを特徴とする。
【００１９】
請求項３記載の発明は、請求項２記載のタイミング制約作成方法において、前記整合性判定ステップは、前記下位階層回路の入力ピン又は出力ピンに設定された前記入力遅延情報又は前記出力遅延情報が参照する前記参照クロック情報を抽出する参照クロック情報抽出ステップと、接続される前記下位階層回路と前記他の下位階層回路において前記入力ピンを経由するパスの始点又は前記出力ピンを経由するパスの終点の前記参照クロック情報を抽出する参照先クロック情報抽出ステップと、前記参照クロック情報抽出ステップ及び前記参照先クロック情報抽出ステップでそれぞれ抽出した前記参照クロック情報同士を比較するクロック情報比較ステップとを含むことを特徴とする。
【００２０】
請求項４記載の発明は、請求項２記載のタイミング制約作成方法において、前記整合性判定ステップは、前記下位階層回路の入力ピン又は出力ピンに設定された前記タイミング例外情報を抽出するタイミング例外情報抽出ステップと、前記入力ピンを有する前記下位階層回路の接続対象となる接続先下位階層回路のピン又は前記出力ピンを有する前記接続先下位階層回路のピンに設定された接続先の前記タイミング例外情報を抽出する接続先タイミング例外情報抽出ステップと、前記タイミング例外情報抽出ステップ及び前記接続先タイミング例外情報抽出ステップでそれぞれ抽出した前記タイミング例外情報と前記接続先のタイミング例外情報とを比較するタイミング例外情報比較ステップとを含むことを特徴とする。
【００２１】
請求項５記載の発明は、請求項２記載のタイミング制約作成方法において、前記整合性判定ステップは、前記下位階層回路の入力ピンに設定された前記入力遅延情報又は出力ピンに設定された前記出力遅延情報を抽出する入出力遅延情報抽出ステップと、前記入力ピン又は出力ピンの接続対象となる接続先下位階層回路の出力ピン又は入力ピンに設定された接続先入出力遅延情報を抽出する接続先入出力遅延情報抽出ステップと、前記入出力遅延情報抽出ステップで前記入出力遅延情報が抽出された前記入力ピン又は出力ピンと、この入力ピン又は出力ピンの接続対象となる下位階層回路のピンであって、前記接続先入出力遅延情報抽出ステップで入出力遅延情報が抽出された出力ピン又は入力ピンを経由するパスの始点又は終点の参照クロック情報に基づいて前記パスの始点から終点までの信号の伝播時間の最大許容値を算出するパス要求時間算出ステップと、前記入力ピンとこの入力ピンを経由するパスの終点との間における信号伝播時間の最大制約要求時間と、前記出力ピンとこの出力ピンを経由するパスの始点との間における信号伝播時間の最大制約要求時間とを、前記入出力遅延情報と、前記出力ピン又は入力ピンを経由するパスの始点又は終点の参照クロック情報とに基づいて算出する、制約要求時間算出ステップと、整合性判定の基準となる許容値を指定する許容値指定ステップと、前記パス要求時間算出ステップ及び前記制約要求時間算出ステップで算出した伝播時間の前記最大許容値及び前記最大制約要求時間と前記許容値指定ステップで指定した前記許容値とに基づいて、入出力遅延情報の妥当性を判定する入出力遅延情報判定ステップとを含むことを特徴とする。
【００２２】
請求項６記載の発明は、請求項２記載のタイミング制約作成方法において、前記整合性判定ステップで不整合であると判断された場合、不整合箇所を警告表示する警告表示ステップを有することを特徴とする。
【００２３】
請求項７記載の発明は、請求項６記載のタイミング制約作成方法において、前記警告表示ステップで警告表示された不整合箇所のタイミング制約を整合の取れるように編集するタイミング制約編集ステップを有することを特徴とする。
【００２４】
請求項８記載の発明は、請求項７記載のタイミング制約作成方法において、前記整合性判定ステップで不整合であると判断された場合、前記下位階層回路のタイミング制約情報に対して前記タイミング制約編集ステップで編集した結果に基づいて、入力された前記下位階層回路のタイミング制約を上位階層回路のタイミング制約に変換する制約変換ステップを有することを特徴とする。
【００２５】
請求項９記載の発明は、請求項８記載のタイミング制約作成方法において、前記制約変換ステップは、前記上位階層回路のタイミング制約及び編集後の下位階層回路のタイミング制約を出力することを特徴とする。
【００２６】
請求項１０記載の発明は、請求項８記載のタイミング制約作成方法において、前記下位階層回路のタイミング制約情報は、前記制約変換ステップにより制約変換されて、前記上位階層回路のタイミング制約となる上位変換タイミング制約と、前記制約変換ステップにより制約変換されて、前記上位階層回路のタイミング制約に現れない下位限定タイミング制約とのうち、少なくとも一方を含むことを特徴とする。
【００２７】
請求項１１記載の発明は、請求項１０記載のタイミング制約作成方法において、前記上位変換タイミング制約は、マルチサイクル制約であることを特徴とする。
【００２８】
請求項１２記載の発明は、請求項１０記載のタイミング制約作成方法において、前記下位限定タイミング制約は、入出力遅延制約であることを特徴とする。
【００２９】
以上により、請求項１記載の発明では、データ入力ステップにおいて入力された下位階層の複数の回路のタイミング制約等のデータに基づいて、それらの下位階層のタイミング制約間のインターフェイス仕様の整合性を整合性判定ステップにより判定することにより、過小又は過剰となる上位階層のタイミング制約の作成を防ぐことができる。
【００３０】
請求項３記載の発明では、上位階層のタイミング制約作成の対象となる各下位階層の回路ブロックに属する入力又は出力ピン間における下位階層タイミング制約のうち、それぞれのピンに設定された入出力遅延制約の参照するクロック情報を抽出し、これら抽出した参照クロック情報を比較することにより、クロック情報についての整合性を判定する。
【００３１】
請求項４記載の発明では、上位階層のタイミング制約作成の対象となる各下位階層の回路ブロックに属する入力又は出力ピン間における下位階層タイミング制約のうち、参照クロックに基づいて、参照クロック以外のタイミングを例外的に作成するための、それぞれのピンに設定されたタイミング例外情報を抽出し、この抽出した情報を比較することにより、タイミング例外情報の設定についての整合性を判定する。
【００３２】
請求項５記載の発明では、上位階層のタイミング制約作成の対象となる各下位階層の回路ブロックに属する入力又は出力ピン間における下位階層タイミング制約のうち、それぞれのピンに設定され、このピンの属する回路ブロック外部に許容される入出力遅延情報を抽出し、それぞれのピンが参照するクロック情報に基づいて信号の伝播時間の最大許容値を算出し、これら算出された信号伝播時間の最大許容値を、所定の許容値から差し引き、この結果により、入出力遅延情報の妥当性、すなわち、整合性を判定する。
【００３３】
請求項６記載の発明では、請求項１記載のタイミング制約作成方法における整合性判定ステップにより、不整合があると判断された場合に、その不整合箇所を警告表示する。
【００３４】
請求項７記載の発明では、請求項６記載のタイミング制約作成方法において警告表示された不整合箇所を、整合性のとれるタイミング制約に編集する。
【００３５】
請求項８記載の発明では、請求項７記載のタイミング制約作成方法において、編集された、整合性の確保された下位階層のタイミング制約に対して、上位階層のタイミング制約に変換する。
【発明の効果】
【００３６】
以上説明したように、請求項１〜５記載の発明によれば、下位階層のタイミング制約間のインタフェース仕様の整合性を予め判断することで、過小又は過剰となる上位階層のタイミング制約の作成を防止し、回路面積増大の要因および上位階層のタイミング解析時の擬似エラーの要因を事前に排除できる。
【００３７】
また、請求項６記載の発明によれば、下位階層のタイミング制約間のインターフェイス仕様の不整合箇所を警告表示することで、下位階層のインタフェース仕様の不整合に気づき、無駄な論理合成処理時間、タイミング解析処理時間を抑制できる。
【００３８】
また、請求項７記載の発明によれば、関連する下位階層間の不整合箇所を確認しながら、タイミング制約を容易に修正できる。
【００３９】
さらに、請求項８記載の発明によれば、編集した下位階層のタイミング制約を反映できるので、下位階層のタイミング制約間のインタフェース仕様に不整合があった場合でも、完成度の高い上位階層のタイミング制約を作成することができる。
【００４０】
加えて、請求項９記載の発明によれば、不整合があった下位階層のタイミング制約を再度作成する手間も省ける。
【発明を実施するための最良の形態】
【００４１】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００４２】
（第１の実施の形態）
先ず、図１、図２及び図８を用いて、第１の実施の形態を示す。
【００４３】
図１は本発明の実施の形態１における処理ステップの流れ図である。ここで、１１はデータ入力ステップであり、階層構造を有する論理回路のデータ、論理回路のプリミティブ情報を保持するライブラリデータ、及び論理回路における下位階層の論理回路が有するタイミング制約が入力される。１２は整合性判定ステップであり、データ入力ステップ１１において入力されたデータに基づいて下位階層のタイミング制約の整合性が判定される。また、１３は制約変換ステップであり、整合性判定後の下位階層のタイミング制約が上位階層のタイミング制約に変換される。図４に示した従来例との違いは、データ入力ステップ１１と制約変換ステップ１３との間に、下位階層のタイミング制約間のインターフェイス仕様の整合性を判断する整合性判定ステップ１２を備えた点である。
【００４４】
図２は整合性判定ステップ１２の実施の形態１における処理ステップの流れ図であり、２１は、下位階層の入力又は出力ピンに設定された入出力遅延制約（入力遅延情報及び出力遅延情報）において参照されるクロック情報を抽出する参照クロック情報抽出ステップ、２２は、ステップ２１の入力又は出力ピンを経由するパスにおいて、入力ピンに対しては始点、また、出力ピンに対しては終点の参照クロック情報を抽出する参照先クロック情報抽出ステップ、２３は、ステップ２１及びステップ２２において抽出された参照クロック情報を比較することにより整合性を判定するクロック情報比較ステップである。
【００４５】
図８は、本実施の形態における入力された論理回路及びタイミング制約の例を示す図である。８０は、図中の全ての論理回路を含む上位階層を示している。下位階層ブロックＢＬＫＡ８１及び下位階層ブロックＢＬＫＢ８２は、上位階層８０の１つ下の階層を示しており、下位階層ブロックＢＬＫＡ８１は、フリップフロップ（ＦＦ）８１１と、組合せ回路８１２とからなり、また、下位階層ブロックＢＬＫＢ８２は、ＦＦ８２１と、組合せ回路８２２とからなる。下位階層ブロックＢＬＫＡ８１のＦＦ８１１は周期５ｎｓのクロックＣＫ１を受け、下位階層ブロックＢＬＫＢ８２のＦＦ８２２は周期１０ｎｓのクロックＣＫ２を受ける。下位階層８１のブロックピンＯＵＴ８１３にはタイミング制約８３が設定されており、出力遅延制約８３１及びマルチサイクル制約８３２を含み、また、下位階層８２のブロックピンＩＮ８２３にはタイミング制約８４が設定されており、入力遅延制約８４１及びマルチサイクル制約８４２を含む。
【００４６】
ここで、図１のように構成されたタイミング制約作成方法について、図２および図８を参照しながらその動作について説明する。
【００４７】
まず、図２の参照クロック情報抽出ステップ２１により、下位階層のピンに設定された入出力遅延情報の参照クロック情報を抽出する。例えば、図８においては、下位階層ブロックＢＬＫＡ８１のピンＯＵＴ８１３に設定された出力遅延制約８３１が選択された場合、参照クロックとしてクロックＣＫ１が抽出される。
【００４８】
次に、参照先クロック情報抽出ステップ２２により、下位階層のピンを経由するパスの始点または終点の参照クロック情報を抽出する。ここで、ピンを経由するパスの探索は選択されているピンの入出力属性によって決まる。例えば、入力ピンが選択された場合は、入力方向に探索し、パスの始点を抽出する。同様にして、出力ピンが選択された場合は、出力方向に探索し、パスの終点を抽出する。具体的には、図８において、ピンＯＵＴ８１３が選択された場合、出力方向に探索し、パスの終点となるＦＦ８２２が抽出され、参照クロックとしてＣＫ２が抽出される。
【００４９】
最後に、クロック情報比較ステップ２３において、参照クロック情報抽出ステップ２１で抽出した参照クロックと参照先クロック情報抽出ステップ２２で抽出した参照クロックとが比較される。
【００５０】
本実施の形態では、参照クロック情報抽出ステップ２１で抽出した参照クロックＣＫ１の周期は５ｎｓ、参照先クロック情報抽出ステップ２２で抽出した参照クロックの周期は１０ｎｓである。したがって、ピンＯＵＴ８１３に関しては、下位階層のタイミング制約８３及び８４からなるインタフェース仕様、すなわち、参照クロック情報ＣＫ１と参照先クロック情報ＣＫ２との間に不整合があると判断される。
【００５１】
（第２の実施の形態）
次に、図８、図９及び図１０を用いて、第２の実施の形態について示す。
【００５２】
図９は本発明の第２の実施の形態における処理ステップの流れ図である。第１の実施の形態との違いは、参照クロック情報を比較してインタフェース仕様の不整合を判断する整合性判定ステップ１２の代わりに、接続される下位階層間のタイミングを変更する、タイミング制約としてのタイミング例外情報を比較することにより、インタフェース仕様の不整合を判断する整合性判定ステップ１２Ａを備えた点である。尚、本実施の形態以下において、同じ符号は同じ構成要素であることを示す。
【００５３】
図１０は第２の実施の形態における整合性判定ステップ１２Ａの処理を示した流れ図である。図１０において、１０１はタイミング例外情報抽出ステップであり、下位階層の入力ピン又は出力ピンに設定されたタイミング例外情報を抽出する。１０２は接続先タイミング例外情報抽出ステップであり、上記タイミング例外情報抽出ステップ１０１においてタイミング例外情報を抽出する対象となった下位階層の回路ブロックと接続される他の下位階層の回路ブロックの入力ピン又は出力ピンに設定されたタイミング例外情報を抽出する。また、１０３はタイミング例外情報比較ステップであり、上記タイミング例外情報抽出ステップ１０１及び参照先タイミング例外情報抽出ステップ１０２において抽出されたそれぞれのタイミング例外情報同士を比較する。
【００５４】
ここで、図９のように構成されたタイミング制約作成方法について、図８および図１０を参照しながらその動作について説明する。
【００５５】
まず、図１０のタイミング例外情報抽出ステップ１０１により、接続される下位階層同士のタイミングを変更するためのタイミング制約であるタイミング例外情報を抽出する。例えば、図８においては、下位階層ブロックＢＬＫＡ８１のピンＯＵＴ８１３に設定されたマルチサイクル制約（タイミング例外情報）８３２が抽出されたとする。
【００５６】
次に、接続先タイミング例外情報抽出ステップ１０２により、下位階層のピンに接続する前記下位階層以外の階層、すなわち、前記下位階層のピンが接続される他の回路ブロックの入力又は出力ピンに設定されたタイミング例外情報を抽出する。ここで、ピンに接続するパスの探索は選択されているピンの入出力属性によって決まる。例えば、入力ピンが選択された場合は、入力方向に探索し、接続される他の下位階層のピンを抽出する。また、出力ピンが選択された場合は、出力方向に探索し、接続される他の下位階層のピンを抽出する。具体的には、図８において、ピンＯＵＴ８１３が抽出された場合、出力方向に探索し、下位階層ブロックＢＬＫＡ８１に接続される他の下位階層ブロックＢＬＫＢ８２のピンＩＮ８２３が抽出され、マルチサイクル制約８４２が抽出される。
【００５７】
最後に、タイミング例外情報比較ステップ１０３において、タイミング例外情報抽出ステップ１０１で抽出したタイミング例外情報と接続先タイミング例外情報抽出ステップ１０２で抽出したタイミング例外情報とが比較される。
【００５８】
本実施の形態では、タイミング例外情報抽出ステップ１０１で抽出したマルチサイクル制約８３２の乗数は４、接続先タイミング例外情報抽出ステップ１０２で抽出したマルチサイクル制約８４２の乗数は２である。したがって、ピンＯＵＴ８１３に関しては、下位階層のタイミング制約８３及び８４間のインタフェース仕様には、マルチサイクル制約８４２とマルチサイクル制約８３２との間に不整合があると判断される。
【００５９】
（第３の実施の形態）
次に、図１１、図１２、図１３及び図１４を用いて、第３の実施の形態について説明する。
【００６０】
図１１は本発明の第3の実施の形態における処理ステップの流れ図である。第１の実施の形態との違いは、参照クロック情報を比較してインタフェース仕様の整合性を判断する整合性判定ステップ１２の代わりに、入出力遅延情報の妥当性を判断してインタフェース仕様の整合性を判断する整合性判定ステップ１２Ｂを備えた点である。ここで、入出力遅延情報とは、出力ピンに対する外部制約としての出力遅延制約又は入力ピンに対する外部制約としての入力遅延制約のことである。
【００６１】
図１２は、図１１における整合性判定ステップ１２Ｂの処理を示した流れ図である。ここで、１２１は入出力遅延情報抽出ステップであり、下位階層のピンに設定されたタイミング制約のうち、入出力遅延情報が抽出される。１２２は接続先入出力遅延情報抽出ステップであり、ステップ１２１において入出力遅延情報が抽出されたピンが接続される他の下位階層、すなわち、他の論理回路ブロックの入力又は出力ピンに設定された入出力遅延情報が抽出される。１２３はパス要求時間算出ステップであり、ステップ１２１及びステップ１２２における情報抽出対象となるピンを経由するパスの始点から終点までの信号伝播時間の最大許容値が算出される。１２４は制約要求時間算出ステップであり、ステップ１２３と同様に、ステップ１２１及びステップ１２２で情報抽出対象となったピンにおいて、入力ピンと、この入力ピンを経由するパスの終点との間における信号伝播時間の最大のタイミング制約の要求時間が算出され、また、出力ピンと、この出力ピンを経由するパスの始点との間の信号伝播時間の最大のタイミング制約要求時間が算出される。１２５は、入出力遅延情報に基づくタイミング制約の整合性を判断する際の基準値となる許容値を設定する許容値指定ステップ、１２６は、ステップ１２３及びステップ１２４において算出された最大許容値及びタイミング制約の要求時間との関係が、ステップ１２５で指定された基準値である許容値と比較して、妥当か否かを判定する入出力遅延情報判定ステップである。
【００６２】
図１４は、本実施の形態における入力された論理回路及びタイミング制約の例を示す図である。１４０は、図中の全ての論理回路を含む上位階層を示している。下位階層ブロックＢＬＫＡ１４１及び下位階層ブロックＢＬＫＢ１４２は、上位階層１４０の１つ下の階層を示しており、下位階層ブロックＢＬＫＡ１４１は、フリップフロップ（ＦＦ）１４１１と、組合せ回路１４１２とからなり、また、下位階層ブロックＢＬＫＢ１４２は、ＦＦ１４２１と、組合せ回路１４２２とからなる。下位階層ブロックＢＬＫＡ１４１のＦＦ１４１１は周期１０ｎｓのクロックＣＫを受け、下位階層ブロックＢＬＫＢ１４２のＦＦ１４２２は同じく周期１０ｎｓのクロックＣＫを受ける。下位階層１４１のブロックピンＯＵＴ１４１３にはタイミング制約１４３が設定されており、ここでは、タイミング制約として出力遅延制約が設定されている。また、下位階層１４２のブロックピンＩＮ１４２３にはタイミング制約１４４が設定されており、ここでは、タイミング制約として入力遅延制約が設定されている。
【００６３】
以上のように構成されたタイミング制約作成方法について、図１２および図１４の具体的回路例を参照しながらその動作について説明する。
【００６４】
まず、図１２の入出力遅延情報抽出ステップ１２１により、下位階層のピンに設定された入出力遅延情報を抽出する。例えば、図１４において、下位階層ブロックＢＬＫＡ１４１のピンＯＵＴ１４１３に設定された出力遅延制約１４３が抽出されたとする。
【００６５】
次に、接続先入出力遅延情報抽出ステップ１２２により、下位階層のピンに接続する前記下位階層以外の階層のピンに設定された入出力遅延情報を抽出する。ここで、ピンの探索は選択されているピンの入出力属性によって決まる。例えば、入力ピンが選択された場合は入力方向に探索し、また、出力ピンが選択された場合は出力方向に探索する。具体的には、図１４において、ピンＯＵＴ１４１３が選択された場合、出力方向に探索し、ピンＩＮ１４２３が抽出される。
【００６６】
次に、パス要求時間算出ステップ１２３により、入出力遅延情報抽出ステップ１２１で抽出された入出力遅延情報が設定されたピンと、接続先入出力遅延情報抽出ステップ１２２で抽出された入出力遅延情報が設定されたピンとを経由するパスの始点又は終点の参照クロックに基づき信号の伝播時間の最大許容値を算出する。ここで、ピンを経由するパスの探索は選択されているピンの入出力属性によって決まる。例えば、入力ピンが選択された場合は、入力方向に探索し、パスの始点を抽出する。また、出力ピンが選択された場合は、出力方向に探索し、パスの終点を抽出する。具体的には、図１４において、ピンＯＵＴ１４１３が選択された場合、出力方向に探索し、パスの終点となるＦＦ１４２２が抽出され、参照クロックとしてＣＫが抽出される。また、ピンＩＮ１４２３が選択された場合、入力方向に探索し、パスの始点となるＦＦ１４１１が抽出され、参照クロックとしてＣＫが抽出される。なお、モデル簡易化のため、ＦＦのセットアップ時間及びホールド時間、クロックスキュー、並びに配線遅延時間等は無視する。本実施の形態では、参照クロックＣＫの周期は１０ｎｓであり、伝播時間の最大許容値は１０ｎｓとなる。
【００６７】
次に、制約要求時間算出ステップ１２４により、入出力遅延情報と、入出力遅延情報が設定されたピンを経由するパスの始点又は終点の参照クロックとに基づいて、前記ピンと前記パスの始点又は終点との間の信号の伝播時間の最大許容値を算出する。ここで、ピンを経由するパスの探索は選択されているピンの入出力属性によって決まる。例えば、入力ピンが選択された場合は、出力方向に探索し、パスの終点を抽出する。また、出力ピンが選択された場合は、入力方向に探索し、パスの始点を抽出する。具体的には、図１４において、ピンＯＵＴ１４１３が選択された場合、入力方向に探索し、パスの始点となるＦＦ１４１１が抽出され、参照クロックとしてＣＫが抽出される。ピンＩＮ１４２３が選択された場合、出力方向に探索し、パスの終点となるＦＦ１４２２が抽出され、参照クロックとしてＣＫが抽出される。なお、モデル簡易化のため、ＦＦのセットアップ時間及びホールド時間、クロックスキュー、並びに配線遅延時間等は無視する。本実施の形態では、参照クロックＣＫの周期は１０ｎｓであり、出力遅延制約１４３の遅延値が３ｎｓであるので、ＦＦ１４１１からピンＯＵＴ１４１３への伝播時間の最大許容値は７ｎとなる。同様にピンＩＮ１４２３からＦＦ１４２２への伝播時間の最大許容値は８ｎとなる。
【００６８】
続いて、許容値指定ステップ１２５により、整合性判定時の許容値を指定する。本実施の形態においては、この許容値が２ｎｓに指定された場合について説明する。
【００６９】
最後に、入出力遅延情報判定ステップ１２６により、パス要求時間算出ステップ１２３および制約要求時間算出ステップ１２４で算出した伝播時間の最大許容値と許容値指定ステップ１２５で指定した許容値とに基づいて、入出力遅延情報の妥当性を判定する。この入出力遅延情報判定ステップ１２６における判定基準の一例を図１３に示す。ここで、図１３のＶａｌｕｅ＝パス要求時間−ｍａｘ（入力ピンを始点とする制約要求時間）−ｍａｘ（出力ピンを終点とする制約要求時間）と表される式について、図１４を用いて具体的に考えると、ピンＯＵＴ１４１３とピンＩＮ１４２３との間の遅延値（Ｖａｌｕｅ）の計算については、ＦＦ１４１１からＦＦ１４２２までのパスに要求される時間から、入力ピンを始点とする信号の伝播時間の最大値、すなわち、ピンＩＮ１４２３からＦＦ１４２２までの信号の伝播時間の最大制約要求時間と、出力ピンを終点とする信号の伝播時間の最大値、すなわち、ＦＦ１４１１からピンＯＵＴ１４１３までの信号の伝播時間の最大制約要求時間とを算出した計算値を、上記のパス要求時間からそれぞれ引き、Ｖａｌｕｅを得る。本実施の形態の場合、下位階層ブロックＢＬＫＡ１４１のＦＦ１４１１及び下位階層ブロックＢＬＫＢ１４２のＦＦ１４２２の受けるクロックＣＫが共に周期１０ｎｓであることから、パス要求時間は１０ｎｓであり、これに対して、ｍａｘ（入力ピンを始点とする制約要求時間）は、入力ピンＩＮ１４２３に設定された入力遅延の外部制約が２ｎｓであることから、１０−２＝８（ｎｓ）となり、また、ｍａｘ（出力ピンを終点とする制約要求時間）は、出力ピンＯＵＴ１４１３に設定された出力遅延の外部制約が３ｎｓであることから、１０−３＝７（ｎｓ）であるため、Ｖａｌｕｅ＝１０−８−７＝−５＜０（ｎｓ）となる。すなわち、図１３に示す基準により、上記の下位階層のタイミング制約は過小制約であると判定される。したがって、ピンＯＵＴ１４１３に関しては、２つの下位階層のタイミング制約間のインタフェース仕様には、入力遅延制約１４４と出力遅延制約１４３と間に不整合があると判断される。
【００７０】
（第４の実施の形態）
次に、本実施の形態について、図１５、図１６、図１７、図１８及び図１９を用いて説明を行う。
【００７１】
図１５は本発明の実施の形態４における処理ステップの流れ図である。図１５に示す本実施の形態と、上述の第１、第２及び第３の実施の形態とが異なるのは、整合性判定ステップ１２において分岐を設け、整合性がないものと判定された場合には、警告表示ステップ１５１において整合性がないことを警告表示し、続いて、タイミング制約編集ステップ１５２において整合性を満たすように編集を行うというステップを備えている点である。
【００７２】
タイミング制約編集ステップ１５２において編集処理が行われた場合及び、整合性判定ステップ１２において整合性があると判断された場合には、制約変換ステップ１３Ａに移行し、上位階層のタイミング制約に変換される。
【００７３】
以上のように構成されたタイミング制約作成方法について、図１４、図１６、図１７、図１８に示す具体例及び図１２、図１５の流れ図を参照しながらその動作について説明する。
【００７４】
整合性判定ステップ１２の整合性を判定するところまでは、第３の実施の形態において図１２に示した流れと同様である。
【００７５】
ここで、整合性判定ステップ１２で整合性がないと判断された場合、警告表示ステップ１５１により、不整合箇所が警告表示される。警告表示の一例を図１６に示す。入出力遅延値が過小になっており、このままでは下位階層間のインタフェース仕様を満たせないと警告している。
【００７６】
次に、タイミング制約編集ステップ１５２により、不整合箇所を編集する画面が表示される。編集画面の一例を図１７に示す。ドライバ側とレシーバ側とのそれぞれに対して、警告表示された不整合箇所に関するブロック名（ピン名）、参照クロック（周期）及び入出力遅延値等の情報が表示される。この警告表示に基づいて各ブロックの状況を考慮し、値の編集を行う。編集後の結果の一例を図１８に示す。尚、本実施の形態においては、第３の実施の形態と同様、許容値指定ステップ１２５において指定する許容値は２ｎｓであるとして説明する。図１８では、ドライバの入出力遅延値（出力遅延値）を３ｎｓから６ｎｓに修正し、また、レシーバの入出力遅延値（入力遅延値）を２ｎｓから５ｎｓに修正したことを示している。これにより、ｍａｘ（入力ピンを始点とする制約要求時間）は、１０−５＝５（ｎｓ）となり、また、ｍａｘ（出力ピンを終点とする制約要求時間）は、１０−６＝４（ｎｓ）となる。従って、Ｖａｌｕｅ＝１０−５−４＝１（ｎｓ）となり、許容値２（ｎｓ）に対して、下位階層のタイミング制約は不整合をなくすように編集され、妥当に作成されたことになる。
【００７７】
上記編集作業が終了すると、制約変換ステップ１３Ａにより、上位階層のタイミング制約と下位階層のタイミング制約が作成される。タイミング制約の出力例を図１９に示す。この出力例は下位階層のタイミング制約のうち、入出力遅延制約（下位限定タイミング制約）を示しており、変換対象の制約が存在しないために、上位階層のタイミング制約は出力されていない。これに対して、本実施の形態においては考慮していないが、タイミング制約には、図７に示すように上位階層のタイミング制約として出力されるマルチサイクル制約（上位変換タイミング制約）を含む場合もある。この場合は、図１５に示した制約変換ステップ１３Ａでは、タイミング編集ステップ１５２において編集された下位階層のタイミング制約と共に、変換された上位階層のタイミング制約も出力される。
【００７８】
尚、上記の第1〜第4の実施の形態においては、上位階層のタイミング制約を作成する対象として、下位階層の回路ブロックが２つの場合について説明を行ったが、本発明はこれに限るものではなく、隣接する下位階層間の少なくとも１つのインターフェイス仕様に対して整合性の判定を行うものであり、複数のインターフェイス仕様の整合性判定を行う場合をも含むものである。
【産業上の利用可能性】
【００７９】
本発明に係るタイミング制約作成方法は、下位階層間のインタフェース仕様の整合性を判断することにより、過小制約および過剰制約の作成を防止し、回路面積増大の要因およびタイミング解析時の擬似エラーの要因を事前に排除できるという効果を有し、論理回路を階層設計する際のタイミング制約作成方法として有用である。
【図面の簡単な説明】
【００８０】
【図１】本発明の第１の実施の形態における処理ステップの流れ図である。
【図２】本発明の第１の実施の形態における整合性判定ステップの流れ図である。
【図３】階層設計した論理回路の一例を示す図である。
【図４】従来のタイミング制約作成方法の一例を示す処理ステップの流れ図である。
【図５】制約変換ステップの詳細を示す図である。
【図６】入力された論理回路およびタイミング制約の一例を示す図である。
【図７】タイミング制約の出力例を示す図である。
【図８】入力された論理回路およびタイミング制約の一例を示す図である。
【図９】本発明の第２の実施の形態における処理ステップの流れ図である。
【図１０】整合性判定ステップの実施の形態２における処理ステップの流れ図である。
【図１１】本発明の第３の実施の形態における処理ステップの流れ図である。
【図１２】本発明の第３の実施の形態における整合性判定ステップの流れ図である。
【図１３】整合性判定基準の一例を示す図である。
【図１４】入力された論理回路およびタイミング制約の一例を示す図である。
【図１５】本発明の第４の実施の形態における処理ステップの流れ図である。
【図１６】警告表示の一例を示す図である。
【図１７】編集画面の一例示す図である。
【図１８】編集結果の一例を示す図である。
【図１９】タイミング制約の出力例を示す図である。
【符号の説明】
【００８１】
１１、４１                データ入力ステップ
１２、１２Ａ、１２Ｂ      整合性判定ステップ
１３、１３Ａ、４２        制約変換ステップ
２１                      参照クロック情報抽出ステップ
２２                      参照先クロック情報抽出ステップ
２３                      クロック情報比較ステップ
６３、６４、８３、８４    タイミング制約
１０１                    タイミング例外情報抽出ステップ
１０２                    接続先タイミング例外情報抽出ステップ
１０３                    タイミング例外情報比較ステップ
１２１                    入出力遅延情報抽出ステップ
１２２                    接続先入出力遅延情報抽出ステップ
１２３                    パス要求時間算出ステップ
１２４                    制約要求時間算出ステップ
１２５                    許容値指定ステップ
１２６                    入力遅延情報判定ステップ
１５１                    警告表示ステップ
１５２                    タイミング制約編集ステップ
６１３、８１３、１４１３  出力ピン
６２３、８２３、１４２３  入力ピン
６３１、８３１、１４３    出力遅延制約（出力遅延情報、下位限定タイミング制約）
６４１、８４１、１４４    入力遅延制約（入力遅延情報、下位限定タイミング制約）
６３２、６４２
、８３２、８４２    マルチサイクル制約（上位変換タイミング制約）
【図１】
2005321980.tif 000003
【図２】
2005321980.tif 000004
【図３】
2005321980.tif 000005
【図４】
2005321980.tif 000006
【図５】
2005321980.tif 000007
【図６】
2005321980.tif 000008
【図７】
2005321980.tif 000009
【図８】
2005321980.tif 000010
【図９】
2005321980.tif 000011
【図１０】
2005321980.tif 000012
【図１１】
2005321980.tif 000013
【図１２】
2005321980.tif 000014
【図１３】
2005321980.tif 000015
【図１４】
2005321980.tif 000016
【図１５】
2005321980.tif 000017
【図１６】
2005321980.tif 000018
【図１７】
2005321980.tif 000019
【図１８】
2005321980.tif 000020
【図１９】
2005321980.tif 000021