説明

半導体装置及びその動作電源電圧制御方法

【課題】半導体装置及びその動作電源電圧制御方法を提供する。
【解決手段】動作電圧を可変とする複数の処理ユニットと、これら処理ユニットを制御するコントローラを有するLSIと、LSIからの処理ユニット毎に対応した電源供給の要求に応じて電源電圧を処理ユニットに供給する電源制御ユニットと、処理ユニット毎に電源制御ユニットに指示する電源電圧指示値を保持する書き換え可能な不揮発メモリと、を備え、コントローラは、処理ユニット毎に不揮発メモリに保持された電源電圧指示値を取得し、取得した電源電圧指示値を電源制御ユニットに転送する半導体装置。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、半導体装置及びその動作電源電圧制御方法に関する。
【背景技術】
【0002】
一般的に、LSIの電源電圧値は、一律の動作電圧(例えば、最小電圧、最大電圧、標準電圧等)を規定するか、製造プロセスのばらつきによって異なるシリコンチップ毎の最適な電圧値をVoltage ID(VID)として規定している。VIDには、信頼性の経時劣化分がマージンとして初期値に上乗せされており、動的に動作下限電圧を適応することによって最適値を与えている。
【0003】
また、LSIの製造時に、複数の動作条件に対応させた周波数毎に電圧値を決定するプロセスは、LSI評価時は極めて重い作業であり、評価に要する時間やコストの制約によって動作条件の種類を増やすことが難しい。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−194134号公報
【特許文献2】特開2008−305131号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明が解決しようとする課題は、半導体装置の処理動作時に最適な電源電圧を付与することができる半導体装置及びその動作電源電圧制御方法を提供することにある。
【課題を解決するための手段】
【0006】
実施形態の半導体装置は、動作電圧を可変とする複数の処理ユニットと、これら処理ユニットを制御するコントローラを有するLSIと、前記LSIからの前記処理ユニット毎に対応した電源供給の要求に応じて電源電圧を前記処理ユニットに供給する電源制御ユニットと、前記処理ユニット毎に前記電源制御ユニットに指示する電源電圧指示値を保持する書き換え可能な不揮発メモリと、を備え、前記コントローラは、前記処理ユニット毎に前記不揮発メモリに保持された電源電圧指示値を取得し、取得した電源電圧指示値を前記電源制御ユニットに転送する。
【図面の簡単な説明】
【0007】
【図1】本実施形態に係る半導体装置の構成を示す図である。
【図2】処理ユニットにおける最下限電圧指示値の探索の流れを示すフローチャートである。
【図3】電源制御ユニット指示値のデータベースを再構築する処理の流れを示すフローチャートである。
【図4】電源制御ユニット指示値テーブルの設定・更新の流れを示すフローチャートである。
【図5】電源制御ユニット指示値テーブルの一例である。
【図6】処理ユニットの動作条件のパターン例を示す図である。
【発明を実施するための形態】
【0008】
以下、本発明の一実施の形態について、図面を参照して説明する。尚、各図において同一箇所については同一の符号を付すとともに、重複した説明は省略する。
【0009】
図1は、本実施形態に係る半導体装置の構成を示す図である。本実施形態に係る半導体装置100は、LSI10と、電源制御ユニット20と、不揮発メモリ30で構成されている。LSI10は、複数の処理ユニット11と、コントローラ12を有している。不揮発メモリ30は、電源制御ユニット指示値データベース(テーブル)31と、動作判定プログラム32を格納している。不揮発メモリ30としては、例えばNAND型フラッシュメモリが好適である。
【0010】
各処理ユニット11は、半導体装置100を搭載したセット製品にインストールされるアプリケーションを分担して実行するものである。アプリケーションには、処理ユニット11が実行する際の負荷が低負荷のものもあれば、高負荷のものもあり、一律ではない。低負荷のものは、低周波数で作動電圧が制御され、高負荷のものは高周波数で作動電圧が制御される。LSI10の評価時に、周波数毎の最適な電源電圧値を決定するプロセスは、作業量も多く、対応できる周波数にも限りがある。本実施形態において、各処理ユニット11の動作する電源電圧値は一定値ではなく、正常な動作を行う範囲内において可変となっている。
【0011】
各処理ユニット11では、アプリケーションの他に、後述する動作判定プログラムを実行する。各処理ユニット11での該プログラムによる判定結果は、コントローラ12に送られる。
【0012】
コントローラ12は、各処理ユニット11と不揮発メモリ30を以下のように制御する。コントローラ12は、LSI10の起動時には、不揮発メモリ30に保持されている電源制御ユニット指示値データベース(テーブル)31から指示値(後述する)を各処理ユニット11毎に設定する。また、コントローラ12は、不揮発メモリ30から動作判定プログラム32をロードする。この動作判定プログラム32は、動作可能な最下限の指示値を各処理ユニット11毎に設定した場合、各処理ユニット11が、問題なく動作するか否かを判定するものである。動作可能な最下限の指示値は、電源電圧の最適化の観点から、いわゆるマージンを過大には含まないものである。
【0013】
ここで、動作可能な最下限の指示値であるかどうかの判定は、例えば、次のように行うことができる。まず、コントローラ12が主体となって、電源制御ユニット20に電圧指示値を、処理ユニット11に動作判定プログラム32の実行を命令する。動作判定プログラム32の実行結果が所望の期待値と一致すれば正常動作として、さらに低い電圧指示値を設定して判定プログラムの実行を命令する。これを続けて、期待値と一致しないとき、その時の電圧指示値は使えないことになり、直前の正常動作のときの電圧指示値が最下限指示値と判定することができる。
【0014】
図2は、処理ユニット11における最下限電圧指示値の探索の流れを示すフローチャートである。まず、コントローラ12が処理ユニット11に動作判定プログラム32をロードするように指示する(ステップS201)。次に、コントローラ12が電源制御ユニット20に不揮発メモリ30に保存された電圧指示値を処理ユニット11に供給するよう指示する(ステップS202)。次いで、コントローラ12が処理ユニット11に動作判定プログラム32の実行を指示する(ステップS203)。
【0015】
処理ユニット11が動作判定プログラム32を実行後、所定時間経過を待つ(ステップS204)。次に、処理ユニット11が動作判定プログラム32の実行を終了したか否かを判定する(ステップS205)。動作判定プログラム32の実行が終了していれば(ステップS205でYes)、処理ユニット11の演算結果は期待値と一致するか否かを判定する(ステップS206)。期待値と一致すれば、コントローラ12が電源制御ユニット20に電圧指示値を所定の単位分下げて処理ユニット11に供給するよう指示する(ステップS207)。そして、ステップS203以降の処理を繰り返す。
【0016】
ステップS205で、動作判定プログラム32の実行が終了しなければ(ステップS205でNo)、処理ユニット11が正常状態でないため最下限の指示値を下回ったことになり、直前の正常状態のときにステップS207で供給した電圧指示値を、不揮発メモリ30に保存する(ステップS208)。また、ステップS206で、処理ユニット11の演算結果が期待値と一致しない場合(ステップS206でNo)も、ステップS208の処理を行う。
【0017】
尚、動作可能な最下限の指示値の判定手法は、これに限らない。
【0018】
コントローラ12は、各処理ユニット11からアプリケーションを実行した場合の動作判定プログラム32の実行結果を受け取り、当該指示値で正常動作するか否かの判定を行う。例えば、演算後に期待値比較を行うプログラムを実行させ、期待値と一致すれば正常動作、期待値と一致しない場合や所定のルーチンに戻らない場合に、正常動作でないと判定することができる。
【0019】
ある処理ユニット11において実際にアプリケーションを実行し、正常動作でないとの判定の場合には、当該処理ユニット11に対して設定する最下限電圧指示値のデータは低すぎることになるので、後述する電源制御ユニット指示値のテーブル31の値を書き換える処理がなされる。
【0020】
電源制御ユニット20は、LSI10から各処理ユニット11毎に所定の電源供給の要求を受けて、LSI10の各部に電源電圧を供給する。以下に、電源電圧の供給の流れを詳述する。コントローラ12がLSI10の各処理ユニット11の識別情報を読み出すとともに、電源制御ユニット指示値データベース(テーブル)31の参照を要求する。コントローラ12は、処理ユニット11の識別情報をキーとして電源制御ユニット指示値データベース(テーブル)31から指示値を取得する。コントローラ12は、電源制御ユニット20に指示値を転送する。電源制御ユニット20は、指示値に基づいて電源電圧を各処理ユニット11に供給する。ここで、指示値に基づく電源電圧について説明する。一般的なVID対応の電源制御ユニットでは、指示値に対応する電圧値が定義される。しかし、電源公差があるため、安価なものでは10mVほど誤差がある場合もある。そのため、期待する電圧値より低い電圧(規定される電源公差分)が出てくることを前提に、上乗せして初期値を設定するのが好適である。そこで、動作判定で正常動作となったときの電源指示値で保存しておけば、電源公差に影響されることなく正常動作する絶対値として規定する。なお、ここでは電源制御ユニット20は、LSI10に対して外付けとなっている。
【0021】
不揮発メモリ30に格納される動作判定プログラム32は、書き換え可能となっている。動作判定プログラム32の書き換えについては後述する。
【0022】
尚、不揮発メモリ30は、LSI10の外部に設ける構成に限られることはなく、LSI10に内蔵させてもよい。
【0023】
電源制御ユニット指示値は、電源制御ユニット20からLSI10に供給する電圧値[V]ではなく、LSI10と電源制御ユニット20を合わせたものに対する指示値である。本実施形態においては、電源電圧の規定は電圧値[V]ではなく、電源制御ユニット20が識別できる電源制御ユニット指示値で表す。この電源制御ユニット指示値は、プロセッサ内部のコントローラから設定されるもので、例えば、8bit〜10bitで表され、各値毎に対応する電圧値が規定される。電源制御ユニット指示値は、各サンプルの製造時に、LSIテスタにてシリコンの特性を測定し、それに対応付けた動作電圧値として、フューズに焼き込む。シリコンの特性と動作電圧値の対応付けは、設計時のシミュレーションや評価、顧客が使う電源を考慮して決定されるが、その全てに誤差が含まれるため、結果として過大なマージンが上乗せされて電源制御ユニット指示値となる。
【0024】
LSI10側に対して電圧値[V]で規定し、電源制御ユニット20に対しても電圧値[V]で設定すると、LSI10を評価するLSIテスタには公差が存在し、システムとして組み上げた製品における電源制御ユニット20にも公差が存在する。このように、所定の電圧値[V]自体に不確定要素を取り除くことが出来ないため、LSI10単体で動作電圧を規定しない。
【0025】
本実施形態では、電源制御ユニット指示値は、図1において、電源制御ユニット指示値データベース(テーブル)31に保持している。
【0026】
電源制御ユニット指示値は、例えば、16進数のレジスタ値として表す。電源制御ユニット指示値は、データベースとして不揮発メモリ30に保持される。不揮発メモリ30に格納される電源制御ユニット指示値のテーブル31は書き換え可能となっている。一旦、電源制御ユニット指示値のテーブル31を構築しても、長年の使用により、経年劣化し、初期に設定したテーブル値では正常動作しないことがある。そのような場合には、経年劣化への対応として、電源制御ユニット指示値データベース(テーブル)31の再構築を行う。
【0027】
図3は、電源制御ユニット指示値のデータベースを構築後の定期的な経年劣化への対応として、再構築処理の流れを示すフローチャートである。まず、コントローラ12が処理ユニット11に動作判定プログラム32をロードするように指示する(ステップS301)。次に、コントローラ12が電源制御ユニット20に不揮発メモリ30に保存された電圧指示値を処理ユニット11に供給するよう指示する(ステップS302)。次いで、コントローラ12が処理ユニット11に動作判定プログラム32の実行を指示する(ステップS303)。
【0028】
処理ユニット11が動作判定プログラム32を実行後、所定時間経過を待つ(ステップS304)。次に、処理ユニット11が動作判定プログラム32の実行を終了したか否かを判定する(ステップS305)。動作判定プログラム32の実行が終了していれば(ステップS305でYes)、処理ユニット11の演算結果は期待値と一致するか否かを判定する(ステップS306)。期待値と一致すれば、直前の正常状態のときにステップS308で供給した電圧指示値を、不揮発メモリに保存する(ステップS307)。
【0029】
ステップS305で、動作判定プログラム32の実行が終了しなければ(ステップS305でNo)、処理ユニット11が、正常状態でないため最下限の指示値を下回ったことになり、コントローラ12が電源制御ユニット20に電圧指示値を所定の単位分下げて処理ユニット11に供給するよう指示する(ステップS308)。
【0030】
また、ステップS306で、処理ユニット11の演算結果が期待値と一致しない場合(ステップS306でNo)も、ステップS308の処理を行う。そして、ステップS303以降の処理を繰り返す。
【0031】
本実施形態によれば、実際にアプリケーションを実行可能な最下限の電源電圧を電圧値[V]ではなく電源制御ユニット20への電源制御ユニット指示値を保存することで、電源制御ユニット20とLSI10それぞれが持つ電圧公差を隠蔽することができる。また、電源制御ユニット指示値を書き換え可能とすることにより信頼性経時劣化分を予めマージンとして持たせる必要がなく、常に最適な電源制御ユニット指示値を得ることができる。
【0032】
(第2の実施形態)
次に、第2の実施形態について説明する。第2の実施形態では、半導体装置100を組み込んだセット製品にアプリケーションがインストールされ、実行された以降においても、動作電源電圧を最適化するものである。
【0033】
図4は、電源制御ユニット指示値テーブル31の設定・更新の流れを示すフローチャートである。セット製品の組み立てが完了(ステップS401)すると、セット製品の検査が行われる(ステップS402)。セット製品の検査時には、まず、電源制御ユニット指示値テーブル31を初期化する(ステップS403)。電圧指示値の初期値は、例えば、予めセット製品の量産設計時に設定した指示値である。
【0034】
次いで、セット製品が動作可能な最下限の指示値となっているか否かの判定を行う(ステップS404)。当初の指示値に基づいて、動作判定プログラム32を実行する。ここでの動作判定は、第1の実施形態における動作判定処理と基本的に同じでよい。
【0035】
当初の指示値では、正常動作しないとの判定であれば(ステップS405でNO)、その指示値を所定単位分上げる(ステップS406)。次いで、上げた指示値で動作判定プログラム32を実行する。ここで、指示値の上げ方は、電源制御ユニット製品の設定単位に依存するので、例えば、10mV単位や、1mV単位で上げていく。
【0036】
当初の指示値で正常動作する、あるいは上げた指示値で正常動作するとの判定の場合(ステップS405でYES)、電源制御ユニット指示値テーブル31を上げた指示値に更新する(ステップS407)。そして、セット製品が動作可能な最下限の指示値を更新する(ステップS404)。これによりLSIテスタの電圧ばらつき、セット製品の電源制御ユニット公差の不確定値マージンをなくすことができる。
【0037】
例えば、絶対値1.000Vが必要なサンプルがあった場合、LSIテスタは0.995Vで動作したと判定しても、実際は1.000Vを印加していた可能性がある。その場合、VID=0.995Vとして客先セットに実装され、丁度0.995Vを印加されると動作しないことになる。そのため、LSIテスタでの設定・測定誤差を上乗せしてVIDを設定する必要がある。また、LSIテスタの誤差がmax0.005Vであった場合、VID=1.005Vとして客先セットに実装され、今度は客先セットの電源公差によってVID=1.005Vを設定しても0.995Vを印加されると動作しない。客先セットの電源公差がmax0.010Vであった場合、VID=1.005Vのときに1.015Vを設定すれば良いことになる。この場合、最高品ではない通常のサンプルでは実力1.000Vに対して1.015Vと、0.015V余分なマージンを常に持たされ、余計な電力消費となる。
【0038】
本実施形態において、動作判定プログラムと電源制御ユニット指示値の保存を利用した場合、まずはLSIテスタでの設定あるいは測定は無しとする。電源公差がmax0.010Vの客先セットに実装された場合、1.000Vの設定値のときに0.990Vが印加されても、動作しない。しかし、設定値を上げて(10mV単位であった場合)1.010Vの設定値にして1.000Vが印加されれば、動作する。本実施形態では、このときの電源制御ユニット指示値を保存しておくので、実力1.000V、実際の印加も1.000Vとなり、不確定値マージンをなくすことができるのである。
【0039】
尚、電源制御ユニット指示値テーブル31の値は、動作可能な最下限の指示値に一定のマージン値を上乗せした値でもよい。動作可能な最下限の指示値は、上述した図2に示すフローで決定することができる。また、マージン値とは、次のように考えることができる。上述した実力1.000Vのサンプルを例にとって、説明する。客先セットの出荷後、実力1.000Vで実際の印加が1.000Vであった場合、経年劣化で実力1.001Vとなったときには、動作しなくなる。これに備えて、電源制御ユニット指示値の更新タイミング間に劣化すると予想される電圧分は、最低でもマージンとして見積もっておく必要がある。この例で言えば、実力1.001Vとして見ておけばよいことになる。
【0040】
このように、動作可能な最下限の指示値に、LSIやセット機器の電源回路における一定の電圧低下マージンを加えた分を標準時の指示値とする。
【0041】
指示値に全くマージンを持たせないことも可能である。しかし、更新タイミング間に徐々に劣化することで、ある日まで動作していたが翌日には動作するか微妙な電圧差は、最低限マージンとしてもたせることが望ましい。
【0042】
次に、セット製品の市場への出荷(ステップS408)後、アプリケーションがインストールされユーザによる使用が開始された後(ステップS409)にも、電源制御ユニット指示値を評価する。
【0043】
具体的には、ユーザによる使用が開始されてから一定のタイミング毎、もしくは特定のイベント発生時(ステップS410)に、動作可能な最下限の指示値となっているかの判定を行う(ステップS411)。尚、動作可能な最下限の指示値の判定は、上述のS405からS407の通りである。
【0044】
ユーザによる使用後の信頼性経時劣化による電圧の上昇によって、動作可能な最下限の指示値では作動しないとの判定となった場合には、電源制御ユニット指示値テーブル31に保持している動作可能な最下限の指示値を更新する。一定のタイミング毎とは、例えば、24時間経過毎であり、特定のイベント発生時とは、例えば、複雑で重い負荷のアプリケーションが出現した場合である。
【0045】
電源制御ユニット指示値テーブル31の更新処理の管理のタイミング・イベント処理は、例えば組み込みシステムのOS(Operating System)で行い、処理ユニット11を解放後にコントローラ12からの制御に移り、組み込みシステムのOSに復帰するのが好適である。OSは、特定のアプリケーションが作動するためにリソースを割り振る役割を司っている。
【0046】
同様に、動作判定プログラム32の更新処理・管理も組み込みシステムのOSで行う。動作判定プログラム32は、LSI10設計時と評価時の結果から、最もトランジスタの電圧マージンが少なく、高い電源電圧を要求するものとなっている。動作判定プログラム32を実行することによって、LSI10毎にどれだけ低い電圧で動かせるかの限界電圧が求められる。限界電圧は経年劣化で徐々に悪化するので、セット製品のアプリケーションが許容するタイミングで実行して更新する。
【0047】
動作判定プログラム32自体を更新できるようにするのは、最もトランジスタの電圧マージンが少なくなるポイントを設計段階や評価段階では発見できないことがあるからである。従前の動作判定プログラム32で電圧指示値を決定し、新たにユーザやサードパーティーが作成したアプリケーションがより悪いマージンのポイントを通ったときにシステム不具合が発生する。
【0048】
LSIの市場出荷後にも動作判定プログラムを更新できるようにすることで、例えばプラットフォームベンダが認証を行うときに、複雑で重い負荷のアプリケーションを発見でき、そのアプリケーションを実行する前に動作判定プログラムの更新を強制することが好適である。動作判定プログラムの更新は、例えば、ユーザがセット製品を使用していない夜中や、電源オフの直前のタイミングで行う。更新する内容は電圧指示値で、定期的に動作判定プログラムを実行して、電圧指示値がゆっくり上昇していく方向になる。
【0049】
LSI10やセット機器の設計時あるいは評価時の想定を超えるようなアプリケーションが発見された場合、組み込みシステムのOSからファームウェアアップデートを行うことで市場出荷後に電源制御ユニット指示値の更新を行う。
【0050】
電源制御ユニット指示値テーブル31の更新処理がセット製品の負担にならないよう、例えば、常時ONのセット製品であれば夜間に更新処理を実行し、ON/OFFするセット製品であれば、OFFの直前に更新処理を実行させるのが好適である。
【0051】
図4に示すフローチャートでは、ステップS405〜ステップS407の処理を詳細に説明したが、ステップS411以降に、ステップS405〜ステップS407と同様の処理を実行することもできる。
【0052】
第2の実施形態によれば、実際に処理ユニット11でアプリケーションを実行することにより、精度の高い本来の最適値を求められるだけでなく、設計時等の想定を超えるようなアプリケーションが発見されたときにも対応することができる。また、量産時に対応できない多量の動作条件毎の電圧指示値を持たせることができる。
【0053】
(第3の実施形態)
次に、第3の実施形態について説明する。図5は、不揮発メモリ30内に設けられる電源制御ユニット指示値テーブル31の一例である。電源制御ユニット指示値テーブル31の指示値は、コントローラ12から読み書きが可能となっている。
【0054】
図5に示すように、動作可能電圧を可変とする処理ユニット11毎に、電源制御ユニット指示値テーブル31が用意されている。例えば、電源制御ユニット指示値テーブル31には、処理ユニット11が対応する動作周波数と、処理ユニット11の動作条件毎に、電源制御ユニット指示値が関連付けられている。
【0055】
図6は、処理ユニット11の動作条件のパターン例を示す図である。例えば、動作条件Aは、処理ユニット11の持つ機能ブロックA、機能ブロックB、機能ブロックCがいずれもONの場合である。動作条件Bは、処理ユニット11の持つ機能ブロックAがON、機能ブロックBもON、機能ブロックCがOFFの場合である。同様に、動作条件Cは、処理ユニット11の持つ機能ブロックAのみがON、機能ブロックB及び機能ブロックCがOFFの場合である。当然のことながら、多くの機能ブロックがONの場合には、高めの電源制御ユニット指示値が必要であり、一部の機能ブロックのみがONの場合には、低めの電源制御ユニット指示値で十分となる。
【0056】
このように、各処理ユニット11において特定の機能ブロックのON/OFFを制限する動作条件を定義し、それぞれの動作条件に対応する動作判定プログラム32を用意することで、動作条件毎に最適な電源制御ユニット指示値を用意することができる。
【0057】
尚、セット機器の周辺温度が著しく変動した場合にも、最適な電源制御ユニット指示値に対応させるのが好適である。すなわち、セット機器の周辺温度が著しく変動した場合の最低動作指示値の差分を評価時に求めておき、コントローラ12が電源制御ユニット指示値テーブル31から参照した後に温度変化分を補償する。
【0058】
上述したように、電源制御ユニット指示値テーブル31を更新するときは、各動作条件・周波数毎に動作判定プログラム32を実行し、コントローラ12から書き換える。
【0059】
第3の実施形態によれば、処理ユニット11から得られるアウトプットに適した動作条件を複数用意することにより、想定される最悪の負荷に対応できる電圧を常に印加する必要がなく、動作条件毎に最適な電圧指示値を持ち、動作条件によってはより低消費電力にすることができる。
【0060】
以上説明したように、本実施形態によれば、半導体装置の製造時の電圧バラツキあるいは信頼性の経時劣化分を予め過大なマージンとして持たせる必要がなく、半導体装置毎に常に最適な動作電圧を設定することができる。
【0061】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0062】
100・・・半導体装置、
10・・・LSI、
20・・・電源制御ユニット、
30・・・不揮発メモリ。

【特許請求の範囲】
【請求項1】
動作電圧を可変とする複数の処理ユニットと、これら処理ユニットを制御するコントローラを有するLSIと、
前記LSIからの前記処理ユニット毎に対応した電源供給の要求に応じて電源電圧を前記処理ユニットに供給する電源制御ユニットと、
前記処理ユニット毎に前記電源制御ユニットに指示する電源電圧指示値を保持する書き換え可能な不揮発メモリと、を備え、
前記コントローラは、前記処理ユニット毎に前記不揮発メモリに保持された電源電圧指示値を取得し、取得した電源電圧指示値を前記電源制御ユニットに転送する半導体装置。
【請求項2】
所定の電源電圧指示値が、実際に前記処理ユニットでアプリケーションを実行可能な最下限の電源電圧指示値か否かを判定する動作判定プログラムを、前記不揮発メモリに保持する請求項1記載の半導体装置。
【請求項3】
前記処理ユニットは、前記動作判定プログラムを実行し、予め設定された電源電圧指示値では、正常に動作しないと判定されれば当該電源電圧指示値を上げ、正常に動作すると判定されるまで繰り返し、電源制御ユニット指示値テーブルを正常に動作すると判定されたときの電源電圧指示値に更新する請求項2記載の半導体装置。
【請求項4】
前記処理ユニットが対応する動作周波数と前記処理ユニットの動作条件毎に、前記電源制御ユニット指示値テーブル内の電源電圧指示値が関連付けられている請求項1記載の半導体装置。
【請求項5】
前記処理ユニットにおいて前記処理ユニットの有する特定の機能ブロックのON/OFFを制限する動作条件を定義し、それぞれの動作条件に対応する動作判定プログラムを備えた請求項1記載の半導体装置。
【請求項6】
動作電圧を可変とする複数の処理ユニットと、これら処理ユニットを制御するコントローラを有するLSIと、前記LSIからの前記処理ユニット毎に対応した電源供給の要求に応じて電源電圧を前記処理ユニットに供給する電源制御ユニットと、前記処理ユニット毎に前記電源制御ユニットに指示する電源電圧指示値を保存する書き換え可能な不揮発メモリと、を備える半導体装置の動作電源電圧制御方法であって、
前記コントローラは、前記処理ユニットの識別情報を読み出すとともに、前記電源電圧指示値が保持されたテーブルの参照を要求し、
前記コントローラは、前記処理ユニットの識別情報をキーとして前記テーブルから前記電源電圧指示値を取得し、
前記コントローラは、前記電源制御ユニットに前記電源電圧指示値を転送し、
前記電源制御ユニットは、前記電源電圧指示値に基づいて電源電圧を前記処理ユニットに供給する、
半導体装置の動作電源電圧制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−70145(P2013−70145A)
【公開日】平成25年4月18日(2013.4.18)
【国際特許分類】
【出願番号】特願2011−205888(P2011−205888)
【出願日】平成23年9月21日(2011.9.21)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】