(57)【要約】【課題】  微細化により熱密度が上昇し、厳しい熱的ストレスに曝される素子に対して、性能低下を遅らせ故障を起きにくくする。【解決手段】  各演算要素の温度が閾値を超過した状態にあることを検出し、その超過時間を計測し、比較して熱的ストレスのかかった時間の比較を行い、時間の短い演算要素から順に使用することで熱的ストレスの平均化を行う。【選択図】  図１
2016045823.tif 000002
【特許請求の範囲】
【請求項１】
複数の演算要素と、
各演算要素の温度を測定する測定手段と、
前記測定手段から出力される各演算要素の温度を用いて、前記各演算要素の負荷を判定する判定手段と、
前記判定手段の判定結果に基づいて、各演算要素への命令の出力を制御する制御手段と、を備えることを特徴とする半導体装置。
【請求項２】
前記測定手段が測定した温度が閾値を超えた場合に、温度が閾値を超えている時間を計測する計測手段を更に備え、
前記判定手段は、前記計測手段の計測結果に基づいて、前記各演算要素の負荷を判定することを特徴とする請求項１記載の半導体装置。
【請求項３】
前記判定手段は、前記計測手段が計測した時間が短い順に各演算要素の順位を決定することを特徴とする請求項２記載の半導体装置。
【請求項４】
前記制御手段は、前記決定した順位の順に、前記命令の実行に必要な演算要素の個数の演算要素に命令の出力を行うことを特徴とする請求項３記載の半導体装置。
【請求項５】
前記制御手段は、同じ演算要素で継続処理されるべき命令の処理が終了したときに次の命令を実行する演算要素を前記判定結果に基づいて制御することを特徴とする請求項１または２記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、熱的ストレス負荷による半導体装置の内部回路素子の劣化を防止する技術に関する。
【背景技術】
【０００２】
半導体集積回路の微細化に伴い、回路が複雑になり回路素子に対する信頼性の確保の重要性が高まっている。微細化に伴う電流密度や熱密度の上昇で、配線や回路素子にかかる熱的ストレスが増加し、素子の劣化量が比例して増えていることにより、使用中に故障を起こす頻度が増している。
【０００３】
今後、プレナー型ＦＥＴ（Ｆｉｅｌｄ  Ｅｆｆｅｃｔ  Ｔｒａｎｓｉｓｔｏｒ）から３次元立体型ＦＥＴ、特にフィン型ＦＥＴにデバイスが移行する。
【０００４】
フィン型ＦＥＴでは、トランジスタ１つ当たりのゲート面積が広くなり、かつ、ゲートチャネルに流れる電流が増加するため、経時的絶縁破壊やホットキャリアによる劣化に影響する電気的ストレスが増す。
【０００５】
また、フィン型ＦＥＴでは３次元のフィン状に突き出た立体形状のためシリコン基板との接触面が小さく、かつ、絶縁素材で遮断されているためプレナー型ＦＥＴに比べて放熱性が低下する問題がある。
【０００６】
電流の増加による自己発熱の増加と放熱性の低下のため、フィン型ＦＥＴは素子の温度が上がり易く、劣化に影響する熱的ストレスと電気的ストレスの両方が増す傾向にある。
【０００７】
この微細化に伴い、さらなる性能向上を実現するため、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などのコア（以下、演算要素とする）を同じＬＳＩチップ上に複数搭載させたマルチコアプロセッサが注目されている。これは複数の演算要素を用いて処理を並列に行うことで、プロセスの微細化による動作周波数の向上が従来ほど見込めない状況であっても、高い演算性能を得ることができるためである。
【０００８】
一方、このようなマルチコアプロセッサのように同じ演算要素を複数持つ製品において、各演算要素で実行する処理内容や時間の割り当て方により、各演算要素で生じる熱量とその熱による半導体素子および配線の劣化への影響が異なってくる。演算要素間で処理の割り当て時間に偏りがある場合は演算要素間の熱による劣化の進行度合いの差が広がっていくため、一部の演算要素に偏った劣化の進行が起きると、マルチコアプロセッサが設計上の寿命よりも早く故障する恐れがある。
【０００９】
このような問題を解決するため、ＬＳＩチップ内部の温度を検出し、チップの温度がある閾値を超えたと判断された場合にＣＰＵの処理速度を下げたり停止させることで消費電力を減らして熱を下げる技術が存在する。
【００１０】
また、例えば特許文献１のような方法が提案されている。
【００１１】
特許文献１では、ＬＳＩチップ内部の温度を検出し、チップの温度がある閾値を超えたと判断された場合に強制的に冷却ファンで冷却を行うことで、チップ全体の温度を下げる方法が紹介されている。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００７―２５０５９１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
マルチコアプロセサのように複数の演算要素を持つ場合、各演算要素の使用状況により熱によって受ける熱的ストレスが不均一になる。
【００１４】
そしてこの熱的ストレスが各演算要素に不均一に掛ることにより演算要素の故障が本来の想定よりも早まる恐れがある。
【００１５】
マルチコアプロセサでは一つの演算要素が故障すると、マルチコアプロセサそのものが本来の性能を達成できなくなり、結果的にまだ故障していない演算要素も使用できなくなる恐れがある。
【００１６】
これに対して、各演算要素の劣化進行度合いが、設定された閾値を超えたことをユーザーに知らせる手法が提案されているが、演算要素の故障が早まることは防げないため、製品が設計上の寿命よりも早く故障する恐れが依然残る。
【００１７】
本発明は、上記の課題に鑑みてなされたものであり、演算要素の性能低下を遅らせ故障を起きにくくする半導体装置を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明に係る半導体装置は以下の構成を備える。すなわち、複数の演算要素と、各演算要素の温度を測定する測定手段と、前記測定手段から出力される各演算要素の温度情報を用いて、前記各演算要素の負荷を判定する判定手段と、前記判定手段の判定結果に基づいて、各演算要素への命令の出力を制御する制御手段。
【発明の効果】
【００１９】
本発明によれば、各演算要素の温度情報を用いて演算要素の負荷を平均化し故障を起きにくくすることができる。
【図面の簡単な説明】
【００２０】
【図１】実施形態１の代表図
【図２】実施形態１のストレス判定部を説明する図
【図３】実施形態２のストレス判定部を説明する図
【図４】温度測定の一例を説明する図
【図５】順位判定の一例を説明する図
【図６】順位判定処理の一例を説明する図
【図７】システム制御処理の一例を説明する図
【発明を実施するための形態】
【００２１】
［実施形態１］
＜構成と処理＞
図１は、本発明の実施形態１に関わる、半導体装置の構成を説明するための図であり、基本的な構成を示したものである。
【００２２】
半導体装置は、温度センサ（１０２）を有する演算要素（１０１）と、演算要素（１０１）を複数有する演算装置（１０３）と、ストレス判定部（１０５）と、システム制御部（１０４）を有することを特徴とする半導体装置（以下、半導体集積回路とも記載する）（１００）で構成されている。
【００２３】
前記温度センサ（１０２）は、各演算要素（１０１）個別の温度を計測し、所定の閾値を超えると検出信号を温度センサ出力信号（１０７）として出力する。
【００２４】
前記検出信号が出力されている時間を演算要素に熱的ストレス（以下、負荷とも記載する。）がかかっている時間と判定してストレス判定部（１０５）で時間計測する。
【００２５】
図２に示すように、前記ストレス判定部（１０５）は、順位判定部（１１１）と複数の時間計測部（１１０）で構成されている。時間計測部（１１０）は、前記温度センサ出力信号（１０７）を入力とし、演算要素の温度が所定の閾値を超えていることを検出している時間を計測し、結果を随時順位判定部（１１１）に出力する。前記順位判定部（１１１）は、複数の時間計測部（１１０）の出力を入力とし、時間の長さを比較して演算要素の温度が所定の閾値を超えている時間の少ない順に順位をつけ、ストレス判定部出力信号（１０８）に出力する。順位判定部（１１１）の処理は後述のフローチャートで説明する。
【００２６】
前記システム制御部は、前記ストレス判定部出力信号（１０８）を入力とし、複数の演算要素の中で、温度が所定の閾値を超えている時間の短い演算要素から順にシステム処理を行わせる。システム処理に必要な演算要素の個数が決まっていれば、複数の演算要素の中から、システム処理に必要な演算要素の個数まで、温度が所定の閾値を超えている時間の短い演算要素を選んでシステム処理を行わせる。
【００２７】
または、順位判定部１０８が判定した判定結果の順位を用いずに、時間計測部１１０が計測した時間が所定値未満の演算要素にシステム処理を行わせる。
【００２８】
このように、熱的ストレスが掛った時間が短い前記演算要素（１０１）から順に使用することにより、各演算要素（１０１）に掛る熱的ストレスが平均化され、一部の演算要素（１０１）に熱的ストレスが偏ることによる劣化の偏りを防ぐ事を特徴とする。
【００２９】
＜動作例＞
図１、図２、図４、図５、図６、図７を用いて、本実施形態の動作例を説明する。
【００３０】
図１は、本実施形態の全体図である。
【００３１】
図６は、順位判定の処理を説明するためのフローチャートであり、処理が開始されると、ステップＳ２０１では温度センサ（１０２）により温度計測が行われる。演算要素の温度が温度センサ（１０２）の持つ所定の閾値を超過している間、温度センサ（１０２）は図４のように１を、温度が閾値を下回ると０を温度センサ出力信号（１０７）として出力する。
【００３２】
温度センサ出力信号（１０７）が１になるとストレス判定部（１０５）の時間計測部（１１０）が時間計測を開始し、温度センサ出力信号（１０７）が０になると時間計測を停止する。
【００３３】
ステップＳ２０５では、時間計測部（１１０）が計測した閾値の超過時間の結果を順位測定部（１１１）に出力し、ステップＳ２０６では順位測定部（１１１）が各時間計測部（１１０）の出力結果の順位比較を行う。
【００３４】
順位測定部（１１１）では、各時間計測部（１１０）の出力結果が、たとえば図５のように演算要素１が６０秒、演算要素２が４０秒、演算要素３が７０秒、演算要素４が２０秒、演算要素５が３０秒、演算要素６が１０秒であったとする。
【００３５】
この場合、全演算要素の時間の比較を行い、順位として演算要素６、演算要素４、演算要素５、演算要素２、演算要素１、演算要素３とする順位決定する。
【００３６】
ステップＳ２０７では、順位判定部（１１１）が判定した順位決定結果をストレス判定部出力信号（１０８）としてシステム制御部（１０４）に出力する。
【００３７】
この温度計測から順位判定までの処理は温度計測が行われているときに随時行われる。
【００３８】
図７は、システム制御部の処理を説明するためのフローであり、処理が開始されると、ステップＳ３０１では、順位取り込みを行い、ステップＳ３０２では命令の取り込みが行われる。
【００３９】
順位取り込みの情報は前記ステップＳ２０７でストレス判定部出力信号（１０８）として出力された信号である。
【００４０】
ステップＳ３０３では、取り込んだ命令と順位から命令を実行する演算要素を決定し、ステップＳ３０４でシステム制御信号（１０６）から演算要素（１０１）に命令が送られ、命令を受け取った演算要素（１０１）によって実行される。
【００４１】
命令の処理により、ステップＳ３０５ではそのまま処理を同じ演算要素で継続して行っていく必要があるか継続処理の判定を行う。
【００４２】
継続処理が必要なときには次に発行する命令に対しては順位の取り込みは行わず、同じ演算要素に命令を発行する。継続処理が終了すれば、順位の取り込みを行って、取り込んだ順位から次の命令を実行する演算要素を決定する。
【００４３】
実施形態１で示した処理を行うことで、各演算要素が受ける熱的ストレスのかかる時間および熱ストレスによる劣化状態を平均化することが可能となる。
【００４４】
［実施形態２］
＜構成と処理＞
図３は、実施形態１に追加の機能を加えた一例であり、前記時間計測部（１１０）に時間計測結果を保存する結果保存部（１１２）を加えたものである。
【００４５】
各演算要素の温度を温度センサ（１０２）で計測し、所定の閾値を超えたことを検出信号として出力し、時間計測部（１１０）で計測するまでは実施形態１と同じである。
【００４６】
また前記温度センサの検出信号が出力されている時間を演算要素に熱的ストレスがかかっている時間と判定してする点も実施形態１と同じである。
【００４７】
よって、実施形態１と同一機能を有する構成や工程には同一符号を付すとともに、構成的、機能的にかわらないものについてはその説明を省略し差分を説明する。
【００４８】
図３に記載の時間計測部（１１０）では、時間計測結果を保存するための不揮発性の記憶素子を用いた結果保存部（１１２）を有する。
【００４９】
時間計測部（１１０）で計測した温度閾値の超過時間の結果は、随時結果保存部（１１２）に積算され、順位判定部に出力される。
【００５０】
順位判定部（１１１）では、時間計測部（１１０）で積算された温度閾値の超過時間の比較を行い、超過時間の少ない演算要素から順位をつけ、ストレス判定部出力信号（１０８）に出力する。
【００５１】
計測した時間の長さを比較して順位測定部（１１１）が順位判定を行う例は実施形態１の動作例で示したものと同じである。
【００５２】
＜動作例＞
実施形態１と２の動作の差分を説明する。
【００５３】
実施形態２では、実施形態１の動作に加えて、時間計測部（１１０）の出力を結果保存部（１１２）に保存する。
【００５４】
結果保存部に不揮発性の記憶素子を用いることで、半導体集積回路（１００）の電源の全部または一部が遮断された状態であっても各演算要素（１０１）の熱的ストレスがかかっていた時間情報を保持する。
【００５５】
電源が復帰し半導体集積回路（１００）が動作を始めるときには、順位判定部（１１１）の順位比較にこの結果保存部（１１２）に記憶した結果を使用して順位判定を実施し、ストレス判定部出力信号（１０８）としてシステム制御部（１０４）に出力する。
【００５６】
このように各時間計測部の結果を不揮発性の記憶部に保存することにより、半導体集積回路（１００）の全部または一部の電源が遮断されても、再度電源が復帰した時に電源遮断前に受けていた熱的ストレスの時間を基にして順位の判定を行うことができる。
【００５７】
尚、実施形態１および２は本発明を実施するための一例であり、本発明の趣旨に反しない範囲で回路および機能の追加や削減を行うことができる。
【００５８】
その一例として、実施形態１，２にシステム制御部（１０４）で発行される命令を解読し、その命令が演算要素（１０２）の中のどの演算回路部で実行されるかを順位判定部（１１１）で行う順位判定に加えることをしてもよい。
【００５９】
これは、実施形態１，２の熱的ストレスによる順位判定に加えて、各演算要素（１０２）の中に配置されているどの演算回路部で熱が生じたのかを判定する機能の追加である。
【００６０】
システム制御部（１０４）で発行される命令の解読により、各演算回路部が受けた熱的ストレスの時間を実施形態１または２の処理に従って計測し、各演算要素内部の各演算回路部の熱的ストレスの時間の比較を行い順位判定をする。
【００６１】
この実施形態により、演算要素（１０２）内部の熱的ストレスの分布を基にした順位判定が可能となり、同じ演算要素の中の各演算回路部が受ける熱的ストレスも平均化することが可能となる。
【００６２】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。
【符号の説明】
【００６３】
１００  半導体集積回路
１０１  演算要素
１０２  温度センサ
１０３  演算装置
１０４  システム制御部
１０５  ストレス判定部
１０６  システム制御信号
１０７  温度センサ出力信号
１０８  ストレス判定部出力信号
１１０  時間計測部
１１１  順位判定部
１１２  結果保存部
【図１】
2016045823.tif 000003
【図２】
2016045823.tif 000004
【図３】
2016045823.tif 000005
【図４】
2016045823.tif 000006
【図５】
2016045823.tif 000007
【図６】
2016045823.tif 000008
【図７】
2016045823.tif 000009