(57)【要約】【課題】  メインＣＰＵと監視ＩＣを有する制御装置において、メインＣＰＵからエラー信号生成時にメインＣＰＵがブートモードであることを識別する手段を有する制御装置を提供する。【解決手段】  この電子制御装置１は、メインＣＰＵ２からのエラー通知１１を生成していても、メインＣＰＵがブートモードであることを識別して、監視ＩＣ３のリセット出力１３がメインＣＰＵ１に対してリセットをかけない。【選択図】  図２
2018097442.tif 000002
【特許請求の範囲】
【請求項１】
メインＣＰＵと監視ＩＣを有する制御装置において、メインＣＰＵからエラー信号生成時にメインＣＰＵがブートモードであることを識別する手段を有する制御装置。
【請求項２】
本件は、ブートモードにおいてリセットを解除することを特徴とした請求項１記載の制御装置。
【請求項３】
本件は、メインＣＰＵのパワーオンリセット解除前にＰＲＵＮ信号を入力することを特徴とした請求項１記載の制御装置。
【請求項４】
本件は、メインＣＰＵにプログラムが書き込まれているかどうかを検知する手段を有する、請求項１記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＳＯ２６２６２に代表される機能安全を有するプロセッサを持つ電子制御装置における、プログラム書き込み方法に関する。
【背景技術】
【０００２】
従来のプロセッサ（ＣＰＵ）を用いた車載用電子制御装置では、車両に搭載した制御対象（例えば、エンジンや自動変速機等）の制御を担うメインＣＰＵを、サブＣＰＵ等の監視部によって監視することで、電子制御装置の機能安全性を保証するようにしている。例えば、特許文献１にあるメインＣＰＵのプログラムの暴走などによる不正な動作を検出する機構である、ウォッチドッグタイマ（ＷＤＴ）などがある。
【０００３】
また近年、車載電子機器等の機能安全規格として、国際標準化機構のＩＳＯ２６２６２が、注目を集めている。ＩＳＯ２６２６２では、車載電子機器の構成要素であるマイコン（例えばメインＣＰＵ）等に故障が発生したとしても、機能的な工夫を施すことによって最低限の許容可能な安全を確保する、フェールセーフ制御が求められている。例えば、故障が発生したとしても、故障が発生してから予め定められた期間内で故障を検出することなどが挙げられる。
【０００４】
機能的な工夫の一例として、メインＣＰＵに複数のプロセッサコアを用いたロックステップ方式がある。この技術に関連し、特許文献２には、ロックステップ方式を用いたプロセッサシステムに関する技術が記載されている。ロックステップ方式においては、複数のプロセッサコアにおいて同一の処理（タスク）が実行され、これらの実行結果を比較することによって故障（エラー）が検知される仕組みである。
【０００５】
上述したように、ロックステップ方式などの機能安全に対応したマイコンでは、タスクのエラー以外にも、様々なエラーを検知することができる。一方で、その故障が一時的か、恒久的かで、フェールセーフ制御に移行するかどうか判断する必要がある。この場合、例えば、特許文献２のようにエラーの検知回数をカウントすることで、そのエラーが一時的か恒久的か判断することができる。
【０００６】
上述したように、機能安全への対応により、様々な要因のエラーを検知し、フェールセーフ制御をすることが可能となった。それに伴い、様々なエラー信号を用いて、マイコンをフェールセーフ制御へ移行させる仕組み（セーフティメカニズム）ができた。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開2013-178736号公報
【特許文献２】特開2016-110502号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述したように、機能安全への対応により、様々なエラー要因を検知し、フェールセーフ制御をすることが可能となった。その制御の仕組みとして、様々なエラー信号を出力し、それにより例えば監視ＩＣなどが、マイコン動作をリセットさせるものが考えられる。
【０００９】
一方で、前記の構成では例えばメインＣＰＵにプログラムが書き込まれていない場合、エラー信号は初期値として、エラー状態になっていることが一般的である。メインＣＰＵにプログラムが書き込まれている場合は、電源の投入後にエラー信号は正常状態へ移行する。
【００１０】
従来は、メインＣＰＵにプログラムを書き込む場合は、外部から信号を入力しＷＤＴを正常状態にすれば、書き込むことができた。
【００１１】
しかしながら、本課題ではロックステップ等のエラー出力信号が増加し、フェールセーフ制御を統合したため、ＷＤＴ以外のエラー信号が初期値（エラー状態）のままだと、ＷＤＴ出力とその他のエラー出力のロジックが監視ＩＣなどで接続されているため、フェールセーフ制御としてメインＣＰＵへリセットをかけ続けるので、書き込むことができないという問題が発生する可能性がある。
【課題を解決するための手段】
【００１２】
メインＣＰＵと監視ＩＣを有する制御装置において、メインＣＰＵからエラー信号生成時にメインＣＰＵがブートモードであることを識別する手段を有する制御装置。
【発明の効果】
【００１３】
本発明によれば、ロックステップ方式などによるエラー出力を利用したフェールセーフ制御機能をもつ電子制御装置において、メインＣＰＵにプログラムを書き込むことが可能となる。
【図面の簡単な説明】
【００１４】
【図１】従来の電子制御装置のフェールセーフ制御の構成の一例、及びその書き込み手法である。
【図２】本課題の電子制御装置のフェールセーフ制御の構成の一例、及びその書き込み手法である。
【図３】実施例１における監視ＩＣのブートモード判定条件を満たすタイミングチャートである。
【図４】実施例２におけるメインＣＰＵのプログラムの書き込み異常によって、ロックステップなどのエラーを含むエラー通知の出力を反転させる構成の一例である。
【図５】実施例３における外部からの信号により、ロックステップなどのエラーを含むエラー通知の出力を変える方法の一例である。
【発明を実施するための形態】
【００１５】
本実施の形態の概要について説明する。図１は、従来の電子制御装置１（ＥＣＵ）のフェールセーフ制御の構成の一例である。図１に示す通り、従来はメインＣＰＵ２が正常状態であれば、プログラム処理による監視パルス信号（ＰＲＵＮ出力５）を周期信号として出力する。監視ＩＣ３では、そのＰＲＵＮ信号をＷＤＴ６により監視しており、メインＣＰＵ２に対してリセット７をかけていた。
【００１６】
図１の場合は、メインＣＰＵ２にプログラムが書き込まれていない場合でも、プログラム書き込み装置４からＰＲＵＮ信号１０を入力することで、ＷＤＴ６によるリセット信号９を解除することができる。
【００１７】
図２は、本課題の電子制御装置１のフェールセーフ制御の構成である。図１の構成に加えて、ロックステップなどのエラーを含むエラー通知１１が追加され、その出力８とＷＤＴの出力９が、リセット出力１３においてロジックが接続されている。
【００１８】
そのため、メインＣＰＵ２にプログラムが書き込まれていない場合は、プログラム書き込み装置４からＰＲＵＮ信号１０を入力し、ＷＤＴ６が正常状態になったとしても、ロックステップなどのエラーを含むエラー通知１１がエラー状態のままであり、リセット出力
１３のロジック接続により、メインＣＰＵ２に対してリセット７をかけ続けてしまう状態である。
【実施例１】
【００１９】
上述した、図２の状態において、メインＣＰＵのプログラム書き込み時においては、リセットを解除するという、プログラムの判定条件を設定する。判定条件は３つあり、１つはエラー出力信号１２がロー（エラー）状態であること。１つは、ＷＤＴ６に外部から入力されるＰＲＵＮ信号１０が正常に入力されていること。もう１つが、電子制御装置１の電源投入からパワーリセット解除タイミングより前（図３で説明する）にＰＲＵＮを入力すること。以上の条件を満たす場合、監視ＩＣ３はメインＣＰＵ２のプログラム書き込み状態（ブートモード）だと判断し、リセット出力１３を解除する。以上の条件を、監視ＩＣ３のプログラムに追加する。
【００２０】
図３は、前記のプログラムブートモード条件を示すタイミングチャートである。イグニッションスイッチ（ＩＧＮＳＷ）信号１５は、前記の電子制御装置１の電源投入信号にあたる。リセット信号１６は、初期値はロー状態であり、正常状態であればパワーオンリセット解除タイミング１９にハイ状態へ移行する。パワーオンリセットは、マイコンが起動してから安定するまでリセットをかけることである。
【００２１】
前記において、パワーオンリセット期間に、ロックステップなどのエラーを含むエラー通知の出力１７がロー状態かつ、プログラム書き込み装置による外部からのＰＲＵＮ信号１８が入力されていることを示している。
【実施例２】
【００２２】
上述した、図２の状態において、メインＣＰＵ２のプログラム書き込み異常（例えば、プログラム未書き込み状態）によって、ロックステップなどのエラーを含むエラー通知１１の出力を反転させる方法がある。
【００２３】
図４は、前記の方法の一例である。メインＣＰＵ２はプログラム書き込み異常通知２０（例えば、プログラム未書き込み状態）を出力する。メインＣＰＵ２と監視ＩＣ３の間には、ロックステップなどのエラーを含むエラー通知１１とプログラム書き込み異常通知２０を入力し、プログラム書き込み異常の場合にエラー通知１１の出力を反転させるロジック回路２２を設ける方法である。
【００２４】
図４は一例であり、ロジック回路２２の場所は、メインＣＰＵ２と監視ＩＣ３の間である必要はない。例えば、監視ＩＣの中にあっても構わない。
【実施例３】
【００２５】
上述した、図２の状態において、ロックステップなどのエラーを含むエラー通知１１の出力信号線１２に対して、外部（例えば、プログラム書き込み装置４）から直接信号を入力し、正常状態と認識させることで、リセットを解除させる方法である。
【００２６】
図５は、前記の方法の一例である。図２の状態において、ロックステップなどのエラーを含むエラー通知１１の出力信号線１２に対して、例えば外部のプログラム書き込み装置４からの信号２４を入力して、エラー状態を解除させることで、リセット出力１３を解除する方法である。
【００２７】
図５は一例であり、ロックステップなどのエラーを含むエラー通知１１を解除させる外部からの信号は、プログラム書き込み装置から出力される必要はない。
【符号の説明】
【００２８】
１：電子制御装置（ＥＣＵ）
２：メインＣＰＵ（メインマイコン）
３：監視ＩＣ（サブマイコン）
４：プログラム書き込み装置
５：ＰＲＵＮ出力
６：ウォッチドックタイマ（ＷＤＴ）
７：リセット回路
８：ＰＲＵＮ信号線
９：ＷＤＴ出力信号線
１０：プログラム書き込み装置からのＰＲＵＮ信号
１１：エラー通知（ロックステップエラー含む）
１２：エラー出力信号線
１３：リセット出力
１４：リセット出力信号線
１５：イグニッションスイッチ信号（ＩＧＮＳＷ）
１６：リセット信号
１７：エラー信号
１８：ＰＲＵＮ信号
１９：パワーオンリセット解除タイミング
２０：プログラム異常通知（プログラム未書き込み含む）
２１：プログラム異常出力信号線
２２：ロジック回路
２３：ロジック出力信号線
２４：プログラム書き込み装置からのエラー出力信号線
【図１】
2018097442.tif 000003
【図２】
2018097442.tif 000004
【図３】
2018097442.tif 000005
【図４】
2018097442.tif 000006
【図５】
2018097442.tif 000007