(57)【要約】【課題】外部からの割り込み信号の発生タイミングによって待機時間が変動する場合でも、効果的に消費電力を低減させることが可能な半導体装置、半導体システム、及び、半導体装置の制御方法を提供すること。【解決手段】一実施の形態によれば、半導体装置は、割り込み信号の発生タイミングによって変動する制御対象装置１５の待機時間の計測値ｚと、待機時間の期待値μと、に基づいて、新たな待機時間の期待値μ’を算出する演算回路２０と、制御対象装置１５の待機時における待機状態を新たな待機時間の期待値μ’に応じた待機状態に設定する待機モード制御回路１２と、を備える。【選択図】図１
2017111745.tif 000002
【特許請求の範囲】
【請求項１】
割り込み信号の発生タイミングによって変動する制御対象装置の待機時間の計測値と、前記待機時間の期待値と、に基づいて、新たな前記待機時間の期待値を算出する演算部と、
前記制御対象装置の待機時における待機状態を当該新たな待機時間の期待値に応じた待機状態に設定する待機モード制御回路と、
を備えた半導体装置。
【請求項２】
前記演算部は、前記待機時間の計測値と、前記待機時間の期待値と、をベイズ統計の式に代入することにより、前記新たな待機時間の期待値を算出する、
請求項１に記載の半導体装置。
【請求項３】
前記演算部は、前記待機時間の計測値と、前記待機時間の期待値と、をガンマ分布型のベイズ統計の式に代入することにより、前記新たな待機時間の期待値を算出する、
請求項２に記載の半導体装置。
【請求項４】
前記演算部により算出された前記新たな待機時間の期待値と、所定の前記待機時間の期待値と、のうち何れかを選択して出力する第１セレクタをさらに備え、
前記待機モード制御回路は、前記制御対象装置の待機時における待機状態を前記第１セレクタから出力される期待値に応じた待機状態に設定する、
請求項１に記載の半導体装置。
【請求項５】
前記演算部は、
第１種類の前記割り込み信号の発生タイミングによって変動する前記制御対象装置の前記待機時間である第１待機時間の計測値と、前記第１待機時間の期待値と、に基づいて、新たな前記第１待機時間の期待値を算出する第１演算回路と、
第２種類の前記割り込み信号の発生タイミングによって変動する前記制御対象装置の前記待機時間である第２待機時間の計測値と、前記第２待機時間の期待値と、に基づいて、新たな前記第２待機時間の期待値を算出する第２演算回路と、を有し、
前記第１演算回路により算出された前記新たな第１待機時間の期待値と、前記第２演算回路により算出された前記新たな第２待機時間の期待値と、のうち何れかを選択して出力する第２セレクタをさらに備え、
前記待機モード制御回路は、前記制御対象装置の待機時における待機状態を前記第２セレクタから出力される期待値に応じた待機状態に設定する、
請求項１に記載の半導体装置。
【請求項６】
前記第１演算回路は、前記第１待機時間の計測値と、前記第１待機時間の期待値と、をベイズ統計の式に代入することにより、前記新たな第１待機時間の期待値を算出し、
前記第２演算回路は、前記第２待機時間の計測値と、前記第２待機時間の期待値と、をベイズ統計の式に代入することにより、前記新たな第２待機時間の期待値を算出する、
請求項５に記載の半導体装置。
【請求項７】
前記第１演算回路は、前記第１待機時間の計測値と、前記第１待機時間の期待値と、をガンマ分布型のベイズ統計の式に代入することにより、前記新たな第１待機時間の期待値を算出し、
前記第２演算回路は、前記第２待機時間の計測値と、前記第２待機時間の期待値と、をガンマ分布型のベイズ統計の式に代入することにより、前記新たな第２待機時間の期待値を算出する、請求項６に記載の半導体装置。
【請求項８】
前記第２セレクタは、前記第１演算回路により算出された前記新たな第１待機時間の期待値と、前記第２演算回路により算出された前記新たな第２待機時間の期待値と、のうち最小値を示す期待値を選択して出力する、
請求項５に記載の半導体装置。
【請求項９】
請求項１に記載の半導体装置と、
前記制御対象装置と、を備えた半導体システム。
【請求項１０】
マイクロコンピュータである、請求項９に記載の半導体システム。
【請求項１１】
割り込み信号の発生タイミングによって変動する制御対象装置の待機時間を計測し、
前記待機時間の計測値と、前記待機時間の期待値と、に基づいて、新たな前記待機時間の期待値を算出し、
前記制御対象装置の待機時における待機状態を当該新たな待機時間の期待値に応じた待機状態に設定する、
半導体装置の制御方法。
【請求項１２】
前記新たな待機時間の期待値を算出するステップでは、
前記待機時間の計測値と、前記待機時間の期待値と、をベイズ統計の式に代入することにより、前記新たな待機時間の期待値を算出する、
請求項１１に記載の半導体装置の制御方法。
【請求項１３】
前記新たな待機時間の期待値を算出するステップでは、
前記待機時間の計測値と、前記待機時間の期待値と、をガンマ分布型のベイズ統計の式に代入することにより、前記新たな待機時間の期待値を算出する、
請求項１２に記載の半導体装置の制御方法。
【請求項１４】
前記待機時間の計測値と、前記待機時間の期待値と、に基づいて、新たな前記待機時間の期待値を算出し、
前記新たな待機時間の期待値と、所定の待機時間の期待値と、のうち何れかを選択して出力し、
前記制御対象装置の待機時における待機状態を、選択された何れかの期待値に応じた待機状態に設定する、
請求項１１に記載の半導体装置の制御方法。
【請求項１５】
前記新たな待機時間の期待値を算出するステップでは、
第１種類の前記割り込み信号の発生タイミングによって変動する前記制御対象装置の待機時間である第１待機時間の計測値と、前記第１待機時間の期待値と、に基づいて、新たな前記第１待機時間の期待値を算出し、
第２種類の前記割り込み信号の発生タイミングによって変動する前記制御対象装置の待機時間である第２待機時間の計測値と、前記第２待機時間の期待値と、に基づいて、新たな前記第２待機時間の期待値を算出し、
前記制御対象装置の待機時における待機状態を設定するステップでは、
前記制御対象装置の待機時における待機状態を、前記新たな第１待機時間の期待値及び前記新たな第２待機時間の期待値のうち選択された何れかの期待値に応じた待機状態に設定する、
請求項１１に記載の半導体装置の制御方法。
【請求項１６】
前記制御対象装置の待機時における待機状態を設定するステップでは、
前記制御対象装置の待機時における待機状態を、前記新たな第１待機時間の期待値及び前記新たな第２待機時間の期待値のうち最小値を示す期待値に応じた待機状態に設定する、
請求項１５に記載の半導体装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置、半導体システム、及び、待機モード制御方法に関し、例えば効果的に消費電力を低減させることが可能な半導体装置、半導体システム、及び、半導体装置の制御方法に関する。
【背景技術】
【０００２】
近年、マイクロコンピュータ等は、プログラムを実行していないときには、モードを通常動作モードから待機モード（スタンバイモード）に遷移させて、クロック信号の供給や電源電圧の供給を制限することにより、消費電力の増大を抑制している。
【０００３】
例えば、特許文献１には、第１のスタンバイモードと、スタートアップ時間がより短くかつ消費電力がより多い第２のスタンバイモードと、を持つ装置を動作させるための方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５６６７２９４号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の方法では、外部から入力される割り込み信号によって待機モードが解除される場合のように、待機時の待機時間が予め決まっていない場合には、総消費エネルギーが最小となる種類の待機モードを適切に選択することが困難である。そのため、特許文献１の方法では、効果的に消費電力を低減させることが困難である。その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００６】
一実施の形態によれば、半導体装置は、割り込み信号の発生タイミングによって変動する制御対象装置の待機時間の計測値と、前記待機時間の期待値と、に基づいて、新たな前記待機時間の期待値を算出する演算部と、前記制御対象装置の待機時における待機状態を当該新たな待機時間の期待値に応じた待機状態に設定する待機モード制御回路と、を備える。
【０００７】
また、一実施の形態依れば、半導体装置の制御方法は、割り込み信号の発生タイミングによって変動する制御対象装置の待機時間を計測し、前記待機時間の計測値と、前記待機時間の期待値と、に基づいて、新たな前記待機時間の期待値を算出し、前記制御対象装置の待機時における待機状態を当該新たな待機時間の期待値に応じた待機状態に設定する。
【発明の効果】
【０００８】
前記一実施の形態によれば、外部からの割り込み信号の発生タイミングによって待機時間が変動する場合でも、効果的に消費電力を低減させることが可能な半導体装置、半導体システム、及び、半導体装置の制御方法を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１にかかる半導体システムの構成例を示すブロック図である。
【図２】ガンマ分布型のベイズ統計を用いた場合における確率の事前分布から事後分布への遷移を示す図である。
【図３】図１に示す半導体システムによる待機モードの設定動作を示すフローチャートである。
【図４】図１に示す半導体システムの変形例を示すブロック図である。
【図５】実施の形態２にかかる半導体システムの構成例を示すブロック図である。
【図６】図５に示す半導体システムによる待機モードの設定動作を示すフローチャートである。
【図７】実施の形態に至る前の構想に係る半導体システムの構成例を示すブロック図である。
【図８】待機モードの種類と、モード遷移に必要なエネルギー及び待機モード時の消費電力と、の関係を示す図である。
【図９】待機モードの種類毎の、待機時間と総消費エネルギーとの関係を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照しつつ、実施の形態について説明する。なお、図面は簡略的なものであるから、この図面の記載を根拠として実施の形態の技術的範囲を狭く解釈してはならない。また、同一の要素には、同一の符号を付し、重複する説明は省略する。
【００１１】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらはお互いに無関係なものではなく、一方は他方の一部または全部の変形例、応用例、詳細説明、補足説明等の関係にある。また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよい。
【００１２】
さらに、以下の実施の形態において、その構成要素（動作ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数等（個数、数値、量、範囲等を含む）についても同様である。
【００１３】
＜発明者による事前検討＞
実施の形態１に係る半導体システムの詳細について説明する前に、本発明者が事前検討した半導体システム５０について説明する。
【００１４】
図７は、実施の形態に至る前の構想に係る半導体システム５０の構成例を示すブロック図である。半導体システム５０は、例えばマイクロコンピュータであって、制御対象装置５５の待機時における待機状態（即ち、待機モードの種類）を制御する。
【００１５】
図７に示すように、半導体システム５０は、割り込み信号受信回路５１と、待機モード制御回路５２と、電源回路５３と、クロック生成回路５４と、制御対象装置５５と、ＲＴＣ（Real Time Clock timer）５６と、レジスタ５７と、を備える。制御対象装置５５は、ＣＰＵ５５１と、メモリ５５２と、周辺回路５５３と、を有する。ここで、半導体システム５０の構成要素のうち、制御対象装置５５以外の構成要素により、制御対象装置５５の待機モードの種類を制御するための制御装置が構成される。
【００１６】
制御対象装置５５は、例えば、ＣＰＵ（Central Processing Unit）５５１、メモリ５５２及び周辺回路５５３によって構成される。制御対象装置５５は、電源回路５３から供給される電源電圧によって駆動されるとともに、クロック生成回路５４によって生成されるクロック信号に同期して動作する。
【００１７】
ＣＰＵ５５１は、例えばメモリ５５２に格納されたプログラムに従って演算処理を実行する。メモリ５５２は、上記プログラムやＣＰＵ５５１の演算結果等を格納する。周辺回路５５３は、ＣＰＵ５５１からの命令に従って所定の処理を実行する。
【００１８】
ここで、ＣＰＵ５５１は、通常動作モードにおいて所定のプログラムの実行が完了する前に、制御対象装置５５の待機モードの種類を選択する。本例では、ＣＰＵ５５１は、待機モードとして、浅いスタンバイモード、深いスタンバイモード、及び、電源オフモードのうちの何れのモードにするかを決定する。この待機モードの情報は、レジスタ５７に格納される。
【００１９】
例えば、浅いスタンバイモードでは、制御対象装置５５に対して、クロック信号の供給は行われないが、通常の駆動能力の電源電圧の供給は行われる。深いスタンバイモードでは、制御対象装置５５に対して、クロック信号の供給が行われず、また、通常よりも低い駆動能力の電源電圧しか供給されない。電源オフモードでは、制御対象装置５５に対して、クロック信号の供給が行われず、また、電源電圧の供給も行われない。
【００２０】
そして、ＣＰＵ５５１は、通常動作モードにおいて所定のプログラムの実行が完了すると、通常動作モードから待機モードにモードを遷移するように待機命令（ＷＩＴ命令）を発行する。
【００２１】
待機モード制御回路５２は、ＣＰＵ５５１によって発行されたＷＩＴ命令を受け取ると、制御対象装置５５のモードを、通常動作モードから、レジスタ５７に格納された待機モード情報によって指定された種類の待機モードに遷移させる。
【００２２】
例えば、レジスタ５７に格納された待機モード情報が浅いスタンバイモードを示す場合、待機モード制御回路５２は、ＷＩＴ命令を受信した後、制御対象装置５５のモードを通常動作モードから浅いスタンバイモードに遷移させる。具体的には、待機モード制御回路５２は、制御対象装置５５に対してクロック信号の供給を止めるとともに、通常の駆動能力の電源電圧の供給を維持する。
【００２３】
また、例えば、レジスタ５７に格納された待機モード情報が深いスタンバイモードを示す場合、待機モード制御回路５２は、ＷＩＴ命令を受信した後、制御対象装置５５のモードを通常動作モードから深いスタンバイモードに遷移させる。具体的には、待機モード制御回路５２は、制御対象装置５５に対してクロック信号の供給を止めるとともに、通常よりも低い駆動能力の電源電圧の供給を行う。
【００２４】
また、例えば、レジスタ５７に格納された待機モード情報が電源オフモードを示す場合、待機モード制御回路５２は、ＷＩＴ命令を受信した後、制御対象装置５５のモードを通常動作モードから電源オフモードに遷移させる。具体的には、待機モード制御回路５２は、制御対象装置５５に対してクロック信号の供給を止めるとともに、電源電圧の供給も止める。
【００２５】
その後、半導体システム５０の外部から割り込み信号（外部割り込み信号）が入力されると、割り込み信号受信回路５１は、その割り込み信号を待機モード制御回路５２に伝達する。
【００２６】
待機モード制御回路５２は、割り込み信号を受け取ると、制御対象装置５５のモードを待機モードから通常動作モードに遷移させる。具体的には、待機モード制御回路５２は、電源回路５３による電源電圧の供給を開始させるとともに、クロック生成回路５４によるクロック信号の供給を開始させる。さらに、待機モード制御回路５２は、ＣＰＵ起動信号をＣＰＵ５５１に対して出力する。それにより、ＣＰＵ５５１は、通常の命令処理動作に復帰することができる。
【００２７】
その後、ＣＰＵ５５１は、通常動作モードにおいて別のプログラムの実行が完了すると、通常動作モードから待機モードにモードを遷移するようにＷＩＴ命令を発行する。それにより、待機モード制御回路５２は、制御対象装置５５のモードを、通常動作モードから、レジスタ５７に格納された待機モード情報によって指定された種類の待機モードに遷移させる。そして、外部からの割り込み信号が入力されるまで待機モードは維持される。半導体システム５０では、このような動作が繰り返される。
【００２８】
図８は、待機モードの種類と、モード遷移に必要なエネルギー及び待機モード時の消費電力と、の関係を示す図である。
【００２９】
図８を参照すると、待機モードの種類が浅いスタンバイモードの場合、通常動作モードから待機モードにモードを遷移させるには、クロック信号の供給を停止させるだけで良い。そのため、モード遷移に必要なエネルギーは小さい。一方で、待機モード時の消費電力は比較的大きくなる（中程度となる）。
【００３０】
また、待機モードの種類が深いスタンバイモードの場合、通常動作モードから待機モードにモードを遷移させるには、クロック信号の供給を停止させるだけでなく、電源電圧の駆動能力を低くする必要がある。そのため、モード遷移に必要なエネルギーは浅いスタンバイモードの場合よりも大きくなる（中程度となる）。一方で、待機モード時の消費電力は浅いスタンバイモードの場合よりも小さくなる。
【００３１】
また、待機モードの種類が電源オフモードの場合、通常動作モードから待機モードにモードを遷移させるには、クロック信号及び電源電圧の供給を何れも停止させる必要がある。そのため、モード遷移に必要なエネルギーは深いスタンバイモードの場合よりもさらに大きくなる。一方で、待機モード時の消費電力は深いスタンバイモードの場合よりもさらに小さくなる。
【００３２】
図９は、待機モードの種類毎の、待機時間と総消費エネルギーとの関係を示す図である。なお、総消費エネルギーとは、モード遷移時に消費されるエネルギーと、待機モード時に消費されるエネルギーと、を合計したエネルギーのことである。
【００３３】
図９を参照すると、待機時間が時間ｔ０以上かつ時間ｔ１未満と短い場合には、浅いスタンバイモードが選択された場合に総消費エネルギーが最小となる。待機時間が時間ｔ１以上かつ時間ｔ２未満と中程度の場合には、深いスタンバイモードが選択された場合に総消費エネルギーが最小となる。そして、待機時間が時間ｔ２以上と長い場合には、電源オフモードが選択された場合に総消費エネルギーが最小となる。
【００３４】
したがって、待機時間が予め決まっている場合には、その待機時間において総消費エネルギーが最小となる種類の待機モードを選択すればよい。なお、このときの待機時間の計測は、動作モードに関係なくカウント動作し続けるＲＴＣ５６及びレジスタ５７によって行われる。
【００３５】
しかしながら、イベントドリブン的に外部から入力される割り込み信号によって待機モードが解除される場合のように、待機時の待機時間が予め決まっていない場合には、総消費エネルギーが最小となる種類の待機モードを適切に選択することが困難である。そのため、半導体システム５０では、効果的に消費電力を低減させることが困難である。
【００３６】
例えば、レジスタ５７に浅いスタンバイモードを示す待機モード情報が格納されている場合でも、外部割り込み信号の発生が遅れて待機時間が予想より長くなった場合には、浅いスタンバイモードよりも深いスタンバイモードや電源オフモードに設定された方が総消費エネルギーの低減に効果的だったということも生じ得る。
【００３７】
そこで、外部からの割り込み信号の発生タイミングによって待機時間が変動する場合でも、効果的に消費電力を低減させることができるように、実施の形態１に係る半導体システム１が見出された。
【００３８】
＜実施の形態１＞
図１は、実施の形態１にかかる半導体システム１を示すブロック図である。本実施の形態にかかる半導体システム１は、例えばマイクロコンピュータであって、制御対象装置の待機時における待機状態（即ち、待機モードの種類）を制御する。
ここで、半導体システム１は、割り込み信号の発生タイミングによって変動する制御対象装置の待機時間の計測値ｚと、その期待値μと、に基づいて新たな期待値μ’を算出し、制御対象装置の待機時における待機状態を期待値μ’に応じた待機状態に設定する。それにより、半導体システム１は、割り込み信号の発生タイミングによって制御対象装置の待機時間が変動する場合でも、待機時間を予測して制御対象装置を最適な待機状態に制御することができるため、効果的に消費電力を低減させることができる。以下、具体的に説明する。
【００３９】
図１に示すように、半導体システム１は、割り込み信号受信回路１１と、待機モード制御回路１２と、電源回路１３と、クロック生成回路１４と、制御対象装置１５と、ＲＴＣ１６と、レジスタ１７と、事前分布値格納部１８と、計測値格納部１９と、演算回路２０と、待機モード判定回路２１と、を備える。ここで、半導体システム１の構成要素のうち、制御対象装置１５以外の構成要素により、制御対象装置１５の待機時における待機状態（即ち、待機モードの種類）を制御するための制御装置（半導体装置）が構成される。
【００４０】
制御対象装置１５は、例えば、ＣＰＵ１５１、メモリ１５２及び周辺回路１５３によって構成される。制御対象装置１５は、電源回路１３から供給される電源電圧によって駆動されるとともに、クロック生成回路１４によって生成されるクロック信号に同期して動作する。
【００４１】
ＣＰＵ１５１は、例えばメモリ１５２に格納されたプログラムに従って演算処理を実行する。メモリ１５２は、上記プログラムやＣＰＵ１５１の演算結果等を格納する。周辺回路１５３は、ＣＰＵ１５１からの命令に従って所定の処理を実行する。
【００４２】
ここで、制御対象装置１５は、所定のプログラムを実行していないときには、通常動作モードから待機モードにモード遷移し、クロック信号の供給や電源電圧の供給を制限する。それにより、消費電力の増大が抑制される。待機モードの詳細については後述する。
【００４３】
事前分布値格納部１８は、制御対象装置１５の待機時間の期待値μ及び分散Ｖを格納する。なお、初期状態では、事前分布値格納部１８は、過去の計測結果等に基づいて決定された所定値を格納している。
【００４４】
計測値格納部１９は、制御対象装置１５の待機時間の計測値ｚを格納する。制御対象装置１５の待機時間（待機モードの長さ）の計測は、例えば、ＲＴＣ１６及びレジスタ１７を用いて行われる。
【００４５】
ＲＴＣ１６は、制御対象装置１５の動作モードに関係なくカウント動作し続ける回路である。レジスタ１７は、ＲＴＣ１６のカウント値を格納する。例えば、レジスタ１７には、制御対象装置１５のモードが通常動作モードから待機モードに遷移したときのＲＴＣ１６のカウント値が格納される。より具体的には、レジスタ１７には、ＣＰＵ１５１から待機命令（ＷＩＴ命令）が発行されたときのＲＴＣ１６のカウント値が格納される。そして、制御対象装置１５のモードが待機モードから通常動作モードに遷移したときのＲＴＣ１６のカウント値と、レジスタ１７に格納されたＲＴＣ１６のカウント値と、の差分により、制御対象装置１５の待機時間が計測される。
【００４６】
演算回路（演算部）２０は、待機時間の計測値ｚと、待機時間の期待値μ及び分散Ｖと、に基づいて、新たな待機時間の期待値μ’及び分散Ｖ’を算出する。例えば、演算回路２０は、待機時間の計測値ｚと、待機時間の期待値μ及び分散Ｖと、をガンマ分布型のベイズ統計の式に代入することにより、新たな待機時間の期待値μ’及び分散Ｖ’を算出する。なお、初期状態では、演算回路２０は、期待値μ及び分散Ｖをそのまま期待値μ’及び分散Ｖ’として出力する。
【００４７】
具体的には、事前分布の期待値μ及び分散Ｖと、待機時間の計測値ｚと、事後分布の期待値μ’及び分散Ｖ’と、の関係は、以下の式（１）及び式（２）のように表される。
【００４８】
【数１】
2017111745.tif 000003
【００４９】
【数２】
2017111745.tif 000004
【００５０】
また、ガンマ分布型のベイズ統計を用いた場合における確率の事前分布から事後分布への遷移は、図２のように表される。
【００５１】
待機モード判定回路２１は、演算回路２０によって算出された新たな待機時間の期待値μ’に基づいて、制御対象装置１５の待機時の待機状態、即ち、制御対象装置１５の待機モードの種類、を選択する。待機モード判定回路２１の出力は、待機モード情報として待機モード制御回路１２に供給される。
【００５２】
本実施の形態では、待機モードの種類として、浅いスタンバイモード、深いスタンバイモード、及び、電源オフモードの３種類のモードが存在する場合を例に説明する。
【００５３】
例えば、浅いスタンバイモードでは、制御対象装置１５に対して、クロック信号の供給は行われないが、通常の駆動能力の電源電圧の供給は行われる。深いスタンバイモードでは、制御対象装置１５に対して、クロック信号の供給が行われず、また、通常よりも低い駆動能力の電源電圧しか供給されない。電源オフモードでは、制御対象装置１５に対して、クロック信号の供給が行われず、また、電源電圧の供給も行われない。
【００５４】
ここで、再び図９を参照すると、待機時間が時間ｔ０以上かつ時間ｔ１未満と短い場合には、浅いスタンバイモードが選択された場合に総消費エネルギーが最小となる。待機時間が時間ｔ１以上かつ時間ｔ２未満と中程度の場合には、深いスタンバイモードが選択された場合に総消費エネルギーが最小となる。そして、待機時間が時間ｔ２以上と長い場合には、電源オフモードが選択された場合に総消費エネルギーが最小となる。
【００５５】
したがって、待機モード判定回路２１は、新たな待機時間の期待値μ’が時間ｔ０以上かつ時間ｔ１未満の場合（ｔ０≦μ’＜ｔ１の場合）、待機モードの種類として、浅いスタンバイモードを選択する。また、新たな待機時間の期待値μ’が時間ｔ１以上かつ時間ｔ２未満の場合（ｔ１≦μ’＜ｔ２の場合）待機モードの種類として、深いスタンバイモードを選択する。また、新たな待機時間の期待値μ’が時間ｔ２以上の場合（ｔ２≦μ’の場合）、待機モードの種類として、電源オフモードを選択する。
【００５６】
待機モード制御回路１２は、制御対象装置１５の待機時における待機状態を、新たな待機時間の期待値μ’に応じた待機状態に設定する。より具体的には、待機モード制御回路１２は、ＣＰＵ１５１によって発行されるＷＩＴ命令を受け取ると、制御対象装置１５のモードを、通常動作モードから、待機モード判定回路２１により選択された種類の待機モードに遷移させる。
【００５７】
例えば、待機モード判定回路２１から出力された待機モード情報が浅いスタンバイモードを示す場合、待機モード制御回路１２は、ＷＩＴ命令を受信した後、制御対象装置１５のモードを通常動作モードから浅いスタンバイモードに遷移させる。より具体的には、待機モード制御回路１２は、制御対象装置１５に対してクロック信号の供給を止めるとともに、通常の駆動能力の電源電圧の供給を維持する。
【００５８】
また、例えば、待機モード判定回路２１から出力された待機モード情報が深いスタンバイモードを示す場合、待機モード制御回路１２は、ＷＩＴ命令を受信した後、制御対象装置１５のモードを通常動作モードから深いスタンバイモードに遷移させる。より具体的には、待機モード制御回路１２は、制御対象装置１５に対してクロック信号の供給を止めるとともに、通常よりも低い駆動能力の電源電圧の供給を行う。
【００５９】
また、例えば、待機モード判定回路２１から出力された待機モード情報が電源オフモードを示す場合、待機モード制御回路１２は、ＷＩＴ命令を受信した後、制御対象装置１５のモードを通常動作モードから電源オフモードに遷移させる。より具体的には、待機モード制御回路１２は、制御対象装置１５に対してクロック信号の供給を止めるとともに、電源電圧の供給も止める。
【００６０】
割り込み信号受信回路１１は、半導体システム１の外部から供給される割り込み信号（外部割り込み信号）を受信すると、待機モード制御回路１２に伝達する。
【００６１】
待機モード制御回路１２は、割り込み信号受信回路１１から割り込み信号を受け取ると、制御対象装置１５のモードを待機モードから通常動作モードに遷移させる。具体的には、待機モード制御回路１２は、電源回路１３による電源電圧の供給を開始させるとともに、クロック生成回路１４によるクロック信号の供給を開始させる。さらに、待機モード制御回路１２は、ＣＰＵ起動信号をＣＰＵ１５１に対して出力する。それにより、ＣＰＵ１５１は、通常の命令処理動作に復帰することができる。
【００６２】
（半導体システム１による待機モードの設定動作）
続いて、図３を用いて、半導体システム１による待機モードの設定動作を説明する。
図３は、半導体システム１による待機モードの設定動作を示すフローチャートである。
【００６３】
まず、制御対象装置１５のモードが待機モードに遷移する前に、初期設定が行われる（ステップＳ１０１）。具体的には、事前分布値格納部１８には、過去の計測結果等に基づいて決定された期待値μ及び分散Ｖが初期値として格納される。計測値格納部１９には、例えば初期値０が格納される。このとき、演算回路２０は、期待値μ及び分散Ｖをそのまま期待値μ’及び分散Ｖ’として出力する。
【００６４】
本例では、期待値μ’の初期値は、時間ｔ０〜ｔ１の範囲内の値を示す。そのため、待機モード判定回路２１は、待機モードの種類として浅いスタンバイモードを選択している。
【００６５】
その後、ＣＰＵ１５１は、通常動作モードにおいて所定のプログラムの実行が完了すると、モードを通常動作モードから待機モードに遷移するようにＷＩＴ命令を発行する。
【００６６】
待機モード制御回路１２は、ＷＩＴ命令を受信すると、制御対象装置１５のモードを、通常動作モードから、待機モード判定回路２１により選択された種類の待機モードに遷移させる。ここでは、待機モード制御回路１２は、制御対象装置１５のモードを、通常動作モードから浅いスタンバイモードに遷移させる。それにより、制御対象装置１５に対するクロック信号の供給が止まる。
【００６７】
その後、待機モード制御回路１２は、外部からの割り込み信号を受信すると、制御対象装置１５のモードを、待機モード（ここでは浅いスタンバイモード）から通常動作モードに遷移させる。具体的には、待機モード制御回路１２は、クロック生成回路１４によるクロック信号の供給を開始させる。さらに、待機モード制御回路１２は、ＣＰＵ起動信号をＣＰＵ１５１に対して出力する。それにより、ＣＰＵ１５１は、通常の命令処理動作に復帰することができる。
【００６８】
ここで、ＷＩＴ命令が発行されてから外部から割り込み信号が供給されるまでの時間、即ち、制御対象装置１５の待機時間が、ＲＴＣ１６及びレジスタ１７を用いて計測される（ステップＳ１０２）。この待機時間の計測値ｚは、計測値格納部１９に格納される。
【００６９】
その後、演算回路２０は、計測値格納部１９に格納された待機時間の計測値ｚと、事前分布値格納部１８に格納された待機時間の期待値μ及び分散Ｖ（事前分布）と、をガンマ分布型のベイズ統計の式に代入することにより、新たな待機時間の期待値μ’及び分散Ｖ’（事後分布）を算出する（ステップＳ１０３）。
【００７０】
例えば、新たな待機時間の期待値μ’は、時間ｔ１〜ｔ２の範囲の値を示す。そのため、待機モード判定回路２１は、待機モードの種類として深いスタンバイモードを選択する（ステップＳ１０４）。
【００７１】
なお、事後分布である期待値μ’及び分散Ｖ’は、事前分布である期待値μ及び分散Ｖとして、計測値格納部１９に格納（上書き）される（ステップＳ１０５）。
【００７２】
そして、制御対象装置１５が、更に次のＷＩＴ命令を発行して、その後、割り込みにより復帰した場合は（ステップＳ１０６のＹＥＳ）、ステップＳ１０２〜Ｓ１０５の動作が繰り返される。他方、制御対象装置１５が、ＷＩＴ命令を発行した後、割り込みにより復帰しなければ（ステップＳ１０６のＮＯ）、ステップＳ１０５の事後分布の状態が保持される。
【００７３】
即ち、ＣＰＵ１５１は、通常動作モードにおいて別のプログラムの実行が完了すると、通常動作モードから待機モードにモード遷移するようにＷＩＴ命令を発行する。
【００７４】
待機モード制御回路１２は、ＷＩＴ命令を受信すると、制御対象装置１５のモードを、通常動作モードから、待機モード判定回路２１により選択された種類の待機モードに遷移させる。ここでは、待機モード制御回路１２は、制御対象装置１５のモードを、通常動作モードから深いスタンバイモードに遷移させる。それにより、制御対象装置１５に対するクロック信号の供給が止まり、制御対象装置１５に対して供給される電源電圧の駆動能力が低くなる。
【００７５】
その後、待機モード制御回路１２は、外部からの割り込み信号を受信すると、制御対象装置１５のモードを、待機モード（ここでは深いスタンバイモード）から通常動作モードに遷移させる。具体的には、待機モード制御回路１２は、電源回路１３による電源電圧の供給を開始させるとともに、クロック生成回路１４によるクロック信号の供給を開始させる。さらに、待機モード制御回路１２は、ＣＰＵ起動信号をＣＰＵ１５１に対して出力する。それにより、ＣＰＵ１５１は、通常の命令処理動作に復帰することができる。
【００７６】
ここで、ＷＩＴ命令が発行されてから外部から割り込み信号が供給されるまでの時間、即ち、制御対象装置１５の待機時間の計測値ｚは、ベイズ統計によれば、時間ｔ１〜ｔ２の範囲の値を示す可能性が高い。そのため、待機モードの種類として深いスタンバイモードを選択しておくことにより、総消費エネルギーを最小に抑えることができる。つまり、効果的に消費電力を低減させることができる。
【００７７】
このように、本実施の形態に係る半導体システム１は、割り込み信号の発生タイミングによって変動する制御対象装置の待機時間の計測値ｚと、その期待値μと、に基づいて新たな期待値μ’を算出し、制御対象装置の待機時における待機状態を期待値μ’に応じた待機状態に設定する。それにより、半導体システム１は、割り込み信号の発生タイミングによって制御対象装置の待機時間が変動する場合でも、待機時間を予測して制御対象装置を最適な待機状態に制御することができるため、効果的に消費電力を低減させることができる。
【００７８】
本実施の形態では、待機モードの種類が３つである場合を例に説明したが、これに限られない。待機モードの種類は２つ以上の任意の数とすることができる。また、各種の待機モードにおける待機状態は、クロック信号や電源電圧の供給の制限に限られず、消費電力を低減することが可能な任意の状態とすることができる。
【００７９】
また、本実施の形態では、ガンマ分布型のベイズ統計の式が用いられた場合を例に説明したが、これに限られない。事前分布（μ，Ｖ）と計測値ｚとに基づいて、事後分布（μ’，Ｖ’）が算出される任意の分布型のベイズ統計の式が用いられることができる。
【００８０】
（半導体システム１の変形例）
図４は、半導体システム１の変形例を半導体システム１ａとして示す図である。
半導体システム１ａは、待機モードの種類を自動的に切り替える半導体システム１の構成と、待機モードの種類を固定する構成と、を選択的に用いることができる。
【００８１】
図４に示すように、半導体システム１ａは、半導体システム１と比較して、待機モード情報格納部２３と、切替情報格納部２４と、セレクタ２５と、をさらに備える。
【００８２】
待機モード情報格納部２３には、例えば、過去の計測結果等に基づいて決定された所定の種類の待機モード情報が格納されている。
【００８３】
切替情報格納部２４には、待機モードの種類を自動的に切り替えるか固定するかを指定する情報が格納される。この情報は、ＣＰＵ１５１等によって適宜変更可能である。
【００８４】
セレクタ２５は、切替情報格納部２４に格納された情報に基づいて、待機モード判定回路２１により選択された種類の待機モード情報、及び、待機モード情報格納部２３に格納された所定の種類の待機モード情報、の何れかを選択して出力する。セレクタ２５から出力された待機モード情報は、待機モード制御回路１２に供給される。
【００８５】
半導体システム１ａのその他の構成及び動作については、半導体システム１の場合と同様であるため、その説明を省略する。
【００８６】
半導体システム１ａは、待機時の待機時間が予め分かっている場合には、待機モードの種類を固定し、待機時の待機時間があらかじめ分かっていない場合には、待機モードの種類を自動的に切り替えて、動作させることができる。
【００８７】
＜実施の形態２＞
図５は、実施の形態２にかかる半導体システム２の構成例を示すブロック図である。半導体システム１では、単体の演算回路が設けられていた。それに対し、半導体システム２では、割り込み信号の種類によって個別に待機時間の期待値及び分散を算出するために複数の演算回路が設けられている。
【００８８】
図５に示すように、半導体システム２は、半導体システム１と比較して、演算回路２０に代えて演算回路２０＿１〜２０＿３を有し、事前分布値格納部１８に代えて事前分布値格納部１８＿１〜１８＿３を有し、計測値格納部１９に代えて計測値格納部１９＿１〜１９＿３を有し、さらにセレクタ２６を備える。
【００８９】
ここで、割り込み信号受信回路１１は、外部からの割り込み信号として、例えば３種類の割り込み信号Ａ〜Ｃを受信する。
【００９０】
計測値格納部１９＿１には、割り込み信号Ａによって待機モードが解除された場合の待機時間の計測値ｚａが格納される。事前分布値格納部１８＿１には、割り込み信号Ａによって待機モードが解除された場合の待機時間の期待値μａ及び分散Ｖａが格納される。演算回路２０＿１は、待機時間の計測値ｚａと、待機時間の期待値μａ及び分散Ｖａと、に基づいて、待機時間の期待値μａ’及び分散Ｖａ’を算出する。
【００９１】
計測値格納部１９＿２には、割り込み信号Ｂによって待機モードが解除された場合の待機時間の計測値ｚｂが格納される。事前分布値格納部１８＿２には、割り込み信号Ｂによって待機モードが解除された場合の待機時間の期待値μｂ及び分散Ｖｂが格納される。演算回路２０＿２は、待機時間の計測値ｚｂと、待機時間の期待値μｂ及び分散Ｖｂと、に基づいて、待機時間の期待値μｂ’及び分散Ｖｂ’を算出する。
【００９２】
計測値格納部１９＿３には、割り込み信号Ｃによって待機モードが解除された場合の待機時間の計測値ｚｃが格納される。事前分布値格納部１８＿３には、割り込み信号Ｃによって待機モードが解除された場合の待機時間の期待値μｃ及び分散Ｖｃが格納される。演算回路２０＿３は、待機時間の計測値ｚｃと、待機時間の期待値μｃ及び分散Ｖｃと、に基づいて、待機時間の期待値μｃ’及び分散Ｖｃ’を算出する。
【００９３】
セレクタ２６は、演算回路２０＿１〜２０＿３からそれぞれ出力される新たな待機時間の期待値μａ’，μｂ’，μｃのうち何れかを選択して出力する。この出力は、事前分布値格納部１８に供給される。
【００９４】
例えば、セレクタ２６は、新たな待機時間の期待値μａ’，μｂ’，μｃのうち、待機モードを解除する可能性の高い割り込み信号に対応する待機時間の期待値、具体的には最小値を示す期待値、を選択して出力する。
【００９５】
半導体システム２のその他の構成については、半導体システム１の場合と同様であるため、その説明を省略する。
【００９６】
（半導体システム２による待機モードの設定動作）
続いて、図６を用いて、半導体システム２による待機モードの設定動作を説明する。
図６は、半導体システム２による待機モードの設定動作を示すフローチャートである。
【００９７】
まず、制御対象装置１５のモードが待機モードに遷移する前に、初期設定が行われる（ステップＳ２０１）。
【００９８】
具体的には、事前分布値格納部１８＿１には、過去の計測結果等に基づいて決定された期待値μａ及び分散Ｖａが初期値として格納される。事前分布値格納部１８＿２には、過去の計測結果等に基づいて決定された期待値μｂ及び分散Ｖｂが初期値として格納される。事前分布値格納部１８＿３には、過去の計測結果等に基づいて決定された期待値μｃ及び分散Ｖｃが初期値として格納される。計測値格納部１９＿１〜１９＿３には、例えば初期値０が格納される。このとき、演算回路２０＿１は、期待値μａ及び分散Ｖａをそのまま期待値μａ’及び分散Ｖａ’として出力する。演算回路２０＿２は、期待値μｂ及び分散Ｖｂをそのまま期待値μｂ’及び分散Ｖｂ’として出力する。演算回路２０＿３は、期待値μｃ及び分散Ｖｃをそのまま期待値μｃ’及び分散Ｖｃ’として出力する。
【００９９】
本例では、期待値μａ’，μｂ’，μｃ’の初期値は、何れも時間ｔ２以上の範囲内の値を示す。そして、セレクタ２６は、期待値μａ’，μｂ’，μｃ’のうち期待値μａ’を選択して出力している。そのため、待機モード判定回路２１は、待機モードの種類として電源オフモードを選択している。
【０１００】
その後、基本的には半導体システム１の場合と同様に、待機時間の計測が行われる（ステップＳ２０２）。ここで、割り込み信号Ａ〜Ｃによって待機モードが解除された場合における待機時間の計測値ｚａ〜ｚｃは、それぞれ計測値格納部１９＿１〜１９＿３に格納される。
【０１０１】
その後、演算回路２０＿１は、待機時間の計測値ｚａと、待機時間の期待値μａ及び分散Ｖａと、をガンマ分布型のベイズ統計の式に代入することにより、新たな待機時間の期待値μａ’及び分散Ｖａ’を算出する（ステップＳ２０３）。演算回路２０＿２は、待機時間の計測値ｚｂと、待機時間の期待値μｂ及び分散Ｖｂと、をガンマ分布型のベイズ統計の式に代入することにより、新たな待機時間の期待値μｂ’及び分散Ｖｂ’を算出する（ステップＳ２０３）。演算回路２０＿３は、待機時間の計測値ｚｃと、待機時間の期待値μｃ及び分散Ｖｃと、をガンマ分布型のベイズ統計の式に代入することにより、新たな待機時間の期待値μｃ’及び分散Ｖｃ’を算出する（ステップＳ２０３）。
【０１０２】
本例では、新たな待機時間の期待値μｂ’は、時間ｔ１〜ｔ２の範囲内の値を示す。新たな待機時間の期待値μａ’，μｃ’は、初期値である時刻ｔ２以上の範囲内の値を引き続き示す。
【０１０３】
したがって、セレクタ２６は、期待値μａ’，μｂ’，μｃ’のうち最小値を示す期待値μｂ’を選択して出力する（ステップＳ２０４）。そのため、待機モード判定回路２１は、待機モードの種類として深いスタンバイモードを選択する（ステップＳ２０５）。
【０１０４】
なお、期待値μａ’及び分散Ｖａ’は、期待値μａ及び分散Ｖａとして、計測値格納部１９＿１に格納（上書き）される（ステップＳ２０６）。期待値μｂ’及び分散Ｖｂ’は、期待値μｂ及び分散Ｖｂとして、計測値格納部１９＿２に格納（上書き）される（ステップＳ２０６）。期待値μｃ’及び分散Ｖｃ’は、期待値μｃ及び分散Ｖｃとして、計測値格納部１９＿３に格納（上書き）される（ステップＳ２０６）。
【０１０５】
そして、制御対象装置１５が、更に次のＷＩＴ命令を発行して、その後、割り込みにより復帰した場合は（ステップＳ２０７のＹＥＳ）、ステップＳ２０２〜Ｓ２０６の動作が繰り返される。他方、制御対象装置１５が、ＷＩＴ命令を発行した後、割り込みにより復帰しなければ（ステップＳ２０７のＮＯ）、ステップＳ２０６の事後分布の状態が保持される。
【０１０６】
このように、本実施の形態に係る半導体システム２は、半導体システム１の場合と同等の効果を奏することができるとともに、割り込み信号の種類によって個別に待機時間の期待値を算出することで、さらに高精度に待機時間を予測可能になるため、さらに効果的に消費電力を低減させることができる。
【０１０７】
本実施の形態では、３種類の割り込み信号についてそれぞれ個別に待機時間の期待値を算出する場合を例に説明したが、これに限られず、２種類以上の割り込み信号についてそれぞれ個別に待機時間の期待値を算出する構成であってもよい。ただし、割り込み信号の種類に応じた数の演算回路を設ける必要がある。
【０１０８】
以上のように、上記実施の形態１，２に係る半導体システム１，２は、割り込み信号の発生タイミングによって変動する制御対象装置の待機時間の計測値と、その期待値と、に基づいて新たな期待値を算出し、制御対象装置の待機時における待機状態を期待値に応じた待機状態に設定する。それにより、半導体システム１，２は、割り込み信号の発生タイミングによって制御対象装置の待機時間が変動する場合でも、待機時間を予測して制御対象装置を最適な待機状態に制御することができるため、効果的に消費電力を低減させることができる。
【０１０９】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。
【０１１０】
例えば、上記の実施の形態に係る半導体装置では、半導体基板、半導体層、拡散層（拡散領域）などの導電型（ｐ型もしくはｎ型）を反転させた構成としてもよい。そのため、ｎ型、及びｐ型の一方の導電型を第１の導電型とし、他方の導電型を第２の導電型とした場合、第１の導電型をｐ型、第２の導電型をｎ型とすることもできるし、反対に第１の導電型をｎ型、第２の導電型をｐ型とすることもできる。
【符号の説明】
【０１１１】
１  半導体システム
１ａ  半導体システム
２  半導体システム
１１  割り込み信号受信回路
１２  待機モード制御回路
１３  電源回路
１４  クロック生成回路
１５  制御対象装置
１５１  ＣＰＵ
１５２  メモリ
１５３  周辺回路
１６  ＲＴＣ
１７  レジスタ
１８  事前分布値格納部
１９  計測値格納部
２０  演算回路
２１  待機モード判定回路
２３  待機モード情報格納部
２４  切替情報格納部
２５  セレクタ
２６  セレクタ
１８＿１〜１８＿３  事前分布値格納部
１９＿１〜１９＿３  計測値格納部
２０＿１〜２０＿３  演算回路
５０  半導体システム
５１  割り込み信号受信回路
５２  待機モード制御回路
５３  電源回路
５４  クロック生成回路
５５  制御対象装置
５５１  ＣＰＵ
５５２  メモリ
５５３  周辺回路
５６  ＲＴＣ
５７  レジスタ
【図１】
2017111745.tif 000005
【図２】
2017111745.tif 000006
【図３】
2017111745.tif 000007
【図４】
2017111745.tif 000008
【図５】
2017111745.tif 000009
【図６】
2017111745.tif 000010
【図７】
2017111745.tif 000011
【図８】
2017111745.tif 000012
【図９】
2017111745.tif 000013