(57)【特許請求の範囲】
【請求項１】
内部の抵抗を変更して動作速度を変更できる論理素子を用いた半導体集積回路の実装設計方法において、論理情報ファイルから読み出した論理情報データと配線情報ファイルから読み出した配線情報データによりフリップフロップから次のフリップフロップまでの経路を求め、ディレイ計算情報ファイルから読み出したディレイ計算情報データと前記求められた経路によりディレイ計算を行い、フリップフロップから次のフリップフロップまでの経路のディレイがディレイ違反を起した場合に、フリップフロップから次のフリップフロップまでの経路のディレイ値を目標のディレイ値で割ったディレイ違反率が大きい順番に、フリップフロップから次のフリップフロップまでの経路を構成する論理素子の動作速度を速くするように内部抵抗を変更し、変更結果を前記論理情報ファイルに出力することを特徴とする半導体集積回路ディレイ制御方法。
【請求項２】
論理素子の駆動能力を変更して動作速度を変更できる論理素子を用いた半導体集積回路の実装設計方法において、論理情報ファイルから読み出した論理情報データと配線情報ファイルから読み出した配線情報データによりフリップフロップから次のフリップフロップまでの経路を求め、ディレイ計算情報ファイルから読み出したディレイ計算情報データと前記求められた経路によりディレイ計算を行い、フリップフロップから次のフリップフロップまでの経路のディレイがディレイ違反を起した場合に、フリップフロップから次のフリップフロップまでの経路のディレイ値を目標のディレイ値で割ったディレイ違反率が大きい順番に、フリップフロップから次のフリップフロップまでの経路を構成する論理素子の動作速度を速くするように論理素子の駆動能力を変更し、変更結果を前記論理情報ファイルに出力することを特徴とする半導体集積回路ディレイ制御方法。
【請求項３】
論理素子を構成するトランジスタの閾値を変更して動作速度を変更できる論理素子を用いた半導体集積回路の実装設計方法において、論理情報ファイルから読み出した論理情報データと配線情報ファイルから読み出した配線情報データによりフリップフロップから次のフリップフロップまでの経路を求め、ディレイ計算情報ファイルから読み出したディレイ計算情報データと前記求められた経路によりディレイ計算を行い、フリップフロップから次のフリップフロップまでの経路のディレイがディレイ違反を起した場合に、フリップフロップから次のフリップフロップまでの経路のディレイ値を目標のディレイ値で割ったディレイ違反率が大きい順番に、フリップフロップから次のフリップフロップまでの経路を構成する論理素子の動作速度を速くするように論理素子を構成するトランジスタの閾値を変更し、変更結果を前記論理情報ファイルに出力することを特徴とする半導体集積回路ディレイ制御方法。
【請求項４】
請求項１乃至３の制御方法において、半導体集積回路の消費電力が制限値を超える場合に制御を終了することで、消費電力制限値内で最速の回路とすることを特徴とする半導体集積回路ディレイ制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路の実装設計方法に係り、特にディレイ違反を自動検出して違反対策を行なう半導体集積回路ディレイ制御方法に関する。
【０００２】
【従来の技術】
論理素子の駆動能力を変更して動作速度を速くしてディレイ違反を対策する技術は、特開平６−２５９４９２号公報に記載されている。又、内部の抵抗を選択して動作速度を変更できる技術は、特開昭５７−５６９４５号公報に記載されている。又、論理素子を構成するトランジスタの閾値を変更してディレイ違反を対策する技術は、特許第３００８８４９号公報に記載されている。
動作速度を速くする事は重要であるが、半導体集積回路によっては、消費電力も重要な用件になってきている。上記方法では、動作速度を変更する方法は記載されているが、半導体集積回路全体の消費電力の制御を行なう方法は記載されていない。
【０００３】
【発明が解決しようとする課題】
従来、半導体集積回路の高速化のために、ディレイ違反となった経路の論理素子の動作速度を速くしてディレイ違反を対策する方法は、ディレイ違反となった経路を順番に対策するので、対策の順番によって性能が変わるという問題があった。
【０００４】
また、半導体集積回路の消費電力の制限値が決められている場合は、これ以下にするために動作速度を落として制限値以下にする必要があり、消費電力の制限値以内で動作速度の速い半導体集積回路を作ることに対応できないという問題があった。
【０００５】
【課題を解決するための手段】
上記問題を解決するために、本発明では、ディレイ違反となった経路を、ディレイ違反率の大きい順に、経路の論理素子の動作速度を速くしてディレイ違反を対策することで、効率よくディレイ対策を行なう。
また、消費電力を制御する場合には、ディレイ違反となった経路の論理素子の動作速度を速くしてディレイ違反を対策することを、消費電力の制限値を超えない間だけ行なう。
【０００６】
【発明の実施の形態】
以下、本発明による半導体集積回路のディレイと消費電力の制御方法を図面を用いて詳細に説明する。
【０００７】
図１に本発明に係るシステムの構成を示す。論理情報データが論理情報ファイル１０１に、配線情報データが配線情報ファイル１０２に、ディレイ計算情報データがディレイ計算情報ファイル１０３に各々格納されていて、各データが各ファイルから読み出されて使用される。
【０００８】
経路探索部１０５では、論理情報データの中のフリップフロップを見つけ、論理情報データと配線情報データから、次のフリップフロップまでの信号伝達経路を求める。フリップフロップから次のフリップフロップまでの信号伝達経路は、いくつかの経路があり、全ての経路を求める。
ディレイ計算部１０６ではディレイ計算情報データと信号伝達経路からディレイを計算する。
【０００９】
違反率計算部１０７では、ディレイ目標値とディレイ値からディレイ違反率を求める。全てのフリップフロップから次のフリップフロップまでの信号伝達経路のディレイ違反率を計算する。
【００１０】
ディレイ対策部１０８では、ディレイ違反率が大きい順に、経路内の論理素子の動作速度が速く出来るところを求めて、対策を行なう。消費電力計算部では、論理素子の動作速度を変更したことによって消費電力が変わるので消費電力を計算する。この値を、消費電力の制限値と比較し、超える場合には、ディレイ違反対策を終了する。
【００１１】
そして、全てのディレイ対策が終わった場合に、論理素子の動作速度を変更した結果を論理情報ファイル１０４に出力する。
【００１２】
ディレイ違反率の大きい経路には、ディレイ違反の経路が重なる例を、図２を用いて説明する。
【００１３】
この回路で、フリップフロップ２０１からフリップフロップ２０３の経路でディレイ違反率が大きい場合には、フリップフロップ２０１からフリップフロップ２０４の経路、フリップフロップ２０２からフリップフロップ２０３の経路、フリップフロップ２０２からフリップフロップ２０４の経路は、フリップフロップ２０１からフリップフロップ２０２の経路とほとんどを共有しているので、ディレイ違反している可能性が高い。
【００１４】
逆に、ディレイ違反率が小さい場合には、他の経路では違反していない可能性がある。
この為に、ディレイ違反率が大きいところを重点的に対策することが有効である。
【００１５】
本実施例の動作を図３のフローチャートを用いて説明する。
処理３０１は、論理情報ファイル、配線情報ファイル、ディレイ情報ファイルを読込んでシステム内の記憶領域に保存する。半導体集積回路において、動作速度と消費電力は半比例の関係があり、動作速度を速くすれば消費電力が増加してしまう。このため、消費電力の小さい動作速度の遅い論理素子だけで作成した半導体集積回路で動作速度が満足できれば最も良いので、処理３０２は、論理を構成する論理素子をもっとも消費電力の小さいものに変更する。処理３０３は、論理回路の中の始点となるフリップフロップを見つけ、これから経路を探索して次の終点となるフリップフロップまでを調べる。処理３０４は、処理３０３で探索した経路のディレイ値を計算する。処理３０５は始点のフリップフロップのクロック信号と、終点のフリップフロップのクロック信号から、目標ディレイ値を求め、処理３０４で計算したディレイ値から、ディレイ違反率を計算する。この時、始点のフリップフロップと、終点のフリップフロップと、ディレイ違反率を図４のディレイテーブルに書き込む。
【００１６】
全てのフリップフロップ間でディレイ違反率を計算した後で、処理３０６で図４のディレイテーブルを、ディレイ違反率の大きい順に並べ替える。処理３０７は、図４のディレイテーブルの上から、ディレイ違反の判定を行なう。
【００１７】
処理３０８でディレイ違反率の大きい経路の処理を行なう。処理３０９は、経路内の論理素子で動作速度を速くできる論理素子があるか無いかの判定を行なう。無い場合には、ディレイ違反箇所を出力して処理を終了する。ある場合には、処理３１０で半導体集積回路の消費電力を計算する。最初の消費電力計算では、半導体集積回路の消費電力を計算し、それ以後は、変更した論理素子の消費電力の増減により、半導体集積回路の消費電力を計算する。
【００１８】
処理３１１は、処理３１０で求めた消費電力値と消費電力の制限値を比較し制限値を超える場合は、消費電力制限値内で最速の状態であることを宣言してディレイ対策処理を終える。制限値以下の場合は、処理３１２で論理素子の動作速度を変更してディレイを対策する。変更した結果を反映させるために処理３０３からやり直す。この様にして全ての違反がなくなるまで行なう。違反がなくなれば、処理３１３で論理素子の動作速度の変更結果を論理情報ファイルに出力する。
【００１９】
尚、上記処理で、消費電力の制限値を無くせば、消費電力の制限の無い半導体集積回路を作ることもできる。
【図面の簡単な説明】
【図１】本発明を実施するシステムの構成を示す図である。
【図２】本発明を説明するための論理回路のモデルを示す図である。
【図３】本発明に係る半導体集積回路のディレイと消費電力の制御方法のフローチャートである。
【図４】ディレイテーブルの説明図である。
【符号の説明】
１０１・・・論理情報ファイル
１０２・・・配線情報ファイル
１０３・・・ディレイ情報ファイル
１０４・・・論理情報ファイル
１０５〜１０８・・・処理プログラムの各セクション
２０１〜２０４・・・フリップフロップ
２０５〜２０６・・・論理素子
３０１〜３１３・・・処理プログラムの各処理
４０１〜４０３・・・ディレイテーブルの各フィールド
【図１】
0004092887.tif 000002
【図２】
0004092887.tif 000003
【図３】
0004092887.tif 000004
【図４】
0004092887.tif 000005