(57)【要約】【課題】電子制御装置の信頼性を向上させる。【解決手段】電子制御装置１は、データの読み書きが可能な１つ以上の記憶手段１７と、ＣＰＵ１１とを備え、ＣＰＵ１１は、制御対象９の制御に択一的に用いられる複数の制御データ（要求値）Ｒ１〜Ｒｎと、各制御データＲ１〜Ｒｎの優先度をそれぞれ示す複数の優先度データ（優先度）Ｐ１〜Ｐｎとを算出して記憶手段１７に書き込む手段と、記憶手段１７内の優先度データＰ１〜Ｐｎに基づいて、記憶手段１７内の制御データＲ１〜Ｒｎのうち、最高優先度の制御データを選択する手段として機能すると共に、選択した制御データである調停結果を用いて、制御対象９を制御する。更に、ＣＰＵ１１は、記憶手段１７に記憶されている優先度データＰ１〜Ｐｎのデータ化けを検出する手段としても機能し、優先度データＰ１〜Ｐｎのデータ化けを検出した場合には、調停結果を固定値にするフェールセーフ処理を行う。【選択図】図１
2015097027.tif 000002
【特許請求の範囲】
【請求項１】
データの読み書きが可能な記憶手段（１７）と、
制御対象（９）の制御に択一的に用いられる複数の制御データ（Ｒ１〜Ｒｎ）と、前記各制御データに対応するデータであって、前記各制御データの優先度をそれぞれ示す複数の優先度データ（Ｐ１〜Ｐｎ）とを算出すると共に、算出した前記制御データ及び前記優先度データを前記記憶手段に書き込むデータ更新手段（１１，Ｓ１１０，Ｓ１２０）と、
前記記憶手段に記憶されている前記優先度データに基づいて、前記記憶手段に記憶されている前記制御データのうち、最も優先度の高い制御データを選択する選択手段（１１，Ｓ３３０，Ｓ３４０）と、
を備え、前記選択手段により選択された制御データである調停結果を用いて、前記制御対象を制御する電子制御装置であって、
前記記憶手段に記憶されている前記優先度データのデータ化けを検出する検出手段（１１，Ｓ３１０，Ｓ３１５，Ｓ３１７）と、
前記検出手段により前記優先度データのデータ化けが検出された場合に、所定のフェールセーフ処理を行うフェールセーフ手段（１１，Ｓ３５０，Ｓ３６０，Ｓ３７０，Ｓ３８０，Ｓ３９０）と、
を備えることを特徴とする電子制御装置。
【請求項２】
請求項１に記載の電子制御装置において、
前記検出手段（１１，Ｓ３１０）は、
前記記憶手段に記憶されている前記複数の優先度データの全体について、データ化けを検出し、
前記フェールセーフ手段（１１，Ｓ３５０，Ｓ３６０）は、
前記フェールセーフ処理として、前記調停結果を、前記データ更新手段により算出された前記制御データとは別の固定値にするための処理を行うこと、
を特徴とする電子制御装置。
【請求項３】
請求項２に記載の電子制御装置において、
前記フェールセーフ手段（１１，Ｓ３５０）は、
前記フェールセーフ処理として、前記選択手段を動作させることなく前記固定値を前記調停結果として設定する処理を行うこと、
を特徴とする電子制御装置。
【請求項４】
請求項２に記載の電子制御装置において、
前記フェールセーフ手段（１１，Ｓ３６０）は、
前記フェールセーフ処理として、前記記憶手段に記憶されている前記制御データの全てを前記固定値に書き換える処理を行うこと、
を特徴とする電子制御装置。
【請求項５】
請求項２ないし請求項４の何れか１項に記載の電子制御装置において、
前記データ更新手段（１１，Ｓ１２０）は、
前記記憶手段に書き込んだ前記複数の優先度データの全体についてデータ化けを検出するための全体検査用情報も、前記記憶手段に書き込み、
前記検出手段（１１，Ｓ３１０）は、
前記記憶手段に記憶されている前記全体検査用情報を用いて、前記記憶手段に記憶されている前記複数の優先度データの全体についてデータ化けを検出すること、
を特徴とする電子制御装置。
【請求項６】
請求項１に記載の電子制御装置において、
前記検出手段（１１，Ｓ３１５）は、
前記記憶手段に記憶されている前記各優先度データについてデータ化けを検出し、
前記フェールセーフ手段（１１，Ｓ３７０）は、
前記フェールセーフ処理として、前記記憶手段に記憶されている前記制御データのうち、前記検出手段によってデータ化けが検出された優先度データに対応する制御データを、前記データ更新手段により算出された前記制御データとは別の固定値に書き換える処理を行うこと、
を特徴とする電子制御装置。
【請求項７】
請求項１に記載の電子制御装置において、
前記検出手段（１１，Ｓ３１５）は、
前記記憶手段に記憶されている前記各優先度データについてデータ化けを検出し、
前記フェールセーフ手段（１１，Ｓ３８０）は、
前記フェールセーフ処理として、前記記憶手段に記憶されている前記制御データのうち、前記検出手段によってデータ化けが検出された優先度データに対応する制御データを、前記選択手段により選択される対象から除外する処理を行うこと、
を特徴とする電子制御装置。
【請求項８】
請求項６又は請求項７に記載の電子制御装置において、
前記データ更新手段（１１，Ｓ１２０）は、
前記記憶手段に書き込んだ前記各優先度データについてデータ化けを検出するための複数の個別検査用情報も、前記記憶手段に書き込み、
前記検出手段（１１，Ｓ３１５）は、
前記記憶手段に記憶されている前記各個別検査用情報を用いて、前記記憶手段に記憶されている前記各優先度データについてデータ化けを検出すること、
を特徴とする電子制御装置。
【請求項９】
請求項１に記載の電子制御装置において、
前記データ更新手段（１１，Ｓ１２０）は、
算出した前記複数の優先度データを１つのデータとして所定の誤り訂正符号に符号化すると共に、その符号化したデータを、前記複数の優先度データとして前記記憶手段に書き込み、
前記検出手段（１１，Ｓ３１７）は、
前記記憶手段に記憶されている前記複数の優先度データの全体について、前記誤り訂正符号に応じた誤り検出処理を行うことにより、データ化けを検出し、
前記フェールセーフ手段（１１，Ｓ３９０）は、
前記フェールセーフ処理として、前記複数の優先度データを訂正する処理を行うこと、
を特徴とする電子制御装置。
【請求項１０】
請求項１に記載の電子制御装置において、
前記データ更新手段（１１，Ｓ１２０）は、
算出した前記各優先度データを所定の誤り訂正符号に符号化すると共に、その符号化した各データを、前記各優先度データとして前記記憶手段に書き込み、
前記検出手段（１１，Ｓ３１７）は、
前記記憶手段に記憶されている前記各優先度データについて、前記誤り訂正符号に応じた誤り検出処理を行うことにより、データ化けを検出し、
前記フェールセーフ手段（１１，Ｓ３９０）は、
前記フェールセーフ処理として、前記検出手段によってデータ化けが検出された優先度データを訂正する処理を行うこと、
を特徴とする電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子制御装置に関する。
【背景技術】
【０００２】
データに、そのデータの優先度を示す情報を付帯させる技術がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３５００５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明者は、上記技術を電子制御装置に適用することを考えた。その場合、下記の構成が考えられる。
制御対象の制御に択一的に用いられる複数の制御データと、各制御データの優先度をそれぞれ示す複数の優先度データとを、メモリに対応付けて記憶する。そして、メモリ内の制御データのうち、最も優先度の高い制御データを、メモリ内の優先度データに基づいて選択し、その選択した制御データを用いて、制御対象を制御する。
【０００５】
このような電子制御装置では、メモリに記憶されている優性度データにデータ化けが生じる可能性がある。データ化けとは、記憶されたデータが元の値（書き込まれたときの値）とは異なる値に変化してしまうことであり、例えばノイズや電圧変動等の影響によって起こる可能性がある。
【０００６】
そして、優先度データのデータ化けが生じた場合には、意図しない制御データ（即ち、本当は最高優先度ではない制御データ）が、最高優先度の制御データとして選択されて制御対象の制御に用いられてしまう可能性がある。よって、優先度データのデータ化けが生じた場合に、そのことを知らずに何もしないと、電子制御装置の信頼性が低下する。
【０００７】
そこで、本発明は、電子制御装置の信頼性を向上させることを目的としている。
【課題を解決するための手段】
【０００８】
第１発明の電子制御装置は、データの読み書きが可能な記憶手段と、データ更新手段と、選択手段とを備える。
データ更新手段は、制御対象の制御に択一的に用いられる複数の制御データと、各制御データに対応するデータであって、各制御データの優先度をそれぞれ示す複数の優先度データとを算出すると共に、算出した制御データ及び優先度データを記憶手段に書き込む。
【０００９】
選択手段は、記憶手段に記憶されている優先度データに基づいて、記憶手段に記憶されている制御データのうち、最も優先度の高い制御データを選択する。
そして、この電子制御装置は、選択手段により選択された制御データである調停結果を用いて、制御対象を制御する。
【００１０】
更に、この電子制御装置は、検出手段と、フェールセーフ手段とを備える。
検出手段は、記憶手段に記憶されている優先度データのデータ化けを検出する。そして、フェールセーフ手段は、検出手段により優先度データのデータ化けが検出された場合に、所定のフェールセーフ処理を行う。
【００１１】
この電子制御装置によれば、検出手段及びフェールセーフ手段を備えるため、「優先度データのデータ化けが生じた場合に、そのことを知らずに何もしない」ということを回避することができる。よって、電子制御装置の信頼性を向上させることができる。
【００１２】
尚、特許請求の範囲に記載した括弧「（）」内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１３】
【図１】第１実施形態の電子制御装置の構成を表す構成図である。
【図２】第１実施形態の全体の処理を表すフローチャートである。
【図３】第１実施形態の要求値及び優先度算出処理を表すフローチャートである。
【図４】第１実施形態の調停処理を表すフローチャートである。
【図５】第１実施形態の優先度化け検出処理を表すフローチャートである。
【図６】第１実施形態の最大優先度選択処理を表すフローチャートである。
【図７】第４実施形態の調停処理を表すフローチャートである。
【図８】第５実施形態の調停処理を表すフローチャートである。
【図９】第５実施形態の優先度化け検出処理を表すフローチャートである。
【図１０】第６実施形態の調停処理を表すフローチャートである。
【図１１】第７，第８実施形態の調停処理を表すフローチャートである。
【発明を実施するための形態】
【００１４】
以下に、本発明が適用された実施形態の電子制御装置について説明する。尚、本実施形態の電子制御装置は、制御対象として、例えば車両に搭載されたエンジンのスロットル開度を調節するためのアクチュエータであるスロットルモータを制御する。また、実施形態の説明においては、「優先度データのデータ化け」のことを、「優先度化け」ともいう。
【００１５】
［第１実施形態］
図１に示すように、第１実施形態の電子制御装置１は、マイコン３と、出力回路５と、入力回路７とを備える。
【００１６】
出力回路５は、マイコン３からの駆動指令に従ってスロットルモータ９を駆動する。駆動指令は、スロットル開度を指令するための信号でもあり、例えばＰＷＭ（パルス幅変調）信号である。
【００１７】
入力回路７は、スロットルモータ９の制御に用いられる各種信号をマイコン３に入力させる。マイコン３に入力される信号としては、例えば、車両運転者によるアクセル操作量を示す信号や、エンジン回転数を示す信号や、車速を示す信号や、イグニッションスイッチのオン／オフ状態を示す信号等がある。
【００１８】
マイコン３は、ＣＰＵ（中央演算装置）１１と、メモリ１３とを備える。
メモリ１３には、プログラム領域１５と、データ記憶領域１７とが設けられている。尚、プログラム領域１５とデータ記憶領域１７は、物理的に別々のメモリであっても良い。
【００１９】
プログラム領域１５には、ＣＰＵ１１によって実行される各処理のプログラムが格納（記憶）されている。
データ記憶領域１７は、データの読み書きが可能な記憶手段に相当し、第１領域２１〜第６領域２６を備える。
【００２０】
第１領域２１には、スロットルモータ９の制御に択一的に用いられるｎ個（ｎは２以上の整数）の制御データである要求値Ｒ１〜Ｒｎが格納される。本実施形態において、要求値Ｒ１〜Ｒｎは、例えば制御目標のスロットル開度である。
【００２１】
第２領域２２には、各要求値Ｒ１〜Ｒｎの優性度をそれぞれ示すｎ個の優先度データＰ１〜Ｐｎが格納される。本実施形態において、優先度データＰ１〜Ｐｎは、値が大きいほど、それに対応する要求値の優先度が高いことを意味する。
【００２２】
第３領域２３には、優先度化け（優先度データＰ１〜Ｐｎのデータ化け）を検出するための検査用情報が格納される。
第４領域２４には、「優先度化け発生時の要求値」が記憶される。「優先度化け発生時の要求値」は、予め定められた設計上の固定値であり、優先度化けが発生した場合に、要求値Ｒ１〜Ｒｎに代えて、スロットルモータ９の制御に用いられる。このため、「優先度化け発生時の要求値」は、優先度化けが発生した場合に、スロットルモータ９の制御が安全側の制御となる値（例えば、目標のスロットル開度として０を示す値）に予め定め設定されている。
【００２３】
第５領域２５には、「調停が必要な要求値の数」が格納される。「調停が必要な要求値の数」とは、第１領域２１に格納される要求値Ｒ１〜Ｒｎの数（優先度データＰ１〜Ｐｎの数でもある）ｎであり、可変である。例えば、「調停が必要な要求値の数」は、制御対象によって変わる。
【００２４】
第６領域２６には、調停結果が格納される。調停結果とは、第１領域２１内の要求値Ｒ１〜Ｒｎのうち、最も優先度が高いものとして選択される制御データであり、その調停結果が、スロットルモータ９の制御に使用される。具体的には、ＣＰＵ１１は、実際のスロットル開度を調停結果が示すスロットル開度にするための駆動指令を生成し、その生成した駆動指令を出力回路５に出力する。
【００２５】
尚、データ記憶領域１７は、物理的に別々の複数のメモリであっても良い。また、第４領域２４と第５領域２５の両方又は一方は、書き換え不能な不揮発性メモリであっても良い。
【００２６】
次に、マイコン３のＣＰＵ１１がプログラム領域１５内のプログラムに従って行う処理について説明する。
ＣＰＵ１１は、図２に示す全体の処理のうち、Ｓ１１０にて、要求値Ｒ１〜Ｒｎと優先度データＰ１〜Ｐｎとを算出するための要求値及び優先度算出処理を行い、その直後のＳ１２０にて、優先度化けを検出するための検査用情報を更新する処理を行う。そして、その後、Ｓ１３０にて、要求値Ｒ１〜Ｒｎの中から最高優先度のものを選択して調停結果とするための調停処理を行う。
【００２７】
尚、Ｓ１１０及びＳ１２０の処理は、例えば一定時間毎に行われる。また、Ｓ１３０の処理も、例えば一定時間毎に行われるが、通常は、Ｓ１２０の処理が終了してから、ある程度の時間が経過してから行われる。
【００２８】
〈要求値及び優先度算出処理の内容〉
図３に示すように、ＣＰＵ１１は、図２のＳ１１０で要求値及び優先度算出処理を開始すると、まずＳ２１０にて、算出対象の要求値Ｒ１〜Ｒｎ及び優先度データＰ１〜Ｐｎの番号を示す識別子ｉを、最小値の１に設定する。そして、次のＳ２２０にて、ｉがｎ以下であるか否かを判定し、ｉがｎ以下であればＳ２３０に進む。ｎは、第５領域２５に記憶されている「調停が必要な要求値の数」である。
【００２９】
ＣＰＵ１１は、Ｓ２３０では、識別子ｉが示す要求値Ｒｉを算出する。そして、ＣＰＵ１１は、次のＳ２４０にて、Ｓ２３０で算出した要求値Ｒｉを、データ記憶領域１７における第１領域２１のうち、要求値Ｒｉを記憶するためのｉ番目の領域に書き込む（格納する）。
【００３０】
ＣＰＵ１１は、次のＳ２５０にて、識別子ｉが示す優先度データＰｉを算出する。優先度データＰｉは、要求値Ｒｉの優先度を示すデータである。そして、ＣＰＵ１１は、次のＳ２６０にて、Ｓ２５０で算出した優先度データＰｉを、データ記憶領域１７における第２領域２２のうち、優先度データＰｉを記憶するためのｉ番目の領域に書き込む（格納する）。
【００３１】
ＣＰＵ１１は、次のＳ２７０にて、識別子ｉに１を加え、その後、Ｓ２２０に戻る。
また、ＣＰＵ１１は、Ｓ２２０にて、ｉがｎ以下ではない（即ち「ｉ＞ｎ」）と判定した場合には、当該要求値及び優先度算出処理を終了する。
【００３２】
このような要求値及び優先度算出処理が実行されることにより、要求値Ｒ１〜Ｒｎと優先度データＰ１〜Ｐｎとの各々が算出されると共に、その算出された要求値Ｒ１〜Ｒｎと優先度データＰ１〜Ｐｎとの各々が、第１領域２１と第２領域２２とに更新記憶される。
【００３３】
例えば、要求値Ｒ１は、アクセル操作量に基づく目標のスロットル開度であり、要求値Ｒ２は、エンジン停止時にスロットルを閉じていく締め込み制御による目標のスロットル開度であり、要求値Ｒ３は、エンジン始動時の目標のスロットル開度である。このため、例えば、イグニッションスイッチがオフされてエンジンが停止する状態であれば、要求値Ｒ２に対応する優先度データＰ２が、他の優先度データＰ１，Ｐ３〜Ｐｎよりも大きい値に算出される。要求値Ｒ２が調停結果として選択されて、スロットルモータ９の制御に使用されるようにするためである。また例えば、エンジンの始動時であれば、要求値Ｒ３に対応する優先度データＰ３が、他の優先度データＰ１，Ｐ２，Ｐ４〜Ｐｎよりも大きい値に算出される。
【００３４】
〈検査用情報を更新する処理の内容〉
ＣＰＵ１１は、図２のＳ１２０では、検査用情報を更新する処理として、Ｓ１１０（図３の処理）で第２領域２２に記憶されたｎ個の優先度データＰ１〜Ｐｎを合計したサム値（チェックサム）を算出する演算処理と、算出したサム値を検査用情報として第３領域２３に書き込む処理とを行う。
【００３５】
本実施形態において、第３領域２３に格納される検査用情報としてのサム値は、第２領域２２に記憶されている優先度データＰ１〜Ｐｎの全体について、データ化け（優先度化け）を検出するための全体検査用情報に相当する。尚、Ｓ１２０の処理は、Ｓ１１０で行う図３の処理中で実行しても良く、その場合、例えば、Ｓ２２０でＮＯと判定した場合に実行すれば良い。
【００３６】
〈調停処理の内容〉
図４に示すように、ＣＰＵ１１は、図２のＳ１３０で調停処理を開始すると、まずＳ３１０にて、優先度化けを検出するために、図５の優先度化け検出処理を行う。
【００３７】
図５に示すように、ＣＰＵ１１は、優先度化け検出処理を開始すると、Ｓ４１０にて、第２領域２２に記憶されている優先度データＰ１〜Ｐｎと、第３領域２３に記憶されている検査用情報とが、整合しているか否かを判定する。
【００３８】
具体的には、ＣＰＵ１１は、第２領域２２内の優先度データＰ１〜Ｐｎに対して、図２のＳ１２０で行う演算処理と同じ演算処理（この例ではサム値を算出する処理）を行い、その演算結果であるサム値と、第３領域２３内の検査用情報としてのサム値とが一致しているか否かを判定する。両サム値の一致は、優先度データＰ１〜Ｐｎと検査用情報との整合を意味し、両サム値の不一致は、優先度データＰ１〜Ｐｎと検査用情報との不整合を意味する。
【００３９】
そして、ＣＰＵ１１は、Ｓ４１０にて、優先度データＰ１〜Ｐｎと検査用情報とが整合している（算出したサム値と第３領域２３内のサム値とが一致している）と判定した場合には、Ｓ４２０にて、判定結果を「優先度化け無し」とし、その後、当該優先度化け検出処理を終了する。
【００４０】
また、ＣＰＵ１１は、Ｓ４１０にて、優先度データＰ１〜Ｐｎと検査用情報とが整合していない（算出したサム値と第３領域２３内のサム値とが一致していない）と判定した場合には、Ｓ４３０にて、判定結果を「優先度化け有り」とし、その後、当該優先度化け検出処理を終了する。
【００４１】
図４に戻り、ＣＰＵ１１は、次のＳ３２０にて、優先度化け検出処理の判定結果が「優先度化け有り」であるか否かを判定する。そして、判定結果が「優先度化け有り」ではない場合、つまり、優先度化けを検出しなかった場合には、Ｓ３３０に進み、第２領域２２内の優先度データＰ１〜Ｐｎの中から、最大値を選択するために、図６の最大優先度選択処理を行う。
【００４２】
図６に示すように、ＣＰＵ１１は、最大優先度選択処理を開始すると、まずＳ５１０にて、優先度データＰ１〜Ｐｎのうちの何れかを、最大値の第１候補Ｐａとし、次のＳ５２０にて、優先度データＰ１〜Ｐｎのうち、Ｓ５１０で第１候補Ｐａとしたもの以外の何れかを、最大値の第２候補Ｐｂとする。そして、ＣＰＵ１１は、Ｓ５３０にて、最大値を示す変数Ｐｍａｘに、第１候補Ｐａを代入する。
【００４３】
ＣＰＵ１１は、次のＳ５４０にて、変数Ｐｍａｘの値よりも第２候補Ｐｂの方が大きいか否かを判定し、「Ｐｍａｘ＜Ｐｂ」であれば、Ｓ５５０にて、変数Ｐｍａｘに第２候補Ｐｂの値を代入した後、Ｓ５６０に進む。また、ＣＰＵ１１は、Ｓ５４０にて、「Ｐｍａｘ＜Ｐｂ」ではないと判定した場合には、変数Ｐｍａｘの値を変えずに、そのままＳ５６０に進む。
【００４４】
ＣＰＵ１１は、Ｓ５６０では、優先度データＰ１〜Ｐｎのうち、第１候補Ｐａと第２候補Ｐｂとの何れとしても選択していない未選択の優先度データがあるか否かを判定する。そして、未選択の優先度データがあれば、Ｓ５７０に進み、優先度データＰ１〜Ｐｎのうち、未選択の優先度データの１つを第２候補Ｐｂとし、その後、Ｓ５４０に戻る。
【００４５】
また、ＣＰＵ１１は、Ｓ５６０にて、未選択の優先度データがないと判定した場合には、Ｓ５８０に進み、その時点での変数Ｐｍａｘの値を、最大優先度として設定し、その後、当該最大優先度選択処理を終了する。このような最大優先度選択処理により、優先度データＰ１〜Ｐｎのうち、最大のものが、最大優先度として選択されることとなる。
【００４６】
図４に戻り、ＣＰＵ１１は、Ｓ３３０に続くＳ３４０にて、第１領域２１内の要求値Ｒ１〜Ｒｎのうち、Ｓ３３０で選択した最大優先度に対応する要求値を、調停結果として第６領域２６に格納し、その後、当該調停処理を終了する。Ｓ３３０及びＳ３４０の処理により、要求値Ｐ１〜Ｐｎのうち、最も優先度の高い要求値が、優先度データＰ１〜Ｐｎに基づいて選択され、その選択された要求値が調停結果として第６領域２６に格納されることとなる。
【００４７】
一方、ＣＰＵ１１は、Ｓ３２０にて、優先度化け検出処理の判定結果が「優先度化け有り」であると判定した場合、つまり、優先度化けを検出した場合には、Ｓ３３０，Ｓ３４０の処理を行うことなく、Ｓ３５０に進む。そして、ＣＰＵ１１は、Ｓ３５０では、フェールセーフ処理として、第４領域２４内の「優先度化け発生時の要求値」を調停結果として第６領域２６に格納する処理を行い、その後、当該調停処理を終了する。
【００４８】
以上のような電子制御装置１では、データの誤り検出方式としてチェックサムを用いて、優先度化けを検出している。そして、この電子制御装置１によれば、優先度化けが生じたことを検出して、フェールセーフ処理を行うことができるため、当該電子制御装置１の信頼性を向上させることができる。
【００４９】
また、電子制御装置１において、ＣＰＵ１１は、第２領域２２に記憶されている優先度データＰ１〜Ｐｎの全体について、データ化け（優先度化け）を検出している。上記の例では、ＣＰＵ１１は、優先度データＰ１〜Ｐｎをデータ記憶領域１７に書き込んだ際に、優先度データＰ１〜Ｐｎの全体についてデータ化けを検出するための全体検査用情報として、優先度データＰ１〜Ｐｎのサム値もデータ記憶領域１７に書き込んでおき（Ｓ１２０）、そのサム値を用いて、優先度データＰ１〜Ｐｎの全体についてデータ化けを検出する（Ｓ３１０）。このため、優先度データＰ１〜Ｐｎの何れかにデータ化けが生じたことを簡単に検出することができ、優先度化けを検出するための処理が簡単であるという利点がある。
【００５０】
更に、ＣＰＵ１１は、優先度化けを検出した場合のフェールセーフ処理として、調停結果を固定値にするための処理（Ｓ３５０）を行うため、優先度化けが生じた場合に、要求値Ｒ１〜Ｒｎのうち、意図しない要求値（即ち、本当は最高優先度ではない要求値）が、スロットルモータ９の制御に用いられてしまうことを防止することができる。
【００５１】
また、ＣＰＵ１１は、調停結果を固定値にするための処理として、図４におけるＳ３３０及びＳ３４０の処理を行うことなく、固定値である「優先度化け発生時の要求値」を調停結果として設定する処理（Ｓ３５０）を行うため、処理に無駄がない。
【００５２】
［第２実施形態］
次に、第２実施形態の電子制御装置について説明するが、電子制御装置の符号としては、第１実施形態と同じ“１”を用いる。また、第１実施形態と同様の構成要素や処理についても、第１実施形態と同じ符号を用いる。そして、このことは、後述する他の実施形態についても同様である。
【００５３】
第２実施形態の電子制御装置１は、第１実施形態の電子制御装置１と比較すると、ＣＰＵ１１が図２のＳ１２０で第３領域２３に書き込む検査用情報が異なる。
第２実施形態においても、検査用情報は、優先度データＰ１〜Ｐｎの全体について、データ化けを検出するための全体検査用情報であるが、サム値ではなく、パリティビットである。
【００５４】
例えば、ＣＰＵ１１は、Ｓ１２０では、優先度データＰ１〜Ｐｎの各ビットを１ビット加算で合計した１ビットの結果を、パリティビットとして算出する。このため、優先度データＰ１〜Ｐｎの各ビットにおける“１”の個数が偶数であれば、算出されるパリティビットは“０”になり、“１”の個数が奇数であれば、算出されるパリティビットは“１”になる。そして、ＣＰＵ１１は、算出したパリティビットを第３領域２３に書き込む。
【００５５】
また、このため、ＣＰＵ１１は、図４のＳ３１０で実行する図５の優先度化け検出処理におけるＳ４１０では、第２領域２２内の優先度データＰ１〜Ｐｎと第３領域２３内の検査用情報とが整合しているか否かを判定する処理として、以下の処理を行う。
【００５６】
即ち、ＣＰＵ１１は、第２領域２２内の優先度データＰ１〜Ｐｎに対して、図２のＳ１２０と同じ演算処理を行うことで、パリティビットを算出し、その算出したパリティビットと、第３領域２３内のパリティビットとが一致しているか否かを判定する。そして、ＣＰＵ１１は、両パリティビットが不一致ならば、優先度化けが生じていると判定し、Ｓ４３０にて、判定結果を「優先度化け有り」とする。
【００５７】
つまり、第２実施形態では、データの誤り検出方式としてパリティチェックを用いて、優先度化けを検出している。このため、優先度化けを検出するための演算処理が簡単であるという利点がある。尚、上記例において、パリティチェックは、偶数パリティチェックであったが、奇数パリティチェックでも良い。
【００５８】
［第３実施形態］
第３実施形態の電子制御装置１は、第１実施形態の電子制御装置１と比較すると、ＣＰＵ１１が図２のＳ１２０で第３領域２３に書き込む検査用情報が異なる。
【００５９】
ＣＰＵ１１は、Ｓ１２０では、図２のＳ１１０（図３の処理）で第２領域２２に書き込んだ優先度データＰ１〜Ｐｎと同じデータを、第３領域２３に検査用情報（この例でも全体検査用情報）として書き込む。
【００６０】
このため、ＣＰＵ１１は、図４のＳ３１０で実行する図５の優先度化け検出処理におけるＳ４１０では、第２領域２２内の優先度データＰ１〜Ｐｎと第３領域２３内の検査用情報とが整合しているか否かを判定する処理として、以下の処理を行う。
【００６１】
即ち、ＣＰＵ１１は、第２領域２２内の優先度データＰ１〜Ｐｎと、第３領域２３内の優先度データＰ１〜Ｐｎとが、一致しているか否かを判定する処理を行う。そして、ＣＰＵ１１は、第２領域２２内と第３領域２３内との両方の優先度データＰ１〜Ｐｎが一致していなければ、優先度化けが生じていると判定し、Ｓ４３０にて、判定結果を「優先度化け有り」とする。
【００６２】
つまり、第２実施形態では、データの誤り検出方式としてミラーリングを用いて、優先度化けを検出している。このため、優先度化けを高い確率で検出することができる。
［第４実施形態］
第４実施形態の電子制御装置１は、第１〜第３実施形態の電子制御装置１と比較すると、ＣＰＵ１１が、図４の調停処理に代えて、図７の調停処理を行う点が異なる。
【００６３】
図７の調停処理には、図４の調停処理と比較すると、Ｓ３５０に代えて、Ｓ３６０が設けられている。
図７に示すように、ＣＰＵ１１は、Ｓ３２０にて、優先度化け検出処理の判定結果が「優先度化け有り」であると判定した場合（即ち、優先度化けを検出した場合）には、Ｓ３６０に進む。ＣＰＵ１１は、Ｓ３６０では、フェールセーフ処理として、第１領域２１に記憶されている要求値Ｒ１〜Ｒｎの全てを、第４領域２４に記憶されている「優先度化け発生時の要求値」に書き換える処理を行う。そして、その後、Ｓ３３０及びＳ３４０の処理を行う。
【００６４】
このため、優先度化けを検出した場合、Ｓ３３０及びＳ３４０の処理によって第６領域２６に格納される調停結果は、第２領域２２内の優先度データＰ１〜Ｐｎに拘わらず、「優先度化け発生時の要求値」になる。選択対象の要求値Ｒ１〜Ｒｎの全てが「優先度化け発生時の要求値」になっているためである。
【００６５】
このような第４実施形態の電子制御装置１によっても、第１〜第３実施形態の電子制御装置１と同様の効果が得られる。
［第５実施形態］
第５実施形態の電子制御装置１は、第３実施形態の電子制御装置１と比較すると、下記の（１），（２）が異なる。
【００６６】
（１）ＣＰＵ１１が、図２のＳ１２０で、第３領域２３に検査用情報として書き込む優先度データＰ１〜Ｐｎの各々は、第２領域２２内の各優先度データＰ１〜Ｐｎについてデータ化けを検出するための個別検査用情報に相当する。
【００６７】
（２）ＣＰＵ１１は、図４の調停処理に代えて、図８の調停処理を行う。
図８の調停処理には、図４の調停処理と比較すると、Ｓ３１０に代えて、Ｓ３１５が設けられており、Ｓ３５０に代えて、Ｓ３７０が設けられている。
【００６８】
そして、ＣＰＵ１１は、図８のＳ３１５では、図９の優先度化け検出処理を行う。
図９に示すように、ＣＰＵ１１は、優先度化け検出処理を開始すると、Ｓ４１３にて、第２領域２２に記憶されている優先度データＰ１〜Ｐｎの各々と、第３領域２３に記憶されている個別検査用情報（この例では優先度データＰ１〜Ｐｎ）の各々とが、整合しているか否かを判定する。この例では、各優先度データＰ１〜Ｐｎについて、第２領域２２内の値と第３領域２３内の値とが一致しているか否かを判定する。第２領域２２内の優先度データＰ１〜Ｐｎと第３領域２３内の優先度データＰ１〜Ｐｎとが一致していることが、第２領域２２内の優先度データＰ１〜Ｐｎと第３領域２３内の個別検査用情報との整合を意味し、不一致は不整合を意味する。
【００６９】
そして、ＣＰＵ１１は、優先度データＰ１〜Ｐｎの全てについて、第２領域２２内の値と第３領域２３内の値とが一致していれば（Ｓ４１３：ＹＥＳ）、優先度化けが生じていないと判定し、Ｓ４２０にて、判定結果を「優先度化け無し」とした後、当該優先度化け検出処理を終了する。
【００７０】
また、ＣＰＵ１１は、Ｓ４１３にて、優先度データＰ１〜Ｐｎの何れかについて、第２領域２２内の値と第３領域２３内の値とが一致していないと判定した場合には（Ｓ４１３：ＮＯ）、Ｓ４１５にて、その一致していない優先度データを示す識別情報を、データ化けした優先度データの識別情報として、データ記憶領域１７の所定領域に記憶する。そして、次のＳ４３０にて、判定結果を「優先度化け有り」とし、その後、当該優先度化け検出処理を終了する。
【００７１】
図８に戻り、ＣＰＵ１１は、次のＳ３２０にて、優先度化け検出処理の判定結果が「優先度化け有り」であるか否かを判定する。そして、判定結果が「優先度化け有り」ではない場合、つまり、優先度化けを検出しなかった場合には、前述した図４と同じＳ３３０及びＳ３４０の処理を行った後、当該調停処理を終了する。
【００７２】
一方、ＣＰＵ１１は、Ｓ３２０にて、優先度化け検出処理の判定結果が「優先度化け有り」であると判定した場合、つまり、優先度化けを検出した場合には、Ｓ３７０に進む。
そして、ＣＰＵ１１は、Ｓ３７０では、フェールセーフ処理として、第１領域２１に記憶されている要求値Ｒ１〜Ｒｎのうち、優先度化けが生じた要求値だけを、第４領域２４に記憶されている「優先度化け発生時の要求値」に書き換える処理を行う。優先度化けが生じた要求値とは、データ化けが検出された優先度データ（この例では図９のＳ４１５で識別情報が記憶された優先度データ）に対応する要求値である。そして、ＣＰＵ１１は、Ｓ３７０の処理を行った後、Ｓ３３０及びＳ３４０の処理を行い、その後、当該調停処理を終了する。
【００７３】
以上のような第５実施形態の電子制御装置１では、優先度データＰ１〜Ｐｎのうち、データ化けした優先度データが最大値となり、その優先度データに対応する要求値が調停結果として選択された場合でも、その選択される要求値は、予め定められた固定値（優先度化け発生時の要求値）になるため、意図しない制御が実施されてしまうことが防止される。
【００７４】
また、本来２番目以下の優先度データが、２番目以下の他の値になるようなデータ化けであれば、Ｓ３３０及びＳ３４０の処理により、本来最大の優先度データに対応した要求値（即ち、最高優先度の要求値）が調停結果として選択されることとなる。よって、優先度化けが生じた場合でも、優先度化けが生じていない場合と同じ制御が行える可能性が高くなる。
【００７５】
また、ＣＰＵ１１は、優先度データＰ１〜Ｐｎをデータ記憶領域１７の第２領域２２に書き込んだ際に、個別検査用情報として、もう一組の同じ優先度データＰ１〜Ｐｎをデータ記憶領域１７の別の領域（第３領域２３）に書き込んでおき（Ｓ１２０）、その個別検査用情報を用いて、優先度データＰ１〜Ｐｎの各々についてデータ化けを検出する（Ｓ３１５）。このため、優先度データＰ１〜Ｐｎのうち、データ化けした優先度データを簡単に検出して特定することができる。
【００７６】
［変形例］
第５実施形態では、優先度化けを検出するための誤り検出方式として、ミラーリングを用いたが、第１，第２実施形態と同様にチェックサムやパリティチェックを用いたり、もちろんＣＲＣ（巡回冗長検査）等の他の方式を用いても良い。
【００７７】
具体的には、図２のＳ１２０では、第２領域２２に記憶された各優先度データＰ１〜Ｐｎを対象にして、所定の演算処理（例えばサム値を算出する処理や、パリティビットを算出する処理等）を行い、その各演算結果を第３領域２３に書き込めば良い。そして、図８のＳ３１５（図９のＳ４１３）では、第２領域２２内の各優先度データＰ１〜Ｐｎに対して、図２のＳ１２０で行う演算処理と同じ演算処理を行い、各優先度データＰ１〜Ｐｎについて、その演算結果と、第３領域２３内の演算結果とが一致しているか否かを判定すれば良い。もちろん、この場合、演算結果の不一致がデータ化け（優先度化け）を意味する。
【００７８】
また、このような変形は、後述する第６実施形態についても同様に適用できる。
一方、第１〜４実施形態の電子制御装置１についても、優先度化けを検出するための誤り検出方式としては、前述したチェックサム、パリティチェック及びミラーリングの何れかに限らず、他の方式（例えばＣＲＣ等）を用いても良い。
【００７９】
［第６実施形態］
第６実施形態の電子制御装置１は、第５実施形態の電子制御装置１と比較すると、ＣＰＵ１１が、図８の調停処理に代えて、図１０の調停処理を行う点が異なる。
【００８０】
図１０の調停処理には、図８の調停処理と比較すると、Ｓ３７０に代えて、Ｓ３８０が設けられている。
ＣＰＵ１１は、Ｓ３８０では、フェールセーフ処理として、第２領域２２内の優先度データＰ１〜Ｐｎのうち、データ化けが検出された優先度データ（図９のＳ４１５で識別情報が記憶された優先度データ）を、Ｓ３３０で実行する最大優先度選択処理（図６）による選択対象から除外する処理を行う。具体的には、データ化けが検出された優先度データを、図６のＳ５１０，Ｓ５２０，Ｓ５７０では選択せず、且つ、Ｓ５６０の判定では選択済みと判定されるようにする。そして、ＣＰＵ１１は、その後、Ｓ３３０及びＳ３４０の処理を行う。
【００８１】
Ｓ３８０の処理により、要求値Ｒ１〜Ｒｎのうち、優先度化けが生じた要求値（データ化けが検出された優先度データに対応する要求値）は、Ｓ３３０及びＳ３４０の処理によって調停結果として選択される対象から除外されることとなる。つまり、Ｓ３８０は、優先度化けが生じた要求値を選択対象から除外するのための処理である。
【００８２】
このような第６実施形態の電子制御装置１によれば、優先度データＰ１〜Ｐｎのうち、本来最大の優先度データにデータ化けが生じた場合以外は、優先度化けが生じていない場合と同じ制御を行うことができる。また、本来最大の優先度データにデータ化けが生じた場合でも、要求値Ｒ１〜Ｒｎのうち、本来２番目の優先度データに対応する要求値（本来の優先順位が２番目の要求値）が調停結果として選択されることとなる。このため、制御に大きな影響が及ぶことは無いと考えられる。
【００８３】
［第７実施形態］
第７実施形態の電子制御装置１は、第１実施形態の電子制御装置１と比較すると、下記の（Ａ），（Ｂ）が異なる。
【００８４】
（Ａ）ＣＰＵ１１は、図２のＳ１２０では、Ｓ１１０の処理で算出したｎ個の優先度データＰ１〜Ｐｎを、１つのデータとして（換言すれば１つの情報系列）として、所定の誤り訂正符号に符号化する。そして、その符号化後のデータ（符号語）を、優先度データＰ１〜Ｐｎとして、データ記憶領域１７の所定領域に書き込む。
【００８５】
本実施形態では、誤り訂正符号として、例えばハミング符号を用いる。そして、Ｓ１２０では、具体的には、第２領域２２内の優先度データＰ１〜Ｐｎからなる情報系列（元のデータ）に所定の生成行列を乗ずることによって、その情報系列の符号化を行い、符号化後のデータにおける冗長ビットの部分を、データ記憶領域１７における第２領域２２とは別の領域（この例では第３領域２３）に書き込む。この例では、第２領域２２内のデータと第３領域２３内のデータとが、符号化後のデータということになる。
【００８６】
（Ｂ）ＣＰＵ１１は、図４の調停処理に代えて、図１１の調停処理を行う。
図１１の調停処理には、図４の調停処理と比較すると、Ｓ３１０に代えて、Ｓ３１７が設けられており、Ｓ３５０に代えて、Ｓ３９０が設けられている。
【００８７】
図１１に示すように、ＣＰＵ１１は、Ｓ３１７では、図２のＳ１２０でデータ記憶領域１７（第２領域２２と第３領域２３）に記憶された符号化後のデータについて、誤り訂正符号に応じた誤り検出処理を行うことにより、データ化けを検出する。この例では、ハミング符号を用いているため、記憶されている符号化後のデータに所定の検査行列を乗じ、その乗算で得られたビット列が全て“０”（零ベクトル）でなければ、データ化け（即ち、優先度化け）が生じていると判定する。
【００８８】
ＣＰＵ１１は、次のＳ３２０にて、Ｓ３１７での検出結果を参照することにより、優先度化けの有無を判定し、優先度化けが生じていないと判定した場合には（Ｓ３２０：ＮＯ）、前述したＳ３３０及びＳ３４０の処理を行うが、優先度化けが生じていると判定した場合には（Ｓ３２０：ＹＥＳ）、Ｓ３９０に進む。
【００８９】
そして、ＣＰＵ１１は、Ｓ３９０では、フェールセーフ処理として、優先度データＰ１〜Ｐｎを訂正するための誤り訂正処理を行う。具体的には、Ｓ３１７の誤り検出処理で算出したビット列から、情報系列としての優先度データＰ１〜Ｐｎにおいてデータ化けしているビットを特定し、その特定したビットを反転させる。そして、訂正後の優先度データＰ１〜Ｐｎを第２領域２２に上書きする。尚、第２領域２２内のデータは最小限の単位で書き換えても良い。
【００９０】
そして、ＣＰＵ１１は、Ｓ３９０の処理を行った後、Ｓ３３０及びＳ３４０の処理を行う。
このような第７実施形態の電子制御装置１によれば、優先度化けを訂正することができるため、要求値Ｒ１〜Ｒｎのうち、意図しない要求値が制御に用いられることが防止される。よって、信頼性を向上させることができる。
【００９１】
尚、誤り訂正符号としては、ハミング符号以外の符号（例えば巡回符号等）であっても良いが、ハミング符号であれば、符号化や誤り検出／訂正の処理が高速で処理し易いという利点がある。また、このことは、後述する第８実施形態についても同様である。
【００９２】
［第８実施形態］
第８実施形態の電子制御装置１は、第７実施形態の電子制御装置１と比較すると、下記の（ａ）〜（ｃ）が異なる。
【００９３】
（ａ）ＣＰＵ１１は、図２のＳ１２０では、Ｓ１１０で算出した優先度データＰ１〜Ｐｎの各々を誤り訂正符号に符号化し、その符号化後の各データを、優先度データＰ１〜Ｐｎの各々としてデータ記憶領域１７に書き込む。具体的には、各優先度データＰ１〜Ｐｎについて、第７実施形態と同様に、符号化を行うと共に、符号化後の各データにおける冗長ビットの部分を、データ記憶領域１７の第３領域２３に書き込む。
【００９４】
（ｂ）ＣＰＵ１１は、図１１のＳ３１７では、データ記憶領域１７に記憶されている符号化後の各優先度データＰ１〜Ｐｎについて、第７実施形態と同様に、誤り訂正符号に応じた誤り検出処理を行うことにより、データ化けを検出する。
【００９５】
（ｃ）ＣＰＵ１１は、Ｓ３９０では、Ｓ３１７の処理でデータ化けが検出された優先度データについて、第７実施形態と同様に誤り訂正処理を行い、訂正後の優先度データを第２領域２２に格納し直す。
【００９６】
このような第８実施形態の電子制御装置１によっても、第７実施形態と同様の効果が得られる。また、優先度データＰ１〜Ｐｎ毎に、符号化や誤り検出／訂正の処理が行われるため、処理負荷や演算作業用のメモリ領域が小さくなる利点がある。
【００９７】
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されることなく、種々の形態を採り得る。
例えば、ＣＰＵ１１は、所定のタイミング（例えば起動した直後）において、「優先度化け発生時の要求値」を、電子制御装置１の外部装置から通信によって取得して、第４領域２４に書き込むようになっていても良い。このように構成すれば、制御対象の種類に応じて「優先度化け発生時の要求値」を容易に変更することができるため、汎用性が高まる。
【００９８】
また例えば、上記実施形態における１つの構成要素が有する機能を複数の構成要素として分散させたり、複数の構成要素が有する機能を１つの構成要素に統合させたりしてもよい。また、上記実施形態の構成の少なくとも一部を、同様の機能を有する公知の構成に置き換えてもよい。また、上記実施形態の構成の一部を、課題を解決できる限りにおいて省略してもよい。尚、特許請求の範囲に記載した文言によって特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。また、上述した電子制御装置の他、当該電子制御装置を構成要素とするシステム、当該電子制御装置としてコンピュータを機能させるためのプログラム、このプログラムを記録した媒体、電子制御装置におけるデータの処理方法など、種々の形態で本発明を実現することもできる。
【符号の説明】
【００９９】
９…スロットルモータ、１１…ＣＰＵ、Ｒ１〜Ｒｎ…要求値（制御データ）、Ｐ１〜Ｐｎ…優先度（優先度データ）、１７…データ記憶領域
【図１】
2015097027.tif 000003
【図２】
2015097027.tif 000004
【図３】
2015097027.tif 000005
【図４】
2015097027.tif 000006
【図５】
2015097027.tif 000007
【図６】
2015097027.tif 000008
【図７】
2015097027.tif 000009
【図８】
2015097027.tif 000010
【図９】
2015097027.tif 000011
【図１０】
2015097027.tif 000012
【図１１】
2015097027.tif 000013