(57)【特許請求の範囲】
【請求項１】
半導体集積回路のプロセスばらつきに応じた回路特性に関する情報を制御システムに供給し、
該情報に応じた温度及び電源電圧で該半導体集積回路を該制御システムにより動作させる
各段階を含み、
該半導体集積回路は、該半導体集積回路の動作時の動作温度及び動作電源電圧について変動可能な許容範囲を定め、該半導体集積回路のプロセスばらつきに応じた各回路特性に対して、最大動作速度と最小動作速度との中間である速度の動作を実現するのに必要とされる電源電圧及び温度を計算して求め、該プロセスばらつきによる回路特性の変動をキャンセルする目標温度及び目標電源電圧として、前記求めた電源電圧及び温度を該プロセスばらつきに応じた各回路特性と対応付け、該半導体集積回路が該目標温度及び目標電源電圧を略中心とした該許容範囲内で動作すると仮定して実行された計算機シミュレーションにより作成された最大速度条件の回路特性の値と最小速度条件の回路特性の値とを有するライブラリを用いて、前記プロセスばらつきに応じた各回路特性に対して該許容範囲内の任意の温度と電源電圧とで正常に動作するように回路設計されたものである
ことを特徴とする半導体集積回路の動作の制御方法。
【請求項２】
前記情報は該半導体集積回路のプロセスモニタを測定して獲得された情報であることを特徴とする請求項１記載の半導体集積回路の動作の制御方法。
【請求項３】
半導体集積回路の温度を測定する温度測定手段と、
該温度測定手段の測定値に応じて該半導体集積回路の温度を制御する温度制御手段と、
該半導体集積回路に供給する電源電圧を制御する電圧制御手段と、
を含み、
該半導体集積回路は、該半導体集積回路の動作時の動作温度及び動作電源電圧について変動可能な許容範囲を定め、該半導体集積回路のプロセスばらつきに応じた各回路特性に対して、最大動作速度と最小動作速度との中間である速度の動作を実現するのに必要とされる電源電圧及び温度を計算して求め、該プロセスばらつきによる回路特性の変動をキャンセルする目標温度及び目標電源電圧として、前記求めた電源電圧及び温度を該プロセスばらつきに応じた各回路特性と対応付け、該半導体集積回路が該目標温度及び目標電源電圧を略中心とした該許容範囲内で動作すると仮定して実行された計算機シミュレーションにより作成された最大速度条件の回路特性の値と最小速度条件の回路特性の値とを有するライブラリを用いて、前記プロセスばらつきに応じた各回路特性に対して該許容範囲内の任意の温度と電源電圧とで正常に動作するように回路設計されたものであり、
該半導体集積回路のプロセスばらつきに応じた回路特性に関する情報に応じた温度及び電源電圧で該半導体集積回路を動作させることを特徴とする半導体集積回路の制御システム。
【請求項４】
該情報は該半導体集積回路に内蔵され、該温度制御手段及び該電圧制御手段は該半導体集積回路から読み出した該情報に応じて該半導体集積回路の温度及び電源電圧を制御することを特徴とする請求項３記載の半導体集積回路の制御システム。
【請求項５】
該温度制御手段はペルチェ素子を含むことを特徴とする請求項３記載の半導体集積回路の制御システム。
【請求項６】
該情報は該半導体集積回路内のヒューズの切断／非切断により表現されることを特徴とする請求項３記載の半導体集積回路の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に計算機利用設計に関し、詳しくはプロセスばらつきを考慮した半導体集積回路の制御に関する。
【背景技術】
【０００２】
半導体集積回路の動作時に考慮する必要があるばらつきとしては、半導体集積回路の特性のばらつきであるプロセスばらつき以外に、動作環境のばらつきである電源電圧ばらつき、温度ばらつき等がある。半導体集積回路の設計においては、タイミング検証及びレイアウト変更を繰り返すことによって、タイミング違反がなくなるように回路設計を収束させる必要があるが、このようなタイミング検証においては、上記の電源電圧ばらつき、温度ばらつき、プロセスばらつきを全て考慮する必要がある。
【０００３】
具体的には、電源電圧許容範囲及び温度許容範囲内で遅延時間が最大となる条件において更にプロセスばらつきにより遅延時間が最大となる条件である遅延Ｍａｘ条件と、電源電圧許容範囲及び温度許容範囲内で遅延時間が最小となる条件において更にプロセスばらつきにより遅延時間が最小となる条件である遅延Ｍｉｎ条件との両方を考慮する。Ｍｉｎ条件の遅延時間とＭａｘ条件の遅延時間とが、所望の遅延時間の要件を満たすか否かを判定し、判定の結果、要件を満たさないと判断された場合には、セルの挿入／削除／置換／移動及び配線の変更等により、レイアウトを変更してエラーを解消する。
【０００４】
図１は、従来の半導体集積回路の設計から実装後の動作迄の手順を示すフローチャートである。
【０００５】
ステップＳ１において、電源電圧／温度範囲を決定する。この電源電圧／温度範囲はシステム依存であり、システム設計する側が決定する事項である。ステップＳ２において、製造プロセスばらつきを決定する。この製造プロセスばらつきは、半導体集積回路の製造においてどの程度のばらつきがあるかを想定し、予めプロセスばらつきの範囲を決定しておくものであり、半導体ベンダ（半導体集積回路を製造・提供する側）が決定する。
【０００６】
ステップＳ３において、考えられる全ばらつき量を計算する。ステップＳ４において、ばらつき全域をカバーするように設計されたライブラリを作成する。このライブラリでは、例えばセルサイズ、ゲート入力容量、出力駆動能力、遅延時間等が各セルについて定義されている。ゲート入力容量、出力駆動能力、及び遅延時間等について、電源電圧／温度範囲及び製造プロセスばらつきの全ばらつきを考慮した最大値と最小値とが与えられている。
【０００７】
ステップＳ５において、物理設計／製造を行う。即ち、上記ライブラリを用いてばらつきを考慮しながらタイミング検証を行い、物理レイアウトを決定し、決定した物理レイアウトに基づいて半導体集積回路を製造する。
【０００８】
ステップＳ６において、製造試験でプロセスモニタを用いてプロセスを測定する。ウェハ上の所定の位置には、プロセスモニタと呼ばれる特殊な回路が埋め込まれており、この回路の特性を検査することにより、製造した半導体集積回路についてプロセス測定することができる。製造した半導体集積回路が、想定した製造プロセスばらつき内であればＯＫとし、想定した製造プロセスばらつき内になければ使用不可としてリジェクトする。
【０００９】
ステップＳ７において、最初に決定した電源電圧／温度範囲内で半導体集積回路を動作させる。
【００１０】
半導体技術が進歩し半導体集積回路が微細化するに伴い、半導体集積回路のプロセスばらつきが増大する傾向にあり、電源電圧ばらつき、温度ばらつき、プロセスばらつきを全て纏めたトータルなばらつきを考慮すると、半導体集積回路内の信号伝搬の最小遅延と最大遅延とが数倍異なる場合もある。現状の設計プロセスでは、要求される電源電圧許容範囲及び温度許容範囲を設定し、それに加えてプロセスばらつきを考慮してトータルなばらつきの最大値及び最小値を求め、そのばらつきの範囲内の全ての条件下で正常に動作するように回路を設計している。しかしながら、最小遅延と最大遅延とが数倍異なるような大きなばらつきの範囲に対して正常に動作する半導体集積回路を設計しようとすると、半導体集積回路の設計工程が複雑化し、工程数が増大し、多大な手間と時間がかかることになる。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００２−３５３０８３号公報
【特許文献２】特開２００２−３２４０９７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
以上を鑑みると、半導体集積回路を短期間で設計することを可能にする半導体集積回路の制御方法を提供することが望まれる。
【課題を解決するための手段】
【００１３】
半導体集積回路の動作の制御方法は、半導体集積回路のプロセスばらつきに応じた回路特性に関する情報を制御システムに供給し、該情報に応じた温度及び電源電圧で該半導体集積回路を該制御システムにより動作させる各段階を含み、該半導体集積回路は、該半導体集積回路の動作時の動作温度及び動作電源電圧について変動可能な許容範囲を定め、該半導体集積回路のプロセスばらつきに応じた各回路特性に対して、最大動作速度と最小動作速度との中間である速度の動作を実現するのに必要とされる電源電圧及び温度を計算して求め、該プロセスばらつきによる回路特性の変動をキャンセルする目標温度及び目標電源電圧として、前記求めた電源電圧及び温度を該プロセスばらつきに応じた各回路特性と対応付け、該半導体集積回路が該目標温度及び目標電源電圧を略中心とした該許容範囲内で動作すると仮定して実行された計算機シミュレーションにより作成された最大速度条件の回路特性の値と最小速度条件の回路特性の値とを有するライブラリを用いて、前記プロセスばらつきに応じた各回路特性に対して該許容範囲内の任意の温度と電源電圧とで正常に動作するように回路設計されたものであることを特徴とする。
【００１４】
半導体集積回路の制御システムは、半導体集積回路の温度を測定する温度測定手段と、該温度測定手段の測定値に応じて該半導体集積回路の温度を制御する温度制御手段と、該半導体集積回路に供給する電源電圧を制御する電圧制御手段とを含み、該半導体集積回路は、該半導体集積回路の動作時の動作温度及び動作電源電圧について変動可能な許容範囲を定め、該半導体集積回路のプロセスばらつきに応じた各回路特性に対して、最大動作速度と最小動作速度との中間である速度の動作を実現するのに必要とされる電源電圧及び温度を計算して求め、該プロセスばらつきによる回路特性の変動をキャンセルする目標温度及び目標電源電圧として、前記求めた電源電圧及び温度を該プロセスばらつきに応じた各回路特性と対応付け、該半導体集積回路が該目標温度及び目標電源電圧を略中心とした該許容範囲内で動作すると仮定して実行された計算機シミュレーションにより作成された最大速度条件の回路特性の値と最小速度条件の回路特性の値とを有するライブラリを用いて、前記プロセスばらつきに応じた各回路特性に対して該許容範囲内の任意の温度と電源電圧とで正常に動作するように回路設計されたものであり、該半導体集積回路のプロセスばらつきに応じた回路特性に関する情報に応じた温度及び電源電圧で該半導体集積回路を動作させることを特徴とする。
【発明の効果】
【００１５】
本発明の少なくとも１つの実施例によれば、半導体ベンダは、半導体集積回路が目標温度及び目標電源電圧を略中心とした許容範囲内で動作すると仮定して許容範囲内の任意の温度と電源電圧とで正常に動作するように回路設計しさえすればよい。システム使用者側で目標温度及び目標電源電圧を所定の精度で実現することが要求される代わりに、半導体ベンダ側での負担が軽減され、半導体集積回路の設計に費やす手間と時間が大幅に低減されることになる。
【図面の簡単な説明】
【００１６】
【図１】従来の半導体集積回路の設計から実装後の動作迄の手順を示すフローチャートである。
【図２】従来技術の半導体集積回路の設計方法との比較において本発明による半導体集積回路の設計方法を説明するための図である。
【図３】本発明による半導体集積回路の設計から実装後の動作迄の手順を示すフローチャートである。
【図４Ａ】ばらつきテーブルの一例を示す図である。
【図４Ｂ】ばらつきテーブルの一例を示す図である。
【図４Ｃ】ばらつきテーブルの一例を示す図である。
【図４Ｄ】ばらつきテーブルの一例を示す図である。
【図４Ｅ】ばらつきテーブルの一例を示す図である。
【図４Ｆ】ばらつきテーブルの一例を示す図である。
【図５】図３のステップＳ５に示したライブラリ作成段階について詳細に説明するためのフローチャートである。
【図６】システム設計者側に渡す情報について説明する図である。
【図７】ランク情報とともにシステム側に通知する電源電圧及び温度とランクとの対応表である。
【図８】システム側で温度制御する場合の構成の一例を示す図である。
【図９】本発明による半導体集積回路の設計方法を実行する装置の構成を示す図である。
【発明を実施するための形態】
【００１７】
図２（ａ）及び（ｂ）は、従来技術の半導体集積回路の設計方法との比較において本発明による半導体集積回路の設計方法を説明するための図である。図２（ａ）は、従来の半導体集積回路の設計方法を概念的に示しており、グラフ横軸が電源電圧変動範囲、グラフ縦軸が温度変動範囲を示している。システム設計者側が、システムの可動範囲として、例えば−４０℃から＋１２５℃の温度範囲及び−１０％から＋１０％（基準電源電圧に対する比率）の電源電圧範囲を指定すると、図２（ａ）に示す枠１０内のあらゆる温度条件及び電源電圧条件で動作するような半導体集積回路が要求されることになる。グラフ中の複数の点１１はプロセスばらつきにより変動する回路特性を示す。即ち例えば図２（ａ）には７つの点１１が示されるが、７つの半導体集積回路を製造した場合、それぞれプロセスばらつきにより、典型的な動作条件（最大遅延条件と最小遅延条件との中間である遅延条件）となる電源電圧と温度とがそれぞれの点１１の座標位置で示される。
【００１８】
各半導体集積回路が枠１０内のあらゆる温度条件及び電源電圧条件で動作する必要があるので、半導体ベンダ側としては、各点１１に対応する各半導体集積回路が枠１０内のあらゆる温度条件及び電源電圧条件で動作可能なように半導体集積回路を設計しなければならない。これを実現するために、半導体集積回路のタイミング検証及びレイアウト変更にかなりの手間と時間が費やされることになる。
【００１９】
図２（ｂ）は、本発明による半導体集積回路の設計方法を概念的に示しており、グラフ横軸が電源電圧変動範囲、グラフ縦軸が温度変動範囲を示している。本発明においては、システム設計者側は、所定の電源電圧範囲及び所定の温度範囲内において半導体集積回路の電源電圧と温度とを指定された電源電圧と温度とに設定可能であり、但し電源電圧と温度との調整に関してある許容範囲内での変動が許されるとする。即ちシステム動作時には、指定された電源電圧と温度とを中心とした上記許容範囲内で半導体集積回路を動作させることがシステム設計者（使用者）側に要求される。
【００２０】
即ち従来技術では、例えば−４０℃から＋１２５℃の温度範囲及び−１０％から＋１０％の電源電圧範囲の全範囲で半導体集積回路が正常に動作することが要求されるために、半導体ベンダ側に多大な負担がかかる。本発明では、システム使用者側で例えば−４０℃から＋１２５℃の温度範囲及び−１０％から＋１０％の電源電圧範囲内において、指定された温度及び電源電圧を所定の精度で実現することが要求される。これにより、半導体ベンダ側での負担が軽減され、半導体集積回路の設計に費やす手間と時間が大幅に低減されることになる。
【００２１】
図２（ｂ）において、プロセスばらつきに応じた各回路特性に対応する点１１の周りに示される枠１２は、システム使用者側が設定する温度及び電源電圧の許容範囲（精度）を表している。ある点１１に対応する半導体集積回路をシステムに使用する際に、システム設計者（使用者）側には当該半導体集積回路のプロセスばらつきを示すパラメータ（回路特性を示すパラメータ）が通知される。即ち例えば、その半導体集積回路に対応する点１１の座標（電源電圧及び温度）が通知される。システム設計者側は、通知された電源電圧及び温度を用いて当該半導体集積回路を動作させる。但し、電源電圧及び温度の設定には許容範囲内での変動が許されるので、電源電圧及び温度は若干のばらつきを有することになる。このばらつきが、枠１２として示されている。
【００２２】
図２（ａ）に示す従来技術では、半導体ベンダは、各点１１に対応する各半導体集積回路が枠１０内のあらゆる温度条件及び電源電圧条件で動作可能なように半導体集積回路を設計しなければならない。それに対して図２（ｂ）に示す本発明では、半導体ベンダは、各点１１に対応する各半導体集積回路が点１１の周りに規定されている枠１２内の温度条件及び電源電圧条件で動作可能なように半導体集積回路を設計しさえすればよい。即ち、温度及び電源電圧に関して考慮必要なばらつきの大きさが、従来技術の場合と比べて各段に小さくなる。
【００２３】
図３は、本発明による半導体集積回路の設計から実装後の動作迄の手順を示すフローチャートである。
【００２４】
ステップＳ１において、システムにおける電源電圧／温度制御可能範囲と精度を決定する。この電源電圧／温度制御可能範囲と精度はシステム依存であり、システム設計する側が決定する事項である。ステップＳ２において、製造プロセスばらつきを決定する。この製造プロセスばらつきは、半導体集積回路の製造においてどの程度のばらつきがあるかを想定し、予めプロセスばらつきの範囲を決定しておくものであり、半導体ベンダ（半導体集積回路を製造・提供する側）が決定する。
【００２５】
ステップＳ３において、プロセスばらつきをキャンセルするためには、どのような電源電圧及び温度が必要であるかを計算し、ばらつきテーブルを生成する。即ち、半導体集積回路のプロセスばらつきによる回路特性の変動をキャンセルするような温度及び電源電圧を、プロセスばらつきに応じた各回路特性毎に算出する。具体的には、プロセスばらつきに応じた各回路特性に対して典型的条件の動作を実現するに必要とされる電源電圧及び温度を求め、求めた電源電圧及び温度をプロセスばらつきに応じた各回路特性と対応付けて格納することで、テーブル形式のデータを生成する。ここでプロセスばらつきに応じた各回路特性毎に求めた電源電圧及び温度は、図２（ｂ）の点１１の座標に対応する。
【００２６】
ステップＳ４において、システム側の電源電圧／温度設定でキャンセルできないばらつき分を、設計で考慮必要なばらつき分として算出する。即ち、図２（ｂ）に示すように、システム側がある点１１に対応する半導体集積回路を動作させるときに、その点１１を中心とした所定の許容範囲である枠１２の内側であれば、任意の位置に電源電圧及び温度を設定することが許される。この枠１２の広がりが、設計で考慮必要なばらつき分に相当する。
【００２７】
ステップＳ５において、キャンセルできないばらつき領域をカバーするようなライブラリを作成する。このライブラリでは、例えばセルサイズ、ゲート入力容量、出力駆動能力、遅延時間等が各セルについて定義されている。ゲート入力容量、出力駆動能力、及び遅延時間等について、電源電圧／温度範囲及び製造プロセスばらつきの全ばらつきを考慮した最大値と最小値とが与えられている。
【００２８】
ステップＳ６において、物理設計／製造を行う。即ち、上記ライブラリを用いてばらつきを考慮しながらタイミング検証を行い、物理レイアウトを決定し、決定した物理レイアウトに基づいて半導体集積回路を製造する。
【００２９】
ステップＳ７において、製造試験でプロセスモニタを用いてプロセスを測定し、測定したプロセスの情報をシステム設計者側（使用者側）に渡す。ウェハ上の所定の位置には、プロセスモニタと呼ばれる特殊な回路が埋め込まれており、この回路の特性を検査することにより、製造した半導体集積回路についてプロセス測定することができる。なお、製造した半導体集積回路が、想定した製造プロセスばらつき内であればＯＫとし、想定した製造プロセスばらつき内になければ使用不可としてリジェクトする。
【００３０】
ステップＳ８において、システム側で、半導体ベンダより提供された情報に従い、電源電圧及び温度を制御してプロセスばらつきの補正を行なう。半導体ベンダより提供された半導体集積回路は、半導体ベンダより提供された情報が示す電源電圧及び温度条件の許容範囲内でのみ動作が保証される。
【００３１】
図４Ａ乃至図４Ｆは、ばらつきテーブルの一例を示す図である。ばらつきテーブルは、図３のステップＳ３で生成されるテーブルであり、前述のように、プロセスばらつき応じた各回路特性に対して典型的条件の動作を実現するに必要とされる電源電圧及び温度を求め、求めた電源電圧及び温度をプロセスばらつきに応じた各回路特性と対応付けて格納したテーブル形式のデータである。
【００３２】
図４Ａ乃至図４Ｆはそれぞれ、１つの大きなばらつきテーブルの対応する一部分を示したものであり、全体で１つのばらつきテーブルを構成する。入力パラメータとしては、Ｐチャネルトランジスタの単位幅あたりの電流量、Ｎチャネルトランジスタの単位幅あたりの電流量、トランジスタのゲート容量、配線の単位長あたりの抵抗値である。
【００３３】
製造プロセスがばらつくことで、回路特性を示すこれらの入力パラメータの値がばらつくことになる。例えば、図４ＡにはＰチャネルが585〜630μＡ／μｍの範囲の全てのばらつき条件が示され、図４ＢにはＰチャネルが495〜540μＡ／μｍの範囲の全てのばらつき条件が示され、図４ＣにはＰチャネルが450〜495μＡ／μｍの範囲の全てのばらつき条件が示されている。
【００３４】
出力パラメータは、Ｔｊ（半導体のジャンクション温度）がそれぞれ表に示す温度であるときに、典型的条件で動作（ばらつきの中心に対応）する電源電圧の値を基準電圧との比率で示したものである。即ち、プロセスばらつきの結果、半導体集積回路の遅延（動作速度）が最大のものと、最小のものと、その中間である典型のものとが得られるが、その典型の場合の遅延（動作速度）を実現するために、各プロセスばらつきにおいて必要となる電源電圧と温度とを示している。例えば図４Ａのテーブル中で上の方に示される条件では、トランジスタの単位幅あたりの電流量が比較的に大きいので（Ｐチャネルについて585〜630μＡ／μｍ及びＮチャネルについて260〜280μＡ／μｍ）、回路動作が比較的に速いことになる。従って、電源電圧（高いほど動作速度が速くなる）が比較的に低い条件で、典型的な速度（遅延量）を達成することができる。これを反映して、図４Ａのテーブル中の上部では、電源電圧が−１０％から−７％という低い電圧となっている。なお周知のようにＴｊが高いほど動作速度が遅くなるので、温度が高くなるほど（表の右側に行くほど）、必要な電源電圧は高くなっている。
【００３５】
例えば、製造された半導体集積回路について、Ｐチャネルが585〜630μＡ／μｍ、Ｎチャネルが260〜280μＡ／μｍ、ゲート容量が4ｆＦ〜6ｆＦ、配線抵抗が0.7ｋΩ／ｍｍ〜0.9ｋΩ／ｍｍであった場合（図４Ａ）、この半導体集積回路を問題なく動作させるためには、温度が−４０℃なら電源電圧を−１０％に設定すればよいし、また温度が８０℃なら電源電圧を−７％に設定すればよい。また例えば、製造された半導体集積回路について、Ｐチャネルが495〜540μＡ／μｍ、Ｎチャネルが240〜260μＡ／μｍ、ゲート容量が4ｆＦ〜6ｆＦ、配線抵抗が0.7ｋΩ／ｍｍ〜0.9ｋΩ／ｍｍであった場合（図４Ｂ）、温度が３０℃なら電源電圧を−３％に設定すれば、この半導体集積回路が問題なく動作することが保証される。
【００３６】
図５は、図３のステップＳ５に示したライブラリ作成段階について詳細に説明するためのフローチャートである。
【００３７】
ライブラリを作成するためには、例えばＳＰＩＣＥ等のシミュレーションソフトウェアを用いて各セルの電子回路動作をシミュレーションし、最大速度条件（最小遅延条件）、最小速度条件（最大遅延条件）、及び典型速度条件（典型遅延条件）について、各セルについてのゲート入力容量、出力駆動能力、遅延時間等の特性を求めればよい。ステップＳ１が、ＳＰＩＣＥシミュレーションによりセル特性のばらつきを算出する工程である。ステップＳ１の処理への入力としては、システムにおける電源電圧及び温度制御の精度２０（電源電圧及び温度設定時に許される許容範囲）、パッケージ及びＬＳＩ内部のダイナミックＩＲドロップ量と想定されるダイナミックノイズ量２１、及びばらつきテーブルのうちシステムサポート可能範囲の部分２２である。ここでダイナミックＩＲドロップ量とは、電源電圧が配線を伝わるうちに抵抗成分の影響により起こる電圧降下のことであり、ダイナミックノイズとはカップリングノイズ等のことである。なおダイナミックＩＲドロップ量とダイナミックノイズ量とを入力データとする部分は、本発明と直接に関連する部分ではなく、従来から行われていた処理である。
【００３８】
ばらつきテーブルのうちシステムサポート可能範囲の部分２２とは、図３のステップＳ３で生成したばらつきテーブル（例えば図４Ａ乃至図４Ｆ）のうちで、システム側で電源電圧及び温度を制御可能な範囲である。図４Ａ乃至図４Ｆのばらつきテーブルは、−４０℃から＋１２０℃の温度範囲及び−１０％から＋１０％の電源電圧範囲に対するものであるが、例えばシステム設計者側が制御可能な温度範囲は０℃から＋８０℃であり、制御可能な電源電圧範囲は−５％から＋５％であるとする。この場合、図４Ａ乃至図４Ｆに示すばらつきテーブルのうちで、出力パラメータの温度が０℃から＋８０℃であり電源電圧が−５％から＋５％の部分だけが抽出される。この抽出された部分のばらつきテーブルのデータが、図５に示すばらつきテーブルのうちシステムサポート可能範囲の部分２２である。
【００３９】
図５のステップＳ１のＳＰＩＣＥシミュレーションにおいては、システム側の電源電圧制御の許容範囲のうちで最大速度条件側の電源電圧（許容範囲内の最も高い電源電圧）と最小速度条件側の電源電圧（許容範囲内の最も低い電源電圧）と、システム側の温度制御の許容範囲のうちで最大速度条件側の温度（許容範囲内の最も低い温度）と最小速度条件側の温度（許容範囲内の最も高い温度）とを入力して、各セルのゲート入力容量、出力駆動能力、遅延時間等について最大速度条件の値と最小速度条件の値を算出すればよい。この際、ダイナミックＩＲドロップ量とダイナミックノイズ量とについても従来同様に考慮すればよい。
【００４０】
プロセスばらつきに応じた回路特性（ばらつきテーブルの行）が異なれば、セルの動作速度も異なる。従って、従来の設計におけるＳＰＩＣＥシミュレーションでは、このプロセスばらつきも考慮して最大速度条件及び最小速度条件を設定しなければならなかった。しかし本発明ではばらつきテーブルに示す電源電圧と温度とを用いてシステム動作時にばらつき保証することで、ばらつきに関わらず典型的な速度条件で動作することを想定している。従って、ステップＳ１でのＳＰＩＣＥシミュレーションにおいて、セルの動作速度は典型条件のものに固定することができる。
【００４１】
もしプロセスばらつきに応じた回路特性が異なっても、許容範囲内での電源電圧及び温度の変化の動作速度に対する影響が一定と見なすことができるならば、ステップＳ１でのＳＰＩＣＥシミュレーションにおいてプロセスばらつきを考慮する必要はない。しかし実際には、許容範囲内での電源電圧及び温度の変化に対応する動作速度の変化が、プロセスばらつきに応じて変化すると考えられる。従って、理想的には、ばらつきテーブルのうちシステムサポート可能範囲の部分２２のプロセスばらつきに応じた各回路特性に対して、ステップＳ１でのＳＰＩＣＥシミュレーションを実行して、各セルのゲート入力容量、出力駆動能力、遅延時間等について最大速度条件の値と最小速度条件の値をもとめ、全ての回路特性の中で最も大きい最大速度条件の値と最も小さい最小速度条件の値とをライブラリとして用いればよい。
【００４２】
或いは、ばらつきテーブルのうちシステムサポート可能範囲の部分２２のうちで何点かの代表点を選んで、各代表点の条件について各セルのゲート入力容量、出力駆動能力、遅延時間等について最大速度条件の値と最小速度条件の値をもとめ、全ての代表点の中で最も大きい最大速度条件の値と最も小さい最小速度条件の値とをライブラリとして用いればよい。この場合の代表点としては、ばらつきテーブルのうちシステムサポート可能範囲の部分２２に含まれる条件の中で、端に位置する条件（０℃から＋８０℃及び−５％から＋５％をサポート可能範囲とした場合には０℃及び＋８０℃と−５％及び＋５％との組み合わせに対応する点）としてよい。
【００４３】
図５のステップＳ２において、考慮する必要があるばらつき領域をカバーしたライブラリを作成する。上記のステップＳ１のシミュレーションにより考慮する必要があるばらつき領域をカバーしたライブラリが作成されるが、実際のプロセスモニタ測定値と実デバイスの特性との間には若干の誤差があることが知られている。これは例えば、プロセスモニタがウェハ上の所定の位置にしか埋め込まれていないため、位置が異なることによる特性の変化を正確に知ることができないからである。
【００４４】
そこでプロセスモニタ測定値と実デバイス間の相関誤差２３（統計的に得られたデータ）を考慮して、ステップＳ１のシミュレーションにより求めた値を修正する。例えば、プロセスモニタ測定値よりも実デバイスの方が、遅延が１０％程度大きくなることが統計的に知られていたとすると、シミュレーションにより求めた遅延量に１．１を乗じることにより値を修正する。
【００４５】
以上により、考慮する必要があるばらつき領域をカバーしたライブラリを作成することができる。このライブラリを用いて物理設計／製造を行うことは前述の通りである。
【００４６】
以下において、システム設計者側に渡す情報について説明する。本発明においては、図１のステップＳ７でプロセスモニタ測定値を求め、測定したプロセスの情報をシステム設計者側（使用者側）に渡すことになっている。この測定したプロセスの情報としては、例えば図４Ａ乃至図４Ｆのばらつきテーブルの何れの回路特性（何れの行）であるかをシステム側に通知し、且つ図４Ａ乃至図４Ｆのばらつきテーブルをそのままシステム側に渡すようにしてよい。システム側では、ばらつきテーブル中の通知された回路特性の行において指定される温度と電源電圧との組み合わせを用いて、半導体集積回路を動作させればよい。この際、想定してある許容範囲内での温度と電源電圧との変動が許される。
【００４７】
図６は、システム設計者側に渡す情報について説明する図である。本発明においては、プロセスモニタ測定値を複数のランクにグループ分けして、各半導体集積回路毎にそのランクをシステム設計者側に渡すようにしてもよい。図６に示すのは、プロセスモニタ測定値として得られるチャネルトランジスタの単位幅あたりの電流量、Ｎチャネルトランジスタの単位幅あたりの電流量、トランジスタのゲート容量、及び配線の単位長あたりの抵抗値の各組み合わせに対して、対応したＡ、Ｂ、Ｃのランクを示すテーブルである。Ａの半導体集積回路は動作速度が比較的早く、Ｃの半導体集積回路は動作速度が比較的遅い。Ｂの半導体集積回路は動作速度が中程度のものである。このＡ、Ｂ、Ｃのランクをシステム側に通知することになる。
【００４８】
図７（ａ）及び（ｂ）は、ランク情報とともにシステム側に通知する電源電圧及び温度とランクとの対応表である。図７（ａ）は、温度固定として電源電圧を変化させる場合の表であり、図７（ｂ）は、電源電圧固定として温度を変化させる場合の表である。即ち、システム設計者側は、例えばランクＢの通知を受け取った場合には電圧が１．１５Ｖから１．２５Ｖの範囲に収まるように電圧制御し、例えばランクＣの通知を受け取った場合には電圧が１．２０Ｖから１．３０Ｖの範囲に収まるように電圧制御する。この場合の温度は２５℃から７５℃の範囲であればよい。
【００４９】
或いは、システム設計者側は、例えばランクＢの通知を受け取った場合には温度が２５℃から７５℃の範囲に収まるように温度制御し、例えばランクＣの通知を受け取った場合には温度が−４０℃から３０℃の範囲に収まるように温度制御する。この場合の電源電圧は１．１５Ｖから１．２５Ｖの範囲であればよい。
【００５０】
温度と電源電圧とを両方制御できることが望ましいが、両方制御しようとすると制御が複雑になりコストも増大する。従って、簡素なシステム構成の場合などには、図７（ａ）及び（ｂ）に示すように、温度と電源電圧との一方のみを制御する構成としてよい。またよりきめ細かな制御が可能なシステムに対しては、前述のように図４Ａ乃至４Ｆに示すようなばらつきテーブルと測定されたプロセスばらつきとを通知してよい。
【００５１】
システムへの情報通知の方法としては、測定したプロセス情報をＬＳＩ毎に添付したり、或いはＬＳＩに刻印する等が考えられる。またＬＳＩ内にヒューズを設け、ヒューズ切断によりプロセス情報を書き込み、ＬＳＩ電源投入時にヒューズ情報をレジスタに転送し、ソフトウェアから読み出し可能としてもよい。またＬＳＩ内にヒューズを設け、ヒューズ切断によりプロセス情報を書き込み、出力ピンからプロセス情報を出力する構成としてもよい。
【００５２】
図８は、システム側で温度制御する場合の構成の一例を示す図である。
【００５３】
図８のシステム６０は、半導体装置６１、温度センサ・電源ユニット制御回路６２、及びペルチェ素子用コントローラ／電源６３を含む。半導体装置６１、温度センサ・電源ユニット制御回路６２、及びペルチェ素子用コントローラ／電源６３は、プリント基板６４上に実装されている。
【００５４】
半導体装置６１は、パッケージ内に実装された半導体集積回路を含み、そのパッケージ表面にはペルチェ素子７２が貼り付けられている。ペルチェ素子７２は、２種類の金属の接合部に電流を流すと一方の金属から他方の金属に熱が移動するペルチェ効果を利用した素子であり、シート状の素子の一方の面から他方の面に熱を移動させることができる。ペルチェ素子７２に印加する電流の向きを逆転することで、熱の移動方向を切り換えて、半導体装置６１の加熱又は冷却を切り換えることができる。また半導体装置６１のパッケージ表面には更に温度センサモジュール７１が貼り付けられている。この温度センサモジュール７１によりパッケージ表面の温度を測定して、温度測定結果を示す信号を温度センサ制御回路６７に供給する。
【００５５】
温度センサ・電源ユニット制御回路６２は、半導体装置６１の温度センサモジュール７１から供給される温度測定結果を示す信号に応じて、ペルチェ素子用コントローラ／電源６３を制御する。上述のように、ペルチェ素子７２に印加する電流の向きを逆転することで、熱の移動方向を切り換えて、半導体装置の加熱又は冷却を切り換えることができる。
【００５６】
温度測定結果が所定の動作温度範囲を下回りそうな場合、温度センサ・電源ユニット制御回路６２は、ペルチェ素子７２により半導体装置６１を加熱するようにペルチェ素子用コントローラ／電源６３を制御する。また温度測定結果が所定の動作温度範囲を上回りそうな場合、温度センサ・電源ユニット制御回路６２は、ペルチェ素子７２により半導体装置６１を冷却するようにペルチェ素子用コントローラ／電源６３を制御する。また温度センサ・電源ユニット制御回路６２は、半導体装置６１に電源電圧を供給し、半導体装置６１が所定の電圧範囲内の電源電圧で動作するように制御する。
【００５７】
上記の所定の動作温度範囲及び所定の電源電圧範囲は、半導体装置６１から読み出されるプロセス情報に応じたものである。例えば前述のように、ＬＳＩ内のヒューズに書き込まれたプロセス情報を出力ピンから出力するような構成としてよい。この場合、温度センサ・電源ユニット制御回路６２は、半導体装置６１の出力ピンからプロセス情報を読み出して、このプロセス情報が指定する電源電圧値及び温度値を中心とした所定の許容範囲内に、電源電圧値及び温度値を設定するように制御すればよい。
【００５８】
なお温度を検出する方法としては、上述のようにＬＳＩパッケージ表面の温度を測定し、測定値からＴｊ（半導体のジャンクション温度）を計算してよい。或いは、ＬＳＩが消費する電力を測定し、測定値に基づいてＴｊを計算してもよい。また或いは、インバータループ等の論理回路の動作速度を測定し、測定値をＴｊ温度に換算してもよい。
【００５９】
また温度制御方法としては、上述のようにペルチェ素子を用いる方法に限られるものではなく、ＬＳＩ内に加熱回路を設けるとともに、ＬＳＩ外部に風量調節による冷却システムを設けてもよい。或いは、パッケージにヒートポンプを結合し、ヒートポンプによる強制冷却及び加熱を行う構成としてよい。
【００６０】
図９は、本発明による半導体集積回路の設計方法を実行する装置の構成を示す図である。
【００６１】
図９に示されるように、本発明による半導体集積回路の設計方法を実行する装置は、例えばパーソナルコンピュータやエンジニアリングワークステーション等のコンピュータにより実現される。図９の装置は、コンピュータ５１０と、コンピュータ５１０に接続されるディスプレイ装置５２０、通信装置５２３、及び入力装置よりなる。入力装置は、例えばキーボード５２１及びマウス５２２を含む。コンピュータ５１０は、ＣＰＵ５１１、ＲＡＭ５１２、ＲＯＭ５１３、ハードディスク等の二次記憶装置５１４、可換媒体記憶装置５１５、及びインターフェース５１６を含む。
【００６２】
キーボード５２１及びマウス５２２は、ユーザとのインターフェースを提供するものであり、コンピュータ５１０を操作するための各種コマンドや要求されたデータに対するユーザ応答等が入力される。ディスプレイ装置５２０は、コンピュータ５１０で処理された結果等を表示すると共に、コンピュータ５１０を操作する際にユーザとの対話を可能にするために様々なデータ表示を行う。通信装置５２３は、遠隔地との通信を行なうためのものであり、例えばモデムやネットワークインターフェース等よりなる。
【００６３】
本発明による半導体集積回路の設計方法は、コンピュータ５１０が実行可能なコンピュータプログラムとして提供される。このコンピュータプログラムは、可換媒体記憶装置５１５に装着可能な記憶媒体Ｍに記憶されており、記憶媒体Ｍから可換媒体記憶装置５１５を介して、ＲＡＭ５１２或いは二次記憶装置５１４にロードされる。或いは、このコンピュータプログラムは、遠隔地にある記憶媒体（図示せず）に記憶されており、この記憶媒体から通信装置５２３及びインターフェース５１６を介して、ＲＡＭ５１２或いは二次記憶装置５１４にロードされる。
【００６４】
キーボード５２１及び／又はマウス５２２を介してユーザからプログラム実行指示があると、ＣＰＵ５１１は、記憶媒体Ｍ、遠隔地記憶媒体、或いは二次記憶装置５１４からプログラムをＲＡＭ５１２にロードする。ＣＰＵ５１１は、ＲＡＭ５１２の空き記憶空間をワークエリアとして使用して、ＲＡＭ５１２にロードされたプログラムを実行し、適宜ユーザと対話しながら処理を進める。なおＲＯＭ５１３は、コンピュータ５１０の基本動作を制御するための制御プログラムが格納されている。
【００６５】
上記コンピュータプログラムを実行することにより、コンピュータ５１０が、上記各実施例で説明されたように半導体集積回路の設計方法を実行する。
【００６６】
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。
【符号の説明】
【００６７】
１０  温度及び電源電圧の範囲
１１  プロセスばらつきにより変動する回路特性
１２  温度及び電源電圧の許容範囲
６０  システム
６１  半導体装置
６２  温度センサ・電源ユニット制御回路
６３  ペルチェ素子用コントローラ／電源
６４  プリント基板
５１０  コンピュータ
５１１  ＣＰＵ
５１２  ＲＡＭ
５１３  ＲＯＭ
５１４  二次記憶装置
５１５  可換媒体記憶装置
５１６  インターフェース
５２０  ディスプレイ装置
５２１  キーボード
５２２  マウス
【図１】
0005682647.tif 000002
【図２】
0005682647.tif 000003
【図３】
0005682647.tif 000004
【図４Ａ】
0005682647.tif 000005
【図４Ｂ】
0005682647.tif 000006
【図４Ｃ】
0005682647.tif 000007
【図４Ｄ】
0005682647.tif 000008
【図４Ｅ】
0005682647.tif 000009
【図４Ｆ】
0005682647.tif 000010
【図５】
0005682647.tif 000011
【図６】
0005682647.tif 000012
【図７】
0005682647.tif 000013
【図８】
0005682647.tif 000014
【図９】
0005682647.tif 000015