(57)【要約】      （修正有）【課題】フェイルセーフ機能をより高めることができるマイクロコントローラを提供する。【解決手段】コントローラ１にＣＰＵ３及びその周辺回路が搭載された処理ブロック２を２つ以上備える。各処理ブロック２に搭載されている周辺回路；ＲＯＭ４〜ＰＷＭ信号生成部１１には、それぞれの処理ブロック２に搭載されているＣＰＵ３のみがアクセスするように構成する。さらに、周辺回路の１つとしてＬｏｃｋＳｔｅｐ１２を備え、処理ブロックに故障が発生したか監視する。各ブロックのＣＰＵ３が共通にアクセスする記憶部を備え、１つの処理ブロックに故障が発生した場合、共有記憶部を介して他の処理ブロックに伝達し処理を代行させる。【選択図】図１
2017146897.tif 000002
【特許請求の範囲】
【請求項１】
１つの半導体チップ上に、ＣＰＵ（３）及びその周辺回路（３〜１２）が搭載された処理ブロック（２）を２つ以上備え、
各処理ブロックに搭載されている周辺回路には、それぞれの処理ブロックに搭載されているＣＰＵのみがアクセスするように構成されているマイクロコントローラ。
【請求項２】
前記周辺回路の１つとして、ロックステップコア（１２）を備えている請求項１記載のマイクロコントローラ。
【請求項３】
各処理ブロックに搭載されているＣＰＵが共通にアクセスする共有記憶部（２３）を備える請求項１又は２記載のマイクロコントローラ。
【請求項４】
複数のクロック供給部（１３）を備え、
前記各処理ブロックには、前記複数のうち何れか１つのクロック供給部からのクロック信号が選択的に供給される請求項１から３の何れか一項に記載のマイクロコントローラ。
【請求項５】
前記各処理ブロックには、動作が正常であるクロック供給部からのクロック信号が選択的に供給される請求項４記載のマイクロコントローラ。
【請求項６】
前記各処理ブロックには、それぞれに対応したクロック供給部からのクロック信号が供給される請求項１から３の何れか一項に記載のマイクロコントローラ。
【請求項７】
前記クロック供給部の動作が正常か否かを監視するクロック監視部（６２）を備える請求項５又は６記載のマイクロコントローラ。
【請求項８】
前記クロック供給部の動作が正常か否かが、外部のクロック監視部（６２）によって監視される請求項５又は６記載のマイクロコントローラ。
【請求項９】
前記複数のクロック供給部の少なくとも１つは、外付けの発振源（４３）による発振入力に基づいてクロック信号を生成する請求項４から８の何れか一項に記載のマイクロコントローラ。
【請求項１０】
前記外付けの発振源は、発振子である請求項９記載のマイクロコントローラ。
【請求項１１】
前記複数のクロック供給部の少なくとも１つは、内蔵の発振源（４４）による発振入力に基づいてクロック信号を生成する請求項４から８の何れか一項に記載のマイクロコントローラ。
【請求項１２】
前記内蔵の発振源は、ＭＥＭＳ（Micro Electro Mechanical System）発振器である請求項１１記載のマイクロコントローラ。
【請求項１３】
請求項１から１２の何れか一項に記載のマイクロコントローラと、
このマイクロコントローラに、外部の複数の制御装置（１７）からの信号を入力するために多重化されている通信線（１８）とを備え、
前記制御装置からの信号に基づいて、前記マイクロコントローラに内蔵される処理ブロックの２つ以上により、同一のアクチュエータ（１６）を駆動する信号を出力する電子制御装置。
【請求項１４】
前記複数の制御装置と、各制御装置に対応する処理ブロックとの間の通信が正常か否かを監視する通信監視部（１７）と、
前記通信が正常である処理ブロックより、前記アクチュエータを駆動する信号を出力するように切替える処理ブロック選択部とを備える請求項１３記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つの半導体チップ上に、ＣＰＵ及びその周辺回路が搭載された処理ブロックを２つ以上備えるマイクロコントローラ，及びそのマイクロコントローラを備える電子制御装置に関する。
【背景技術】
【０００２】
制御装置に故障が発生した場合でも、制御を継続する必要があるシステムについては、一般に制御系統の多重化，冗長化を図って対応している。例えば特許文献１では、２つのＣＰＵコアを有する構成において、一方のコアが他方のコアの動作をウォッチドッグタイマにより監視しており、他方のコアに異常が発生したことを検知すると、当該コアが実行していた処理を一方のコアが代行することを相互に行う制御装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−７３７４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の構成では、２つのＣＰＵコアが使用する周辺回路が共通であることから、周辺回路自体に故障が発生すると他方のコアが処理を代行できなくなるという問題がある。
【０００５】
本発明は上記事情に鑑みてなされたものであり、その目的は、フェイルセーフ機能をより高めることができるマイクロコントローラ，及びそのマイクロコントローラを備える電子制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
請求項１記載のマイクロコントローラによれば、１つの半導体チップ上に、ＣＰＵ及びその周辺回路が搭載された処理ブロックを２つ以上備える。そして、各処理ブロックに搭載されている周辺回路には、それぞれの処理ブロックに搭載されているＣＰＵのみがアクセスするように構成される。このように構成すれば、何れか１つの処理ブロックに故障が発生した場合でも、その他の処理ブロックによって、故障した処理ブロックが行っていた処理を全く問題なく代行させることができる。
【０００７】
請求項２記載のマイクロコントローラによれば、周辺回路の１つとしてロックステップコアを備えるので、ロックステップコアの動作により、処理ブロックに故障が発生したか否かを監視できる。
【０００８】
請求項３記載のマイクロコントローラによれば、各処理ブロックに搭載されているＣＰＵが共通にアクセスする共有記憶部を備える。これにより、例えば何れか１つの処理ブロックに故障が発生した場合、共有記憶部を介して他の処理ブロックにその事象を伝達し、処理を代行させることが可能になる。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【図２】図１に示すマイクロコントローラを備えて構成されるＥＣＵ及び制御システムの構成を示す機能ブロック図
【図３】各処理ブロックの処理内容を示すフローチャート
【図４】第２実施形態であり、図５に示すマイクロコントローラを備えて構成されるＥＣＵ及び制御システムの構成を示す機能ブロック図
【図５】マイクロコントローラの構成を示す機能ブロック図
【図６】制御ブロックの処理内容を示すフローチャート
【図７】スタンバイブロックの処理内容を示すフローチャート
【図８】第３実施形態であり、処理ブロック＃０側の処理を示すフローチャート
【図９】処理ブロック＃１側の処理を示すフローチャート
【図１０】第４実施形態であり、ＥＣＵの構成を示す機能ブロック図
【図１１】外部ＩＣの処理を示すフローチャート
【図１２】処理ブロック＃０側の処理を示すフローチャート
【図１３】処理ブロック＃１側の処理を示すフローチャート
【図１４】第５実施形態であり、外部ＩＣの処理を示すフローチャート
【図１５】処理ブロック＃０側の処理を示すフローチャート
【図１６】処理ブロック＃１側の処理を示すフローチャート
【図１７】第６実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【図１８】第７実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【図１９】第８実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【図２０】第９実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【図２１】第１０実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【図２２】第１１実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【図２３】クロック監視部の処理を示すフローチャート
【図２４】第１２実施形態であり、マイクロコントローラの構成を示す機能ブロック図
【発明を実施するための形態】
【００１０】
（第１実施形態）
図１に示すように、本実施形態のマイクロコントローラ１は、例えば車両のパワーステアリングシステムに適用されるもので、１つの半導体チップ上に例えば２つの処理ブロック２＿０，１を備えている。尚「＿０，１」は、図中の「＃０，＃１」に対応する。これら２つの処理ブロック２は対称な構成である。ＣＰＵ３は、ＲＯＭ４に記憶されている制御プログラムを読み出すとＲＡＭ５をワークエリアとして使用し、アプリケーションに応じた処理を実行する。また、ＣＰＵ３は、バス６を介してタイマ７，Ａ／Ｄコンバータ８，ＳＥＮＴ（Single-Edge Nibble Transmission）通信部９，ＣＡＮ通信部１０，ＰＷＭ信号生成部１１等の各周辺回路にアクセスを行う。尚、ＣＡＮは“Controller Area Network”であり、登録商標である。
【００１１】
ロックステップコア１２は、ＣＰＵ３と同様に、ＲＯＭ３〜ＰＷＭ信号生成部１１等の各周辺回路にアクセスを行い、同様の処理を実行することでＣＰＵ３を監視する。そして、双方の処理内容を照合した結果に齟齬が生じるとＣＰＵ３に故障が発生したと判定し、ロックステップコア１２は故障発生情報を出力する。各処理ブロック２が備える周辺回路には、それぞれのＣＰＵ３のみがアクセスするようになっており、処理ブロック２＿０と処理ブロック２＿１とは非干渉である。以下、マイクロコントローラ１は単にコントローラ１と称する。
【００１２】
また、コントローラ１は、２つのクロック供給部１３＿０，１を備えている。これらのクロック供給部１３＿０，１より供給されるクロック信号は２つの切替スイッチ１４＿０，１に入力されており、これら２つの切替スイッチ１４＿０，１を介して、何れか一方のクロック信号が２つの処理ブロック２＿０，１に供給されるように切替えられる。
【００１３】
図２に示すように、ＥＣＵ（Electronic Control Unit）１５はコントローラ１を備えており、パワーステアリングシステムを構成するモータ１６を駆動制御の対象としている。ＥＣＵ１５は、実際には図示しないＨブリッジやインバータ等の駆動回路を介してモータ１６を駆動制御する。モータ１６はアクチュエータに相当する。例えば、モータ１６の固定子巻線は２重化されており、コントローラ１の２つの処理ブロック２＿０，１が、２系統の固定子巻線にそれぞれ独立して通電を行う。処理ブロック２＿０，１が、同じ制御内容を実行しモータ１６を駆動することで、駆動制御も２重化されている。これを独立２系統方式と称する。尚、切替スイッチ１４の切替えもＥＣＵ１５によって行われる。
【００１４】
ＥＣＵ１５は、指令側の３つのＥＣＵ１７＿０〜２とＣＡＮにより通信を行うが、これらと２つの処理ブロック２＿０，１との間の通信線１８も２重化されている。すなわち、それぞれのＣＡＮ通信部１０が２重化に対応した構成となっている。ＥＣＵ１７は外部の制御装置に相当する。ＥＣＵ１５は、ＥＣＵ１７＿０〜２より車両のレーンチェンジや障害物回避のための操舵角変更指令を受け取る。
【００１５】
また、２つのセンサ１９＿０，１は、例えばステアリングの操舵角を検出するセンサであり、これらのセンサ信号はＳＥＮＴ通信により各処理ブロック２＿０，１に入力される。前記ＳＥＮＴ通信の通信線２０も、各処理ブロック２＿０，１に対して２重化されている。
【００１６】
次に、本実施形態の作用について説明する。各処理ブロック２＿０，１は、図３に示す処理をそれぞれが実行する。ＣＰＵ３は、例えばロックステップコア１２により故障の発生を検知すると（Ｓ１；ＹＥＳ）、その処理ブロック２は動作を停止する（Ｓ２）。例えば処理ブロック２＿０が故障した場合、以降にモータ１６は処理ブロック２＿１のみにより駆動制御される。ここで、モータ１６を同時に駆動する処理ブロック２が「２」から「１」に減じたことでモータ１６の出力が低下することが問題となる場合は、その分だけ出力を増大させて補償すれば良い。尚、任意であるが、指令側のＥＣＵ１７に故障情報を伝達することでユーザへの通知を行っても良い（Ｓ３）。
【００１７】
また、ステップＳ１における故障検知は、ロックステップコア１２によるものの他、以下を要因としても良い。
・ＲＡＭ５について、例えばＥＣＣ（Error Checker and Corrector）によるメモリ異常が検知されると、ソフトにより動作を停止。
・ＣＡＮ通信の異常をＥＣＵ１７側で検知し、動作停止指令を処理ブロック２に送信する。この場合、ＥＣＵ１７は通信監視部に相当する。
・想定外のソフト動作により何らかの故障があると判断した場合、ソフトにより動作を停止。
【００１８】
以上のように本実施形態によれば、コントローラ１にＣＰＵ３及びその周辺回路が搭載された処理ブロック２を２つ備える。そして、各処理ブロック２に搭載されている周辺回路；ＲＯＭ３〜ＰＷＭ信号生成部１１には、それぞれの処理ブロック２に搭載されているＣＰＵ３のみがアクセスするように構成した。これにより、何れか１つの処理ブロック２に故障が発生した場合でも、その他の処理ブロック２によって、故障した処理ブロック２が行っていた処理を全く問題なく代行させることができる。また、処理ブロック２に、周辺回路の１つとしてロックステップコア１２を備えるので、ロックステップコア１２の動作により、処理ブロック２に故障が発生したか否かを監視できる。
【００１９】
さらに、２つのクロック供給部１３を備え、各処理ブロック２には切替スイッチ１４を介して、何れか１つのクロック供給部１３からのクロック信号を選択的に供給するようにした。したがって、クロック信号の供給についても冗長化することができる。
【００２０】
加えて、コントローラ１に、指令側のＥＣＵ１７からの信号を入力するために多重化されている通信線１８を備え、ＥＣＵ１７からの信号に基づいて、２つの処理ブロック２により同一のモータ１６を駆動するように構成した。これにより、ＥＣＵ１５の何れか１つの処理ブロック２に故障が発生した場合でも、他の処理ブロック２によってモータ１６の駆動制御を継続できる。また、ＥＣＵ１７がＣＡＮ通信が正常か否かを監視することで、通信に異常が発生した際に、処理ブロック２の切替えを行うことができる。
【００２１】
（第２実施形態）
以下、第１実施形態と同一部分には同一符号を付して説明を省略し、異なる部分について説明する。図４に示すように、第２実施形態のＥＣＵ２１は、コントローラ１に替わるコントローラ２２を備えている。図５に示すように、コントローラ２２は、共有記憶部に相当する共用ＲＡＭ２３を備えており、各処理ブロック２４＿０，１のＣＰＵ３は何れも、それぞれのバス６及び図示しない調停部を介して共用ＲＡＭ２３にアクセス可能となっている。
【００２２】
また、各処理ブロック２４は、周辺回路の１つとしてバス６に接続されるＩ／Ｏ２５を備えている。図４に示すように、各処理ブロック２４とモータ１６との間には、出力カット用のスイッチ２６が配置されており、ＣＰＵ３は、レジスタの設定によりスイッチ２６のＯＮ／ＯＦＦを制御する。
【００２３】
次に、第２実施形態の作用について説明する。２つの処理ブロック２４が同じ制御内容を同時に実行することは第１実施形態と同様であるが、第２実施形態では、２つの処理ブロック２４の内、何れか１つだけがモータ１６の駆動制御を行う，いわゆるホットスタンバイ方式を採用する。以下では、モータ１６の駆動制御を行っている処理ブロック２４を「制御ブロック」と称し、モータ１６の駆動制御を行わずにスタンバイ状態にある処理ブロック２４を「スタンバイブロック」と称する。
【００２４】
初期状態において、制御ブロック２４はスイッチ２６をＯＮに、スタンバイブロック２４はスイッチ２６をＯＦＦにしている。そして図６に示すように、制御ブロック２４では、ステップＳ１と同様に故障を検知すると（Ｓ１１；ＹＥＳ）、スタンバイブロック２４に故障の発生を通知する（Ｓ１２）。この通知は、例えば共用ＲＡＭ２３に予め設定した特定のアドレスに「故障発生フラグ」を立てることで行う。それから、スイッチ２６をＯＦＦにして「出力カットを有効化」すると（Ｓ１３）処理を終了する。
【００２５】
一方、スタンバイブロック２４は、図７に示すように、共用ＲＡＭ２３における上記特定のアドレスをポーリングすることで、制御ブロック２４からの故障発生の通知があるまで待機している（Ｓ１４）。そして、故障発生フラグがセットされたことを確認すると（ＹＥＳ）、スイッチ２６をＯＮにして「出力カットを無効化」する（Ｓ１５）。これにより、スタンバイブロック２４は制御ブロック２４に転じる。その後は、ステップＳ３と同様に、任意でユーザへの通知を行っても良い（Ｓ１６）。
【００２６】
以上のように第２実施形態によれば、各処理ブロック２４に搭載されているＣＰＵ３が共通にアクセスする共用ＲＡＭ２３を備えることで、何れか１つの処理ブロック２４に故障が発生した場合、共用ＲＡＭ２３を介して他の処理ブロック２４にその事象を伝達し、処理を代行させることが可能になる。
【００２７】
（第３実施形態）
第３実施形態では、第２実施形態のＥＣＵ２１を用いるが、２つの処理ブロック２４が同じモータ１６を制御するための処理を並行して実行せず、例えば処理ブロック２４＿０がモータ１６を制御し、処理ブロック２４＿１はモータ１６以外の対象を制御する状態を前提とする。そして、処理ブロック２４＿０に故障が発生すると、処理ブロック２４＿１がモータ１６の制御を代行することでいわゆる縮退制御に移行する。
【００２８】
そのため、処理ブロック２４＿０は、モータ１６の駆動制御中に、処理ブロック２４＿１側に処理を代行させるために必要な情報を随時共用ＲＡＭ２３に書き込んでいる。そして、図８に示すように、処理ブロック２４＿０に故障が発生すると（Ｓ１１；ＹＥＳ）処理ブロック２４＿１に故障の発生を通知する（Ｓ１２’）。それから、動作を停止する（Ｓ１７）。
【００２９】
一方、図９に示すように処理ブロック２４＿１は、処理ブロック２４＿０がモータ１６を駆動制御している間はその他の対象を制御しながら、第２実施形態と同様に処理ブロック２４＿０からの故障発生通知があるか否かを監視している（Ｓ１４’）。そして、故障発生通知があると（ＹＥＳ）縮退制御に切替える（Ｓ１８）。その際に、処理ブロック２４＿０が共用ＲＡＭ２３に書き込んだ、モータ１６の駆動制御に必要な情報を読み取る（Ｓ１９）。
以上のように第３実施形態によれば、ＥＣＵ２１によって縮退制御方式にも対応することができる。
【００３０】
（第４実施形態）
図１０に示す第４実施形態のＥＣＵ３１は第３実施形態と同様に縮退制御方式を採用するが、そのためにコントローラ３２と外部ＩＣ３３とを備えている。コントローラ３２は２つの処理ブロック３４＿０，１を備え、外部ＩＣ３３は、２つの処理ブロック３４の異常監視，故障検知を行うと共に、これらに対して縮退制御に切替えるための指示等を与える。外部ＩＣ３３は、例えば以下のような方法で処理ブロック３４の異常監視を行う。
・例えばウォッチドッグタイマと同様に、各処理ブロック３４が外部ＩＣ３３に、周期的にパルス信号を送信する。外部ＩＣ３３は、前記パルス信号の送信が停止したり、送信周期が異常となった場合に、処理ブロック３４の故障を検知する。
・処理ブロック３４と外部ＩＣ３３との間で行う通信フォーマットが、予め定めたものと異なった場合に、処理ブロック３４の故障を検知する。
【００３１】
次に、第４実施形態の作用について説明する。第３実施形態と同様に、処理ブロック３４＿０がモータ１６を制御し、処理ブロック３４＿１はモータ１６以外の対象を制御している。図１１に示すように、外部ＩＣ３３は、上述したように処理ブロック３４＿０に故障が発生したか否かを監視し（Ｓ２１）、故障が発生すると（ＹＥＳ）処理ブロック３４＿１に縮退制御に切替える旨の信号を送信する（Ｓ２２）。それから、処理ブロック３４＿０に動作の停止を指示するストップ信号を送信する（Ｓ２３）。
【００３２】
図１２に示すように、処理ブロック３４＿０は、外部ＩＣ３３からのストップ信号を受信すると（Ｓ２４；ＹＥＳ）動作を停止する（Ｓ２５）。一方、図１３に示すように、処理ブロック３４＿１は、外部ＩＣ３３からの縮退制御への切替えを指示する信号を受信すると（Ｓ２６；ＹＥＳ）縮退制御に切替える（Ｓ２７）。それから、ステップＳ１９，Ｓ１６と同様の処理を行う（Ｓ２８，Ｓ２９）。尚、図１１〜図１３に示すフローチャートでは、第４実施形態の主要な作用以外の処理については図示を省略している。
【００３３】
以上のように第４実施形態によれば、ＥＣＵ３１に外部ＩＣ３３を備え、外部ＩＣ３３により処理ブロック３４の動作を監視して、何れかの処理ブロック３４に故障が発生した際に縮退制御への切替えを行うことができる。
【００３４】
（第５実施形態）
第５実施形態では、例えば第４実施形態のＥＣＵ３１を用いて、一方の処理ブロック３４によりモータ１６を駆動制御し、他方の処理ブロック３４は動作を停止している。ここで、第２実施形態と同様の名称を用いるが、前者の制御ブロック３４に故障が発生すると、後者のスタンバイブロック３４がモータ１６を駆動制御するように切替えるいわゆるコールドスタンバイ方式を採用する。
【００３５】
次に、第５実施形態の作用について説明する。例えば処理ブロック３４＿０を制御ブロックとし、処理ブロック３４＿１をスタンバイブロックとする。図１４に示すように、外部ＩＣ３３は、処理ブロック３４＿０に故障が発生したことを検知すると（Ｓ３１；ＹＥＳ）、処理ブロック３４＿１にウェイクアップ信号を送信して起動させる（Ｓ３２）。それから、処理ブロック３４＿０にストップ信号を送信して（Ｓ３３）動作を停止させる。
【００３６】
図１５に示すように、処理ブロック３４＿０は、ストップ信号を受信すると（Ｓ３４；ＹＥＳ）動作を停止する（Ｓ３５）。図１６に示すように、処理ブロック３４＿１は、ウェイクアップ信号を受信すると（Ｓ３６；ＹＥＳ）起動して動作を開始する（Ｓ３７）。それから、ステップＳ１９，Ｓ１６と同様の処理を行う（Ｓ３８，Ｓ３９）。
以上のように第５実施形態によれば、ＥＣＵ３１によりコールドスタンバイ方式にも対応することができる。
【００３７】
（第６実施形態）
図１７に示す第６実施形態のコントローラ４１は、第１実施形態のコントローラ１とほぼ同様の構成であるが、クロック信号の供給形態のみが相違している。バス６〜ＰＷＭ信号生成部１１等の周辺回路については、一括したものを周辺機能４２として図示している。２つの処理ブロック２＿０，１に対して、２つのクロック供給部１３＿０，１のうち、何れか１つのクロック供給部１３からのクロック信号が供給されるが、その供給はスイッチ１４を介すことなく決定される。例えば、クロック供給部１３＿０，１の何れか一方を動作させるように設定する。この場合、クロック供給部１３＿０，１と処理ブロック２＿０，１との間のクロックパスは共通であっても良い。
【００３８】
以上のように第６実施形態によれば、２つのクロック供給部１３＿０，１を備え、各処理ブロック２＿０，１には、何れか１つのクロック供給部１３からのクロック信号を供給するようにした。このような構成によってもクロック信号の供給系統を冗長化できる。
【００３９】
（第７実施形態）
図１８に示す第７実施形態のコントローラ５１は、第６実施形態のコントローラ４１とほぼ同様の構成であるが、予め処理ブロック２＿０にはクロック供給部１３＿０からのクロック信号が供給され、処理ブロック２＿１にはクロック供給部１３＿１からのクロック信号が供給されるように固定されている。このように構成すれば、クロック供給部の１３＿０，１の何れか一方からのクロック信号の供給が途絶した場合でも、他方の側の処理ブロック２によって処理を継続できる。
【００４０】
（第８〜第１０実施形態）
図１９〜図２１に示す第８〜第１０実施形態のコントローラ１Ａ〜１Ｃは、第１実施形態のコントローラ１におけるクロック供給部１３の詳細構成を示すバリエーションである。図１９に示す第８実施形態のコントローラ１Ａは、各クロック供給部１３Ａが、それぞれ外付けの発振子４３をクロック信号の発振源とする構成である。
【００４１】
また、図２０に示す第９実施形態のコントローラ１Ｂは、各クロック供給部１３Ｂが、それぞれ内蔵のＭＥＭＳ（Micro Electromechanical Systems）発振器４４をクロック信号の発振源とする構成である。ＭＥＭＳ発振器４４の詳細構成については、例えば特開２００９−２００８８８号公報等に開示されている。
【００４２】
そして、図２１に示す第１０実施形態のコントローラ１Ｃは、処理ブロック２＿０側がクロック供給部１３Ａを用い、処理ブロック２＿１側がクロック供給部１３Ｂを用いた構成である。
以上のように構成される第８〜第１０実施形態による場合も、第１実施形態と同様の効果が得られる。
【００４３】
（第１１実施形態）
図２２に示す第１１実施形態のコントローラ６１は、第６実施形態のコントローラ４１にクロック監視部６２を追加した構成である。クロック監視部６２は、クロック供給部１３の発振動作が正常か否かを、例えば発振周波数を参照することで監視する。例えば、発振周波数が基準値に対して±数％以内の許容範囲内にあれば正常と判断する（図２３，Ｓ４１；ＮＯ）。発振周波数が許容範囲を超えて異常と判断すると（Ｓ４１；ＹＥＳ）、異常と判断されたクロック信号が供給されていた処理ブロック２に、正常なクロック信号を供給し（Ｓ４２）、必要に応じてユーザに通知を行う（Ｓ４３）。
【００４４】
例えば、図２２に示すように、初期状態でクロック供給部１３＿０からのクロック信号が処理ブロック２＿０，１に供給されていた場合に、クロック供給部１３＿０が異常となった判断する。すると、クロック監視部６２は、クロック供給部１３＿０の動作を停止させて、クロック供給部１３＿１側のクロック信号出力をイネーブル状態とすることで、クロック供給部１３＿１からのクロック信号が処理ブロック２＿０，１に供給されるように切替える。
【００４５】
以上のように第１１実施形態によれば、コントローラ６１に、クロック供給部１３の動作が正常か否かを監視するクロック監視部６２を備えたので、クロック信号を供給しているクロック供給部１３の動作が異常となった場合、それに替えて正常なクロック供給部１３からクロック信号を供給するように切替えることができる。
【００４６】
（第１２実施形態）
図２４に示す第１２実施形態は、第６実施形態のコントローラ４１の外部にクロック監視部６２を配置した構成である。この場合、クロック監視部６２は、例えばコントローラ４１を有して構成されるＥＣＵが備える要素となる。このように、クロック監視部６２をコントローラ４１の外部に配置することで、クロック監視部６２は、コントローラ４１の内部状態にかかわることなくクロック供給部１３の動作を監視できる。
【００４７】
本発明は上記した、又は図面に記載した実施形態にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
処理ブロック２を３つ以上備えていても良い。
コントローラが備える周辺回路については、個別の設計に応じ適宜変更して良い。
第７実施形態に、第８，第９実施形態を適用しても良い。
駆動対象とするアクチュエータは、モータに限ることはない。また、パワーステアリングシステム以外のアプリケーションに適用しても良い。
【符号の説明】
【００４８】
１  マイクロコントローラ、２  処理ブロック、３  ＣＰＵ、４  ＲＯＭ、５  ＲＡＭ、６  バス、７  タイマ７、８  Ａ／Ｄコンバータ、９  ＳＥＮＴ通信部、１０  ＣＡＮ通信部、１１  ＰＷＭ信号生成部、１２  ロックステップコア。
【図１】
2017146897.tif 000003
【図２】
2017146897.tif 000004
【図３】
2017146897.tif 000005
【図４】
2017146897.tif 000006
【図５】
2017146897.tif 000007
【図６】
2017146897.tif 000008
【図７】
2017146897.tif 000009
【図８】
2017146897.tif 000010
【図９】
2017146897.tif 000011
【図１０】
2017146897.tif 000012
【図１１】
2017146897.tif 000013
【図１２】
2017146897.tif 000014
【図１３】
2017146897.tif 000015
【図１４】
2017146897.tif 000016
【図１５】
2017146897.tif 000017
【図１６】
2017146897.tif 000018
【図１７】
2017146897.tif 000019
【図１８】
2017146897.tif 000020
【図１９】
2017146897.tif 000021
【図２０】
2017146897.tif 000022
【図２１】
2017146897.tif 000023
【図２２】
2017146897.tif 000024
【図２３】
2017146897.tif 000025
【図２４】
2017146897.tif 000026