(57)【要約】【課題】寿命が長い半導体装置を提供する。【解決手段】このＬＳＩは、２つのＣＰＵ１，２と、ＣＰＵ１，２のうちのいずれか１つのＣＰＵを示す論理レベルのデータ信号が書き込まれた記憶回路４と、リセット信号ＲＥが非活性化レベルにされてＬＳＩのリセットが解除された場合、記憶回路４の記憶データの論理レベルに対応するＣＰＵのみに電源電圧を供給するとともに、記憶回路４の記憶データを現在の論理レベルと異なる論理レベルのデータ信号に書き換える制御回路３，５とを備える。したがって、故障の検知や、厳密なタイミング制御を必要とせずに、ＣＰＵの長寿命化を図ることができる。【選択図】図１
2013069022.tif 000002
【特許請求の範囲】
【請求項１】
リセット信号が活性化レベルにされた場合にリセットされる半導体装置であって、
同じ構成の第１および第２の内部回路と、
それぞれ前記第１および第２の内部回路に対応する第１および第２の論理レベルのうちのいずれかの論理レベルのデータ信号が書き込まれた記憶回路と、
前記リセット信号が非活性化レベルにされて前記半導体装置のリセットが解除された場合、前記第１および第２の内部回路のうちの前記データ信号の論理レベルに対応する内部回路のみに電源電圧を供給するとともに、前記記憶回路のデータ信号を現在の論理レベルと異なる論理レベルのデータ信号に書き換える制御回路とを備える、半導体装置。
【請求項２】
前記制御回路は、さらに、低電力モードが指示された場合は、前記第１および第２の内部回路への電源電圧の供給を停止し、前記低電力モードが解除された場合は、前記記憶回路のデータ信号の論理レベルに対応する内部回路に電源電圧を供給するとともに、前記記憶回路のデータ信号を現在の論理レベルと異なる論理レベルのデータ信号に書き換える、請求項１に記載の半導体装置。
【請求項３】
さらに、前記第１および第２の内部回路のうちの所望の内部回路を選択する選択回路を備え、
前記制御回路は、前記記憶回路のデータ信号の論理レベルに関係なく、前記選択回路によって選択された内部回路に電源電圧を供給する、請求項１または請求項２に記載の半導体装置。
【請求項４】
さらに、前記第１および第２の内部回路の各々が故障したか否かを検出する故障検出回路を備え、
前記制御回路は、前記故障検出回路によって前記第１および第２の内部回路のうちのいずれか１つの内部回路が故障したことが検出された場合、前記記憶回路のデータ信号の論理レベルに関係なく、故障していない方の内部回路に電源電圧を供給する、請求項１または請求項２に記載の半導体装置。
【請求項５】
前記記憶回路は、前記データ信号を不揮発的に記憶する不揮発性メモリを含む、請求項１から請求項４までのいずれかに記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は半導体装置に関し、特に、二重化された内部回路を備えた半導体装置に関する。
【背景技術】
【０００２】
ＬＳＩ(Large Scale Integration)の寿命は、ＬＳＩ内部の他の回路よりも故障する確率が高い回路（たとえば、稼働率が高い回路）の寿命によって決まる。非特許文献１には、時間の経過とともに破壊が起こる現象についての説明がある。酸化膜の経時破壊では、電界強度が大きくなるか、温度が高くなると破壊されるまでの時間が短くなる。また、アルミニウム配線で起こるエレクトロマイグレーションによる故障も、温度が高くなるほど故障するまでの時間が短くなる。このことから、稼動率が高く、かつ温度が高くなる回路部分では、温度の低い回路部分に比べて破壊されるまでの時間が短くなると言える。
【０００３】
特許文献１には、ＣＰＵ（Central Processing Unit：中央処理装置）を二重化し、２つのＣＰＵの両方を常時動作させ、２つのＣＰＵのうちのいずれか一方のＣＰＵに故障が発生した場合は、他方のＣＰＵのみを使用するコンピュータが開示されている。このコンピュータでは、システムを動作させたまま故障側のＣＰＵを交換することができる。
【０００４】
また特許文献２には、処理装置を二重化し、２つの処理装置の致命的障害の発生を監視する手段と、２つの処理装置を監視して障害の発生を予測する手段を備え、それらの手段からの指示信号により、動作させる処理装置を切換える二重化システムが開示されている。
【０００５】
また特許文献３には、液晶を照明する２つのランプを交互に点灯する制御回路を備えた液晶バックライト回路が開示されている。この液晶バックライト回路では、ランプの長寿命化を図ることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０８−１９０４９４号公報
【特許文献２】特開２００１−０３４４９５号公報
【特許文献３】特開平１１−３５２４６０号公報
【非特許文献】
【０００７】
【非特許文献１】ルネサス信頼性ハンドブック、「第４章  半導体デバイスの故障メカニズム」
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１では、２つのＣＰＵの両方を常時動作させていたので、ＣＰＵの寿命を延ばす効果は期待できない。
【０００９】
また、特許文献２では、処理装置が故障したことを検知する必要があり、そのためには処理装置に通電する必要があった。そのため、処理装置の寿命を延ばす効果は小さい。
【００１０】
また、特許文献３では、２つのランプが交互に点灯されていることを人の目では認識できないことが利用されている。しかし、２つのＣＰＵを交互に使用するためには、切換タイミングを厳密に制御して、回路の誤動作を防止する必要がある。このため、２つのＣＰＵを交互に使用することは容易でない。
【００１１】
それゆえに、この発明の主たる目的は、寿命が長い半導体装置を提供することである。
【課題を解決するための手段】
【００１２】
この発明に係る半導体装置は、リセット信号が活性化レベルにされた場合にリセットされる半導体装置であって、同じ構成の第１および第２の内部回路と、それぞれ第１および第２の内部回路に対応する第１および第２の論理レベルのうちのいずれかの論理レベルのデータ信号が書き込まれた記憶回路と、リセット信号が非活性化レベルにされて半導体装置のリセットが解除された場合、第１および第２の内部回路のうちのデータ信号の論理レベルに対応する内部回路のみに電源電圧を供給するとともに、記憶回路のデータ信号を現在の論理レベルと異なる論理レベルのデータ信号に書き換える制御回路とを備えたものである。
【発明の効果】
【００１３】
この発明に係る半導体装置では、内部回路を二重化し、半導体装置のリセットが解除される度に、動作させる内部回路を切換える。したがって、故障の検知や、厳密なタイミング制御を必要とせずに、内部回路の長寿命化、ひいては半導体装置の長寿命化を図ることができる。
【図面の簡単な説明】
【００１４】
【図１】この発明の実施の形態１によるＬＳＩの構成を示すブロック図である。
【図２】図１に示した切換制御回路の構成を示すブロック図である。
【図３】この発明の実施の形態２によるＬＳＩの構成を示すブロック図である。
【図４】実施の形態２の変更例を示すブロック図である。
【図５】この発明の実施の形態３によるＬＳＩの構成を示すブロック図である。
【図６】図５に示した切換制御回路の構成を示すブロック図である。
【図７】実施の形態３の変更例を示すブロック図である。
【図８】この発明の実施の形態４によるＬＳＩの要部を示すブロック図である。
【図９】この発明の実施の形態５によるＬＳＩの構成を示すブロック図である。
【図１０】図９に示した切換制御回路の構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
［実施の形態１］
本願発明の実施の形態１によるＬＳＩは、図１に示すように、２つのＣＰＵ１，２、切換制御回路３、システム・電源制御回路５、入出力切換回路６、周辺回路７を備える。このＬＳＩでは、ＣＰＵが二重化されており、２つのＣＰＵ１，２が設けられている。ＣＰＵ１，２は、それぞれ電源領域Ａ１，Ａ２に設けられている。電源領域Ａ１とＡ２では、電源電圧が別々に供給される。ＣＰＵ１，２は、それぞれ電源領域Ａ１，Ａ２に供給された電源電圧によって駆動される。
【００１６】
切換制御回路３は、リセット信号ＲＥに基いて動作する。ＬＳＩをリセットする場合はリセット信号ＲＥが活性化レベルの「Ｌ」レベルにされ、ＬＳＩのリセットを解除する場合はリセット信号ＲＥは非活性化レベルの「Ｈ」レベルにされる。
【００１７】
切換制御回路３は、ＬＳＩのリセットが解除されたときに記憶回路４の記憶データを参照し、記憶データに基づいてＣＰＵ１，２のうちのどちらのＣＰＵを使用するかを決定し、使用すべきＣＰＵを示す信号φＣをシステム・電源制御回路５および入出力切換回路６に与える。記憶回路４に記憶されたデータ信号が“０”である場合は、信号φＣが「Ｌ」レベルにされてＣＰＵ１が使用される。また、データ信号が“１”である場合は、信号φＣが「Ｈ」レベルにされてＣＰＵ２が使用される。
【００１８】
また図２に示すように、切換制御回路３は、リセット信号ＲＥに応答して記憶回路４の記憶データを書き換える。すなわち、切換制御回路３は、使用すべきＣＰＵを示す信号φＣを出力した後、次回の起動時に備えて記憶回路４の記憶データを書き換える。具体的には、今回のリセット解除時のデータ信号が“０”である場合はデータ信号を“１”に書き換え、今回のリセット解除時のデータ信号が“１”である場合はデータ信号を“０”に書き換える。これにより、ＬＳＩのリセットが解除される度に、使用するＣＰＵが切換えられる。
【００１９】
システム・電源制御回路５は、切換制御回路３からの信号φＣが「Ｌ」レベルである場合は、電源領域Ａ１，Ａ２のうちの電源領域Ａ１のみに電源電圧を供給し、ＣＰＵ１，２のうちのＣＰＵ１のみを活性化させる。また、システム・電源制御回路５は、切換制御回路３からの信号φＣが「Ｈ」レベルである場合は、電源領域Ａ１，Ａ２のうちの電源領域Ａ２のみに電源電圧を供給し、ＣＰＵ１，２のうちのＣＰＵ２のみを活性化させる。
【００２０】
入出力切換回路６は、ＣＰＵ１，２に結合されるとともにバスを介して周辺回路７に結合される。入出力切換回路６は、切換制御回路３からの信号φＣが「Ｌ」レベルである場合はＣＰＵ１と周辺回路７を結合し、信号φＣが「Ｈ」レベルである場合はＣＰＵ２と周辺回路７を結合する。
【００２１】
活性化されたＣＰＵ１または２は、所定のプログラムに従って動作し、周辺回路７から入出力切換回路６を介して与えられたデータに演算・加工を施す。ＣＰＵ１または２で演算・加工されたデータは、入出力切換回路６を介して周辺回路７に与えられる。
【００２２】
次に、このＬＳＩの動作について説明する。リセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられると、ＬＳＩのリセットが解除される。リセット解除時に記憶回路４の記憶データが“０”であるものとする。この場合は、切換制御回路３によって信号φＣが「Ｌ」レベルにされるとともに、記憶データが“１”に書き換えられる。信号φＣが「Ｌ」レベルにされると、システム・電源制御回路５によって電源領域Ａ１，Ａ２のうちの電源領域Ａ１のみに電源電圧が供給され、ＣＰＵ１，２のうちのＣＰＵ１のみが活性化される。また、入出力切換回路６によってＣＰＵ１と周辺回路７が結合され、ＣＰＵ１によってデータの演算・加工が行なわれる。
【００２３】
リセット信号ＲＥが「Ｈ」レベルから「Ｌ」レベルに立ち下げられると、ＬＳＩがリセットされる。次いでリセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられると、ＬＳＩのリセットが解除される。
【００２４】
前回のリセット解除時に記憶回路４の記憶データが“１”に書き換えられているので、切換制御回路３によって信号φＣが「Ｈ」レベルにされるとともに、記憶データが“０”に書き換えられる。信号φＣが「Ｈ」レベルにされると、システム・電源制御回路５によって電源領域Ａ１，Ａ２のうちの電源領域Ａ２のみに電源電圧が供給され、ＣＰＵ１，２のうちのＣＰＵ２のみが活性化される。また、入出力切換回路６によってＣＰＵ２と周辺回路７が結合され、ＣＰＵ２によってデータの演算・加工が行なわれる。以下、同様にして、リセットが解除される度に、使用するＣＰＵが切換えられる。
【００２５】
この実施の形態１では、ＣＰＵを二重化し、ＬＳＩのリセットが解除される度に、使用するＣＰＵを切換え、使用しない方のＣＰＵの電源電圧を遮断する。したがって、各ＣＰＵの稼働率が低下して各ＣＰＵの寿命が延びる。ＣＰＵを多重化しない場合にＬＳＩ内で最も早く寿命を迎える回路がＣＰＵであれば、ＬＳＩ全体の寿命を延ばすことができる。
【００２６】
また、故障検出回路が必要ないので、故障を検出するためにＣＰＵを使用する必要がなく、使用していない側のＣＰＵを完全に休止（電源遮断）させることができる。この場合、通電したまま停止させた場合に比べ、ＣＰＵの寿命が長くなる。
【００２７】
また、故障を予知する回路も必要ない。故障を予知する回路は、電圧や電流、遅延などプロセスに依存した物理特性を測定することで実現するのが一般的だが、これも必要ないため、プロセス（物理特性）が異なるデバイスへ回路を移植することも容易になる。
【００２８】
なお、この実施の形態１では、ＬＳＩ内のＣＰＵを二重化したが、これに限るものではなく、ＬＳＩ内のＣＰＵ以外の回路を二重化してもよいことは言うまでもない。
【００２９】
［実施の形態２］
図３は、この発明の実施の形態２によるＬＳＩの構成を示すブロック図であって、図１と対比される図である。図３を参照して、このＬＳＩが図１のＬＳＩと異なる点は、ＣＰＵ１，２および入出力切換回路６がＣＰＵ１０で置換されている点である。
【００３０】
ＣＰＵ１０は、２つの演算器１１，１２および入出力切換回路１３を含む。このＣＰＵ１０では、演算器が二重化されている。ＣＰＵ１０のうちの演算器１１，１２以外の回路は、電源領域Ａ１０に設けられている。演算器１１，１２は、それぞれ電源領域Ａ１１，Ａ１２に設けられている。電源領域Ａ１０とＡ１１とＡ１２では、電源電圧が別々に供給される。演算器１１，１２は、それぞれ電源領域Ａ１１，Ａ１２に供給された電源電圧によって駆動される。入出力切換回路１３は、電源領域Ａ１０に供給された電源電圧によって駆動される。
【００３１】
切換制御回路３は、リセット信号ＲＥに基いて動作する。ＬＳＩをリセットする場合はリセット信号ＲＥが活性化レベルの「Ｌ」レベルにされ、ＬＳＩのリセットを解除する場合はリセット信号ＲＥは非活性化レベルの「Ｈ」レベルにされる。
【００３２】
切換制御回路３は、ＬＳＩのリセットが解除されたときに記憶回路４の記憶データを参照し、記憶データに基づいて演算器１１，１２のうちのどちらの演算器を使用するかを決定し、使用すべき演算器を示す信号φＣをシステム・電源制御回路５および入出力切換回路１３に与える。記憶回路４に書き込まれたデータ信号が“０”である場合は、信号φＣが「Ｌ」レベルにされて演算器１１が使用される。また、データ信号が“１”である場合は、信号φＣが「Ｈ」レベルにされて演算器１２が使用される。
【００３３】
また、切換制御回路３は、リセット信号ＲＥに応答して記憶回路４の記憶データを書き換える。すなわち、切換制御回路３は、使用すべき演算器を示す信号φＣを出力した後、次回の起動時に備えて記憶回路４のデータ信号を書き換える。具体的には、今回のリセット解除時のデータ信号が“０”である場合はデータ信号を“１”に書き換え、今回のリセット解除時のデータ信号が“１”である場合はデータ信号を“０”に書き換える。これにより、ＬＳＩのリセットが解除される度に、使用する演算器が切換えられる。
【００３４】
システム・電源制御回路５は、切換制御回路３からの信号φＣが「Ｌ」レベルである場合は、電源領域Ａ１０〜Ａ１２のうちの電源領域Ａ１０，Ａ１１のみに電源電圧を供給し、入出力切換回路１３を活性化させるとともに、演算器１１，１２のうちの演算器１１のみを活性化させる。また、システム・電源制御回路５は、切換制御回路３からの信号φＣが「Ｈ」レベルである場合は、電源領域Ａ１０〜Ａ１２のうちの電源領域Ａ１０，Ａ１２のみに電源電圧を供給し、入出力切換回路１３を活性化させるとともに、演算器１１，１２のうちの演算器１２のみを活性化させる。
【００３５】
入出力切換回路１３は、演算器１１，１２に結合されるとともにバスを介して周辺回路７に結合される。入出力切換回路１３は、切換制御回路３からの信号φＣが「Ｌ」レベルである場合は演算器１１と周辺回路７を結合し、信号φＣが「Ｈ」レベルである場合は演算器１２と周辺回路７を結合する。
【００３６】
活性化された演算器１１または１２は、所定のプログラムに従って動作し、周辺回路７から入出力切換回路１３を介して与えられたデータに演算・加工を施す。演算器１１または１２で演算・加工されたデータは、入出力切換回路１３を介して周辺回路７に与えられる。
【００３７】
次に、このＬＳＩの動作について説明する。リセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられると、ＬＳＩのリセットが解除される。リセット解除時に記憶回路４の記憶データが“０”であるものとする。この場合は、切換制御回路３によって信号φＣが「Ｌ」レベルにされるとともに、記憶データが“１”に書き換えられる。信号φＣが「Ｌ」レベルにされると、システム・電源制御回路５によって電源領域Ａ１０〜Ａ１２のうちの電源領域Ａ１０，Ａ１１のみに電源電圧が供給され、入出力切換回路１３が活性化されるとともに、演算器１１，１２のうちの演算器１１のみが活性化される。また、入出力切換回路１３によって演算器１１と周辺回路７が結合され、演算器１１によってデータの演算・加工が行なわれる。
【００３８】
リセット信号ＲＥが「Ｈ」レベルから「Ｌ」レベルに立ち下げられると、ＬＳＩがリセットされる。次いでリセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられると、ＬＳＩのリセットが解除される。
【００３９】
前回のリセット解除時に記憶回路４の記憶データが“１”に書き換えられているので、切換制御回路３によって信号φＣが「Ｈ」レベルにされるとともに、記憶データが“０”に書き換えられる。信号φＣが「Ｈ」レベルにされると、システム・電源制御回路５によって電源領域Ａ１０〜Ａ１２のうちの電源領域Ａ１０，Ａ１２のみに電源電圧が供給され、入出力切換回路１３が活性化されるとともに、演算器１１，１２のうちの演算器１２のみが活性化される。また、入出力切換回路１３によって演算器１２と周辺回路７が結合され、演算器１２によってデータの演算・加工が行なわれる。以下、同様にしてリセットが解除される度に、使用する演算器が切換えられる。
【００４０】
この実施の形態２では、ＣＰＵ１０内の演算器を二重化し、ＬＳＩのリセットが解除される度に、使用する演算器を切換え、使用しない方の演算器の電源電圧を遮断する。したがって、各演算器の稼働率が低下して各演算器の寿命が延びる。演算器を多重化しない場合にＬＳＩ内で最も早く寿命を迎える回路が演算器あれば、ＬＳＩ全体の寿命を延ばすことができる。
【００４１】
また、故障検出回路が必要ないので、故障を検出するために演算器を使用する必要がなく、使用していない側の演算器を完全に休止（電源遮断）させることができる。この場合、通電したまま停止させた場合に比べ、演算器の寿命が長くなる。
【００４２】
また、故障を予知する回路も必要ない。故障を予知する回路は、電圧や電流、遅延などプロセスに依存した物理特性を測定することで実現するのが一般的だが、これも必要ないため、プロセス（物理特性）が異なるデバイスへ回路を移植することも容易になる。
【００４３】
なお、この実施の形態２では、ＣＰＵ１０内の演算器を二重化したが、これに限るものではなく、ＣＰＵ１０内の演算器以外の回路を二重化してもよいことは言うまでもない。たとえば、図４に示すように、ＣＰＵ１０内のレジスタファイルを二重化してもよい。レジスタファイルは、データを一時的に記憶する回路である。図４では、図３の演算器１１，１２がそれぞれレジスタファイル１５，１６で置換されている。
【００４４】
信号φＣが「Ｌ」レベルの場合は、電源領域Ａ１０〜Ａ１２のうちの電源領域Ａ１０，Ａ１１のみに電源電圧が供給されてレジスタファイル１５，１６のうちのレジスタファイル１５のみが活性化され、入出力切換回路１３によってレジスタファイル１５と周辺回路７が結合される。
【００４５】
また、信号φＣが「Ｌ」レベルの場合は、電源領域Ａ１０〜Ａ１２のうちの電源領域Ａ１０，Ａ１２のみに電源電圧が供給されてレジスタファイル１５，１６のうちのレジスタファイル１６のみが活性化され、入出力切換回路１３によってレジスタファイル１６と周辺回路７が結合される。この変更例では、レジスタファイルの寿命を長くしてＬＳＩの長寿命化を図ることができる。
【００４６】
また、実施の形態１，２では、記憶回路４としてフラッシュメモリのような不揮発性メモリを使用することが好ましい。記憶回路４として揮発性メモリを使用すると、ＬＳＩ自体への電源電圧の供給が断たれた場合、次の電源投入時の記憶回路４の記憶データの論理は不定になるので、ＣＰＵ１，２（演算器１１，１２、またはレジスタファイル１５，１６）の切換を完全には交互に行なえない場合がある。しかし、記憶回路４として不揮発性メモリを使用すると、ＬＳＩ自体への電源電圧の供給が断たれた場合でも、リセット解除の度にＣＰＵ１，２（演算器１１，１２、またはレジスタファイル１５，１６）の切換を完全に交互に行うことができる。この場合は、ＬＳＩ自体への電源電圧の供給が頻繁に断たれる使用条件においても、二重化した回路の切換えを交互に行ない、回路の寿命を延ばすことができる。
【００４７】
［実施の形態３］
図５は、この発明の実施の形態３によるＬＳＩの構成を示すブロック図であって、図１と対比される図である。図５を参照して、このＬＳＩが図１のＬＳＩと異なる点は、切換制御回路３が切換制御回路２０で置換され、システム・電源制御回路５から切換制御回路２０に信号φＰが出力される点である。
【００４８】
実施の形態３のＬＳＩは、ＣＰＵ１，２の両方を非活性化させて低消費電力化を図るスリープモードを有する。システム・電源制御回路５は、通常モード時において信号φＣが「Ｌ」レベルである場合は、電源領域Ａ１，Ａ２のうちの電源領域Ａ１のみに電源電圧を供給してＣＰＵ１，２のうちのＣＰＵ１のみを活性化させるとともに、信号φＰを「Ｈ」レベルにする。
【００４９】
また、システム・電源制御回路５は、通常モード時において信号φＣが「Ｈ」レベルである場合は、電源領域Ａ１，Ａ２のうちの電源領域Ａ２のみに電源電圧を供給してＣＰＵ１，２のうちのＣＰＵ２のみを活性化させるとともに、信号φＰを「Ｈ」レベルにする。
【００５０】
また、システム・電源制御回路５は、スリープモード時は、電源領域Ａ１，Ａ２への電源電圧の供給を遮断してＣＰＵ１，２を非活性化させるとともに、信号φＰを「Ｌ」レベルにする。つまり、電源領域Ａ１またはＡ２に電源電圧が供給されている場合は信号φＰは「Ｈ」レベルにされ、電源領域Ａ１，Ａ２に電源電圧が供給されていない場合は信号φＰは「Ｌ」レベルにされる。
【００５１】
切換制御回路２０は、実施の形態１と同様に、リセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられたときに（すなわち、ＬＳＩのリセットが解除されたときに）、記憶回路４の記憶データに基づいて、使用すべきＣＰＵを示す信号φＣをシステム・電源制御回路５および入出力切換回路６に与えるとともに、記憶回路４の記憶データを書き換える。
【００５２】
また、切換制御回路２０は、信号φＰが「Ｌ」レベルから「Ｈ」レベルに立ち上げられたときに（すなわち、電源領域Ａ１，Ａ２への電源電圧の供給が再開されたときに）、記憶回路４の記憶データに基づいて、使用すべきＣＰＵを示す信号φＣをシステム・電源制御回路５および入出力切換回路６に与えるとともに、記憶回路４の記憶データを書き換える。
【００５３】
図６に示すように切換制御回路２０は、図２の切換制御回路３にＡＮＤゲート２１を追加したものである。ＡＮＤゲート２１は、リセット信号ＲＥと信号φＰの論理積信号φ２１を出力する。切換制御回路２０は、信号φ２１が「Ｌ」レベルから「Ｈ」レベルに立ち上げられた場合に、使用すべきＣＰＵを示す信号φＣを出力した後、次回の起動時に備えて記憶回路４の記憶データを書き換える。
【００５４】
具体的には、今回のリセット解除時の記憶データが“０”である場合は記憶データを“１”に書き換え、今回のリセット解除時の記憶データが“１”である場合は記憶データを“０”に書き換える。これにより、ＬＳＩのリセットが解除される度に使用するＣＰＵが切換えられるとともに、スリープモードから通常モードに移行する度に使用するＣＰＵが切換えられる。他の構成および動作は、実施の形態１と同じであるので、その説明は繰り返さない。
【００５５】
この実施の形態３では、リセットされる頻度に比べ、スリープモードなどによってＣＰＵ１，２への電源電圧の供給が遮断される頻度が高い用途のＬＳＩにおいて、ＣＰＵ１，２の使用頻度の偏りを小さくし、ＣＰＵ１，２の各々の寿命を延ばすことができる。また、切換制御回路２０における記憶回路４の回路面積を最小にすることができる。
【００５６】
なお、図３および図４のＬＳＩにおいても、信号φＰを生成するとともに切換制御回路３を切換制御回路２０で置換してもよい。
【００５７】
図７は、実施の形態３の変更例を示すブロック図であって、図６と対比される図である。図６を参照して、この変更例では、切換制御回路２０が切換制御回路２５で置換される。切換制御回路２５は、記憶回路４，２６および判断回路２７を含む。
【００５８】
切換制御回路２５は、実施の形態１と同様に、リセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられたときに（すなわち、ＬＳＩのリセットが解除されたときに）、記憶回路４の記憶データに基づいて、使用すべきＣＰＵを示す信号φＣ１を判断回路２７に与えるとともに、記憶回路４の記憶データを書き換える。
【００５９】
また、切換制御回路２５は、信号φＰが「Ｌ」レベルから「Ｈ」レベルに立ち上げられたときに（すなわち、電源領域Ａ１，Ａ２への電源電圧の供給が再開されたときに）、記憶回路２６の記憶データに基づいて、使用すべきＣＰＵを示す信号φＣ２を判断回路２７に与えるとともに、記憶回路２６の記憶データを書き換える。
【００６０】
判断回路２７は、信号φＣ１，φＣ２のうちのいずれか一方の信号を選択し、選択した信号を信号φＣとしてシステム・電源回路５および入出力切換回路６に与える。その際、判断回路２７は、ＣＰＵの切換の頻度などの状況に応じて信号φＣ１，φＣ２のうちの１つの信号を選択する。また、判断回路２７は、２つの信号φＣ１，φＣ２を加味した信号（たとえば、排他的論理和信号）を信号φＣとして出力してもよい。また、２つの記憶回路４，２６のうちの一方の記憶回路を揮発性メモリで構成し、他方の記憶回路を不揮発性メモリで構成してもよい。
【００６１】
この変更例では、リセットの情報（信号ＲＥ）と電源電圧の供給／遮断情報（信号φＰ）とを切り分けて制御することができる。
【００６２】
［実施の形態４］
図８は、この発明の実施の形態４によるＬＳＩの要部を示すブロック図である。このＬＳＩが実施の形態１のＬＳＩと異なる点は、切換制御回路３が切換制御回路３０で置換されている点である。切換制御回路３０は、記憶回路４、制御レジスタ３１、および判断回路３２を含む。
【００６３】
切換制御回路３０は、実施の形態１と同様に、リセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられたときに（すなわち、ＬＳＩのリセットが解除されたときに）、記憶回路４の記憶データに基づいて、使用すべきＣＰＵを示す信号φＣ１を判断回路３２に与えるとともに、記憶回路４の記憶データを書き換える。
【００６４】
制御レジスタ３１には、２ビットのデータ信号Ｄ１，Ｄ２が格納される。制御レジスタ３１は、不揮発性メモリであっても、揮発性メモリであっても構わない。切換制御回路３０に図２の切換制御回路３と同じ動作をさせる場合は、データ信号Ｄ１，Ｄ２の論理は“００”または“０１”にされる。記憶回路４の記憶データに関係なくＣＰＵ１を活性化させる場合は、データ信号Ｄ１，Ｄ２の論理は“１０”にされる。記憶回路４の記憶データに関係なくＣＰＵ２を選択する場合は、データ信号Ｄ１，Ｄ２の論理は“１１”にされる。制御レジスタ３１は、データ信号Ｄ１，Ｄ２を保持するとともに判断回路３２に与える。
【００６５】
判断回路３２は、データ信号Ｄ１，Ｄ２の倫理が“００”または“０１”である場合は、記憶回路４の記憶データに基づいて生成された信号φＣ１を信号φＣとしてシステム・電源制御回路５および入出力切換回路６に与える。
【００６６】
また、判断回路３２は、データ信号Ｄ１，Ｄ２の論理が“１０”である場合は、記憶回路４の記憶データに関係なく、信号φＣを「Ｌ」レベルにしてＣＰＵ１を活性化させる。また、判断回路３２は、データ信号Ｄ１，Ｄ２の論理が“１１”である場合は、記憶回路４の記憶データに関係なく、信号φＣを「Ｈ」レベルにしてＣＰＵ２を活性化させる。他の構成および動作については、実施の形態１と同じであるので、その説明は繰り返さない。
【００６７】
この実施の形態４では、ＣＰＵ１，２のうちのいずれかに故障があると疑われる場合に、ＣＰＵの切換を一時的に無効にすることにより、ＬＳＩのデバッグを容易に行なうことができる。
【００６８】
［実施の形態５］
図９は、この発明の実施の形態５によるＬＳＩの構成を示すブロック図であって、図１と対比される図である。図９を参照して、このＬＳＩが図１のＬＳＩと異なる点は、切換制御回路３が切換制御回路４０で置換され、ＢＩＳＴ（Built In Self Test）回路４２が追加されている点である。
【００６９】
ＢＩＳＴ回路４２は、故障検出回路であり、ＣＰＵ１，２の各々が故障しているか否かをテストし、テスト結果を示す信号φＥを切換制御回路４０に出力する。信号φＥは、たとえば２ビットのデータ信号を含むデータコードである。切換制御回路４０は、図１０に示すように、記憶回路４および判断回路４１を含む。
【００７０】
切換制御回路４０は、実施の形態１と同様に、リセット信号ＲＥが「Ｌ」レベルから「Ｈ」レベルに立ち上げられたときに（すなわち、ＬＳＩのリセットが解除されたときに）、記憶回路４の記憶データに基づいて、使用すべきＣＰＵを示す信号φＣ１を判断回路４１に与えるとともに、記憶回路４の記憶データを書き換える。
【００７１】
判断回路４１は、信号φＥに基づいてＣＰＵ１，２が両方とも故障していないと判断した場合は、記憶回路４の記憶データに基づいて生成された信号φＣ１を信号φＣとしてシステム・電源制御回路５および入出力切換回路６に与える。
【００７２】
また、判断回路４１は、信号φＥに基づいてＣＰＵ１，２のうちのＣＰＵ２が故障していると判断した場合は、記憶回路４の記憶データに関係なく、信号φＣを「Ｌ」レベルにしてＣＰＵ１を活性化させる。また、判断回路４１は、信号φＥに基づいてＣＰＵ１，２のうちのＣＰＵ１が故障していると判断した場合は、記憶回路４の記憶データに関係なく、信号φＣを「Ｈ」レベルにしてＣＰＵ２を活性化させる。他の構成および動作については、実施の形態１と同じであるので、その説明は繰り返さない。
【００７３】
この実施の形態５では、ＣＰＵ１，２のうちのいずれか１つのＣＰＵが故障している場合でも、故障していない方のＣＰＵを使用し続けることにより、ＬＳＩの寿命を延ばすことができる。なお、上記実施の形態１〜５および変更例を適宜組み合わせてもよいことは言うまでもない。
【００７４】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００７５】
１，２  ＣＰＵ、３，２０，２５，３０，４０  切換制御回路、４，２６  記憶回路、５  システム・電源制御回路、６，１３  入出力切換回路、７  周辺回路、１１，１２  演算器、１５，１６  レジスタファイル、２０  切換制御回路、２１  ＡＮＤゲート、２７，３２，４１  判断回路、３１  制御レジスタ、４２  ＢＩＳＴ回路、Ａ１，Ａ２，Ａ１０〜Ａ１２  電源領域。
【図１】
2013069022.tif 000003
【図２】
2013069022.tif 000004
【図３】
2013069022.tif 000005
【図４】
2013069022.tif 000006
【図５】
2013069022.tif 000007
【図６】
2013069022.tif 000008
【図７】
2013069022.tif 000009
【図８】
2013069022.tif 000010
【図９】
2013069022.tif 000011
【図１０】
2013069022.tif 000012