(57)【要約】【課題】静的タイミング解析ツールの処理結果に対する後処理時間を短くすること。【解決手段】本発明にかかる遅延ライブラリの生成方法は、入力クロック信号を内部で分周するマクロの遅延ライブラリの生成方法であって、マクロの設計情報に基づいて、入力クロック信号を内部で分周する分周回路を抽出するステップと、抽出された分周回路が静的タイミング解析においてクロックラインの一部とみなされるように設計情報を修正する修正ステップと、修正された設計情報を用いて遅延ライブラリを生成する生成ステップと、を有する。【選択図】図２
2013088841.tif 000002
【特許請求の範囲】
【請求項１】
入力クロック信号を内部で分周するマクロの遅延ライブラリの生成方法であって、
前記マクロの設計情報に基づいて、前記入力クロック信号を内部で分周する分周回路を抽出するステップと、
前記抽出された分周回路が静的タイミング解析においてクロックラインの一部とみなされるように前記設計情報を修正する修正ステップと、
前記修正された設計情報を用いて前記遅延ライブラリを生成する生成ステップと、
を有する遅延ライブラリの生成方法。
【請求項２】
前記修正ステップは、前記設計情報内の前記分周回路における順序回路属性を組み合わせ回路属性へ置換することにより前記設計情報を修正することを特徴とする請求項１に記載の遅延ライブラリの生成方法。
【請求項３】
前記抽出ステップは、前記マクロにおける前記入力クロック信号の入力端子と当該マクロ内の順序回路のクロック端子とに接続された順序回路を含む回路を前記分周回路として抽出することを特徴とする請求項１又は２に記載の遅延ライブラリの生成方法。
【請求項４】
入力クロック信号を内部で分周するマクロにおける回路図情報、配置配線情報及びタイミングモデル並びに入力クロック毎のクロック周波数及びＤｕｔｙ比の情報を記憶する記憶部と、
前記記憶部に記憶された情報に基づき、前記回路図情報から前記入力クロック信号の入力端子を抽出後に、当該入力端子に当該入力クロック信号のクロック周波数及びＤｕｔｙ比を含むクロック信号情報を指定する入力処理部と、
前記記憶部に記憶された情報に基づき、内部クロック発生箇所における順序回路の属性について、順序回路属性から組合せ回路属性に変更する内部クロック処理部と、
電圧及び温度条件を設定する条件設定部と、
前記記憶部、前記入力処理部、前記内部クロック処理部及び前記条件設定部の結果に基づき、Ｅｘｔｒａｃｔ処理を実施するＥｘｔｒａｃｔ処理部と、
を備える遅延ライブラリ生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遅延ライブラリの生成方法及び遅延ライブラリ生成装置に関し、特に、クロック分周回路を搭載したハードマクロにおける遅延ライブラリの生成方法及び遅延ライブラリ生成装置に関する。
【背景技術】
【０００２】
特許文献１には、遅延シミュレーションにおいて精度を損なうことのない、データ量の少ないシミュレーション用ネットリストを生成するシステムに関する技術が開示されている。特許文献１にかかる生成システムは、プリレイアウトネットリスト１と、レイアウト寄生素子抽出結果のＬＰＥネットリスト３と、ＬＰＥネットリスト３とプリレイアウトネットリスト１とを対応付けるＬＰＥ情報関連付けプロパティ２とを入力し、ＬＰＥ情報関連付けプロパティ２の内容に応じて、プリレイアウトネットリスト１およびＬＰＥネットリスト３より遅延モデルファイル５を生成する遅延モデル生成手段４と、遅延モデルファイル５およびプリレイアウトネットリスト１より遅延シミュレーション用ネットリスト７を生成する遅延シミュレーション用ネットリスト生成手段６とを備える。
【０００３】
特許文献２には、ＦＰＧＡを用いたＬＳＩ設計の検証において、ＬＳＩ用ＲＴＬをＦＰＧＡ用ＲＴＬとして用いる際のクロックスキューの対策を行い、安定動作するＦＰＧＡ評価環境を実現するためのクロック変換方法に関する技術が開示されている。特許文献２にかかるクロック変換方法では、基本周波数のシステムクロックで動作するフリップフロップと、基本周波数を分周した分周クロックで動作するフリップフロップとが混在するＬＳＩ回路のＲＴＬに対して、分周クロックで動作するフリップフロップをシステムクロックで動作させたときに分周クロックで動作するときと等価な動作をするように、分周クロックからシステムクロックを条件付ける分周イネーブル信号に変換し、分周クロックで動作するフリップフロップを、分周イネーブル信号を条件としてシステムクロックで動作するフリップフロップに変換してＦＰＧＡ用ＲＴＬとする。
【０００４】
特許文献３には、ＣＰＵコアなどの部品設計資産（モジュール）のトランジスタ回路データから、タイミング特性を抽出する方法に関する技術が開示されている。ここで、抽出されたタイミング特性は、抽出対象モジュールを含む回路のタイミング検証、論理合成又はタイミングドリブンレイアウトを行う際のタイミング制約に用いる。特に、シミュレーションでタイミング検証を行う時には、モジュールのタイミングルール適合条件がタイミング特性に含まれるので、擬似エラーのない検証を可能とする。また、特許文献３はタイミング特性ライブラリの構造およびそれを記憶した記憶媒体、およびそれを用いたＬＳＩの設計方法に関する技術も開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−０９４４０２号公報
【特許文献２】特開２００６−０５８９３２号公報
【特許文献３】国際公開第９９／０９４９７号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、クロック分周回路を搭載したハードマクロに対して、ＳＴＡ（Ｓｔａｔｉｃ  Ｔｉｍｉｎｇ  Ａｎａｌｙｚｅｒ）ツールのＥｘｔｒａｃｔ機能を利用したタイミング抽出により生成したタイミングモデルは、Ｖｅｒｉｌｏｇなどの論理シミュレーションで使用できない内部端子（端子属性がｉｎｔｅｒｎａｌ）が生成されるため、Ｅｘｔｒａｃｔ後に、内部端子関連のタイミングアークに関する後処理が発生する。
【０００７】
タイミングアークに関する後処理は、電圧・温度条件数、状態遷移数（ｒｉｓｅ、ｆａｌｌ）、タイミングアーク数、波形鈍り・負荷容量条件数分の処理が必要となり、処理数が膨大になる傾向にある。
【０００８】
したがって、この膨大な後処理を省略し、Ｅｘｔｒａｃｔ機能によるハードマクロのタイミングモデル作成を容易化する方法が必要となった。
【０００９】
ここで、タイミングアークとは、回路の入力端子や回路内部のレジスタを始点として回路内部のレジスタや回路の出力端子を終点とした、始点の状態変化が終点の状態変化を発生させる信号伝播経路を意味する。
【００１０】
また、タイミングモデルの１つであるＥｘｔｒａｃｔｅｄ  Ｔｉｍｉｎｇ  Ｍｏｄｅｌを以下ではＥＴＭと称するものとする。Ｅｘｔｒａｃｔとは、指定した回路の境界に存在する（回路外部から見える）タイミングアークを抽出する機能を指す。したがって、Ｅｘｔｒａｃｔにより抽出されるタイミングアークは、指定した回路の内部Ｆｌｉｐ−Ｆｌｏｐ間のタイミングアークなど回路外部から見えないタイミングアークを含まない。ＥＴＭは、Ｌｉｂｅｒｔｙフォーマットのデータとして生成されるため、タイミングモデルとして使用することが出来る。
【００１１】
図７は、関連技術にかかるＥＴＭ作成処理の流れを示すフローチャートである。
【００１２】
入力クロック処理部１０は、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１（回路素子、入出力情報）、及び、クロック情報ＳＤＣ１（入力クロック毎のクロック周波数及びＤｕｔｙ比の情報）を読み込み、ＥＴＭ作成に必要な入力クロック情報を指定して処理を完了する。
【００１３】
入力クロック処理部１０内のステップＳ１１では、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１を読み込み、回路図情報ＮＥＴＬＩＳＴ１を構成するＦｌｉｐ−Ｆｌｏｐのクロック端子をバックトレースして回路図情報ＮＥＴＬＩＳＴ１の入力端子が抽出される。
【００１４】
入力クロック処理部１０内のステップＳ１２では、記憶部２から、クロック情報ＳＤＣ１を読み込み、ステップＳ１１において抽出された入力端子に対して、入力クロックのクロック周波数やＤｕｔｙ比のクロック信号情報が指定される。
【００１５】
内部クロック処理部２０は、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１、及び、クロック情報ＳＤＣ２（内部クロック毎のクロック周波数及びＤｕｔｙ比の情報）を読み込み、ＥＴＭ作成に必要な内部クロック情報を指定して処理を完了する。
【００１６】
内部クロック処理部２０内のステップＳ１３では、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１を読み込み、回路図情報ＮＥＴＬＩＳＴ１を構成するＦｌｉｐ−Ｆｌｏｐのクロック端子をバックトレースしてＳＴＡツールが回路図情報ＮＥＴＬＩＳＴ１の入力端子まで信号伝播経路をトレースできないクロック経路上のＦｌｉｐ−Ｆｌｏｐが抽出される。
【００１７】
内部クロック処理部２０内のステップＳ１４では、記憶部２から、クロック情報ＳＤＣ２を読み込み、ステップＳ１３において抽出したＦｌｉｐ−Ｆｌｏｐの出力端子に対して、内部クロックのクロック周波数やＤｕｔｙ比のクロック信号情報が指定される。ここで、内部クロックの周波数及びＤｕｔｙ比は、前記ステップＳ１１で指定した入力クロック情報を使用して、入力クロックに対する比率で指定される。
【００１８】
条件設定部３０内のステップＳ１５では、記憶部２から、タイミングモデルＬＩＢ１（各回路素子のタイミングアーク情報）を読み込み、予めタイミングモデルＬＩＢ１に定義された複数の電圧及び温度条件の中から一つの条件が選択され、電圧及び温度条件（Ｂｅｓｔ条件、Ｗｏｒｓｔ条件又はＮｏｒｍａｌ（Ｔｙｐｉｃａｌ）条件）のいずれかが設定される。尚、選択順番は任意だが、全ての条件が選択される（後述のステップＳ２５)。
【００１９】
ステップＳ１６では、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１、配置配線情報ＤＥＦ１（回路素子の配置座標、入出力端子及び回路素子間の配線情報）、及び、前述のステップＳ１５で選択された電圧及び温度条件のタイミングモデルＬＩＢ１を読み込み、ＳＴＡツールによりタイミング抽出が実行される。
【００２０】
このとき、ＳＴＡツールは、回路図情報ＮＥＴＬＩＳＴ１に対して、前述のステップＳ１４のクロック指定箇所に端子属性がＩｎｔｅｒｎａｌの内部端子を生成した上で、回路図情報ＮＥＴＬＩＳＴ１の入力端子からレジスタ（Ｆｌｉｐ−ＦｌｏｐやＬａｔｃｈ）、入力端子から出力端子、レジスタから出力端子、及び、入力端子から内部端子、内部端子からレジスタ、内部端子から出力端子へのタイミングアークを抽出し、ＥＴＭ５１１（回路図情報ＮＥＴＬＩＳＴ１のタイミングモデル）を生成して記憶部２へ保存する。
【００２１】
タイミングアーク処理部４１は、記憶部２から、前述のステップＳ１６で生成されたＥＴＭ５１１を読み込み、前述のステップＳ１６で生成された内部端子に関わるタイミングアークの結合を行い、内部端子を削除して処理を完了する。具体的には、タイミングアーク処理部４１は、後述するステップＳ１７〜Ｓ２４を実行する。
【００２２】
図８は、関連技術にかかるタイミングアーク処理に対する内部端子関連のタイミングアークに関する後処理の流れを示すフローチャートである。
【００２３】
タイミングアーク処理部４１内のステップＳ１７では、記憶部２から、前述のステップＳ１６で生成されたＥＴＭ５１１を読み込み、ＥＴＭ５１１内の端子属性定義に基づき、端子属性がＩｎｔｅｒｎａｌの端子を検索し、前述のステップＳ１６で生成された内部端子が抽出される。
【００２４】
タイミングアーク処理部４１内のステップＳ１８では、記憶部２から、前述のステップＳ１６で生成されたＥＴＭ５１１を読み込み、ＥＴＭ５１１内のタイミングアーク定義に基づき、前述のステップＳ１７で抽出された内部端子を始点・終点とするタイミングアークが抽出される。
【００２５】
タイミングアーク処理部４１内のステップＳ１９では、前述のステップＳ１８で抽出したタイミングアークに基づき、前述のステップＳ１７で抽出された内部端子を終点とするタイミングアークと、前述のステップＳ１７で抽出された内部端子を始点とするタイミングアークが結合される。
【００２６】
タイミングアーク処理部４１内のステップＳ２０では、前述のステップＳ１６で生成されたＥＴＭ５１１の波形鈍り定義数に基づき、前述のステップＳ１９のタイミングアークの結合処理が行なわれ、全定義に対して処理が完了したか判断し、処理が完了していなければ前述のステップＳ１９からステップＳ２０を繰り返し実施し、波形鈍り条件に対するタイミングアーク結合処理を完了する。
【００２７】
タイミングアーク処理部４１内のステップＳ２１では、前述のステップＳ１６で生成されたＥＴＭ５１１の負荷容量定義数に基づき、前述のステップＳ１９のタイミングアークの結合処理が行なわれ、全定義に対して処理が完了したか判断し、処理が完了していなければ前述のステップＳ１９からステップＳ２１を繰り返し実施し、負荷容量条件に対するタイミングアーク結合処理を完了する。
【００２８】
タイミングアーク処理部４１内のステップＳ２２では、前述のステップＳ１６で生成されたＥＴＭ５１１の出力状態遷移数（Ｒｉｓｅ、Ｆａｌｌ）に基づき、前述のステップＳ１９のタイミングアークの結合処理が行なわれ、全遷移に対して処理が完了したか判断し、処理が完了していなければ前述のステップＳ１９からステップＳ２２を繰り返し実施し、遷移条件に対するタイミングアーク結合処理を完了する。
【００２９】
タイミングアーク処理部４１内のステップＳ２３では、前述のステップＳ１６で生成されたＥＴＭ５１１のタイミングアーク定義数に基づき、前述のステップＳ１９のタイミングアークの結合処理が行なわれ、全タイミングアークに対して処理が完了したか判断し、処理が完了していなければ前述のステップＳ１９からステップＳ２３を繰り返し実施し、タイミングアーク条件に対するタイミングアーク結合処理を完了する。
【００３０】
タイミングアーク処理部４１内のステップＳ２４では、前述のステップＳ１７からステップＳ２３までの処理が実行されたＥＴＭ５１１から、前述のステップＳ１６で生成された内部端子が削除される。
【００３１】
図７に戻って説明する。ステップＳ２５では、前述のステップＳ１５で選択されたタイミングモデルＬＩＢ１に定義された電圧及び温度条件数に基づき、すべての条件で処理が完了したか判断し、処理が完了していなければ前述のステップＳ１５からステップＳ２５を繰り返し実施し、タイミングモデルＬＩＢ１に定義された全電圧・温度条件のＥＴＭ５１２（回路図情報ＮＥＴＬＩＳＴ１の最終タイミングモデル）が生成され、全ての処理を完了する。
【００３２】
ここで、上述した図７及び図８の関連技術には、ＳＴＡツールのＥｘｔｒａｃｔ処理後、タイミングアークの結合処理数が膨大であり、処理ＴＡＴ（Ｔｕｒｎ  Ａｒｏｕｎｄ  Ｔｉｍｅ）が長いという問題点がある。その理由を順に説明する。
【００３３】
まず、ステップＳ１６は、ステップＳ１４のクロック指定により内部端子を生成して、ＥＴＭ５１１を生成する。このＥＴＭ５１１をハードマクロのタイミングモデルとしてＬＳＩ設計に適用した場合、内部端子という概念の無い論理シミュレータは、ＥＴＭ５１１内のステップＳ１６にて生成された内部端子を入力端子又は出力端子であると解釈し、ＥＴＭ５１１と回路図情報に端子定義不整合があると認識する。論理シミュレータは、ＥＴＭと回路図情報の端子情報やタイミングアークの整合が取れている場合に、ＥＴＭのタイミングアーク情報を論理シミュレーション結果に反映する事ができるものである。そのため、上述したＥＴＭ５１１のように内部端子が存在する場合、論理シミュレータは、ＥＴＭ５１１のタイミングアーク情報を論理シミュレーションに反映する事が出来ない。したがって、ステップＳ１７〜ステップＳ２５の処理が必要となる。これが、上述した関連技術において処理ＴＡＴが長くなる理由である。
【００３４】
ここで、内部端子として分断されたタイミングアーク統合の処理回数をＴｎとすると次の式（１）で示される。
Ｔｎ＝（波形鈍り条件数×負荷容量条件数）
×（Ａｒｃ（経路）数×遷移数（ｒｉｓｅ、ｆａｌｌ））
×（電圧条件数×温度条件数）                        ・・・（１）
【課題を解決するための手段】
【００３５】
本発明の第１の態様にかかる遅延ライブラリの生成方法は、
入力クロック信号を内部で分周するマクロの遅延ライブラリの生成方法であって、
前記マクロの設計情報に基づいて、前記入力クロック信号を内部で分周する分周回路を抽出するステップと、
前記抽出された分周回路が静的タイミング解析においてクロックラインの一部とみなされるように前記設計情報を修正する修正ステップと、
前記修正された設計情報を用いて前記遅延ライブラリを生成する生成ステップと、
を有する。
【００３６】
本発明の第２の態様にかかる遅延ライブラリ生成装置は、
入力クロック信号を内部で分周するマクロにおける回路図情報、配置配線情報及びタイミングモデル並びに入力クロック毎のクロック周波数及びＤｕｔｙ比の情報を記憶する記憶部と、
前記記憶部に記憶された情報に基づき、前記回路図情報から前記入力クロック信号の入力端子を抽出後に、当該入力端子に当該入力クロック信号のクロック周波数及びＤｕｔｙ比を含むクロック信号情報を指定する入力処理部と、
前記記憶部に記憶された情報に基づき、内部クロック発生箇所における順序回路の属性について、順序回路属性から組合せ回路属性に変更する内部クロック処理部と、
電圧及び温度条件を設定する条件設定部と、
前記記憶部、前記入力処理部、前記内部クロック処理部及び前記条件設定部の結果に基づき、Ｅｘｔｒａｃｔ処理を実施するＥｘｔｒａｃｔ処理部と、
を備える。
【００３７】
本発明の第１及び第２の態様により、クロックライン中に配置された順序回路について内部端子を生成することなく、ＳＴＡツールによる静的タイミング解析において順序回路でないものとみなすことができる。それため、内部端子を削除するためのステップＳ１７〜ステップＳ２５の処理が不要となる。よって、関連技術に比べて処理ＴＡＴを短くすることができる。
【発明の効果】
【００３８】
本発明により、静的タイミング解析ツールの処理結果に対する後処理時間を短くするための遅延ライブラリの生成方法及び遅延ライブラリ生成装置を提供することができる。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施の形態１にかかる遅延ライブラリ生成システムの構成を示すブロック図である。
【図２】本発明の実施の形態１にかかるETM作成処理の流れを示すフローチャートである。
【図３】順序回路属性のＦｌｉｐ−Ｆｌｏｐタイミングモデル記述例を示す図である。
【図４】組合せ回路属性のＦｌｉｐ−Ｆｌｏｐタイミングモデル記述例を示す図である。
【図５】変更前の実際の回路動作のタイミングチャートである。
【図６】本発明の実施の形態１にかかる変更後のタイミングチャートである。
【図７】関連技術にかかるＥＴＭ作成処理の流れを示すフローチャートである。
【図８】関連技術にかかるタイミングアーク処理に対する内部端子関連のタイミングアークに関する後処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００４０】
図１は、本発明の実施の形態１にかかる遅延ライブラリ生成システムの構成を示すブロック図である。本発明の実施の形態１にかかる遅延ライブラリ生成システムは、コンピュータ装置３とサーバ１と記憶部２とネットワーク４とを備える。記憶部２は、実行プログラム、回路を構成するセルタイミングモデル、インバータやＦｌｉｐ−Ｆｌｏｐなどの回路素子の接続情報や入出力情報を記した回路図情報、前記回路図情報に対する配置配線情報、前記セルタイミングモデルの加工データ、前記回路図情報の加工データ、前記配置配線情報の加工データ、生成したＥＴＭの提供及び保存に使用される。サーバ１は、インターネットなどのネットワーク４を介してエンジニアリングワークステーションなどのコンピュータ装置３と接続される。記憶部２に格納されている実行プログラムは、ネットワーク４を介してコンピュータ装置３からの命令により起動される構成となっている。
【００４１】
本発明の実施の形態１にかかる遅延ライブラリ作成装置は、記憶部２と入力処理部１０と内部クロック処理部２０と条件設定部３０とＥｘｔｒａｃｔ処理部４０とを備える。記憶部２は、回路図情報、配置配線情報及びタイミングモデル並びに入力クロック毎のクロック周波数及びＤｕｔｙ比の情報を記憶する。入力クロック処理部１０は、記憶部２に記憶された情報に基づき、回路図情報から入力クロック信号の入力端子を抽出後に、当該入力端子に当該入力クロック信号のクロック周波数及びＤｕｔｙ比を含むクロック信号情報を指定する。内部クロック処理部２０は、記憶部２に記憶された情報に基づき、内部クロック発生箇所における順序回路の属性について、順序回路属性から組合せ回路属性に変更する。条件設定部３０は、電圧及び温度条件を設定する。Ｅｘｔｒａｃｔ処理部４０は、記憶部２、入力クロック処理部１０、内部クロック処理部２０及び条件設定部３０の結果に基づき、Ｅｘｔｒａｃｔ処理を実施する。
【００４２】
また、遅延ライブラリ作成装置は、入力クロック信号を内部で分周するマクロの遅延ライブラリを生成するものである。すなわち、遅延ライブラリ作成装置は、マクロの設計情報に基づいて、入力クロック信号を内部で分周する分周回路を抽出し、抽出された分周回路が静的タイミング解析においてクロックラインの一部とみなされるように前記設計情報を修正し、前記修正された設計情報を用いて前記遅延ライブラリを生成する。
【００４３】
特に、遅延ライブラリ作成装置は、前記設計情報内の前記分周回路における順序回路属性を組み合わせ回路属性へ置換することが望ましい。さらに、前記マクロにおける前記入力クロック信号の入力端子と当該マクロ内の順序回路のクロック端子とに接続された順序回路を含む回路を前記分周回路として抽出するとよい。
【００４４】
図２は、本発明の実施の形態１にかかるＥＴＭ作成処理の流れを示すフローチャートである。尚、以下では、上記分周回路に含まれる順序回路としてフリップフロップが用いられている場合を示すが、順序回路はこれに限定されない。また、分周回路は、別途、設計済みのハードマクロを用いても構わない。
【００４５】
入力クロック処理部１０は、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１（回路素子、入出力情報）、及び、クロック情報ＳＤＣ１（入力クロック毎のクロック周波数やＤｕｔｙ比の情報）を読み込み、ＥＴＭ作成に必要な入力クロック情報を指定して処理を完了する。
【００４６】
入力クロック処理部１０内のステップＳ１では、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１を読み込み、回路図情報ＮＥＴＬＩＳＴ１を構成するＦｌｉｐ−Ｆｌｏｐのクロック端子をバックトレースして回路図情報ＮＥＴＬＩＳＴ１の入力端子が抽出される。
【００４７】
入力クロック処理部１０内のステップＳ２では、記憶部２から、クロック情報ＳＤＣ１を読み込み、ステップＳ１において抽出された入力端子に対して、入力クロックのクロック周波数やＤｕｔｙ比のクロック信号情報が指定される。
【００４８】
内部クロック処理部２０は、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１を読み込み、内部クロック発生箇所のＦｌｉｐ−Ｆｌｏｐを順序回路属性から組合せ回路属性に変更して処理を完了する。
【００４９】
内部クロック処理部２０内のステップＳ３では、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１を読み込み、回路図情報ＮＥＴＬＩＳＴ１を構成するＦｌｉｐ−Ｆｌｏｐのクロック端子をバックトレースしてＳＴＡツールが回路図情報ＮＥＴＬＩＳＴ１の入力端子まで信号伝播経路をトレースできないクロック経路上のＦｌｉｐ−Ｆｌｏｐが抽出される。
【００５０】
内部クロック処理部２０内のステップＳ４では、記憶部２から、回路図情報ＮＥＴＬＩＳＴ１、配置配線情報ＤＥＦ１（回路素子の配置座標、入出力端子及び回路素子間の配線情報）、及び、タイミングモデルＬＩＢ１（各回路素子のタイミングアーク情報）を読み込み、前述のステップＳ３で抽出されたＦｌｉｐ−Ｆｌｏｐ情報に基づき、該当するＦｌｉｐ−Ｆｌｏｐが組合せ回路属性に置換される。
【００５１】
ここで、図３は、順序回路属性のＦｌｉｐ−ＦｌｏｐのタイミングモデルＬＩＢ１の記述例を示す図である。また、図４は、組合せ回路属性のＦｌｉｐ−ＦｌｏｐのタイミングモデルＬＩＢ２の記述例を示す図である。
【００５２】
内部クロック処理部２０内のステップＳ４を詳細に説明する。まず、前述のステップＳ３の抽出結果である順序回路属性のＦｌｉｐ−Ｆｌｏｐのセル名称Ｍ１Ａ（ｃｅｌｌ(ＦＦ＿１)）を組合せ回路属性のＦｌｉｐ−Ｆｌｏｐのセル名称として任意の名称Ｍ１Ｂ（ｃｅｌｌ(ＤＭＹ＿ＦＦ＿1)）に置換する（本実施例では、抽出セル名ＦＦ＿１の前に"ＤＭＹ＿"を追加している）。また、入力端子の出力端子に対する論理的影響に関する定義を順序回路属性のＦｌｉｐ−Ｆｌｏｐ記述Ｍ２Ａ（図３："ｔｉｍｉｎｇ＿ｓｅｎｓｅ  ：  ｎｏｎ＿ｕｎａｔｅ"）から組合せ回路属性のＦｌｉｐ−Ｆｌｏｐ記述Ｍ２Ｂ１及びＭ２Ｂ２に置換する（図４："ｔｉｍｉｎｇ＿ｓｅｎｓｅ  ：  ｐｏｓｉｔｉｖｅ＿ｕｎａｔｅ"、"ｔｉｍｉｎｇ＿ｓｅｎｓｅ  ：  ｎｅｇａｔｉｖｅ＿ｕｎａｔｅ"）。そして、タイミングアークのタイプ定義を順序回路属性のＦｌｉｐ−Ｆｌｏｐ記述Ｍ３Ａ（図３："ｔｉｍｉｎｇ＿ｔｙｐｅ  ：  ｒｉｓｉｎｇ＿ｅｄｇｅ"）から組合せ回路属性のＦｌｉｐ−Ｆｌｏｐ記述Ｍ３Ｂ１及びＭ３Ｂ２（図４："ｔｉｍｉｎｇ＿ｔｙｐｅ  ：  ｃｏｍｂｉｎａｔｉｏｎａｌ＿ｒｉｓｅ"、"ｔｉｍｉｎｇ＿ｔｙｐｅ  ：  ｃｏｍｂｉｎａｔｉｏｎａｌ＿ｆａｌｌ"）に置換する。このように置換したセルタイミングモデルＬＩＢ２（順序回路属性から組合せ回路属性に置換したＦｌｉｐ−Ｆｌｏｐのタイミングモデル）が生成される。
【００５３】
併せて、本ステップＳ４におけるＦｌｉｐ−Ｆｌｏｐのセル名称の置換（"Ｍ１Ａ"から"Ｍ１Ｂ"）に伴い、回路図情報ＮＥＴＬＩＳＴ１及び配置配線情報ＤＥＦ１内に存在する前述のステップＳ３で抽出したＦｌｉｐ−Ｆｌｏｐ名称を"Ｍ１Ａ"から"Ｍ１Ｂ"に置換した回路図情報ＮＥＴＬＩＳＴ２（回路素子、入出力情報）、及び、回路図情報ＮＥＴＬＩＳＴ２の配置配線情報ＤＥＦ２（回路素子の配置座標、入出力端子及び回路素子間の配線情報）が生成される。
【００５４】
なお、本ステップＳ４の生成物であるタイミングモデルＬＩＢ２、回路図情報ＮＥＴＬＩＳＴ２、及び、配置配線情報ＤＥＦ２において、回路図情報ＮＥＴＬＩＳＴ２、配置配線情報ＤＥＦ２は次工程のステップＳ５の条件設定に依存しない。そのため、後述するステップＳ７における設定条件の変更に際しては、タイミングモデルＬＩＢ２のみ設定条件に合わせて再生成し、回路図情報ＮＥＴＬＩＳＴ２、回路図情報ＮＥＴＬＩＳＴ２の配置配線情報ＤＥＦ２は再作成を省略でき、１回目の処理で生成したデータを使用することが可能である。
【００５５】
ここで、本ステップＳ４の回路図情報ＮＥＴＬＩＳＴ１、配置配線情報ＤＥＦ１に対するタイミングモデルＬＩＢ１からタイミングモデルＬＩＢ２への置き換え（回路図情報ＮＥＴＬＩＳＴ２、配置配線情報ＤＥＦ２の生成）は、内部クロック周波数（本説明では、クロック分周回路出力で生成するクロック周波数）を変更する事を意味する。
【００５６】
図５は、変更前の実際の回路動作のタイミングチャートである。また、図６は、本発明の実施の形態１にかかる変更後のタイミングチャートである。
【００５７】
まず、図５の動作を説明する。出力データは、時刻ｔ１のクロック信号の変化に対して、時刻ｔ２に分周回路出力が変化し、分周回路出力をクロックとしたＦｌｉｐ−Ｆｌｏｐにドライブされ、時刻ｔ３に出力データは変化する。つまり、出力データに対するタイミングアークの遅延時間は、入力変化（ｔ１）に対する出力状態遷移（ｔ３）の時間差（ｔ３−ｔ１）であり、クロック周波数には依存しない。
【００５８】
同様に、図６の動作を説明すると、図５と同様に、出力データは、時刻ｔ４のクロック信号の変化に対して、時刻ｔ５に分周回路出力が変化し、分周回路出力をクロックとしたＦｌｉｐ−Ｆｌｏｐにドライブされ、時刻ｔ６に出力データは変化する。したがって、図５同様に、出力データに対するタイミングアークの遅延時間は、入力変化（ｔ４）に対する出力状態遷移（ｔ６）の時間差（ｔ６−ｔ４）であり、クロック周波数には依存しないと言えるため、本発明による分周回路出力の周波数変更は、タイミングアーク抽出に悪影響を与えないと言える。
【００５９】
条件設定部３０内のステップＳ５では、記憶部２から、タイミングモデルＬＩＢ１を読み込み、予めタイミングモデルＬＩＢ１に定義された複数の電圧・温度条件の中から一つの条件が選択され、電圧及び温度条件（Ｂｅｓｔ条件、Ｗｏｒｓｔ条件又はＮｏｒｍａｌ（Ｔｙｐｉｃａｌ）条件）のいずれかが設定される。尚、選択順番は任意だが、全ての条件が選択される（後述のステップＳ７)。
【００６０】
ステップＳ６では、記憶部２から、回路図情報ＮＥＴＬＩＳＴ２、配置配線情報ＤＥＦ２、及び、前述のステップＳ５で選択されたタイミングモデルＬＩＢ１と前述のステップＳ４で生成されたタイミングモデルＬＩＢ２を読み込み、ＳＴＡツールによりタイミング抽出が実行される。このとき、ＳＴＡツールは、回路図情報ＮＥＴＬＩＳＴ２の入力端子からレジスタ（Ｆｌｉｐ−ＦｌｏｐやＬａｔｃｈ）、入力端子から出力端子、レジスタから出力端子へのタイミングアークを抽出し、ＥＴＭ５１（回路図情報ＮＥＴＬＩＳＴ２のタイミングモデル）を生成して記憶部２へ保存する。
【００６１】
ステップＳ７では、前述のステップＳ５で選択されたタイミングモデルＬＩＢ１に定義された電圧及び温度条件数に基づき、すべての条件で処理が完了したか判断し、処理が完了していなければ前述のステップＳ５からステップＳ６を繰り返し実施し、タイミングモデルＬＩＢ１に定義された全電圧及び温度条件のＥＴＭ５１が生成され、全ての処理を完了する。例えば、電圧及び温度条件の組合せが５種類あった場合、その５条件の指定表などを作成し、各項目を処理したらフラグを付けるなどして何処まで実行したかを判断すれば可能となる。
【００６２】
本発明の実施の形態１にかかる効果は、ＥＴＭをタイミングモデルとしてＬＳＩ設計に適用する際のＥＴＭ生成処理ＴＡＴの短縮である。そのメカニズムは、内部クロック処理部２０において、ＳＴＡツールが入力端子からＦｌｉｐ−Ｆｌｏｐのクロック端子までの信号伝播経路をトレースできないクロック経路上の順序回路属性のＦｌｉｐ−Ｆｌｏｐを、組合せ回路属性のＦｌｉｐ−Ｆｌｏｐへの置換する事により、ＳＴＡツールが入力端子からＦｌｉｐ−Ｆｌｏｐのクロック端子までの信号伝播経路をトレースする事が可能となり、内部端子生成の原因となっている図７のステップＳ１４における内部クロック指定が不要になる。本発明の実施の形態１では、ＳＴＡツールは、内部端子を生成せずにタイミングアークを抽出するため、図７のステップＳ１４及びステップＳ１７からステップＳ２３におけるタイミングアークの結合関連の処理が不要となる。
【００６３】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、本発明は、ＥＴＭをタイミングモデルとしてＬＳＩ設計に適用する環境において、ＥＴＭ化対象セル（ハードマクロ）に、ＳＴＡツールが入力端子からＦｌｉｐ−Ｆｌｏｐのクロック端子までをトレースできない回路（主にクロック分周回路）を搭載する場合のＥＴＭ化手法である。そして、ＳＴＡツールがクロック信号をトレースできないクロック経路上のＦｌｉｐ−Ｆｌｏｐのタイミングモデルのタイミングアーク属性を順序回路記述（Ｅｄｇｅ記述）から組合せ回路記述（Ｃｏｍｂｉｎａｔｉｏｎａｌ記述）に置換し、且つ、配置配線情報ＤＥＦ、及び、回路図情報ＮＥＴＬＩＳＴ内のＳＴＡツールがクロックをトレースできないクロック経路上のＦｌｉｐ−Ｆｌｏｐを前記置換Ｆｌｉｐ−Ｆｌｏｐタイミングモデルに置換する手法と、置換したＦｌｉｐ−Ｆｌｏｐのタイミングモデル、配置配線情報ＤＥＦ、回路図情報ＮＥＴＬＩＳＴを使用してＥＴＭ化する手法を有する。これにより、ＥＴＭ化処理において、順序回路が組み合わせ回路として動作することにより、ＳＴＡツールがクロックをトレースできないクロック経路上のＦｌｉｐ−Ｆｌｏｐを経由するクロック経路をクロックバイパス経路とみなす事が可能となり、Ｆｌｉｐ−Ｆｌｏｐを経由する経路もトレース可能となるため、内部端子生成の原因となるクロック指定を省略する事が可能となり、前記従来技術の問題を解決する事ができる。
【００６４】
また、本発明は以下のように表現することもできる。すなわち、半導体装置の情報（回路を構成するセルタイミングモデル、回路図情報、配置配線情報）を元にＥｘｔｒａｃｔタイミング抽出して遅延ライブラリを生成する方法において、半導体装置のマクロ毎に、クロックライン上のＦｌｉｐ−ＦｌｏｐなどＳＴＡツールで信号伝播をトレースできない回路（主にクロック分周回路）を抽出するステップと、該ステップで抽出した結果に基づき、該当する回路情報の属性を置換するステップと、を含んだＥｘｔｒａｃｔタイミング抽出による遅延ライブラリ化方法。
【００６５】
さらに、前記置換する回路情報は、順序回路属性を組み合わせ回路属性に変更することである上記のＥｘｔｒａｃｔタイミング抽出による遅延ライブラリ化方法。
【００６６】
また、回路図情報と配置配線情報とタイミングモデルと入力クロック毎のクロック周波数やＤｕｔｙ比の情報とを保存する記憶部と、記憶部情報に基づき回路情報のクロックの入力端子を抽出後に入力クロックのクロック周波数やＤｕｔｙ比のクロック信号情報が指定する入力処理部と、記憶部情報に基づき内部クロック発生箇所のＦｌｉｐ−Ｆｌｏｐを順序回路属性から組合せ回路属性に変更する内部クロック処理部と、電圧や温度条件を設定する条件設定部と、記憶部、入力処理部、内部クロック処理部、条件設定部の結果に基づきＥｘｔｒａｃｔ処理を実施するＥｘｔｒａｃｔ処理部と、で構成される遅延ライブラリ生成装置。
【符号の説明】
【００６７】
ＮＥＴＬＩＳＴ１  回路図情報
ＮＥＴＬＩＳＴ２  回路図情報
ＳＤＣ１  クロック情報
ＳＤＣ２  クロック情報
ＤＥＦ１  配置配線情報
ＤＥＦ２  配置配線情報
ＬＩＢ１  タイミングモデル
ＬＩＢ２  タイミングモデル
５１  ＥＴＭ
５１１  ＥＴＭ
５１２  ＥＴＭ
Ｍ１Ａ  セル名称
Ｍ２Ａ  順序回路属性のＦｌｉｐ−Ｆｌｏｐ記述
Ｍ３Ａ  順序回路属性のＦｌｉｐ−Ｆｌｏｐ記述
Ｍ１Ｂ  セル名称
Ｍ２Ｂ１  組合せ回路属性のＦｌｉｐ−Ｆｌｏｐ記述
Ｍ３Ｂ１  組合せ回路属性のＦｌｉｐ−Ｆｌｏｐ記述
Ｍ２Ｂ２  組合せ回路属性のＦｌｉｐ−Ｆｌｏｐ記述
Ｍ３Ｂ２  組合せ回路属性のＦｌｉｐ−Ｆｌｏｐ記述
ｔ１、ｔ４  入力クロックの変化時刻
ｔ２、ｔ５  ｔ１、ｔ３に対する分周回路出力の変化時刻
ｔ３、ｔ６  ｔ２、ｔ５に対する出力データの変化時刻
１  サーバ
２  記憶部
３  コンピュータ装置
４  ネットワーク
１０  入力クロック処理部
２０  内部クロック処理部
３０  条件設定部
４０  Ｅｘｔｒａｃｔ処理部
４１  タイミングアーク処理部
【図１】
2013088841.tif 000003
【図２】
2013088841.tif 000004
【図３】
2013088841.tif 000005
【図４】
2013088841.tif 000006
【図５】
2013088841.tif 000007
【図６】
2013088841.tif 000008
【図７】
2013088841.tif 000009
【図８】
2013088841.tif 000010