(57)【要約】【課題】自動車に搭載されるマルチプロセッサＬＳＩの機能安全を担保するための当該ＬＳＩの故障診断において、当該ＬＳＩが実行すべき標準処理を犠牲にしない適切なタイミングでその故障診断を行なうための、機能・プログラムなどのオーバーヘッドを減らす。【解決手段】マルチプロセッサＬＳＩは、搭載される複数のプロセッサコアを並列動作させることによって標準処理を実行する通常動作モードと、複数のプロセッサコアのうちの一部のプロセッサコアによって故障診断処理を実行し、他の一部のプロセッサコアによって前記標準処理を継続する、故障診断モードとを有する。そのマルチプロセッサＬＳＩが搭載される自動車におけるアイドリングストップ信号がアサートされた時に、通常動作モードから故障診断モードに遷移し、ネゲートされた時に通常動作モードに復帰する。【選択図】図２
2017102633.tif 000002
【特許請求の範囲】
【請求項１】
自動車に搭載される情報処理装置であって、
複数のプロセッサを備え、
前記複数のプロセッサは並列動作によって標準処理を実行する通常動作モードと、前記複数のプロセッサのうちの一部のプロセッサによって故障診断処理を実行し、他の一部のプロセッサによって前記標準処理を継続する、故障診断モードとを有し、
前記自動車におけるアイドリングストップ信号がアサートされた時に、前記通常動作モードから前記故障診断モードに遷移し、前記アイドリングストップ信号がネゲートされた時に、前記故障診断モードから前記通常動作モードに復帰する、
情報処理装置。
【請求項２】
請求項１において、前記情報処理装置は、アイドリングストップ制御ユニットと、前記複数のプロセッサのうちの少なくとも２個のプロセッサを有する半導体集積回路装置とを含み、
前記アイドリングストップ制御ユニットは、アイドリングストップ信号生成部と故障診断コントローラとを備え、
前記アイドリングストップ信号生成部は、前記アイドリングストップ信号を生成して前記故障診断コントローラに供給し、
前記故障診断コントローラは、前記半導体集積回路装置に診断プログラムを供給し、前記アイドリングストップ信号に基づいて、前記半導体集積回路装置に診断モードを設定することにより、前記半導体集積回路装置に故障診断を実行させ、前記半導体集積回路装置から故障診断結果を収集する、
情報処理装置。
【請求項３】
請求項２において、
前記故障診断コントローラは、前記故障診断を前回実行してからの経過時間を計測可能であり、
前記アイドリングストップ信号がアサートされ、前記経過時間が所定の閾値を超えている場合に、前記半導体集積回路装置に次の故障診断を実行させる、
情報処理装置。
【請求項４】
請求項３において、
前記故障診断コントローラは、前記故障診断の完了前に前記アイドリングストップ信号がネゲートされた場合に、前記半導体集積回路装置に前記故障診断の途中経過データを記憶させ、
前記アイドリングストップ信号がアサートされたときに、前記途中経過データが記憶されているときには、当該途中経過データに基づく状態から、前記半導体集積回路装置に故障診断を再開させる、
情報処理装置。
【請求項５】
請求項１において、前記情報処理装置は、アイドリングストップ制御ユニットと、前記複数のプロセッサのうちの少なくとも２個のプロセッサをそれぞれ有する複数の半導体集積回路装置とを含み、
前記アイドリングストップ制御ユニットは、前記アイドリングストップ信号を生成して前記複数の半導体集積回路装置に供給し、
前記複数の半導体集積回路装置は、それぞれ故障診断コントローラを有し、
前記故障診断コントローラは、当該半導体集積回路装置に搭載される複数のプロセッサに診断プログラムを供給し、前記アイドリングストップ信号に基づいて、当該複数のプロセッサに診断モードを設定することにより、当該複数のプロセッサに故障診断を実行させ、当該複数のプロセッサから故障診断結果を収集する、
情報処理装置。
【請求項６】
請求項５において、
前記故障診断コントローラは、前記故障診断を前回実行してからの経過時間を計測可能であり、
前記アイドリングストップ信号がアサートされ、前記経過時間が所定の閾値を超えている場合に、次の故障診断を実行させる、
情報処理装置。
【請求項７】
請求項６において、
前記故障診断コントローラは、前記故障診断の完了前に前記アイドリングストップ信号がネゲートされた場合に、前記故障診断の途中経過データを記憶し、
前記アイドリングストップ信号がアサートされたときに、前記途中経過データが記憶されているときには、当該途中経過データに基づく状態から故障診断を再開させる、
情報処理装置。
【請求項８】
請求項１において、前記情報処理装置は、アイドリングストップ制御ユニットと、前記複数のプロセッサのうちの少なくとも２個のプロセッサをそれぞれ有する複数の半導体集積回路装置とを含み、
前記アイドリングストップ制御ユニットは、前記アイドリングストップ信号を生成して前記複数の半導体集積回路装置に並列に供給し、
前記複数の半導体集積回路装置は、診断終了信号を、前記複数の半導体集積回路装置うちの第１の半導体集積回路装置から順次次段の半導体集積回路装置に供給し、最終段の半導体集積回路装置から前記第１の半導体集積回路装置に供給し、
前記複数の半導体集積回路装置は、それぞれ故障診断コントローラを有し、
前記故障診断コントローラは、当該半導体集積回路装置に搭載される複数のプロセッサに診断プログラムを供給し、前段の半導体集積回路装置から供給される診断終了信号と前記アイドリングストップ信号とに基づいて、当該複数のプロセッサに診断モードを設定することにより、当該複数のプロセッサに故障診断を実行させ、当該複数のプロセッサから故障診断結果を収集し、当該半導体集積回路装置に搭載される前記複数のプロセッサの全てによる故障診断を完了したときに、診断終了信号を次段の半導体集積回路装置に対して出力する、
情報処理装置。
【請求項９】
請求項８において、
前記第１の半導体集積回路装置に搭載される故障診断コントローラは、前記故障診断を前回実行してからの経過時間を計測可能であり、
前記アイドリングストップ信号がアサートされ、前記経過時間が所定の閾値を超えている場合に、前記第１の半導体集積回路装置における次の故障診断を実行させる、
情報処理装置。
【請求項１０】
請求項９において、
前記故障診断コントローラは、前記故障診断の完了前に前記アイドリングストップ信号がネゲートされた場合に、前記故障診断の途中経過データを記憶し、
前記アイドリングストップ信号がアサートされたときに、前記途中経過データが記憶されているときには、当該途中経過データに基づく状態から故障診断を再開させる、
情報処理装置。
【請求項１１】
自動車に搭載され、複数のプロセッサを備える半導体集積回路装置であって、
前記複数のプロセッサは並列動作によって標準処理を実行する通常動作モードと、前記複数のプロセッサのうちの１個のプロセッサによって故障診断処理を実行し、他のプロセッサによって前記標準処理を継続する、故障診断モードとを有し、
前記自動車におけるアイドリングストップ信号がアサートされた時に、前記通常動作モードから前記故障診断モードに遷移し、前記アイドリングストップ信号がネゲートされた時に、前記故障診断モードから前記通常動作モードに復帰する、
半導体集積回路装置。
【請求項１２】
請求項１１において、前記半導体集積回路装置には、前記アイドリングストップ信号のアサートまたはネゲートに基づいて、診断モードが設定され、
前記半導体集積回路装置は、設定された前記診断モードにしたがって、前記通常動作モードから前記故障診断モードへの前記遷移、及び、前記故障診断モードから前記通常動作モードへの前記復帰を実行し、前記故障診断モードにおける診断結果を出力する、
半導体集積回路装置。
【請求項１３】
請求項１２において、前記半導体集積回路装置は、前記故障診断処理の実行中に、前記診断モードの設定によって、前記故障診断モードから前記通常動作モードへの前記復帰が指示されたときには、前記故障診断処理の途中経過を保持し、次回前記通常動作モードから前記故障診断モードへの遷移が指示されたときに、保持されている途中経過に基づいて、故障診断処理を再開する、
半導体集積回路装置。
【請求項１４】
請求項１１において、
前記半導体集積回路装置には、前記アイドリングストップ信号が外部から入力され、
前記半導体集積回路装置は、故障診断コントローラをさらに有し、
前記故障診断コントローラは、前記複数のプロセッサに診断プログラムを供給し、前記アイドリングストップ信号に基づいて、前記診断モードを設定することにより、前記複数のプロセッサに順次故障診断を実行させ、前記複数のプロセッサから故障診断結果を収集する、
半導体集積回路装置。
【請求項１５】
請求項１４において、
前記故障診断コントローラは、前記故障診断を前回実行してからの経過時間を計測可能であり、
前記アイドリングストップ信号がアサートされ、前記経過時間が所定の閾値を超えている場合に、次の故障診断を実行させる、
半導体集積回路装置。
【請求項１６】
請求項１５において、
前記故障診断コントローラは、前記故障診断の完了前に前記アイドリングストップ信号がネゲートされた場合に、前記故障診断の途中経過データを記憶し、
前記アイドリングストップ信号がアサートされたときに、前記途中経過データが記憶されているときには、当該途中経過データに基づく状態から故障診断を再開させる、
半導体集積回路装置。
【請求項１７】
請求項１１において、
前記半導体集積回路装置には、前記アイドリングストップ信号と前段診断終了信号とが外部から入力され、
前記半導体集積回路装置は、故障診断コントローラをさらに有し、診断終了信号を出力し、
前記故障診断コントローラは、前記複数のプロセッサに診断プログラムを供給し、前記前段診断終了信号と前記アイドリングストップ信号とに基づいて、前記診断モードを設定することにより、前記複数のプロセッサに順次故障診断を実行させ、前記複数のプロセッサから故障診断結果を収集し、前記複数のプロセッサの全てによる故障診断を完了したときに、前記診断終了信号をアサートする、
半導体集積回路装置。
【請求項１８】
請求項１７において、
前記半導体集積回路装置には、タイマーイネーブル情報が設定可能であり、
前記故障診断コントローラは、前記故障診断を前回実行してからの経過時間を計測可能であり、
前記タイマーイネーブル情報がアサートされている場合には、前記アイドリングストップ信号がアサートされ、前記経過時間が所定の閾値を超えているときに、前記診断モードを設定し、
前記タイマーイネーブル情報がネゲートされている場合には、前記アイドリングストップ信号がアサートされ、前記前段診断終了信号がアサートされたときに、前記診断モードを設定する、
半導体集積回路装置。
【請求項１９】
請求項１８において、
前記故障診断コントローラは、前記故障診断の完了前に前記アイドリングストップ信号がネゲートされた場合に、前記故障診断の途中経過データを記憶し、
前記アイドリングストップ信号がアサートされたときに、前記途中経過データが記憶されているときには、当該途中経過データに基づく状態から故障診断を再開させる、
半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および半導体集積回路装置（ＬＳＩ：Large Scale Integrated circuit）に関し、特に自動車に搭載され複数のプロセッサを備える半導体集積回路装置を含む情報処理装置の故障診断に好適に利用できるものである。
【背景技術】
【０００２】
自動車に搭載される半導体装置の機能安全を担保するためには、標準処理を犠牲にすることがない、適切なタイミングでその故障診断を行なうことが有効である。
【０００３】
特許文献１には、標準処理の実行速度に支障をきたすことなく複数のＣＰＵ（Central Processing Unit）コアの中から異常が発生したＣＰＵコアを特定することができる、故障診断システムが開示されている。同文献には、故障診断システムが適用されるシステムの一例として、ＣＰＵコア０とＣＰＵコア１により構成されるマルチＣＰＵコアのマイコンが示されており、ＯＳによりＣＰＵコア０と１はそれぞれ個別にＳＭＰモードとＡＭＰモードの一方から他方に切り替えられて動作するとされる。ここで、ＳＭＰ（Symmetric Multi-Processing）モードとは、１つのＯＳがＣＰＵコア０とＣＰＵコア１及びメモリを共有し、ＯＳが処理負荷の少ないＣＰＵコアにタスクを動的に割り当てる処理態様とされる。一方、ＡＭＰ（Asymmetric Multi-Processing）モードとは、ＣＰＵコアに割り当てられるタスクが予め定められている処理態様であるとされる。故障診断システムが適用されたマルチＣＰＵコアのマイコンでは、通常時はＣＰＵコア０とＣＰＵコア１が共にＳＭＰモードで標準処理を実行し、故障診断を行うときには、一方のＣＰＵコアをＡＭＰモードに切替えて故障診断のタスクを実行させ、他方のＣＰＵコアはＳＭＰモードのまま標準処理を継続させる。このとき、ＯＳは、故障診断のタスクを実行させるＣＰＵコアをＳＭＰモードからＡＭＰモードに切替える前に、処理負荷を確認して片方のＣＰＵコアのみで標準処理を行なっても実行速度に支障がないことを確認することによって、故障診断を行っても標準処理が滞ることなく実行されることを保証するとされる。同文献に記載されるマルチＣＰＵコアのマイコンは、これを実現するために、タスクキューを監視して将来の処理負荷を予測可能とする負荷予測部を備える。また、標準処理時に使用するバスと故障診断時に使用するバスとは別々に設けられている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２１８２７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１について本発明者が検討した結果、以下のような新たな課題があることがわかった。
【０００６】
処理負荷の予測を行うための機能及びプログラム（例えばタスクキューと負荷予測部）が必要となり、故障診断を行っても標準処理が滞ることなく実行されることを保証するためのオーバーヘッドとなっていることがわかった。
【０００７】
このような課題を解決するための手段を以下に説明するが、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
一実施の形態によれば、下記の通りである。
【０００９】
すなわち、自動車に搭載される情報処理装置であって、複数のプロセッサを備える。複数のプロセッサを並列動作させることによって標準処理を実行する通常動作モードと、複数のプロセッサのうちの一部のプロセッサによって故障診断処理を実行し、他の一部のプロセッサによって前記標準処理を継続する、故障診断モードとを有する。自動車におけるアイドリングストップ信号がアサートされた時に、通常動作モードから故障診断モードに遷移し、アイドリングストップ信号がネゲートされた時に、故障診断モードから通常動作モードに復帰させる。
【発明の効果】
【００１０】
前記一実施の形態によって得られる効果を簡単に説明すれば下記のとおりである。
【００１１】
すなわち、複数のプロセッサの処理負荷の予測を行うための機能及びプログラムが不要となり、標準処理を犠牲にすることなく故障診断が実行されることを保証するためのオーバーヘッドを大幅に減らすことができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、代表的な実施の形態に係る情報処理装置の構成例を模式的に示す説明図である。
【図２】図２は、代表的な実施の形態に係る情報処理装置の動作例を模式的に示す説明図である。
【図３】図３は、情報処理装置の中央制御方式の構成例（実施形態２）を示すブロック図である。
【図４】図４は、実施形態２の半導体集積回路装置（ＬＳＩ）の構成例を示すブロック図である。
【図５】図５は、実施形態２及び３の情報処理装置の動作例を示すフローチャートである。
【図６】図６は、実施形態２及び３の情報処理装置の別の動作例を示すフローチャート（前半）である。
【図７】図７は、実施形態２及び３の情報処理装置の別の動作例を示すフローチャート（後半）である。
【図８】図８は、情報処理装置の分散処理方式（パラレル実行）の構成例（実施形態３）を示すブロック図である。
【図９】図９は、実施形態３の半導体集積回路装置（ＬＳＩ）の構成例を示すブロック図である。
【図１０】図１０は、情報処理装置の分散処理方式（シリアル実行）の構成例（実施形態４）を示すブロック図である。
【図１１】図１１は、実施形態４の半導体集積回路装置（ＬＳＩ）の構成例を示すブロック図である。
【図１２】図１２は、実施形態４の情報処理装置の第１及び第２の動作例を示すフローチャート（初段と初段以外の段のＬＳＩに共通のフロー）である。
【図１３】図１３は、実施形態４の情報処理装置の第１の動作例を示すフローチャート（初段のＬＳＩによるフロー）である。
【図１４】図１４は、実施形態４の情報処理装置の第１の動作例を示すフローチャート（初段以外の段のＬＳＩによるフロー）である。
【図１５】図１５は、実施形態４の情報処理装置の第２の動作例を示すフローチャート（初段のＬＳＩによるフロー）である。
【図１６】図１６は、実施形態４の情報処理装置の第２の動作例を示すフローチャート（初段以外の段のＬＳＩによるフロー）である。
【発明を実施するための形態】
【００１３】
実施の形態について詳述する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。一つの図面内に同一の機能を有する要素が複数個含まれる場合には枝番を付して示す。ただし、本願で言う同一の機能とは、一定水準における同一性を満たせば足り、下位概念における種々の変形例を含む。例えば、「プロセッサ」に符号「１」を付すとき、符号「１」に枝番を付した符号で表されるプロセッサには、フォンノイマン型のプロセッサ、ハーバードアーキテクチャのプロセッサ、ＣＰＵ、ＤＳＰ（Digital Signal Processor）、特殊な演算に特化されたアクセラレータなど、その図面を引用する実施形態の要旨を逸脱しない範囲において種々の変形例が含まれ得る。
【００１４】
〔実施形態１〕
図１は、代表的な実施の形態に係る情報処理装置２０の構成例を模式的に示す説明図であり、図２はその動作例を模式的に示す説明図である。
【００１５】
情報処理装置２０は、自動車に搭載される電子制御ユニット（ＥＣＵ：Electronic Control Unit）などで構成される情報処理装置であって、複数のプロセッサ１＿１、１＿２、…、１＿ｍ、１＿ｍ＋１、…１＿ｎを備える。
【００１６】
情報処理装置２０は、複数のプロセッサ１＿１、１＿２、…、１＿ｎは並列動作によって標準処理を実行する通常動作モードと、一部のプロセッサ（１＿ｍ＋１、…１＿ｎ）によって故障診断処理を実行し、他の一部のプロセッサ（１＿１、１＿２、…、１＿ｍ）によって標準処理を継続する、故障診断モードとを有する。自動車におけるアイドリングストップ信号がアサートされた時に、情報処理装置２０は、通常動作モードから故障診断モードに遷移し、アイドリングストップ信号がネゲートされた時に、故障診断モードから通常動作モードに復帰する。
【００１７】
図１に示されるように、複数のプロセッサ１＿１、１＿２、…、１＿ｎは、例えば、ＥＣＵを構成する複数のＬＳＩに搭載されるＣＰＵコアであり、情報処理装置２０はマルチコアＣＰＵ故障診断コントローラ５を備える。マルチコアＣＰＵ故障診断コントローラ５は、複数のＣＰＵコア１＿１、１＿２、…、１＿ｎまたはそれらが搭載されているＬＳＩに対して、診断プログラムを供給し、診断モードを設定することによって、各ＣＰＵコア１＿１、１＿２、…、１＿ｎに故障診断を実行させ、その診断結果を収集する。
【００１８】
ＥＣＵを構成するＬＳＩが、複数のＣＰＵコアを有するマルチプロセッサＬＳＩであるときには、通常動作モードでは、そのＬＳＩに搭載される複数のＣＰＵコアが標準モードで動作する、例えば複数のＣＰＵコアがＳＭＰモードで並列動作することによって標準処理を実行し、故障診断モードではその複数のＣＰＵコアが１個ずつ順次ＡＭＰモードに遷移して故障診断処理を実行する。ここで、標準モードは例えば、複数のＣＰＵコアがＳＭＰモードで並列動作することによって、標準処理を実行する動作モードであり、故障診断モードではＡＭＰモードで故障診断処理を行なうＣＰＵコア以外のＣＰＵコアは標準モード（ＳＭＰモード）で標準処理を継続する。１個のＬＳＩに搭載される複数のＣＰＵコアのうち故障診断モードで同時に故障診断処理を行なうＣＰＵコアの数は、必ずしも１個である必要はなく、標準処理に支障がない範囲で複数個のＣＰＵコアがそれぞれ故障診断を行うように構成してもよい。
【００１９】
図２に示されるように、情報処理装置２０全体では、通常動作モードではＣＰＵコア１＿１、１＿２、…、１＿ｎすべてがＳＭＰモードで標準処理を実行する。アイドリングストップ信号がアサートされると、そのうちの一部であるＣＰＵコア１＿ｍ＋１、…１＿ｎがＡＭＰモードに遷移して故障診断処理を実行する一方、残りのＣＰＵコア１＿１、１＿２、…、１＿ｍは、ＳＭＰモードのまま標準処理を継続する。その後、アイドリングストップ信号がネゲートされると、全てのＣＰＵコア１＿１、１＿２、…、１＿ｎがＳＭＰモードによる標準処理の実行に復帰する。ＣＰＵコア１＿１、１＿２、…、１＿ｍはアイドリングストップ信号がアサートされている期間、固定的にＳＭＰモードに維持されるわけではなく、ＡＭＰモードに遷移して故障診断を行っている同じＬＳＩ内のＣＰＵコアの故障診断処理が終わると、ＣＰＵコア１＿１、１＿２、…、１＿ｍの中から順次、ＡＭＰモードに遷移して故障診断を行う。
【００２０】
アイドリングストップ信号は、情報処理装置２０の内部で検出されても良いし、外部から供給されてもよい。また、物理的な配線である必要はなく、アイドリングが停止されている状態を示す情報であれば良く、例えば、車載ＣＡＮ（Controller Area Network）等を介して伝送され、レジスタ等に保持される情報であってもよい。
【００２１】
これにより、自動車に搭載されるマルチプロセッサＬＳＩの機能安全を担保するための当該ＬＳＩの故障診断において、当該ＬＳＩが実行すべき標準処理を犠牲にしない適切なタイミングでその故障診断を行なうための、機能・プログラムなどのオーバーヘッドを減らすことができる。ＬＳＩの処理負荷が極めて低くなることが期待される、アイドリングストップ状態において、処理負荷の一部を標準処理から故障診断処理に移すので、処理負荷の監視しまたは予測する必要がなくなるからである。
【００２２】
〔実施形態２〕
図３は、中央制御方式の情報処理装置２０の構成例を示すブロック図である。
【００２３】
中央制御方式では、情報処理装置２０は、アイドリングストップ制御ユニット８と、複数のプロセッサのうちの少なくとも２個のプロセッサを有する１個または複数のＬＳＩ２＿１〜２＿３とを含んで構成される。例えば図３に示されるように、ＬＳＩ２＿１とＬＳＩ２＿２はＥＣＵ１（３＿１）に実装され、ＬＳＩ２＿３は別のＥＣＵ２（３＿２）に実装される。
【００２４】
アイドリングストップ制御ユニット８は、アイドリングストップ信号生成部４とマルチコアＣＰＵ故障診断コントローラ５とを備える。アイドリングストップ信号生成部４は、アイドリングストップ信号を生成してマルチコアＣＰＵ故障診断コントローラ５に供給する。アイドリングストップ信号生成部４には、例えばブレーキ信号とアクセル信号と車速信号とが供給され、それらの情報に基づいてエンジンのアイドリングを停止することができると判断したときに、アイドリングストップ信号をエンジン制御ユニットに対して出力して、アイドリングを停止させる。本実施形態では、その信号を故障検出処理の起動信号として利用する。マルチコアＣＰＵ故障診断コントローラ５は、複数のＬＳＩ２＿１〜２＿３にそれぞれ診断プログラムを供給し、アイドリングストップ信号に基づいて、複数のＬＳＩ２＿１〜２＿３にそれぞれ診断モードを設定することによって故障診断を実行させ、故障診断結果を収集する。
【００２５】
診断プログラムは、例えば、アイドリングストップ制御ユニット８が有する診断プログラム格納用ストレージ６に格納されており、電源投入時に読み出されて各ＬＳＩ２＿１〜２＿３に供給され、或いは、故障検出処理が起動される度に各ＬＳＩ２＿１〜２＿３に供給される。各ＬＳＩ２＿１〜２＿３から収集される故障診断結果は、例えば、アイドリングストップ制御ユニット８内に設けられた診断結果格納用ストレージ７に格納される。
【００２６】
故障が発生していることが検出された場合には、例えば、当該自動車の運転者に警告を発し、或いは、当該自動車に具備される通信システムによって、車外の管理サーバーに通知される。
【００２７】
図４は、この中央制御方式に採用されるＬＳＩ２の構成例を示すブロック図である。ＬＳＩ２は、例えば複数のＣＰＵコア１＿１〜１＿４を備えるマルチプロセッサＬＳＩである。アイドリングストップ信号のアサートまたはネゲートに基づいて診断モードが設定され、設定された診断モードにしたがって、通常動作モードから故障診断モードへ遷移し、または、故障診断モードから通常動作モードに復帰し、故障診断モードにおける故障診断結果を出力する。診断プログラムは、電源投入時に供給され、或いは、故障検出処理が起動される度に各ＣＰＵコア１＿１〜１＿４に供給される。１個のＬＳＩ２に内蔵されるＣＰＵコアの数は、２個以上であれば任意である。２個のＣＰＵコアを備えていれば、１個のＣＰＵコアが故障診断モードに遷移したときにも他方のＣＰＵコアを通常動作モードに維持して、標準処理の実行を維持することができるからである。
【００２８】
これにより、単一の故障診断コントローラによって、全てのプロセッサ（ＣＰＵコア）の故障診断が制御され、個々のＬＳＩに故障診断コントローラを備える必要がない。
【００２９】
図３及び図４に示される、診断モード設定信号、診断プログラム、故障診断結果は、必ずしも専用の物理的な配線によって実現される必要はない。例えば、アイドリングストップ制御ユニット８とＥＣＵ１（３＿１）とＥＣＵ２（３＿２）とがＣＡＮなどの通信路によって互いに接続され、診断モード設定情報、診断プログラム、故障診断結果がその通信路を介して伝送されても良い。この場合、図４に示されるＬＳＩ２は、ＣＡＮなのどの通信インターフェースを備え、受信した信号から診断モード設定情報及び診断プログラムを抽出して各ＣＰＵコア１＿１〜１＿４に設定し、各ＣＰＵコア１＿１〜１＿４の故障診断結果を所定の通信パケットに乗せて通信インターフェースから送出する。
【００３０】
また、診断プログラムは、アイドリングストップ制御ユニット８から供給される代わりに、各ＥＣＵ或いは各ＬＳＩに内蔵される記憶装置に格納されて、各ＣＰＵコアに供給されてもよい。例えば図４に示されるＬＳＩ２において、外部から診断プログラムが供給される代わりに、診断プログラム用不揮発性メモリが内蔵され、診断モードが設定されることによってそれが起動されるように構成されてもよい。これにより、アイドリングストップ制御ユニット８とＬＳＩとの間の配線が省略され、または、ＣＡＮなどの通信路で接続される場合の通信トラフィックが低減される。さらに、アイドリングストップ制御ユニット８において、接続されるＬＳＩに応じて診断プログラム格納用ストレージ６の内容を変更する必要がなくなり、アイドリングストップ制御ユニット８に接続可能なＥＣＵ、ＬＳＩが制約されず、汎用性や互換性が高まる。
【００３１】
図５は、中央制御方式の情報処理装置２０の動作例を示すフローチャートである。
【００３２】
情報処理装置２０は、通常動作モードで標準処理を実行しているものとする（Ｓ１）。このとき、全てのＣＰＵコアが標準モードで動作しており、例えば、ＳＰＭモードで全てのＣＰＵコアが並列して標準処理を実行している。通常動作モードでは、アイドリングストップ信号がアサートされたか否かを監視している（Ｓ２）。アイドリングストップ信号がアサートされると、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）、全体の動作モードを故障診断モードに遷移させて故障診断を開始する（Ｓ５）。前回故障診断処理を実行してからの経過時間は、例えば、マルチコアＣＰＵ故障診断コントローラ５（図３）にタイマー（不図示）を備えて計時する。
【００３３】
閾値は任意に設定することができる。例えば閾値を２４時間とすることにより、故障診断が実施される周期は、必ず２４時間以上確保されることになる。これにより、アイドリングストップが頻繁に発生する場合にも、故障診断が実施される頻度は適切に管理される。
【００３４】
故障診断が開始されると（Ｓ５）、故障診断処理を実行する対象のＣＰＵコアが選択され（Ｓ６）、故障診断対象のＣＰＵコアは（Ｓ７）、例えばＡＭＰモードなどの故障診断モードに切替えられ、故障診断プログラムが起動される（Ｓ８）。一方、故障診断の対象外のＣＰＵコアは、例えばＳＭＰモードなどの標準モードに維持され（Ｓ９）、標準処理をそのまま継続して実行する。
【００３５】
アイドリングストップ信号がネゲートされたときには（Ｓ１０）、故障診断対象のＣＰＵコアを標準モードに戻し（Ｓ１１）、冒頭の標準処理（Ｓ１）に復帰する。一方、アイドリングストップ信号がアサートされている間は、故障診断対象とされた１個のＣＰＵコアの故障診断が完了するまで故障診断処理を続け（Ｓ１２）、そのＣＰＵコアによる故障診断処理が完了したときにはそのＣＰＵコアを標準モードに戻す（Ｓ１３）。全てのＣＰＵコアによる故障診断処理が完了するまで（Ｓ１４）、順次、対象のＣＰＵコアを選択して（Ｓ６）故障診断処理を実行させる（Ｓ８）。
【００３６】
全てのＣＰＵコアによる故障診断処理が完了したときには、前回故障診断処理を実行してからの経過時間を計時するタイマーをリセットして再スタートさせ（Ｓ１５）、冒頭の標準処理（Ｓ１）に復帰する。
【００３７】
中央制御方式の情報処理装置２０の別の動作例について説明する。１回のアイドリングストップ期間に全ての故障診断処理を完了することができない場合を想定した動作例である。図６はその動作例の前半のフローチャート、図７は後半のフローチャートである。
【００３８】
図５と同様に、情報処理装置２０は、通常動作モードで標準処理を実行しているものとし（Ｓ１）、通常動作モードでは、アイドリングストップ信号がアサートされたか否かを監視している（Ｓ２）。アイドリングストップ信号がアサートされると（Ｓ２）、レジューム判定を行う（Ｓ２０）。レジュームデータがない場合には、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）故障診断を開始する（Ｓ５）が、レジュームデータがある場合には、経過時間にかかわらず故障診断を開始する（Ｓ５）。レジュームデータとは、１回のアイドリングストップ期間中に故障診断処理が完了されなかった場合の途中経過を示すデータである。例えば、複数のＣＰＵコアを順次対象として故障診断処理を行なう場合に、最後に故障診断処理を終えたＣＰＵコアの番号（識別子）、或いは、診断プログラムを構成する診断項目のうち、最後に実行された診断項目の番号（識別子）、或いは、診断プログラムのステップ番号などである。
【００３９】
レジュームデータがあって故障診断を開始する（Ｓ５）場合には、そのレジュームデータに基づいて次に故障診断の対象とされるＣＰＵコアが選択される（Ｓ６）。例えば、レジュームデータが最後に故障診断処理を終えたＣＰＵコアの番号（識別子）である場合には、次のＣＰＵコアが故障診断の対象として選択される。例えば、レジュームデータが最後に故障診断処理を実行していたＣＰＵコアの番号（識別子）である場合には、そのときの診断プログラムを構成する診断項目のうち、最後に実行された診断項目の番号（識別子）、或いは、診断プログラムのステップ番号などを、同じレジュームデータに合せて記憶しておき、次の診断項目或いは診断プログラムの次のステップから再開してもよい。または、レジュームデータに最後に実行された診断項目の番号（識別子）、或いは、診断プログラムのステップ番号など保持されている場合であっても、当該ＣＰＵコアによる診断プログラムの先頭に戻って改めて故障診断を再開しても良い。故障診断プログラムの各ステップ、各項目が、それまでの履歴（内部状態）に依存する場合には、先頭に戻って再開する。
【００４０】
図７に示すように、故障診断が開始されると（Ｓ５）、レジュームデータに基づいて故障診断処理を実行する対象のＣＰＵコアが選択され（Ｓ６）、故障診断対象のＣＰＵコアは（Ｓ７）、例えばＡＭＰモードなどの故障診断モードに切替えられ、故障診断プログラムが起動される（Ｓ８）。一方、故障診断の対象外のＣＰＵコアは、例えばＳＭＰモードなどの標準モードに維持され（Ｓ９）、標準処理をそのまま継続して実行する。
【００４１】
アイドリングストップ信号がネゲートされたときには（Ｓ１０）、その時点での故障診断処理の途中経過をレジュームデータとして格納し（Ｓ２２）、故障診断対象のＣＰＵコアを標準モードに戻し（Ｓ１１）、冒頭の標準処理（Ｓ１）に復帰する。
【００４２】
一方、アイドリングストップ信号がアサートされている間は、図５と同様に、故障診断対象とされた１個のＣＰＵコアの故障診断が完了するまで故障診断処理を続け（Ｓ１２）、そのＣＰＵコアによる故障診断処理が完了したときにはそのＣＰＵコアを標準モードに戻す（Ｓ１３）。全てのＣＰＵコアによる故障診断処理が完了するまで（Ｓ１４）、順次、対象のＣＰＵコアを選択して（Ｓ６）故障診断処理を実行させる（Ｓ８）。全てのＣＰＵコアによる故障診断処理が完了したときには、前回故障診断処理を実行してからの経過時間を計時するタイマーを再スタートさせ（Ｓ１５）、冒頭の標準処理（Ｓ１）に復帰する。
【００４３】
これにより、複数のＣＰＵコアに均等に故障診断が実施されるように管理される。例えば多数のＣＰＵコアを備える情報処理装置において、各アイドリングストップ期間の最初に故障診断を実施する対象を特定のＣＰＵコアに固定し、その順序まで固定すると、最初に故障診断の対象とされるＣＰＵコアは、最後に対象とされるＣＰＵコアよりも頻繁に故障診断処理を実行することとなる。全てのＣＰＵコアに対して故障診断処理を行なうための時間が、標準的なアイドリングストップ期間よりも長い場合には、故障診断処理を実行される頻度の差が、ＣＰＵコア毎に大きく異なることとなる恐れがある。
【００４４】
なお、図６と図７には、図５と同様に、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）故障診断を開始する動作例を示したが、Ｓ３とＳ４を省略しても良い。しかし、図６と図７に示すようにレジューム判定（Ｓ２０）と前回実行時からの経過時間判定（Ｓ３）の両方を行うことにより、故障検出処理が実施される頻度を、より適切に管理することができる。
【００４５】
図５、図６及び図７に示した動作例（フローチャート）では、故障診断結果の出力ステップは、図示が省略されている。故障診断結果は、各ＣＰＵコアで実行される故障診断プログラムの診断項目ごとに出力され、或いは、各ＣＰＵコアでの故障診断処理が終わる度にその結果が出力されてもよい。この場合、その故障診断結果はレジュームデータとして利用されてもよい。一方、全てのＣＰＵコアでの故障診断処理が完了した時点で、その故障診断結果をまとめて出力してもよい。さらに、故障が発生した場合にのみ出力してもよい。
【００４６】
〔実施形態３〕
図８は、分散処理方式（パラレル実行）の情報処理装置２０の構成例を示すブロック図である。また、図９は、この分散処理方式（パラレル実行）に採用されるＬＳＩ２の構成例を示すブロック図である。
【００４７】
分散処理方式（パラレル実行）では、情報処理装置２０は、アイドリングストップ制御ユニット８と、複数のプロセッサのうちの少なくとも２個のプロセッサを有する１個または複数のＬＳＩ２＿１〜２＿３とを含んで構成される。例えば図８に示されるように、ＬＳＩ２＿１とＬＳＩ２＿２はＥＣＵ１（３＿１）に実装され、ＬＳＩ２＿３は別のＥＣＵ２（３＿２）に実装される。
【００４８】
アイドリングストップ制御ユニット８は、アイドリングストップ信号生成部４を備えるが、実施形態２に示した中央処理方式とは異なり、マルチコアＣＰＵ故障診断コントローラ５を備えない。マルチコアＣＰＵ故障診断コントローラ５は、図９に示すようにＬＳＩ２に内蔵される。診断プログラム格納用ストレージ６と診断結果格納用ストレージ７についても同様である。即ち、アイドリングストップ信号が各ＬＳＩ２＿１〜２＿３に並列に供給され、各ＬＳＩ２＿１〜２＿３はそれぞれがマルチコアＣＰＵ故障診断コントローラ５を備えて、並列（パラレル）に故障診断を実施する。
【００４９】
アイドリングストップ信号生成部４は、アイドリングストップ信号を生成してＥＣＵ１（３＿１）のＬＳＩ２＿１とＬＳＩ２＿２と、ＥＣＵ２（３＿２）のＬＳＩ２＿３に供給する。アイドリングストップ信号生成部４が出力するアイドリングストップ信号は、エンジン制御ユニットに対して出力して、アイドリングを停止させる信号であるが、本実施形態３においても、その信号を故障検出処理の起動信号として利用する。
【００５０】
この分散処理方式（パラレル実行）に採用されるＬＳＩ２は、図９に示されるように、例えば複数のＣＰＵコア１＿１〜１＿４を備えるマルチプロセッサＬＳＩであり、さらに、マルチコアＣＰＵ故障診断コントローラ５と診断プログラム格納用ストレージ６と診断結果格納用ストレージ７とを備える。診断プログラムは、電源投入時に、或いは、故障検出処理が起動される度に、診断プログラム格納用ストレージ６から各ＣＰＵコア１＿１〜１＿４に供給される。マルチコアＣＰＵ故障診断コントローラ５は、入力されるアイドリングストップ信号に基づいて、各ＣＰＵコア１＿１〜１＿４にそれぞれ診断モードを設定することによって故障診断を実行させ、故障診断結果を収集して、診断プログラム格納用ストレージ６に格納する。
【００５１】
これにより、個々の半導体集積回路装置（ＬＳＩ）が自律的かつ並列（パラレル）に、それぞれのＬＳＩに搭載される複数のプロセッサ（ＣＰＵコア）に故障診断を実行させることができる。
【００５２】
図８及び図９に示される、アイドリングストップ信号は、必ずしも専用の物理的な配線によって実現される必要はない。例えば、アイドリングストップ制御ユニット８とＥＣＵ１（３＿１）とＥＣＵ２（３＿２）がＣＡＮなどの通信路によって互いに接続され、アイドリングストップ情報がその通信路を介して伝送されても良い。この場合、図９に示されるＬＳＩ２は、ＣＡＮなのどの通信インターフェースを備え、受信した信号からアイドリングストップ情報を抽出して、内蔵されるマルチコアＣＰＵ故障診断コントローラ５に供給する。
【００５３】
図９には、診断結果格納用ストレージ７がＬＳＩ２に内蔵される構成例を示したが、これを省略して、故障診断プログラムの診断項目が終わる毎に、或いは、ＣＰＵコアの故障診断が終わる毎にその故障診断結果を、ＬＳＩ２から出力するように変更してもよい。
【００５４】
本実施形態３の、分散処理方式（パラレル実行）の情報処理装置２０の動作例についても、実施形態２と同様に、図５、図６及び図７を引用して説明することができる。
【００５５】
図５は、分散処理方式（パラレル実行）の情報処理装置２０の１つの動作例を示すフローチャートである。
【００５６】
情報処理装置２０は、通常動作モードで標準処理を実行しているものとする（Ｓ１）。このとき、全てのＣＰＵコアが標準モードで動作しており、例えば、ＳＰＭモードで全てのＣＰＵコアが並列して標準処理を実行している。通常動作モードでは、アイドリングストップ信号がアサートされたか否かを監視している（Ｓ２）。アイドリングストップ信号がアサートされると、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）、全体の動作モードを故障診断モードに遷移させて故障診断を開始する（Ｓ５）。
【００５７】
前回故障診断処理を実行してからの経過時間は、実施形態２ではアイドリングストップ制御ユニット８に搭載されるマルチコアＣＰＵ故障診断コントローラ５（図３）がタイマーを備えて計時しこれを監視する例を示したが、本実施形態３では、各ＬＳＩ２＿１〜２＿３がそれぞれ監視する。図８に示すように、アイドリングストップ信号がＬＳＩ２＿１〜２＿３に並列に供給されるので、ＬＳＩ２＿１〜２＿３は、図９に示すようにマルチコアＣＰＵ故障診断コントローラ５をそれぞれが備えることとなる。前回故障診断処理を実行してからの経過時間は、例えば、各ＬＳＩ２＿１〜２＿３が備えるマルチコアＣＰＵ故障診断コントローラ５（図９）にタイマー（不図示）を備えて計時する。また、経過時間の閾値はＬＳＩ２＿１〜２＿３ごとに個別に任意に設定することができる。例えば、故障した場合の影響がより大きいＥＣＵに搭載されるＬＳＩの故障診断をより頻繁に実施するなどの、機能安全を担保するための考え方（ポリシー）に基づいて、適切に規定することができる。これにより、アイドリングストップが頻繁に発生する場合にも、故障診断が実施される頻度はより適切に管理される。
【００５８】
以降の動作は、実施形態２の説明した、中央制御方式の情報処理装置２０の動作と同様であるので、説明を省略する。ただし、分散処理方式（パラレル実行）の情報処理装置２０では、故障診断処理は、ＬＳＩ２＿１〜２＿３ごとに独立且つ並列に実行される。
【００５９】
分散処理方式（パラレル実行）の情報処理装置２０の別の動作例について説明する。１回のアイドリングストップ期間に、ＬＳＩ２内の全ての故障診断処理を完了することができない場合を想定した動作例である。図６はその動作例の前半のフローチャート、図７は後半のフローチャートである。
【００６０】
情報処理装置２０は、通常動作モードで標準処理を実行しているものとし（Ｓ１）、通常動作モードでは、アイドリングストップ信号がアサートされたか否かを監視している（Ｓ２）。アイドリングストップ信号がアサートされると（Ｓ２）、レジューム判定を行う（Ｓ２０）。レジュームデータがない場合には、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）、故障診断を開始する（Ｓ５）が、レジュームデータがある場合には、経過時間にかかわらず故障診断を開始する（Ｓ５）。
【００６１】
レジュームデータとは、１回のアイドリングストップ期間中に故障診断処理が完了されなかった場合の途中経過を示すデータである。レジュームデータは、ＬＳＩ２＿１〜２＿３ごとに個別に保持される。例えば、図９に示す診断結果格納用ストレージ７に格納し、マルチコアＣＰＵ故障診断コントローラ５から読み出して利用する。レジュームデータに採用し得る具体的実施態様は、実施形態２と同様である。また、これ以降の動作は、実施形態２の説明した、中央制御方式の情報処理装置２０の動作と同様であるので、説明を省略する。
【００６２】
実施形態２と同様に本実施形態３についても図５、図６及び図７に図示が省略されている故障診断結果の出力は、各ＣＰＵコアで実行される故障診断プログラムの診断項目ごとに出力され、或いは、各ＣＰＵコアでの故障診断処理が終わる度にその結果が出力されてもよい。この場合、その故障診断結果はレジュームデータとして利用されてもよい。一方、全てのＣＰＵコアでの故障診断処理が完了した時点で、その故障診断結果をまとめて出力してもよい。さらに、故障が発生した場合にのみ出力してもよい。
【００６３】
これにより、ＬＳＩ２に搭載される複数のＣＰＵコアに均等に故障診断が実施されるように管理される。
【００６４】
なお、図６と図７には、図５と同様に、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）故障診断を開始する動作例を示したが、Ｓ３とＳ４を省略しても良い。この点は実施形態２と同様である。しかし、レジューム判定（Ｓ２０）と前回実行時からの経過時間判定（Ｓ３）の両方を行うことにより、搭載されるＣＰＵコアの数の多寡によらず、ＬＳＩごとに故障検出処理が実施される頻度を均等化することができるなど、故障検出処理の実施頻度をより適切に管理することができる。搭載されるＣＰＵコアの数が少ないＬＳＩでは、比較的短いアイドリングストップ期間でもすべてのＣＰＵコアによる故障診断を完了することができるので、このような短いアイドリングストップが何回か発生したときには、同じ回数の故障診断が実施される。一方、そのような短いアイドリングストップ期間ではすべてのＣＰＵコアによる故障診断を完了することができず、レジューム処理を伴うような、多数のＣＰＵコアが搭載されるＬＳＩでは、同じ回数のアイドリングストップが発生したときにも、複数回に渡って１回の故障診断を実施することができるに留まる。したがって、前回故障診断処理を実行してからの経過時間による故障診断の実施判定を併用することにより、搭載されるＣＰＵコアの数の多寡によらず、ＬＳＩごとに故障検出処理が実施される頻度を均等化することができる。
【００６５】
〔実施形態４〕
図１０は、分散処理方式（シリアル実行）の情報処理装置２０の構成例を示すブロック図である。
【００６６】
分散処理方式（シリアル実行）でも、図８に示す分散処理方式（パラレル実行）の場合と同様に、情報処理装置２０は、アイドリングストップ制御ユニット８と、複数のプロセッサのうちの少なくとも２個のプロセッサを有する１個または複数のＬＳＩ２＿１〜２＿３とを含んで構成される。ＬＳＩ２＿１とＬＳＩ２＿２がＥＣＵ１（３＿１）に実装され、ＬＳＩ２＿３が別のＥＣＵ２（３＿２）に実装される例を示す。
【００６７】
アイドリングストップ制御ユニット８は、アイドリングストップ信号生成部４を備えるが、実施形態２に示した中央処理方式とは異なり、マルチコアＣＰＵ故障診断コントローラ５を備えず、アイドリングストップ信号を生成して各ＬＳＩ２＿１〜２＿３に供給する点も、図８に示す分散処理方式（パラレル実行）の場合と同様である。
【００６８】
各ＬＳＩ２＿１〜２＿３は、自身の故障診断が終了したことを示す診断終了信号を、リング状に順次、次段のＬＳＩに供給する。仮に、ＬＳＩ２＿１をアイドリングストップ信号がアサートされたときに最初に故障診断が実行される初段のＬＳＩであるとする。ＬＳＩ２＿１の故障診断が終了したときにＬＳＩ２＿２に対して診断終了信号がアサートされ、以降順次、自身の故障診断が終了したことを診断終了信号のアサートによって次段のＬＳＩに伝送する。最後には、最終段のＬＳＩ２＿３から初段のＬＳＩ２＿１に診断終了信号がフィードバックされる。また、診断終了リセット信号が、初段のＬＳＩ２＿１から他のＬＳＩ２＿２〜２＿３に供給されるとより好適である。リング状の診断終了信号が初段のＬＳＩ２＿１に戻ったことにより、故障診断処理が一巡したことを検出することができるので、この時点で一巡した故障診断処理に関する状態をリセットし、次の故障診断処理の開始に備えることができる。
【００６９】
図１１は、この分散処理方式（シリアル実行）に採用されるＬＳＩ２の構成例を示すブロック図である。ＬＳＩ２は、例えば複数のＣＰＵコア１＿１〜１＿４を備えるマルチプロセッサＬＳＩであり、さらに、マルチコアＣＰＵ故障診断コントローラ５と診断プログラム格納用ストレージ６と診断結果格納用ストレージ７とを備える。この点は、図９に示される分散処理方式（パラレル実行）に採用されるＬＳＩ２と同様であるが、マルチコアＣＰＵ故障診断コントローラ５が故障診断制御部９とタイマー部１０と２個のセレクタ１１と１２とを備え、前段からの診断終了信号を受信して次段への診断終了信号を出力する点で異なる。また、診断終了リセット信号は、入力と出力がある。図１０に示すように構成する場合には、ＬＳＩ２は、初段として動作するときには診断終了リセット信号を出力し、初段以外の各段として動作するときには診断終了リセット信号は入力される。一方、ＬＳＩ２を図１１に示すように構成して、情報処理装置２０全体では、診断終了信号と同様に、自身に入力された診断終了リセット信号を、順次、次段のＬＳＩに供給する、リング状に構成してもよい。
【００７０】
この他、タイマー部１０を使用するか否かを制御するタイマーイネーブル信号が入力される。ＬＳＩ２が初段として動作するときには、タイマーイネーブル信号は”１”とされ、タイマー部１０が動作するように設定される。セレクタ１１は、タイマーイネーブル＝”１”（ＬＳＩ２が初段として動作）のときタイマー部１０の出力を選択し、タイマーイネーブル＝”０”（ＬＳＩ２が初段以外の段として動作）のとき入力された診断終了リセット信号を選択して、次段への診断終了リセット信号として出力する。セレクタ１２は、タイマーイネーブル＝”１”（ＬＳＩ２が初段として動作）のときタイマー部１０の出力を選択し、タイマーイネーブル＝”０”（ＬＳＩ２が初段以外の段として動作）のとき入力された診断終了信号を選択して、故障診断制御部９に供給する。
【００７１】
故障診断制御部９は、ＬＳＩ２が初段として動作する場合には、タイマー部１０の出力とアイドリングストップ信号とに基づいて、ＣＰＵコア１＿１〜１＿４による故障診断処理を開始し、全ての故障診断処理を終えた時に次段への診断終了信号を出力する。故障診断制御部９は、ＬＳＩ２が初段以外の段として動作する場合には、タイマー部１０の出力に代えて前段から入力される診断終了信号と、アイドリングストップ信号とに基づいて、ＣＰＵコア１＿１〜１＿４による故障診断処理を開始し、全ての故障診断処理を終えた時に次段への診断終了信号を出力する。出力する診断終了信号は、ＬＳＩ２が初段として動作する場合には、セレクタ１１から供給されるタイマー部１０の出力によってリセットされ、ＬＳＩ２が初段以外の段として動作する場合には、前段から入力される診断終了リセット信号によってリセットされる。
【００７２】
情報処理装置２０を図１０に示すように構成する場合には、初段として動作するＬＳＩ２に診断終了リセット信号の入力は不要であり、タイマー部１０の出力が診断終了リセット信号として出力され、初段以外の段として動作するＬＳＩ２では、入力された診断終了リセット信号によって、故障診断制御部９が出力する診断終了信号がリセットされる。
【００７３】
他の、ＣＰＵコア１＿１〜１＿４、診断プログラム格納用ストレージ６及び診断結果格納用ストレージ７の構成は、図９に示したパラレル実行の分散処理方式（実施形態３）と同様であるので、説明を省略する。
【００７４】
次に、情報処理装置２０の動作例について説明する。
【００７５】
図１２、図１３及び図１４は、分散処理方式（シリアル実行）の情報処理装置２０の第１の動作例を示すフローチャートである。図１３は初段のＬＳＩ２によるフロー、図１４は初段以外の段のＬＳＩ２によるフローであり、図１２は両者に共通のフローである。
【００７６】
図１２、図１５及び図１６は、分散処理方式（シリアル実行）の情報処理装置２０の第２の動作例を示すフローチャートである。図１５は初段のＬＳＩ２によるフロー、図１６は初段以外の段のＬＳＩ２によるフローであり、図１２は両者に共通のフローである。
【００７７】
第１の動作例とは、図５を引用して上述したようにレジューム処理を含まない動作であり、第２の動作例とは、図６と図７を引用して上述したようにレジューム処理を含む動作である。
【００７８】
まず、レジューム処理を含まない動作について説明する。
【００７９】
情報処理装置２０は、図１２に示すように、通常動作モードで標準処理を実行しており（Ｓ１）、アイドリングストップ信号がアサートされたか否かを監視している（Ｓ２）。アイドリングストップ信号がアサートされると、タイマー機能が有効なＬＳＩか否かを判定する（Ｓ３０）。図１１の例ではタイマーイネーブル信号に基づいて、タイマー部１０が使用されるか否か、即ち、ＬＳＩ２が初段のＬＳＩか、初段以外の段のＬＳＩかを判定する。タイマー機能が有効な場合、即ち、ＬＳＩ２が初段のＬＳＩである場合には、前段からの診断終了信号が入力されたか否かを監視し（Ｓ３１）、前段からの診断終了信号が入力されたときにはタイマーをリセットして再スタートさせ、診断終了リセット信号をアサートする（Ｓ３２）。これは、リング状に構成された複数のＬＳＩにおいて、最終段のＬＳＩから初段のＬＳＩに診断終了信号が入力された場合であって、情報処理装置２０全体の故障診断処理が完了したことを意味する。したがって、この時点でタイマーをリセットして再スタートさせ、次回のアイドリングストップ信号がアサートされたときに、タイマーによって前回の故障診断実行時からの経過時間を得られるように構成されている。ＬＳＩ２が初段のＬＳＩである場合には図１３に示すフローに進み、ＬＳＩ２が初段以外の段のＬＳＩである場合には図１４に示すフローに進む。
【００８０】
ＬＳＩ２が初段のＬＳＩである場合（図１３）は、タイマー機能が有効であり、タイマー部１０によって前回故障診断が実行されてからの経過時間が計時されている。まず、この前回実行時からの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）、全体の動作モードを故障診断モードに遷移させて故障診断を開始する（Ｓ５）。
【００８１】
故障診断が開始されると（Ｓ５）、故障診断処理を実行する対象のＣＰＵコアが選択され（Ｓ６）、故障診断対象のＣＰＵコアは（Ｓ７）、例えばＡＭＰモードなどの故障診断モードに切替えられ、故障診断プログラムが起動される（Ｓ８）。一方、故障診断の対象外のＣＰＵコアは、例えばＳＭＰモードなどの標準モードに維持され（Ｓ９）、標準処理をそのまま継続して実行する。
【００８２】
アイドリングストップ信号がネゲートされたときには（Ｓ１０）、故障診断対象のＣＰＵコアを標準モードに戻し（Ｓ１１）、冒頭の標準処理（図１２のＳ１）に復帰する。一方、アイドリングストップ信号がアサートされている間は、故障診断対象とされた１個のＣＰＵコアの故障診断が完了するまで故障診断処理を続け（Ｓ１２）、そのＣＰＵコアによる故障診断処理が完了したときにはそのＣＰＵコアを標準モードに戻す（Ｓ１３）。全てのＣＰＵコアによる故障診断処理が完了するまで（Ｓ１４）、順次、対象のＣＰＵコアを選択して（Ｓ６）故障診断処理を実行させる（Ｓ８）。
【００８３】
全てのＣＰＵコアによる故障診断処理が完了したときには、診断終了信号をアサートして（Ｓ３３）、冒頭の標準処理（図１２のＳ１）に復帰する。診断終了信号は、次段のＬＳＩに故障診断処理を開始させるために、次段のＬＳＩに伝達される。
【００８４】
ＬＳＩ２が初段以外の段のＬＳＩである場合（図１４）は、タイマー機能が無効であり、前回故障診断が実行されてからの経過時間は監視されていない。前段のＬＳＩから診断終了信号が入力されたか否かを判定し（Ｓ３４）、これが入力されたときに故障診断処理を開始する（Ｓ５）。
【００８５】
故障診断処理を開始（Ｓ５）した後のフローは、図１３に示したＬＳＩ２が初段のＬＳＩである場合と同様であるので、説明を省略する。
【００８６】
次に、レジューム処理を含む動作について説明する。
【００８７】
情報処理装置２０は、通常動作モードで標準処理を実行しており（Ｓ１）、図１２に示したフローと同様に、ＬＳＩ２が初段のＬＳＩである場合（図１５）と、ＬＳＩ２が初段以外の段のＬＳＩである場合（図１６）に分かれる。
【００８８】
ＬＳＩ２が初段のＬＳＩである場合（図１５）、まず、レジューム判定（Ｓ２０、Ｓ２１）を行う。レジュームデータがない場合には、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）故障診断を開始する（Ｓ５）が、レジュームデータがある場合には、経過時間に係らず故障診断を開始する（Ｓ５）。ＬＳＩ２が初段のＬＳＩである場合には、タイマー機能が有効であり、タイマー部１０によって前回故障診断が実行されてからの経過時間が計時されているので、その経過時間が所定の閾値を超えるのを待って、故障診断処理を開始（Ｓ５）するのである。
【００８９】
レジュームデータとは、１回のアイドリングストップ期間中に故障診断処理が完了されなかった場合の途中経過を示すデータである。レジュームデータは、ＬＳＩ２＿１〜２＿３ごとに個別に保持される。例えば、図１１に示す診断結果格納用ストレージ７に格納し、マルチコアＣＰＵ故障診断コントローラ５から読み出して利用する。レジュームデータに採用し得る具体的実施態様は、実施形態２または３と同様である。
【００９０】
レジュームデータがあって故障診断を開始する（Ｓ５）場合には、そのレジュームデータに基づいて次に故障診断の対象とされるＣＰＵコアが選択される（Ｓ６）。故障診断対象のＣＰＵコアは（Ｓ７）、例えばＡＭＰモードなどの故障診断モードに切替えられ、故障診断プログラムが起動される（Ｓ８）。一方、故障診断の対象外のＣＰＵコアは、例えばＳＭＰモードなどの標準モードに維持され（Ｓ９）、標準処理をそのまま継続して実行する。
【００９１】
アイドリングストップ信号がネゲートされたときには（Ｓ１０）、その時点での故障診断処理の途中経過をレジュームデータとして格納し（Ｓ２２）、故障診断対象のＣＰＵコアを標準モードに戻し（Ｓ１１）、冒頭の標準処理（図１２のＳ１）に復帰する。
【００９２】
一方、アイドリングストップ信号がアサートされている間は、図１３と同様に、故障診断対象とされた１個のＣＰＵコアの故障診断が完了するまで故障診断処理を続け（Ｓ１２）、そのＣＰＵコアによる故障診断処理が完了したときにはそのＣＰＵコアを標準モードに戻す（Ｓ１３）。全てのＣＰＵコアによる故障診断処理が完了するまで（Ｓ１４）、順次、対象のＣＰＵコアを選択して（Ｓ６）故障診断処理を実行させる（Ｓ８）。全てのＣＰＵコアによる故障診断処理が完了したときには、診断終了信号をアサートして（Ｓ３３）、冒頭の標準処理（図１２のＳ１）に復帰する。診断終了信号は、次段のＬＳＩに故障診断処理を開始させるために、次段のＬＳＩに伝達される。
【００９３】
ＬＳＩ２が初段以外の段のＬＳＩである場合（図１６）は、まず、前段のＬＳＩからの診断終了信号が入力されたか否かの判定（Ｓ３４）を行う。前段のＬＳＩからの診断終了信号が未入力の場合には、冒頭の標準処理（Ｓ１）に戻る。アイドリングストップ信号がアサートされ、前回実行時からの経過時間が閾値を超えて、情報処理装置２０内のいずれかのＬＳＩは故障診断処理を実行しているが、当該ＬＳＩは未実施で前段からの診断終了信号の入力を待っているか、既に故障診断を完了して、次段に診断終了信号をアサートした後の状態であるので、標準処理を実行している状態である。
【００９４】
前段のＬＳＩからの診断終了信号が入力されると、レジューム判定（Ｓ２０、Ｓ２１）を行う。レジュームデータがない場合には、そのまま故障診断を開始する（Ｓ５）が、レジュームデータがある場合には、レジュームデータを復旧（Ｓ２３）した後に、故障診断を開始する（Ｓ５）を開始する。レジュームデータがあって故障診断を開始する（Ｓ５）場合には、復旧されたレジュームデータに基づいて次に故障診断の対象とされるＣＰＵコアが選択される（Ｓ６）。レジュームデータの具体的な態様は、実施形態２で説明したものと同様である。レジュームデータの具体的な態様によっては、復旧が必要ない場合もある。
【００９５】
故障診断処理を開始（Ｓ５）した後のフローは、図１５に示したＬＳＩ２が初段のＬＳＩである場合と同様であるので、説明を省略する。
【００９６】
図１５に示した初段のＬＳＩである場合には、タイマー機能を有効にして、前回故障診断処理を実行してからの経過時間を判定し（Ｓ３）、その経過時間が閾値を超えたときに（Ｓ４）が、図１６に示す初段以外の段のＬＳＩである場合には、経過時間に係らず故障診断を開始する（Ｓ５）。前回故障診断が実行されてからの経過時間は、情報処理装置２０の中の一か所で管理されれば足りるので、初段のＬＳＩで管理することとした実施形態である。
【００９７】
初段以外の段のＬＳＩでも、タイマー機能を有効として、前回故障診断処理を実行してからの経過時間についての閾値を、ＬＳＩごと独立に設定できるように変更しても良い。この場合、前段から診断終了信号が入力されても、経過時間が所定の閾値を超えていない場合には、そのＬＳＩでの故障診断処理の実施を省略して次段に診断終了信号を出力する。これにより、故障診断を頻繁に実施する必要がないＬＳＩが情報処理装置２０に構成されたリング内に存在していても、全体としての故障診断処理に要する時間を必要最小限に抑えることができる。
【００９８】
以上説明した実施態様２、３、４及びその変形された実施態様については、互いに異なる複数の実施態様を１つの情報処理装置の中に混在して実装してもよい。
【００９９】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【０１００】
例えば、図示したブロック図における機能ブロック分割は、単なる一例に過ぎず、その要旨を逸脱しない範囲において種々変更可能である。ストレージ６、７を物理的に１個の記憶素子として実装し、或いは逆に多数の記憶素子に機能分散して実装してもよく、ＬＳＩ２に内蔵せずに外付けに変更しても良い。また、タイマーイネーブル信号が”１”のときにタイマー機能を有効とし、”０”のときに無効とするという信号の定義も、単なる一例に過ぎず、その要旨を逸脱しない範囲において種々変更可能である。
【符号の説明】
【０１０１】
１  プロセッサ（ＣＰＵ）コア
２  半導体集積回路装置（ＬＳＩ）
３  電子制御装置（ＥＣＵ）
４  アイドリングストップ信号生成部
５  マルチコアＣＰＵ故障診断コントローラ
６  診断プログラム格納用ストレージ
７  診断結果格納用ストレージ
８  アイドリングストップ制御ユニット
９  故障診断制御部
１０  タイマー部
１１、１２  セレクタ
２０  情報処理装置
【図１】
2017102633.tif 000003
【図２】
2017102633.tif 000004
【図３】
2017102633.tif 000005
【図４】
2017102633.tif 000006
【図５】
2017102633.tif 000007
【図６】
2017102633.tif 000008
【図７】
2017102633.tif 000009
【図８】
2017102633.tif 000010
【図９】
2017102633.tif 000011
【図１０】
2017102633.tif 000012
【図１１】
2017102633.tif 000013
【図１２】
2017102633.tif 000014
【図１３】
2017102633.tif 000015
【図１４】
2017102633.tif 000016
【図１５】
2017102633.tif 000017
【図１６】
2017102633.tif 000018