(57)【要約】【課題】集積回路における動作電圧を決定する（ｂｉｎｎｉｎｇ）方法、装置およびコンピュータ・プログラムを提供する。【解決手段】個体集積回路２、２０、３２、４４、４８における動作電圧の特定は、それらの集積回路２、２０、３２、４４、４８を、複数の所要クロック周波数において動作させ、かつ、それらの周波数のそれぞれにおいて、一連の印加されたテスト・ベクトルに対し合格の結果を生じる最小供給電圧Ｖｄｄminを決定することにより行われる。【選択図】図９
2005149476.tif 000002
【特許請求の範囲】
【請求項１】
個体集積回路における動作電圧を決定する方法において、該方法は、
前記集積回路を所要動作周波数で走らせるステップと、
テスト電圧の集合の少なくとも部分集合のそれぞれにおいて、前記集積回路のクリティカル・パスを働かせるために、前記集積回路においてデータ処理動作のテスト・シーケンスを実行するステップであって、与えられたテスト電圧における前記テスト・シーケンスの実行の成功は、前記集積回路が前記与えられたテスト電圧において前記所要動作周波数を信頼性をもって維持できることを示す、前記ステップと、
前記テスト・シーケンスの実行が成功した前記テスト電圧の部分集合から最低テスト電圧を特定するステップと、
前記最低テスト電圧に依存して前記所要動作周波数における前記個体集積回路の前記動作電圧を決定するステップと、
を含む前記方法。
【請求項２】
動作電圧は、複数の所要動作周波数のそれぞれに対し決定される、請求項１記載の方法。
【請求項３】
前記テスト・シーケンスは、
データ処理命令のシーケンスと、
前記集積回路に印加されるテスト信号のシーケンスと、
の一方である、請求項１記載の方法。
【請求項４】
前記動作電圧は供給レベル電圧を含む、請求項１記載の方法。
【請求項５】
前記動作電圧はボデー・バイアス電圧を含む、請求項１記載の方法。
【請求項６】
前記動作電圧は、前記最低動作電圧より少なくとも所定マージンだけ高いように決定される、請求項１記載の方法。
【請求項７】
テスト電圧の前記部分集合は、まず前記テスト・シーケンスをテスト電圧の前記集合の最高電圧において実行し、前記テスト電圧を次第に減少させて、前記テスト・シーケンスの満足な実行が失敗する、テスト電圧の前記集合のテスト電圧になるまで前記テスト・シーケンスを実行することにより、テスト電圧の前記集合から得られる、請求項１記載の方法。
【請求項８】
前記動作電圧および前記所要動作周波数は、前記集積回路に関連する記憶モジュール内に記憶される、請求項１記載の方法。
【請求項９】
前記メモリはプログラム可能読取り専用メモリである、請求項８記載の方法。
【請求項１０】
前記記憶モジュールは、前記個体集積回路のパッケージに貼付されたバーコードである、請求項８記載の方法。
【請求項１１】
前記方法は、前記集積回路を大形回路内に組込む前の前記集積回路の製造時に行われる、請求項１記載の方法。
【請求項１２】
前記方法は、前記集積回路を大形回路内の別の回路素子に結合する時に行われる、請求項１記載の方法。
【請求項１３】
前記方法は、前記集積回路が最終装置内に組込まれている間に行われる、請求項１記載の方法。
【請求項１４】
前記方法は、
前記最終装置の最初の起動と、
前記最終装置のことごとくの起動と、
の少なくとも一方において行われる、請求項１３記載の方法。
【請求項１５】
前記方法は、前記最終装置の動作中に周期的に行われる、請求項１３記載の方法。
【請求項１６】
前記方法は、前記最終装置の１つまたはそれ以上の所定の動作条件の検出時に行われる、請求項１３記載の方法。
【請求項１７】
前記最終装置の状態は前記方法を行う前に保存され、前記状態は前記動作電圧が決定された時に復元される、請求項１５記載の方法。
【請求項１８】
前記所定の動作条件は、前記最終装置が幹線電源または電池電源のいずれにより動作しているかを含む、請求項１６記載の方法。
【請求項１９】
前記方法は、前記最終装置の所定の温度変化の検出時に行われる、請求項１３記載の方法。
【請求項２０】
前記最終装置は、該最終装置に電力を供給する動作が可能な電池を含み、前記最終装置は待機モードに設定することができ、前記方法は、
前記集積回路を待機状態に設定するステップと、
前記電池の現在の充電レベルにおいて最低漏れ電流を生じるテスト・ボデー・バイアス電圧を特定するために、テスト・ボデー・バイアス電圧の集合のそれぞれにおいて前記集積回路をテストするステップと、
前記特定されたテスト・ボデー・バイアス電圧に依存して前記待機モードにおける動作ボデー・バイアス電圧を設定するステップと、
を含む、請求項１３記載の方法。
【請求項２１】
前記集積回路は、前記大形回路または前記最終装置のそれぞれの中の複数の異なる電圧領域の与えられた電圧領域に属するとして分類され、前記方法は前記与えられた電圧領域において行われる、請求項１２記載の方法。
【請求項２２】
集積回路の動作電圧のビンニング若しくは特定（ｂｉｎｎｉｎｇ）方法。
【請求項２３】
個体集積回路と、
前記個体集積回路における動作電圧および所要動作周波数を記憶する、前記個体集積回路に関連する記憶モジュールとを含む装置において、前記動作電圧は、
前記集積回路を前記所要動作周波数で走らせるステップと、
テスト電圧の集合の少なくとも部分集合のそれぞれにおいて、前記集積回路のクリティカル・パスを働かせるために、前記集積回路においてデータ処理動作のテスト・シーケンスを実行するステップであって、与えられたテスト電圧における前記テスト・シーケンスの実行の成功は、前記集積回路が前記与えられたテスト電圧において前記所要動作周波数を信頼性をもって維持できることを示す、前記ステップと、
前記テスト・シーケンスの実行が成功した前記テスト電圧の部分集合から最低テスト電圧を特定するステップと、
前記最低テスト電圧に依存して前記所要動作周波数における前記個体集積回路の前記動作電圧を決定するステップと、
により決定されている、前記装置。
【請求項２４】
動作電圧は、複数の所要動作周波数のそれぞれにおいて決定される、請求項２３記載の装置。
【請求項２５】
前記テスト・シーケンスは、
データ処理命令のシーケンスと、
前記集積回路に印加されるテスト信号のシーケンスと、
の一方である、請求項２３記載の装置。
【請求項２６】
前記動作電圧は供給レベル電圧を含む、請求項２３記載の装置。
【請求項２７】
前記動作電圧はボデー・バイアス電圧を含む、請求項２３記載の装置。
【請求項２８】
前記動作電圧は、前記最低動作電圧より少なくとも所定マージンだけ高いように決定される、請求項２３記載の装置。
【請求項２９】
テスト電圧の前記部分集合は、まず前記テスト・シーケンスをテスト電圧の前記集合の最高電圧において実行し、前記テスト電圧を次第に減少させて、前記テスト・シーケンスの満足な実行が失敗する、テスト電圧の前記集合のテスト電圧になるまで前記テスト・シーケンスを実行することにより、テスト電圧の前記集合から得られる、請求項２３記載の装置。
【請求項３０】
前記動作電圧および前記所要動作周波数は、前記集積回路に関連する記憶モジュール内に記憶される、請求項２３記載の装置。
【請求項３１】
前記記憶モジュールはプログラム可能読取り専用メモリである、請求項３０記載の装置。
【請求項３２】
前記記憶モジュールは、前記個体集積回路のパッケージに貼付されたバーコードである、請求項３０記載の装置。
【請求項３３】
前記方法は、前記集積回路を大形回路内に組込む前の前記集積回路の製造時に行われる、請求項２３記載の装置。
【請求項３４】
前記方法は、前記集積回路を大形回路内の別の回路素子に結合する時に行われる、請求項２３記載の装置。
【請求項３５】
前記方法は、前記集積回路が最終装置内に組込まれている間に行われる、請求項２３記載の装置。
【請求項３６】
前記方法は、
前記最終装置の最初の起動と、
前記最終装置のことごとくの起動と、
の少なくとも一方において行われる、請求項３５記載の装置。
【請求項３７】
前記方法は、前記最終装置の動作中に周期的に行われる、請求項３５記載の装置。
【請求項３８】
前記方法は、前記最終装置の１つまたはそれ以上の所定の動作条件の検出時に行われる、請求項３５記載の装置。
【請求項３９】
前記最終装置の状態は前記方法を行う前に保存され、前記状態は前記動作電圧が決定された時に復元される、請求項３７記載の装置。
【請求項４０】
前記所定の動作条件は、前記最終装置が幹線電源または電池電源のいずれにより動作しているかを含む、請求項３８記載の装置。
【請求項４１】
前記方法は、前記最終装置の所定の温度変化の検出時に行われる、請求項３７記載の装置。
【請求項４２】
前記最終装置は、該最終装置に電力を供給する動作が可能な電池を含み、前記最終装置は待機モードに設定することができ、前記方法は、
前記集積回路を待機状態に設定するステップと、
前記電池の現在の充電レベルにおいて最低漏れ電流を生じるテスト・ボデー・バイアス電圧を特定するために、テスト・ボデー・バイアス電圧の集合のそれぞれにおいて前記集積回路をテストするステップと、
前記特定されたテスト・ボデー・バイアス電圧に依存して、前記待機モードにおいて動作ボデー・バイアス電圧を設定するステップと、
を含む、請求項３７記載の装置。
【請求項４３】
前記集積回路は、前記大形回路または前記最終装置のそれぞれの中の複数の異なる電圧領域の与えられた電圧領域に属するとして分類され、前記方法は前記与えられた電圧領域において行われる、請求項３６記載の装置。
【請求項４４】
個体集積回路の動作電圧を決定するためにデータ処理装置を制御するコンピュータ・プログラムを有するコンピュータ・プログラム製品において、前記コンピュータ・プログラムは、
前記集積回路を所要動作周波数で走らせるよう動作可能である周波数設定コードと、
テスト電圧の集合の少なくとも部分集合のそれぞれにおいて、前記集積回路のクリティカル・パスを働かせるために、前記集積回路においてデータ処理動作のテスト・シーケンスを実行するよう動作可能である実行コードであって、与えられたテスト電圧における前記テスト・シーケンスの実行の成功は、前記集積回路が前記与えられたテスト電圧において前記所要動作周波数を信頼性をもって維持できることを示す、前記実行コードと、
前記テスト・シーケンスの実行が成功した前記テスト電圧の部分集合から最低テスト電圧を特定するよう動作可能である電圧特定コードと、
前記最低テスト電圧に依存して前記所要動作周波数における前記個体集積回路の前記動作電圧を決定するよう動作可能である動作電圧決定コードと、
を含む、前記コンピュータ・プログラム製品。
【請求項４５】
前記動作電圧決定コードは、複数の所要動作周波数のそれぞれにおいて動作電圧を決定するよう動作可能である、請求項４４記載のコンピュータ・プログラム製品。
【請求項４６】
前記実行コードの前記テスト・シーケンスは、
データ処理命令のシーケンスと、
前記集積回路に印加されるテスト信号のシーケンスと、
の一方である、請求項４４記載のコンピュータ・プログラム製品。
【請求項４７】
前記動作電圧決定コードにより決定される前記動作電圧は供給レベル電圧を含む、請求項４４記載のコンピュータ・プログラム製品。
【請求項４８】
前記動作電圧決定コードにより決定される前記動作電圧はボデー・バイアス電圧を含む、請求項４４記載のコンピュータ・プログラム製品。
【請求項４９】
前記動作電圧決定コードは、前記動作電圧を、前記最低動作電圧より少なくともスレショルド・マージンだけ高く決定するよう動作可能である、請求項４４記載のコンピュータ・プログラム製品。
【請求項５０】
テスト電圧の前記部分集合は、まず前記テスト・シーケンスをテスト電圧の前記集合の最高電圧において実行し、前記テスト電圧を次第に減少させて、前記テスト・シーケンスの満足な実行が失敗する、テスト電圧の前記集合のテスト電圧になるまで前記テスト・シーケンスを実行することにより、テスト電圧の前記集合から得られる、請求項４４記載のコンピュータ・プログラム製品。
【請求項５１】
前記動作電圧および前記所要動作周波数を、前記集積回路に関連する記憶モジュール内に記憶するよう動作可能である記憶コードを含む、請求項４４記載のコンピュータ・プログラム製品。
【請求項５２】
前記記憶モジュールはプログラム可能読取り専用メモリである、請求項５１記載のコンピュータ・プログラム製品。
【請求項５３】
前記コンピュータ・プログラムは、前記集積回路を大形回路内に組込む前の前記集積回路の製造時に実行可能である、請求項４４記載のコンピュータ・プログラム製品。
【請求項５４】
前記コンピュータ・プログラムは、前記集積回路を大形回路内の別の回路素子に結合する時に実行可能である、請求項４４記載のコンピュータ・プログラム製品。
【請求項５５】
前記コンピュータ・プログラムは、前記集積回路が最終装置内に組込まれている間に実行可能である、請求項４４記載のコンピュータ・プログラム製品。
【請求項５６】
前記コンピュータ・プログラムは、
前記最終装置の最初の起動と、
前記最終装置のことごとくの起動と、
の少なくとも一方において実行される、請求項５５記載のコンピュータ・プログラム製品。
【請求項５７】
前記コンピュータ・プログラムは、前記最終装置の動作中に周期的に実行される、請求項５５記載のコンピュータ・プログラム製品。
【請求項５８】
前記コンピュータ・プログラムの実行は、前記最終装置の１つまたはそれ以上の所定の動作条件の検出時にトリガされる、請求項５５記載のコンピュータ・プログラム製品。
【請求項５９】
前記最終装置の状態は前記コンピュータ・プログラムを実行する前に保存され、前記状態は、前記動作電圧が前記動作電圧決定コードにより決定された時に復元される、請求項５５記載のコンピュータ・プログラム製品。
【請求項６０】
前記所定の動作条件は、前記最終装置が幹線電源または電池電源のいずれにより動作しているかを含む、請求項５５記載のコンピュータ・プログラム製品。
【請求項６１】
前記コンピュータ・プログラムの実行は、前記最終装置の所定の温度変化の検出時にトリガされる、請求項５５記載のコンピュータ・プログラム製品。
【請求項６２】
前記最終装置は、該最終装置に電力を供給する動作が可能な電池を含み、前記最終装置は待機モードに設定することができ、前記方法は、
前記集積回路を待機状態に設定するステップと、
前記電池の現在の充電レベルにおいて最低漏れ電流を生じるテスト・ボデー・バイアス電圧を特定するために、テスト・ボデー・バイアス電圧の集合のそれぞれにおいて前記集積回路をテストするステップと、
前記特定されたテスト・ボデー・バイアス電圧に依存して前記待機モードにおける動作ボデー・バイアス電圧を設定するステップと、
を含む、請求項５５記載のコンピュータ・プログラム製品。
【請求項６３】
前記集積回路は、前記大形回路または前記最終装置のそれぞれの中の複数の異なる電圧領域の与えられた電圧領域に属するとして分類され、前記コンピュータ・プログラムは、前記与えられた電圧領域内において動作する前記集積回路の前記動作電圧を決定するよう動作可能である、請求項５４記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路の分野に関する。特に、本発明は、集積回路における動作電圧の決定に関する。
【背景技術】
【０００２】
集積回路の分野においては、クロック周波数を次第に高くして集積回路を走らせることにより、処理性能を高める努力がなされている。集積回路内での製造公差の結果として、与えられた集積回路は、与えられた供給電圧に対し意図されたクロック周波数で、信頼性のある動作をすることができないかもしれない。従って、製造後の生産段階において、それぞれの集積回路は、与えられた供給電圧においてそれがサポートできる最高動作周波数を決定するために、ある範囲のテスト周波数でテストされる。次に、その集積回路は、その最高動作周波数まで使用されるものとして分類される。
【０００３】
また、集積回路の分野においては、集積回路のエネルギー効率を改善し、より低い電圧において動作させる努力もなされている。電力効率のよいシステムは、集積回路が組込まれている最終装置における電池寿命を長くし、また望ましくない発熱を減少させる利点も有する。
【発明の開示】
【課題を解決するための手段】
【０００４】
本発明の第１の特徴は、個体集積回路における動作電圧を決定する方法を提供することであり、該方法は、
前記集積回路を所要動作周波数で走らせるステップと、
テスト電圧の集合の少なくとも部分集合のそれぞれにおいて、前記集積回路のクリティカル・パスを働かせるために、前記集積回路においてデータ処理動作のテスト・シーケンスを実行するステップであって、与えられたテスト電圧における前記テスト・シーケンスの実行の成功は、前記集積回路が前記与えられたテスト電圧において前記所要動作周波数を信頼性をもって維持できることを示す、前記ステップと、
前記テスト・シーケンスの実行が成功した前記テスト電圧の部分集合から最低テスト電圧を特定するステップと、
前記最低テスト電圧に依存して前記所要動作周波数における前記個体集積回路の前記動作電圧を決定するステップと、
を含む。
【０００５】
本発明は、集積回路の諸グループを、与えられた供給電圧においてそれらのグループが信頼性をもってサポートできる最高周波数により分類するよりも、むしろ個体集積回路を、所要動作周波数を信頼性をもって維持するために所要最低電圧により分類する方がよいことを認める。これは、ドーピングレベルの変動のような集積回路の製造における変動を、個体集積回路が所要周波数で信頼性のある動作をするために維持できる最低電圧を積極的にテストすることにより、回路毎に考慮できることを意味する。これは、公知の周波数ビンニング若しくは特定（ｆｒｅｑｕｅｎｃｙ  ｂｉｎｎｉｎｇ）技術とは異なり、製造工程における変動に対処するために、指定された動作電圧に実質的なマージンを取り入れる（動作電圧を、所要最低電圧のかなり上まで有効に増加させる）必要がないことを意味する。従って、特定の集積回路において、本発明により決定される動作電圧は、周波数を特定された（ｆｒｅｑｕｅｎｃｙ  ｂｉｎｎｅｄ）集積回路の対応するグループのために決定される動作電圧に対して数百ミリボルトだけ低くなることができる。低い動作電圧における動作は、得られるエネルギーをより有効に使用する。
【０００６】
動作電圧は、単一の所要動作周波数に対し決定することができるが、実施例においては、動作電圧は、複数の所要動作周波数に対し決定される。これは、多重動作点をサポートするデータ処理装置において特に有用である。その理由は、エネルギー効率のよい電圧を、可能なクロック周波数のそれぞれに対し、個々に決定することができるからである。
【０００７】
実施例において、集積回路のクリティカル・パスを働かせるために用いられるデータ処理動作のテスト・シーケンスは、例えば、コンピュータ・プログラムにより実行されるデータ処理命令のシーケンスであるか、または、例えばハードウェアにより集積回路に印加されるテスト信号のシーケンスである。
【０００８】
決定される動作電圧は、個体集積回路に印加される任意の電圧、または電圧の組合せでありうるが、実施例においては、その動作電圧は、供給レベルの電圧、またはボデー・バイアス電圧である。ボデー・バイアス電圧、または供給レベル電圧は、所要クロック周波数をサポートすることを可能にしつつ、より効率的なエネルギーの使用を可能にするように調整される。さらに、ボデー・バイアス電圧は、集積回路の待機動作中の漏れ電流を制御するように、決定され調整される。
【０００９】
動作電圧は、最低テスト電圧に実質的に等しく決定できることを認識すべきである。しかし、実施例においては、動作電圧は、最低テスト電圧よりも所定量だけ高く決定される。これは、環境条件に変化があった時に最低テスト電圧が所要周波数をサポートできないことによる、または、最低テスト電圧の確認における誤差による、集積回路の障害の可能性を低減する。
【００１０】
電圧の集合は、それらの電圧がメモリ内のルックアップ・テーブルから検索された順序などの、任意の順序でテストできることを認識すべきである。さらに、テスト電圧の集合の異なる部分集合は、異なる時にテストできる。しかし、実施例においては、テスト・シーケンスは、前記集合の最高テスト電圧において最初に実行され、テスト電圧は、テスト・シーケンスの満足な実行が失敗する値になるまで次第に減少される。これは、テストプロセスを時間効率のよいものとする。その理由は、失敗したテスト電圧より低い全てのテスト電圧を消去することにより、テストを必要とする集合から、電圧のその部分集合を減少させるからである。
【００１１】
決定された動作電圧および所要動作周波数は、集積回路とは異なる記憶モジュール内に記憶させることができるが、実施例においては、動作電圧および所要動作周波数は、個体集積回路に関連する、例えば、プログラム可能読取り専用メモリ内、または集積回路のパッケージに貼付もしくは適用されたバー・コード上のような、記憶モジュール内に記憶される。これは、集積回路を大きいシステム内、または最終装置内に実装する時、個体集積回路に適切な動作電圧レベルを印加することを可能にする。
【００１２】
動作電圧決定は、集積回路の実現のいくつかの異なる段階のいずれにおいても行えることを認識すべきである。１つの実施例によれば、動作電圧決定は、集積回路の製造時に行われ、従って、個体集積回路は、大形回路内に組込まれる前に、所要周波数における最低テスト電圧により分類することができる。これは、動作電圧が、分類された集積回路のバッチ全体に対し適切であるよりも、むしろ個体集積回路に対し適切であるように、微調整されることを考慮に入れている。
【００１３】
もう１つの実施例によれば、動作電圧決定は、集積回路を大形回路内の別の回路素子に結合する時に行われる。従って、動作電圧決定は、集積回路が置かれている実際の処理環境に関連して査定されるので、大形回路に特有の、最低テスト電圧に影響するかもしれない温度のような環境パラメータが考慮される。
【００１４】
本発明のさらにもう１つの実施例によれば、動作電圧決定は、集積回路が最終装置内に組込まれる時に行われる。これは、再び、最低テスト電圧の決定において、実際の処理環境が考慮されることを可能とする。
【００１５】
動作電圧決定は、任意の時刻に行うことができ、また任意の所要回数繰返すことができることを認識すべきである。しかし、集積回路が最終装置内に組込まれている時は、動作電圧決定は、最終装置の最初の起動および最終装置のことごとくの起動の、少なくとも一方において行われることが好ましい。最初の起動における電圧の決定は、動作電圧が、集積回路のバッチに対して適切な電圧マージンに従って事前設定されるのではなく、最終装置の特定の動作環境に対して適切で、かつ最終装置内の個体集積回路に対して特別に調整されることを保証する。最終装置のことごとくの起動における電圧決定は、決定された動作電圧の再計算を可能とするので、もし例えば、なんらかの変更が最終装置に対して行われたとすれば、これらの変更を最終装置の次の起動において考慮することができる。
【００１６】
もう１つの実施例によれば、動作電圧決定は、最終装置の動作中に周期的に行われるので、温度および処理作業負荷のような動作条件を考慮に入れることができる。
【００１７】
実施例においては、最終装置の状態は、動作電圧決定を行う前に保存され、その状態は動作電圧が決定された後に復元される。これは、電圧決定を、その装置の起動以外の時に、すなわち、通常の動作中に、動作電圧決定プロセスの開始前に前記装置が行っていた処理動作を損なうことなく行えるようにする。
【００１８】
動作電圧決定は任意の時刻に行うことができるが、実施例においては、動作電圧決定は、最終装置の１つまたはそれ以上の所定の動作条件の検出時に行われる。特に、所定の温度変化の決定時に行われ、その所定の温度変化（例えば、５℃）は、所要クロック周波数をサポートするために必要とされる動作電圧に変化を与えやすい大きさのものとする。さらに、動作電圧決定は、最終装置が幹線電源または電池電源のいずれにより動作しているかにより行うことができる。従って、電池寿命の延長が所望される時に限り、よりエネルギー効率の高い動作電圧を用いることができる。
【００１９】
従来は、動作電圧決定は、起動時、または最終装置の通常の動作中のみに行うことができたが、実施例においては、電圧決定は、最終装置内の集積回路が、電池の現在の充電レベルにおいて最低漏れ電流を生じるボデー・バイアス電圧を特定する待機状態にある時に開始される。これは、待機モードにおける消費電力を削減する機構を与え、電池寿命を延長する。
【００２０】
本発明が第２の特徴により提供する装置は、
個体集積回路と、
前記個体集積回路における動作電圧および所要動作周波数を記憶する、前記個体集積回路に関連する記憶モジュールとを含み、前記動作電圧は、
前記集積回路を前記所要動作周波数で走らせるステップと、
テスト電圧の集合の少なくとも部分集合のそれぞれにおいて、前記集積回路のクリティカル・パスを働かせるために、前記集積回路においてデータ処理動作のテスト・シーケンスを実行するステップであって、与えられたテスト電圧における前記テスト・シーケンスの実行の成功は、前記集積回路が前記与えられたテスト電圧において前記所要動作周波数を信頼性をもって維持できることを示す、前記ステップと、
前記テスト・シーケンスの実行が成功した前記テスト電圧の部分集合から最低テスト電圧を特定するステップと、
前記最低テスト電圧に依存して前記所要動作周波数における前記個体集積回路の前記動作電圧を決定するステップと、
により決定されたものである。
【００２１】
本発明が第３の特徴により提供するコンピュータ・プログラム製品は、個体集積回路の動作電圧を決定するためにデータ処理装置を制御するコンピュータ・プログラムを有し、該コンピュータ・プログラムは、
前記集積回路を所要動作周波数で走らせるよう動作可能である周波数設定コードと、
テスト電圧の集合の少なくとも部分集合のそれぞれにおいて、前記集積回路のクリティカル・パスを働かせるために、前記集積回路においてデータ処理動作のテスト・シーケンスを実行するよう動作可能である実行コードであって、与えられたテスト電圧における前記テスト・シーケンスの実行の成功は、前記集積回路が前記与えられたテスト電圧において前記所要動作周波数を信頼性をもって維持できることを示す、前記実行コードと、
前記テスト・シーケンスの実行が成功した前記テスト電圧の部分集合から最低テスト電圧を特定するよう動作可能である電圧特定コードと、
前記最低テスト電圧に依存して前記所要動作周波数における前記個体集積回路の前記動作電圧を決定するよう動作可能である動作電圧決定コードと、
を含む。
【００２２】
本発明の、以上の、およびその他の、目的、特徴および利点は、添付図面と関連して読まれるべき、以下の実施例の詳細な説明から明らかとなろう。
【実施例１】
【００２３】
図１は、レジスタ・バンク４と、乗算器６と、シフタ８と、加算器１０と、命令パイプライン１２と、命令デコーダ１４とを組込んだ、プロセッサ・コアの形式の集積回路２を示す。動作に際しては、命令パイプライン１２内に受取られたプログラム命令は、命令デコーダ１４によりデコードされ、このデコーダはレジスタ・バンク４、乗算器６、シフタ８および加算器１０ならびにさらなる回路素子（図示せず）の動作を制御する制御信号を発生し、プログラム命令により指定されたデータ処理動作を行う。
【００２４】
集積回路２は、クロック発振器１６が生成したプロセッサ・クロック信号ｃｌｋを供給される。このクロック信号ｃｌｋは、異なる周波数を有することができ、これらの周波数は、特定の時点に集積回路２が要求されたパフォーマンスにより動的に変更される。例をあげると、もし集積回路２が、動画のデコーディングおよびディスプレイのような処理集中タスクを行うことを要求されれば、クロック周波数は、所望の処理パフォーマンスを生じるために高い値に設定される。逆に、プロセッサがアイドル状態にある時は、クロック周波数は低い値に設定できるので、消費電力が削減される。
【００２５】
電源１８もまた集積回路２に結合され、供給レール電圧Ｖｄｄおよびボデー・バイアス電圧Ｖｂｂを集積回路２へ供給する。与えられたクロック周波数に対しては、そのクロック周波数での動作をサポートするために必要とされる、最小所要供給レール電圧Ｖｄｄが存在する。もし供給レール電圧が、この最小値よりも低く低下すれば、集積回路２内の１つまたはそれ以上のクリティカル・パスは、クロック周波数により決定される所要時間内にそれらの動作を完了することができなくなり、集積回路は正しく動作することに失敗し、すなわち、プロセッサ・コアの場合はシステムがクラッシュする。
【００２６】
ボデー・バイアス電圧Ｖｂｂは、集積回路の待機動作中に、すなわち、集積回路がクロックされずに状態を保持するよう要求されている時に、漏れ電流を制御するために変化せしめられる。あるいは、供給レール電圧は、異なるクロック周波数に対し一定でありうるが、ボデー・バイアス電圧は、それらの異なる周波数に対し調整されることにより、供給レール電圧とボデー・バイアス電圧との間の差を、異なる所要クロック周波数をサポートできるように調整する。
【００２７】
与えられたクロック周波数のために要求される最小所要供給レール電圧で、集積回路を動作させようとする所望は、集積回路のエネルギー消費を低減しようとする所望から生じることを認識すべきである。エネルギー消費の低減は、携帯計算装置における電池寿命の増大、高性能装置におけるエネルギー密度および発熱問題の軽減を可能にするので、またその他の理由で、有利である。同様にして、待機中の漏れ電流の低減もまた、エネルギー消費および発熱および電池寿命の延長のために望ましい。
【００２８】
図２は、最小所要供給レール電圧Ｖｄｄminと、サポートされる必要のあるクロック周波数との関係を概略的に示す。最小供給電圧Ｖｄｄminは、所要クロック周波数が減少するのに伴い一般に減少するが、これは非線形の関係であり、あるクロック周波数未満では、最小供給レール電圧は事実上一定のままとなることがわかる。実際上、信頼性のある動作を実現するためには、集積回路２に、決定された最小供給レール電圧Ｖｄｄminよりもわずかに高い供給レール電圧Ｖｄｄを供給することが望ましい。もし最小供給レール電圧が、関係する集積回路のクラス全体に対し最悪の場合のシナリオに基づき注意深く決定されたものではなく、個体集積回路２に対して計算されたものとすれば、組込まれるマージンは比較的に小さくてもよい。例をあげると、最悪の場合のシナリオに基づくシステムは、低い供給レール電圧における平均未満の公差を有する個体集積回路がなお正しく動作する十分なバッファを与えるために、平均的集積回路における最小供給レール電圧であると推定される電圧よりも２０％大きい供給レール電圧を用いる。これとは対照的に、最小供給レール電圧が、それぞれの個体集積回路２に対して決定された時は、はるかに小さい、例えば５％の、バッファを用いることができ、その結果、エネルギー消費および発熱が著しく有利に低減される。
【００２９】
図３は、集積回路における、待機中に引出される電流と、ボデー・バイアス電圧Ｖｂｂとの関係を概略的に示す。待機中においては、集積回路のクロックを停止させるが、一方では集積回路が現在の状態を維持することが要求されることは公知である。これを行うためには、集積回路に、電力を供給し続けなければならない。しかし、集積回路が、絶えず小形化される回路部品により形成されるようになってきたため、それらの回路部品の静的状態における漏れ電流も重要な要因となってきた。この漏れ電流を制御するために、異なるボデー・バイアス電圧レベルを用いることは公知である。与えられた個体集積回路には、待機中に最小電流が引出されるボデー・バイアス電圧、すなわち、漏れ電流を最小化する一定のボデー・バイアス電圧が存在する。図３に示されているのは、この関係である。
【実施例２】
【００３０】
図４は、製造されパッケージされた集積回路２０を概略的に示す。この集積回路２０は、テスト・リグ２２内に挿入されている。テスト・リグ２２は、クロック発振器２４および電源２６を含む。テスト・リグ２２にはまた、テスト・ベクトル発生器２８が組込まれており、これは集積回路２０に印加されるテスト・ベクトル信号を発生する。これらのテスト・ベクトル信号は、集積回路２０の入力ピンに印加されるか、または集積回路２０のテスト走査チェーン内へ走査入力されることを認識すべきである。これらのテスト・ベクトルは、集積回路２０のクリティカル・パスが動作上のタイミング要求に適合するか否かを決定するために、それらのクリティカル・パスを刺激するように設計されている。製造テストのための、テスト・ベクトルによるクリティカル・パスの刺激は、集積回路の分野においては公知の技術であるので、本質的にはここではこれ以上説明しない。
【００３１】
集積回路２０内のクリティカル・パスの、合格／不合格の結果を決定するための適切なテスト・ベクトルによるテストは、クロック発振器２４が集積回路２０を駆動する複数の異なるクロック周波数で行われる。テスト・ベクトルは、これら異なる所要クロック周波数のそれぞれにおいて印加され、合格／不合格の結果は、複数の異なる供給レール電圧Ｖｄｄにおいて決定される。実際には、集積回路は、供給レール電圧が、図２に示されている関係するクロック周波数におけるある最小供給レール電圧Ｖｄｄminよりも高い間は、印加されたテスト・ベクトルに対するそのテストに合格する。供給レール電圧Ｖｄｄが、この最小値Ｖｄｄminよりも低く低下した時は、集積回路は、そのテスト・ベクトルに不合格となる。このようにして、関係するクロック周波数における最小所要供給レール電圧を、個体集積回路に対して決定することができる。
【００３２】
異なる集積回路は、異なる特性を有することが認められる。その理由は、それらは、製造工程における変動、例えば、実現された特有のドーピングレベル、個体集積回路を形成した時の精度、集積回路のパッケージングの特性などの変動により変化するからである。従って、比較的大きい安全性マージンを用いて集積回路のクラス全体の安全のために決定された、最小供給レール電圧に依拠せずに、関係する特定の集積回路のために、個別に最小供給レール電圧を決定すれば、その関係する集積回路のエネルギー消費および発熱の有利な低減を考慮することができる。
【００３３】
図４に示されているように、テスト・リグ２２により個体集積回路２０に対し行われるテストのシーケンスは、集積回路２０の異なる動作周波数に関連する動作供給レール電圧の集合を動作ボデー・バイアス電圧と共に決定する。供給レール電圧および／またはボデー・バイアス電圧のこれらの動作値は、時間、または環境要因のような他の要因による集積回路の動作特性の変化が小さいので、信頼性を改善するために、決定された最小値の上方に設定されるマージンは小さい。
【００３４】
個体集積回路２０に対して決定される、その所要供給レール電圧および／またはボデー・バイアス電圧に関するデータは、関係するその集積回路に関連せしめられる。図５は、このデータが集積回路に関連せしめられる２つの方法を示す。実施例ａ）においては、異なる所要クロック周波数において用いられる供給レール電圧の集合は、集積回路内のプログラム可能読取り専用メモリ内に、動作ボデー・バイアス電圧と共に記憶される。その後、これらのパラメータは、このプログラム可能読取り専用メモリから電源回路により読取られ、後に、関係する個体集積回路と共に用いられて、電源回路がその供給する電圧を、その個体集積回路に適合するよう微調整できるようにする。
【００３５】
図５の実施例ｂ）は、図４に関して決定された、関係する個体集積回路に関連する電圧データを、その集積回路のパッケージに貼付されたラベル上のバーコード内にエンコードすることにより示す。その後、このバーコードは、テスト・リグ２２内でテストされた後に、個体集積回路と共に移動し、後の製造作業中に、その集積回路と共に用いられる特定の電源回路が発生した電圧を、その個体集積回路に適合させるように、その電源回路をプログラムするために用いられるよう、自動的に読取られる。
【実施例３】
【００３６】
図６は、本技術のさらなる実施例を示す。この実施例において、プリント回路板３０は、ＣＰＵ３２と、ＲＡＭメモリ３４と、さらなる集積回路３６、３８と、電源および有限状態機械制御装置４０とを含む多重集積回路を組込んで形成されている（このタイプの配置は、システム・オン・チップ・デバイスにおいても見出される）。図示されているプリント回路板は、複数の異なる電圧領域Ａ、Ｂ、ＣおよびＤに分割されて示されている。これらの電圧領域は、電源および有限状態機械制御装置４０により、別個に制御されることができる。すなわち、ＣＰＵ３２は、その特定の時刻におけるＣＰＵ３２の所要動作クロック周波数によって変化する供給レール電圧を供給されることができる。同じ技術は、異なる電圧領域Ｃ内のＲＡＭメモリ３４に関しても用いることができる。さらなる集積回路３６、３８は、関係する集積回路が多重電圧レベルをサポートしない時は、定供給電圧の供給を受ける電圧領域を共有する。
【００３７】
電源および有限状態機械制御装置４０は、関係するプリント回路板３０に組込まれた個体ＣＰＵ３２に対する所要供給電圧の特定（ｃｈａｒａｃｔｅｒｉｓａｔｉｏｎ）を行う動作が可能である。与えられたクロック周波数および供給レール電圧において、テスト・ベクトルは、有限状態機械制御装置の制御のもとに印加され、合格／不合格の結果が決定される。最高供給レール電圧レベルから出発し、不合格な結果が最初に生じるレベルに到達するまでそれを減少させ続ける。これは、合格の結果を生じた最後の電圧である所要供給レール電圧として、最小所要供給レール電圧を決定するために用いることができる。動作供給レール電圧は、合格の結果を生じるこの最後の供給レール電圧に、ある小さいマージン、例えば、固定電圧増分または固定百分率増分など、を加えることにより決定される。
【００３８】
前述のように、供給電圧の特定は、プリント回路板３０の製造テストの一部として、一回の動作として行うことができる。あるいは、このタスクは、プリント回路板３０が最終装置内に組込まれた時の最初の起動時に、または、プリント回路板３０のテストの一部中の最初の起動時に、行うことができる。電源および有限状態機械制御装置４０は、この電圧特定を、最終装置内のプリント回路板３０のその後の起動毎に、または周期的間隔で、または後述されるような所定の環境条件の検出時に、行うこともまた可能である。
【００３９】
電源および有限状態機械制御装置４０は、上述の電圧特定技術を、プリント回路板３０内の他の電圧領域に対し適用することができる。例をあげると、ＲＡＭメモリ３４は、異なる供給電圧で異なる電力消費特性により動作することができ、電源および有限状態機械制御装置４０は、プリント回路板３０内に組込まれた個体ＲＡＭメモリ集積回路３４の動作供給電圧特性を決定するために用いることができる。さらなる集積回路３６、３８を含む領域Ｄのような他の電圧領域は、ＣＰＵ３２のクリティカル・パス、またはＲＡＭメモリ３４の記憶機能を働かせることにより行われるように、多重動作電圧をサポートすることができないか、または合格／不合格の方式でテストされることができず、従って、上述の電圧特定技術を、これらのさらなる集積回路のために用いることはできない。
【実施例４】
【００４０】
図７は、携帯電話４２の形式の最終装置を示す。この最終装置は、ＰＤＡ、ＧＰＳユニット、ＭＰ３プレーヤー、ディジタル・カメラ、などのような、携帯電話の形式を超えた、さまざまな異なる形式をとることができる。最終装置４２内には、中央処理装置４４と、電源および有限状態機械制御装置４６とが含まれている。ＣＰＵ４４の所要供給電圧の特定は、ＣＰＵ４４が最終装置４２内に組込まれた時に、電源および有限状態機械制御装置４６により、上述の技術により行うことができる。例をあげると、その特定は、装置４２の最初の起動（「ゴールデン・ブート」）の際に、前記装置のことごとくの起動の際に、１５分毎のような周期的間隔で、または、与えられた大きさの温度変化、または電池電源への復帰を必要とする幹線電源の取り外しのような、所定の環境条件の変化の検出に応答して行われる。このようにして、所要供給電圧は、個体集積回路４４および関係する環境条件に適合するように調整される。この電圧特定は、関係する動作周波数の全範囲に対し、それぞれの機会に行うことができる。あるいは、これらの動作周波数のうちの最も普通のもののみを定期的にチェックし、最も普通でないもの、または最も変化しそうもないものは、最初の起動時のみに、または定期的チェックよりも少ない頻繁さでチェックする。このようにして、周期的な供給電圧要求の特定に関連する処理オーバヘッドを、減少させるか、または関係する最も重要な値に少なくとも集中させることができる。
【実施例５】
【００４１】
図８は、本技術が適用されるシステム・オン・チップ集積回路４８を概略的に示す。この集積回路４８は、動的クロック発振器５２が発振する異なるクロック周波数で動作でき、動的電圧制御装置５４が発生する複数の異なる供給レール電圧を供給されるプロセッサ・コア５０を含む。特定用制御装置５６は、電力供給ユニット５８を制御する動的電圧制御装置５４により制御される供給電圧のシーケンスにおいて、動的クロック発振器５２が発振するクロック周波数を用い、上述のようにプロセッサ・コア５０に、異なるクロック周波数での所要供給電圧特定テストを受けさせる働きをする。もしこの電圧特定を、集積回路４８の通常動作中に行おうとすれば、所要供給電圧特定の前にシステムの状態を保存する必要があることを認識すべきである。その理由は、このテストは障害を起こさせ、またそうでなければ状態を失わせるため、「破壊的テスト」であるからである。従って、特定用制御装置５６は、メモリ制御装置６２を介して、メモリ６０内への集積回路４８の状態の記憶をトリガする。所要供給電圧特定が行われ終わった時は、集積回路４８の前の状態がメモリ６０から復元され、通常の処理が再開可能となる。システム・オン・チップ集積回路４８はまた、記憶／復元動作のために用いられるオンチップメモリと共に多重電圧領域を有する。その理由は、これが、そのような記憶／復元動作に関連するエネルギーコストを削減するからである。
【００４２】
システム・オン・チップ・システムはまた多重電力領域を含み、そのいくつか、または全ては、最低電圧を特定されることができ、多重電圧調整器が、必要な電圧を供給するために備えられる。
【００４３】
図９は、所要供給電圧特定技術を概略的に示すフローダイアグラムである。装置の最初の起動時、装置のことごとくの起動時、周期的間隔毎、環境条件の特定の変化の検出時などにおいて、特定用動作がトリガされるとき、システムは、ステップ６４において処理を開始し、そこではシステムの初期状態が保存され、特定が行われる初期クロック周波数が設定される。ステップ６６においては、テスト下のクロック周波数に対する最大供給電圧が、ルックアップ・テーブルなどから決定される。ステップ６８においては、テストされる周波数が設定され、また電圧が設定されてテスト下の集積回路に印加される。ステップ７０においては、テスト・ベクトルが、その集積回路に対して走らされる。図４および図６の実施例においては、テスト・ベクトルはテスト信号として印加されることを認識すべきである。これらのテスト・ベクトルはまた、集積回路のクリティカル・パスを働かせるための公知の、集積回路に対し実行されるコンピュータ・プログラムの、走行する所定のテストプログラム命令の形式で供給されることもできる。最終装置においては、そのようなテストソフトウェアの実行は、テスト・ベクトル信号の印加よりも便利に行われる。さらに、そのような実行は、監視動作システムにより、または適切な割込みおよび／またはリセット信号の制御のもとで、より容易に制御できる。
【００４４】
ステップ７０におけるテスト・ベクトルの実行の後に、ステップ７２は、指定されたデータ処理を適正に完了したか否か、従って合格の結果が得られたか否かを決定する。もし合格の結果が得られたとすれば、処理はステップ７３へ進み、そこでは、その周波数に対し、電圧テストの集合の範囲内で最小供給電圧が到達されたか否かについての決定が行われる。もしその集合の限界にまだ到達していなければ、ステップ７６は現在の供給電圧値を減少させ、処理はステップ６８へ復帰する。もし最小供給電圧に到達したとすれば（この最小値は、例えば、電源回路により制約されたものであるか、または設計技術者により課せられたフェール・セーフ最小値である）、次に処理はステップ７８へ進み、そこでは、適切な安全マージンが追加され、動的電圧制御装置５４がプログラムされる。次にステップ８０は、全ての所要クロック周波数がすでにテストされ終わったか否かを決定する。もしテストされるべきクロック周波数がまだ存在していれば、ステップ８２において、これらの周波数のうちの次のものが選択され、処理はステップ６６へ復帰する。もし全ての所要クロック周波数がテストされ終わっていれば、次にステップ８４が、最初にステップ６４において保存された状態を用いて、集積回路の状態を復元する。
【００４５】
もしステップ７２のテストが、テスト・ベクトルが不合格の結果を生じたことを示せば、これは、関係する個体集積回路に対する、そのクリティカル・パスのタイミングに適合する最小所要供給電圧を事実上決定し終わっていることを示し、ステップ７４は、前にテストされた供給電圧レベルを、ステップ７８によるプログラム時に、適切なマージン・パディングおよび動的電圧制御装置５４による使用を受けるべき供給電圧レベルとして選択する。
【実施例６】
【００４６】
図９は、複数の異なる動作クロック周波数において、個体集積回路に対して決定される動作供給電圧レベルを確立する技術を示していることを認識すべきである。待機中に用いられる動作ボデー・バイアス電圧レベルを決定するためにも、同様のアプローチを用いることができる。しかし、待機電圧および漏れ電流を測定し、それらに反応する装置は、分離され、かつそれ自身の電圧領域になければならない。その理由は、他の回路が待機状態にあった時に、それは動作し続けなければならないからである。ボデー・バイアス電圧の決定のためには、それぞれに対し引出された漏れ電流の測定中に、クロックが停止され、複数のボデー・バイアス電圧が利用される。ボデー・バイアス電圧の範囲がテストされ終わると、最小漏れ電流を生じたそれが決定され、これから、適切なマージンを追加することにより適切な動作ボデー・バイアス電圧が決定されるなどのことが行われる。
【００４７】
個体集積回路の供給電圧特定のための上述の技術は、本技術の用い方のいくつかの例に過ぎないことを認識すべきである。個体集積回路の動作電圧特定を行うためには、さらなる技術を利用することもできる。最良のエネルギー消費特性を有する電圧の選択を可能にするための集積回路の電圧特定、および／または、特定の集積回路において改善されたエネルギー消費を与えるための集積回路の使用の調整は、上述の一般的技術に従いさまざまな方法で実現することができ、極めて有利である。
【００４８】
ここでは、添付図面を参照しつつ本発明の説明用の実施例を詳細に説明したが、本発明はそれらの正確な実施例に限定されるものではないこと、また、当業者は添付の特許請求の範囲により定められる本発明の範囲および精神から逸脱することなく、それらに対しさまざまな変更および改変を行うことができることを理解すべきである。
【図面の簡単な説明】
【００４９】
【図１】プロセッサ・コア（ＣＰＵ）の形式の集積回路を概略的に示す。
【図２】最小所要供給レール電圧と、集積回路の動作クロック周波数との関係を概略的に示すグラフである。
【図３】集積回路における待機中の電流引出しと、ボデー・バイアス電圧との関係を概略的に示すグラフである。
【図４】集積回路の製造時における、テスト・リグ内の集積回路の特性を決定する実施例を概略的に示す。
【図５】個体集積回路に関連する、個体集積回路の動作電圧特性を記憶するための２つの可能性を概略的に示す。
【図６】以上の特徴を有する集積回路が挿入されており、また多重電圧領域が供給されるプリント回路板を概略的に示す。
【図７】使用中に動作電圧特性の決定を受ける集積回路を組込んだ、携帯電話の形式の最終装置を概略的に示す。
【図８】システム・オン・チップ集積回路内のプロセッサ・コアの動作電圧特定用回路を組込んだ、そのシステム・オン・チップ集積回路を概略的に示す。
【図９】集積回路の動作電圧特性を決定するプロセスを概略的に示すフローダイアグラムである。
【符号の説明】
【００５０】
２  集積回路（プロセッサ・コア）
１８  電源
２０  集積回路
２６  電源
３２  ＣＰＵ
４２  最終装置（携帯電話）
４４  ＣＰＵ
４８  システム・オン・チップ集積回路
Ｖｄｄ  供給レール電圧
Ｖｂｂ  ボデー・バイアス電圧
Ｖｄｄmin  最小供給レール電圧
【図１】
2005149476.tif 000003
【図２】
2005149476.tif 000004
【図３】
2005149476.tif 000005
【図４】
2005149476.tif 000006
【図５】
2005149476.tif 000007
【図６】
2005149476.tif 000008
【図７】
2005149476.tif 000009
【図８】
2005149476.tif 000010
【図９】
2005149476.tif 000011