(57)【要約】【課題】データの書込時間を短縮する技術を提供する。【解決手段】ＣＰＵ１２は、Ｓ１０では、当該電子制御装置に対する設定を表す設定値を設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する。Ｓ５０では、設定要求が有る場合に、複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである一致アドレス、を取得する。Ｓ９０では、設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、一致アドレスを表すデータを、予め定められた記憶単位領域毎にデータの書込を行うコントローラ１５に書き込ませる。【選択図】図５
2018116552.tif 000002
【特許請求の範囲】
【請求項１】
少なくともデータの書込を行う電子制御装置（１０）であって、
当該電子制御装置に対する設定を表す設定値を前記設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する設定判断部（Ｓ１０）と、
前記設定要求が有る場合に、前記複数の候補値のうち前記指定値と一致する前記候補値が記憶されている領域を示すアドレスである一致アドレス、を取得するアドレス部（Ｓ５０）と、
前記設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、前記一致アドレスを表すデータを、予め定められた記憶単位領域毎にデータの書込を行う実行部（１５）に書き込ませる書込指示部（Ｓ９０）と、
を備える電子制御装置。
【請求項２】
請求項１に記載の電子制御装置であって、
前記一致アドレスを表すデータは、前記指定値を表すデータよりも、データ量が少ない
電子制御装置。
【請求項３】
請求項１または請求項２に記載の電子制御装置であって、
前記設定値と、前記複数の候補値と、前記候補値のそれぞれが記憶されている領域を示すアドレスと、の対応関係を表す対応情報、を取得する対応取得部（Ｓ３０）と、
前記設定要求が有る場合に、前記対応情報を用いて、前記複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスを特定する特定部（Ｓ５０）と、
を更に備え、
前記アドレス部は、前記特定部により特定されたアドレスを前記一致アドレスとして取得する
電子制御装置。
【請求項４】
請求項１から請求項３のいずれか一項に記載の電子制御装置であって、
前記設定値を取得する要求である取得要求、が有るか否かを判断する取得判断部（Ｓ２１０）と、
前記取得要求が有る場合に、前記設定値用記憶領域から前記一致アドレスを取得するアドレス取得部（Ｓ２２０）と、
前記一致アドレスが示す領域に記憶されている前記候補値、を前記取得要求にて取得が要求された設定値として取得する設定値取得部（Ｓ２３０）と、
を更に備える電子制御装置。
【請求項５】
請求項１から請求項４のいずれか一項に記載の電子制御装置であって、
前記候補値が記憶されている領域を示すアドレスは、予め定められたアドレスである規定アドレスからの相対値により表される
電子制御装置。
【請求項６】
請求項１から請求項５のいずれか一項に記載の電子制御装置であって、
複数の前記設定値が用いられるように構成された
電子制御装置。
【請求項７】
請求項１から請求項６のいずれか一項に記載の電子制御装置であって、
前記複数の候補値が当該電子制御装置の外部に設けられた記憶装置に記憶されている
電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、フラッシュメモリ等の不揮発性メモリへのデータの書き込みを行う電子制御装置に関する。
【背景技術】
【０００２】
従来、データの書き換えが可能な不揮発性メモリの一例としてフラッシュメモリが知られている。フラッシュメモリでは、一般的に、数バイト程度の予め定められた記憶領域である単位領域毎にデータの書込や読出が行われる。
【０００３】
特許文献１には、このようなフラッシュメモリに対してデータを書き込み、書き込んだデータを書き換える技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２０３８０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
フラッシュメモリは、例えば、通信機器やＡＶ機器や車両の制御を行う機器等といった、様々な分野の機器において使用されている。また、近年では、ますますその制御が複雑化し、これら機器の制御において用いられるデータのデータ量も増大している。
【０００６】
特許文献１に記載のようなフラッシュメモリでは、単位領域毎にデータの書込が行われる。このため、前述の機器の制御等に用いられるデータをそのままの形態でフラッシュメモリに書き込もうとすると、書込時間が長くなるという問題が生じうる。
【０００７】
本開示は、データの書込時間を短縮する技術を提供する。
【課題を解決するための手段】
【０００８】
本開示の電子制御装置（１０）は、少なくともデータの書込を行う。電子制御装置は、設定判断部（Ｓ１０）と、アドレス部（Ｓ５０）と、書込指示部（Ｓ９０）と、を備える。
【０００９】
設定判断部は、当該電子制御装置に対する設定を表す設定値を設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する。アドレス部は、設定要求が有る場合に、複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである一致アドレス、を取得する。書込指示部は、設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、一致アドレスを表すデータを、予め定められた記憶単位領域毎にデータの書込を行う実行部（１５）に書き込ませる。
【００１０】
ここで、データの書込は記憶単位領域毎に行われるため、書き込まれるデータのデータ量が増加するほど、書込時間は増加する。
このような構成によれば、一致アドレスを表すデータを書き込むので、設定値として設定される指定値を表すデータをそのままの形態で書き込むよりも、例えば一致アドレスが指定値よりもデータ量が少ない場合等に、データの書込時間を短縮することができる。
【００１１】
なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１２】
【図１】電子制御装置１０の構成を示すブロック図。
【図２】仕向け値の書込について説明する図。
【図３】仕向け値に対する候補値について説明する図。
【図４】フラッシュメモリ１６内に、仕向け値を記憶する仕向け値用記憶領域が含まれていることを説明する図。
【図５】第１実施形態の書込処理のフローチャート。
【図６】対応情報を示す図。
【図７】第１実施形態の実行処理のフローチャート。
【図８】第１実施形態の書込処理による作動の例を示す図。
【図９】第１実施形態の読出処理のフローチャート。
【図１０】第１実施形態の読出処理による作動の例を示す図。
【図１１】第２実施形態の書込処理のフローチャート。
【図１２】第２実施形態の書込処理による作動の例を示す図。
【図１３】他の実施形態における対応情報の例を示す図。
【図１４】他の実施形態における書込データの例を示す図。
【図１５】他の実施形態におけるメモリの構成例を示す図。
【図１６】他の実施形態における、候補値が複数のＥＣＵのうちのあるＥＣＵが備えるメモリに記憶されている車載システムの例を示す図。
【図１７】他の実施形態における、候補値がＨＤＤに記憶されている車載システムの例を示す図。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら、本開示の実施形態を説明する。
［１．第１実施形態］
［１−１．構成］
図１に示す電子制御ユニット（以下、ＥＣＵ）１０は、車両に搭載されて用いられる装置である。以下でいう自車両とは、ＥＣＵ１０が搭載される車両をいう。
【００１４】
ＥＣＵ１０は、当該ＥＣＵを統括制御するためのＣＰＵ１２と、ＲＯＭ１３、ＲＡＭ１４、フラッシュメモリ１６等の半導体メモリ（以下、メモリ１９）と、コントローラ１５と、を有する周知のマイクロコンピュータ（以下、マイコン）１１を中心に構成される。ＥＣＵ１０の各種機能は、ＣＰＵ１２が非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、メモリ１９が、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。なお、ＥＣＵ１０を構成するマイコン１１の数は１つでも複数でもよい。
【００１５】
ＥＣＵ１０は、ＣＰＵ１２がプログラムを実行することで、自車両の制御を行うために当該ＥＣＵ１０に割り当てられた各種機能を実現する。ＥＣＵ１０の各種機能を実現する手法はソフトウェアに限るものではなく、その一部又は全部の要素について、一つあるいは複数のハードウェアを用いて実現してもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は多数の論理回路を含むデジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現してもよい。
【００１６】
ＥＣＵ１０は、マイコン１１と、Ｉ／Ｏ１７と、電源回路１８と、を備える。
具体的には、ＥＣＵ１０は、Ｉ／Ｏ１７を介して通信線５により接続されている図示しない他のＥＣＵとの間で、互いに自車両を制御するためのデータである制御データを送受信し、制御データに基づいてＥＣＵ１０に割り当てられた各種機能を実現する。
【００１７】
また、ＥＣＵ１０は、Ｉ／Ｏ１７を介して通信線５により外部装置９に接続されることが可能である。ＥＣＵ１０は、Ｉ／Ｏ１７を介して接続される外部装置９からの要求に応じて、外部装置９により指定された情報であって当該ＥＣＵ１０に対する設定を表す情報である設定値を外部装置９により指定された値である指示値に設定する。
【００１８】
電源回路１８は、自車両に搭載された図示しないバッテリから電力供給を受け、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、コントローラ１５、フラッシュメモリ１６、コントローラ１５等、ＥＣＵ１０の各部位に電力を供給する。
【００１９】
ＲＯＭ１３には、ＣＰＵ１２により実行されるプログラムが記憶されており、該プログラムとして、コントローラ１５にフラッシュメモリ１６を制御させるためのフラッシュメモリドライバや、各種アプリケーションが記憶されている。また、ＲＯＭ１３には、後述する候補値が記憶されている。
【００２０】
フラッシュメモリ１６は、書き換え可能なメモリである。フラッシュメモリ１６は、一例として２バイトの記憶領域（以下、記憶単位領域）毎にデータの書き込みや読み出しが行われる。また、フラッシュメモリ１６には、後述する設定値用記憶領域が含まれる。
【００２１】
ＣＰＵ１２は、フラッシュメモリドライバに従い動作することで、コントローラ１５を制御し、フラッシュメモリ１６に対するデータの書き込み及び読み出しを行う。
コントローラ１５は、ＣＰＵ１２からの指示に従って、データを書き換え可能であって予め定められた記憶単位領域毎にデータの書き込みが行われるメモリであるフラッシュメモリ１６に対する制御を行う。
【００２２】
本実施形態では、このように構成されたＥＣＵ１０がＩ／Ｏ１７を介して外部装置９に接続される例について説明する。
外部装置９は、ＥＣＵ１０の外部の装置であって、ＥＣＵ１０に対して、設定要求、または取得要求を出力するように構成されている。
【００２３】
ＥＣＵ１０は、外部装置９から、設定要求が有ると、後述する書込処理を実行する。設定要求とは、外部装置９が指定する設定値を、該設定に対する複数の候補値のうちの一つであって外部装置９が指定する指定値、に設定する要求である。また、ＥＣＵ１０は、外部装置９から、取得要求が有ると、後述する読出処理を実行する。取得要求とは、外部装置９が指定する設定値として設定されている値を読み出す要求である。
【００２４】
ここでいう設定値とは、ＥＣＵ１０に対する設定の種類を表すものであり、該設定値がとりうる複数の候補値が予め定められているものである。設定値には、例えば、後述する仕向け値が含まれうる。
【００２５】
ここで仕向け値について説明する。一般に、ＥＣＵ１０をはじめとする電子制御ユニットでは、図２に示すように、例えば車両の出荷前等に、仕向け値をフラッシュメモリ１６に記憶させることで、国内向け、北米向けといった、仕向け先の管理を行っている。仕向け値は、ＥＣＵ１０の出荷時には「なし」に設定されている。すなわち仕向け値としては何も設定されておらず、仕向け値が設定されていないことを表す予め定められた初期値がフラッシュメモリ１６に書き込まれている。そして、車両が製造工場から出荷される前に、外部装置９からの設定要求にて外部装置９が指定した指定値が仕向け値としてフラッシュメモリ１６に書き込まれる。
【００２６】
図２では、「国内向け」が指定値として指定する設定要求が外部装置９から入力されており、この「国内向け」が仕向け値としてＥＣＵ１０に書き込まれる例が示されている。ＥＣＵ１０は仕向け値が書き込まれた後、車両に組み付けられる。そして、該組み付け後に車両が出荷される。
【００２７】
このような設定値には複数の候補値が予め設定されている。候補値とは、設定値に対する候補となる値である。すなわち、設定値がとり得る予め定められた値である。例えば、設定値の一つである前述の仕向け値に対しては、図３に示すように、「初期値」、「国内向け」、「北米向け」、「欧州向け」、「中近東向け」といった候補値が設定されている。本実施形態では、候補値は、６バイトで表されるものとする。
【００２８】
ＥＣＵ１０においては、前述のように、これら複数の候補値が、ＲＯＭ１３に、具体的にはＲＯＭ１３における予め定められたアドレスで示される領域内に、それぞれ記憶されている。
【００２９】
例えば、仕向け値を設定値とする例では、後述する図６に示すように、候補値の一つである「初期値」は、0x00002000といったアドレスで示される領域に記憶されている。また、「国内向け」は、0x00002006といったアドレスで示される領域に記憶されている。
【００３０】
本実施形態では、アドレスは４バイトで表されるものとする。つまり、本実施形態では、ＲＯＭ１３における記憶領域を示すアドレスは、候補値よりも、データ量が少なく設定されている。
【００３１】
フラッシュメモリ１６には、前述のように設定値用記憶領域が含まれている。設定値用記憶領域とは、設定値に対して設定値毎に予め割り当てられたフラッシュメモリ１６内の記憶領域である。例えば、設定値の一つである前述の仕向け値に対しては、図４に示すように、フラッシュメモリ１６においてアドレスＲ１で表される領域が設定値用記憶領域として割り当てられている。仕向け値に対して割り当てられた設定値用記憶領域を仕向け値用記憶領域ともいう。
【００３２】
このように、外部装置９は、ＥＣＵ１０に対して、複数の候補値の中から選択した一つの候補値を設定値として設定する設定要求を出力するように構成されている。また、外部装置９は、ＥＣＵ１０に対して、複数の候補値の中の一つに設定された設定値の値を該設定値に対する設定値用記憶領域から読み出す取得要求を出力するように構成されている。
【００３３】
［１−２．処理］
次に、ＣＰＵ１２が実行する処理について、説明する。
［１−２−１．書込処理］
はじめに、ＣＰＵ１２が実行する書込処理について、図５に示すフローチャートを用いて説明する。書込処理は、外部装置９からの設定要求に従って、設定値を指定値に設定する処理である。書込処理は、外部装置９と接続されたことをきっかけとして、繰り返し実行される。
【００３４】
ＣＰＵ１２は、Ｓ１０では、外部装置９から設定要求が有るか否かを判断する。ＣＰＵ１２は、設定要求が有る場合に処理をＳ３０へ移行させ、設定要求が無い場合に本書込処理を終了する。
【００３５】
ＣＰＵ１２は、外部装置９からの設定要求が有る場合に移行するＳ３０では、対応情報を取得する。対応情報とは、予めＲＯＭ１３に記憶されている情報であって、設定値と、該設定値に対する複数の候補値と、候補値のそれぞれが記憶されているＲＯＭ１３における領域を示すアドレスと、の対応関係を表す情報である。
【００３６】
例えば、仕向け値を設定値とする対応情報は図６のように示される。
ＣＰＵ１２は、続くＳ５０では、一致アドレスを特定する。ここでいう一致アドレスとは、ＲＯＭ１３において複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである。
【００３７】
例えば、設定値としての仕向け値に対して指定値としての「国内向け」を設定する設定要求が有った場合、ＣＰＵ１２は、図６に示す対応情報に基づいて、仕向け値に対する複数の候補値の中から、指定値である「国内向け」と一致する候補値が記憶されている領域のアドレスを特定し、特定されたアドレスを一致アドレスとして取得する。すなわち、0x00002006を一致アドレスとして取得する。
【００３８】
ＣＰＵ１２は、続くＳ７０では、書込データを生成する。書込データとは、ＣＰＵ１２が設定値用記憶領域に書込を行うデータをいう。本実施形態では、ＣＰＵ１２は、一致アドレスを表すデータを書込データとして生成する。
【００３９】
例えば、仕向け値を設定値とし「国内向け」を指定値とする設定要求があった場合、ＣＰＵ１２は一致アドレスである0x00002006を仕向け値用記憶領域に対する書込データとして生成する。
【００４０】
ＣＰＵ１２は、Ｓ９０では、設定値用記憶領域に、書込データをコントローラ１５に書き込ませる実行処理を行う。
ＣＰＵ１２は、例えば、仕向け値を設定値とし「国内向け」を指定値とする設定要求があった場合、一致アドレスを表すデータである0x00002006を書込データとして、仕向け値用記憶領域Ｒ１に対して該書込データをコントローラ１５に書き込ませる。これにより、仕向け値用記憶領域Ｒ１では、ＲＯＭ１３において初期値が記憶されているアドレスである0x00002000が上書きされ、「国内向け」を表す0x100000000000が記憶されているアドレスである0x00002006が新たに書き込まれる。
【００４１】
ＣＰＵ１２は設定値用記憶領域への書込データの書込を終えると、本書込処理を終了する。
続いて、書込処理におけるＳ９０にて実行される実行処理について図７に示すフローチャートを用いて説明する。
【００４２】
ＣＰＵ１２は、図７に示すように、Ｓ１１０にてＳ７０にて生成された書込データを取得する。
ＣＰＵ１２は、Ｓ１２０では、コントローラ１５に記憶単位領域毎にフラッシュメモリ１６内にデータを書き込ませる。本実施形態では、２バイトを記憶単位領域とする。但し、これに限定されるものではなく、記憶単位領域は例えば４バイト等といったように任意に設定され得る。
【００４３】
ＣＰＵ１２は、Ｓ１３０では、未書込のデータが有るか否かを判断し、未書込のデータが無くなるまで繰り返し書込を実行する。
このような書込処理によれば、外部装置９から仕向け値を「国内向け」に設定する、といった設定要求が有った場合、図８に示すように、ＣＰＵ１２は、「国内向け」という候補値を示す６バイトのデータである0x100000000000ではなく、一致アドレスを示す４バイトのデータである0x0000200Cを、仕向け値用記憶領域に書き込むよう作動する。
【００４４】
フラッシュメモリ１６内へのデータの書込は記憶単位領域毎に行われるので、書き込まれるデータ量が少ないほど、フラッシュメモリ１６への書込時間が低減される。つまり、本書込処理によれば、フラッシュメモリ１６内へ一致アドレスが書き込まれるので、フラッシュメモリ１６内へ候補値が書き込まれる場合よりも、書込時間が短縮される。
【００４５】
［１−２−２．読出処理］
次に、ＣＰＵ１２が実行する読出処理について、図９に示すフローチャートを用いて説明する。読出処理は、取得要求に従って、設定値を取得する処理である。ここでは、取得要求が外部装置９から出力される例について説明する。読出処理は、外部装置９と接続されたことをきっかけとして、繰り返し実行される。なお、取得要求は、ＥＣＵ１０に接続された任意の装置からも出力され得る。また、取得要求は、ＥＣＵ１０からも出力され得る。
【００４６】
ＣＰＵ１２は、Ｓ２１０では、取得要求が有るか否かを判断する。取得要求とは、外部装置９が設定値の値を取得する要求である。
ＣＰＵ１２は、Ｓ２２０では、Ｓ２１０にて取得要求が有ると判断された場合に、設定値用記憶領域から一致アドレスを取得する。
【００４７】
例えば、仕向け値を取得する取得要求があった場合、ＣＰＵ１２は、フラッシュメモリ１６における仕向け値用記憶領域Ｒ１から一致アドレスである0x0000200Cを取得する。
ＣＰＵ１２は、Ｓ２３０では、一致アドレスが示す領域に記憶されている候補値、を取得要求にて取得が要求された設定値として取得し、本読出処理を終了する。
【００４８】
このような読出処理によれば、例えば、外部装置９から仕向け値を取得する取得要求があった場合、ＣＰＵ１２は、図１０に示すように、一致アドレスである0x0000200Cが示す領域に記憶されている候補値である、「国内向け」を表す0x100000000000を取得するように作動する。
【００４９】
［１−３．効果］
以上詳述した第１実施形態によれば、以下の効果を奏する。
（１ａ）ＥＣＵ１０は、少なくともデータの書込を行う。ＥＣＵ１０において、ＣＰＵ１２は、Ｓ１０では、当該ＥＣＵ１０に対する設定を表す設定値を設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する。
【００５０】
また、ＣＰＵ１２は、Ｓ５０では、設定要求が有る場合に、複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである一致アドレス、を取得する。そして、ＣＰＵ１２は、Ｓ９０では、設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、一致アドレスを表すデータを、予め定められた記憶単位領域毎にコントローラ１５に書き込ませる。複数の候補値は、書き換え可能なメモリ、本実施形態ではフラッシュメモリ１６に記憶されている。
【００５１】
ここで、フラッシュメモリ１６内へのデータの書込は記憶単位領域毎に行われるので、書き込まれるデータのデータ量が増加するほど、フラッシュメモリ１６へのデータの書込時間は増加する。
【００５２】
本実施形態によれば、アドレスである一致アドレスを表すデータを書き込むので、設定値としての指定値を表すデータを書き込むよりも、例えば一致アドレスが指定値よりもデータ量が少ない場合等に、フラッシュメモリ１６へのデータの書込時間を短縮することができる。
【００５３】
また、ＲＯＭ１３には、複数の候補データが予め書き込まれている。これによれば、設定値として書き込む指定値を、複数の候補値の中から選択することができる。
（１ｂ）一致アドレスを表すデータは、指定値を表すデータよりも、データ量が少ないように構成されている。これによれば、一致アドレスを書き込む場合は、指定値を書き込む場合よりも、書込時間を短縮することができる。
【００５４】
（１ｃ）ＣＰＵ１２は、Ｓ３０では、設定値と、複数の候補値と、候補値のそれぞれが記憶されている領域を示すアドレスと、の対応関係を設定値について示す対応情報、を取得する。
【００５５】
ＣＰＵ１２は、Ｓ５０では、設定要求が有る場合に、対応情報を用いて、複数の候補値のうち指定値と一致する候補値、が記憶されている領域を示すアドレスを特定する。つまり、ＣＰＵ１２は、Ｓ５０にて特定されたアドレスを一致アドレスとして取得する。
【００５６】
これによれば、対応情報を取得し一致アドレスを特定する構成を備えるので、ＥＣＵ１０自身において一致アドレスを特定することができる。
（１ｄ）ＣＰＵ１２は、Ｓ２１０では、設定値を取得する要求である取得要求、が有るか否かを判断する。ＣＰＵ１２は、Ｓ２２０では、取得要求が有る場合に、設定値用記憶領域から一致アドレスを取得する。ＣＰＵ１２は、Ｓ２２０では、一致アドレスが示す領域に記憶されている候補値、を取得要求にて取得が要求された設定値として取得する。
【００５７】
これによれば、取得要求が有る場合には、設定値用記憶領域内に書き込まれている一致アドレスが示す領域に記憶されている候補値を、設定値として取得する。このため、（１ａ）のように設定値を設定する際のデータの書込時間を短縮し、且つ、設定値として、取得要求にて要求された候補値を取得することができる。
【００５８】
なお、ＥＣＵ１０が電子制御装置に相当し、コントローラ１５が実行部に相当する。
また、Ｓ１０が設定判断部としての処理に相当し、Ｓ３０が対応取得部としての処理に相当し、Ｓ５０がアドレス部、特定部としての処理に相当し、Ｓ９０が書込指示部としての処理に相当し、Ｓ９０が書込指示部としての処理に相当する。また、Ｓ２１０が取得判断部としての処理に相当し、Ｓ２２０がアドレス取得部としての処理に相当し、Ｓ２３０が設定値取得部としての処理に相当する。
【００５９】
［２．第２実施形態］
［２−１．第１実施形態との相違点］
第２実施形態は、基本的な構成は第１実施形態と同様であるため、相違点について以下に説明する。なお、第１実施形態と同じ符号は、同一の構成を示すものであって、先行する説明を参照する。
【００６０】
前述した第１実施形態では、ＲＯＭ１３における候補値が記憶されている領域のアドレスを絶対アドレスで表していた。これに対し、第２実施形態では、該アドレスを相対アドレスにより表す点で、第１実施形態と相違する。これに伴い、第２実施形態では、書込処理においてＳ５５が追加され、Ｓ７０、Ｓ９０がＳ７５、Ｓ９５に置換される。
【００６１】
［２−２．処理］
次に、第２実施形態のＣＰＵ１２が、第１実施形態の図５に示す書込処理に代えて実行する書込処理について、図１１のフローチャートを用いて説明する。なお、図１１におけるＳ１０−Ｓ５０、Ｓ９０の処理は、図５におけるＳ１０−Ｓ５０、Ｓ９０の処理と同様であるため、説明を一部簡略化している。
【００６２】
本実施形態の書込処理では、ＣＰＵ１２は、Ｓ５０にて一致アドレスを特定し、処理をＳ５５へ移行させる。
ＣＰＵ１２は、Ｓ５５では、一致アドレスを相対アドレスに変換する。ここでいう相対アドレスとは基準アドレスに対する絶対アドレスの相対値である。基準アドレスは、ＲＯＭ１３内の任意の絶対アドレスに設定されうる。
【００６３】
本実施形態では、候補値記憶領域の先頭アドレスである0x00002000が基準アドレスとして設定されている。基準アドレスは予めＲＯＭ１３に記憶されている。候補値記憶領域とは、設定要求にて設定された、設定値に対する複数の候補値が記憶されている領域をいう。
【００６４】
なお、本実施形態では、図１２に示すように、「初期値」、「国内向け」、「北米向け」といった３つの候補値が仕向け値に対する候補値として設定されている。これらの候補値は、上記実施形態と同様に、それぞれ６バイトで表される。つまり、ＲＯＭ１３における絶対アドレス0x00002000〜0x00002012で表される領域が、仕向け値に対する、候補値記憶領域に相当する。
【００６５】
本ステップでは、設定要求において指定値が「国内向け」に設定されている場合、0x00002006といった絶対アドレスが0x00000006といった相対値に変換される。同様に、設定要求において指定値が「北米向け」に設定されている場合、0x0000200Cといった絶対アドレスが0x0000000Cといった相対値に変換される。つまり、これらの候補値の絶対アドレスに対する相対値は、４バイト中の上位３バイトは同じ値であり、つまり０であり、４バイト中の下位１バイトのみを用いて識別可能である。この下位の１バイトは、候補値記憶領域の大きさに応じた大きさである。
【００６６】
ＣＰＵ１２は、Ｓ７５では、Ｓ５５にて変換された相対値を表すデータを書込データとして設定する。
ＣＰＵ１２は、Ｓ９５では、コントローラ１５に、書込データを仕向け値用記憶領域に書き込ませ、本書込処理を終了する。本実施形態では特に、ＣＰＵ１２は、相対値を表すデータである４バイトの書込データのうち、下位の１バイトについてのみデータの書込を実行する。つまり、相対値を表す書込データのうち、下位バイトから予め定められたデータ長のデータのみを書き込む。予め定められたデータ長とは、候補地記憶領域の大きさに応じたデータ長である。
【００６７】
ＣＰＵ１２は設定値用記憶領域への書込データの書込を終えると、本書込処理を終了する。
このような書込処理によれば、外部装置９から仕向け値を「国内向け」に設定する、といった設定要求が有った場合、図１２に示すように、ＣＰＵ１２は、一致アドレスではなく、一致アドレスの相対値を仕向け値用記憶領域に書き込むよう作動する。特に本実施形態では、一致アドレスの相対値のうち所定のデータ長、つまり一致アドレスの相対値のうち下位１バイトの0x06のみを、仕向け値用記憶領域のうち該下位１バイトに対応する領域に書き込む。これによれば、フラッシュメモリ１６内へ一致アドレスの相対値が書き込まれるので、フラッシュメモリ１６内へ４バイト分の一致アドレスが書き込まれる場合よりも、書込時間が短縮される。
【００６８】
なお、外部装置９から仕向け値を取得する取得要求が有った場合は、仕向け値用記憶領域に記憶されている一致アドレスの相対値を取得し、該相対値を基準アドレスに基づいて絶対アドレスに変換し、変換後の絶対アドレスを用いて第１実施形態の読出処理と同様の処理を行えばよい。
【００６９】
［２−３．効果］
以上詳述した第２実施形態によれば、前述した第１実施形態の効果（１ａ）を奏し、さらに、以下の効果を奏する。
【００７０】
（２ａ）候補値が記憶されている領域を示すアドレスは、ＲＯＭ１３内における予め定められたアドレスである規定アドレスからの相対値により表されている。これによれば、設定値用記憶領域へ一致アドレスの相対値が書き込まれるので、一致アドレスが書き込まれる場合よりも、書込時間を短縮することができる。
【００７１】
［３．他の実施形態］
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
【００７２】
（３ａ）上記実施形態では、仕向け値を設定値としてＥＣＵ１０の作動を説明したが、設定値は仕向け値一つに限定されるものではない。設定値には、仕向け値以外に、例えば、仕向け値毎に予め設定されているエアコンの初期設定温度や、仕向け値毎に予め設定される種々の演算に用いられる定数等といった、予め設定される種々の設定値が含まれうる。また、仕向け値には、車体毎に予め定められているタイヤの空気圧の初期値や、車体毎に予め定められているスマートキーの識別番号等といった、車体毎に設定される種々の設定値が含まれうる。
【００７３】
ＥＣＵ１０は、こられの複数の設定値が用いられるように構成されていてもよい。これによれば、設定値毎に書込時間が短縮されるので、ＥＣＵ１０としてより多くの書込時間を短縮することができる。なおこの場合、Ｓ３０にて取得される対応情報は、図１３に示すように、設定値と、複数の候補値と、候補値のそれぞれが記憶されている領域を示すアドレスとの対応関係を、それぞれの設定値について表すものであってよい。
【００７４】
（３ｂ）上記実施形態では、一致アドレスを表すデータを、書込データとして生成していたが、これに限定されるものではない。書込データには、例えば、一致アドレスと共に、管理情報及び識別情報（以下、ＩＤ）の少なくとも一方を含んだデータ、が含まれうる。図１４に示すように、ＩＤ、一致アドレス、及び管理情報を書込データとして含む例を示す。管理情報とは、一致アドレスの書き換えの履歴を管理するための情報であり、例えば一致アドレスが書き換えられたか否か、いつ書き換えられたのか等を示す情報であってもよい。ＩＤとは、設定要求を表す情報であり、例えば設定要求毎に設定された識別番号であってもよい。
【００７５】
フラッシュメモリ１６には、例えば数十バイトの記憶領域からなるブロックが第１ブロック〜第ｎブロックのように複数設けられており、ブロック１００毎に一括してデータの消去が行われうる。例えば、このブロック１００毎にＩＤ、一致アドレス、及び管理情報を含む数十バイトの書込データが割り当てられるよう構成されていてもよい。
【００７６】
ただし、フラッシュメモリ１６におけるブロックの大きさはこれに限定されるものではない。ブロックは数ｋバイトの記憶領域からなるものであってもよい。この場合、ＩＤ、一致アドレス、及び管理情報を含む数十バイトの複数の書込データが一つのブロックに含まれうる。
【００７７】
（３ｃ）上記実施形態では、ＲＯＭ１３に記憶されている候補値のデータは６バイトで表されるものであり、これらの記憶されている領域を示すアドレスは４バイトで表されるものであったが、これに限定されるものではない。候補値のデータ、ＲＯＭ１３におけるアドレスは任意のデータ量で表されうる。
【００７８】
（３ｄ）上記実施形態では、設定値に対する候補値が予め複数設定されていたが、これに限定されるものではない。設定値に対する候補値は予め１つ設定されていてもよい。
（３ｅ）上記実施形態では、第２実施形態において、基準アドレスは候補値記憶領域の先頭アドレスに設定されていたが、これに限定されるものではない。基準アドレスは、ＲＯＭ１３内の任意の値に設定されうる。なお、基準アドレスは、候補値記憶領域内の任意のアドレスに設定されることが望ましい。また、基準アドレスは、例えば、上記実施形態のように候補値記憶領域内の先頭アドレス、または最終アドレスのいずれかに設定されることがより望ましい。
【００７９】
（３ｆ）上記実施形態では、設定値用記憶領域と、複数の候補値が予め記憶される領域とはそれぞれ異なるメモリとして構成され、前者はフラッシュメモリ１６として、後者はＲＯＭ１３として構成されていた。ただし、これに限定されるものではない。複数の候補値が予め記憶される領域が、フラッシュメモリ１６とは異なる別の書き換え可能なメモリに記憶されていてもよい。
【００８０】
例えば、図１５に示すように、メモリ１９において、フラッシュメモリ１６が複数のフラッシュメモリ１６ａ、１６ｂを有しており、フラッシュメモリ１６ａが上記実施形態におけるフラッシュメモリ１６として用いられ、フラッシュメモリ１６ｂが複数の候補値が記憶される第２の記憶部として用いられてもよい。これによれば、複数の候補値について書き換えを行うことができる。
【００８１】
なお、図示しないが、設定値用記憶領域と、複数の候補値が予め記憶される領域とは、同一の書き換え可能なメモリ内、例えば、図１におけるフラッシュメモリ１６内に含まれていてもよい。
【００８２】
（３ｇ）上記実施形態では、複数の候補値がＥＣＵ１０内のメモリであるフラッシュメモリ１６に記憶されていたが、これに限定されるものではない。複数の候補値は、ＥＣＵ１０の外部に設けられた外部記憶装置に記憶されていてもよい。
【００８３】
具体的には、図１６に示すように、車両に搭載されたシステムである車載システム１において、自ＥＣＵ１０ａは、複数の他のＥＣＵ１０ｂ、ＥＣＵ１０ｃと通信線５により通信可能に接続されている。他のＥＣＵ１０ｂ、１０ｃのうち少なくとも一つは、ＲＯＭ、フラッシュメモリ等といった、データを記憶するメモリを備えている。
【００８４】
ここで、複数の候補値は、複数の他のＥＣＵ１０ｂ、１０ｃのうち少なくとも一つが備えるメモリに記憶されていてもよい。例えば、他のＥＣＵ１０ｂが備えるメモリに記憶されていてもよい。ここでいう他のＥＣＵ１０ｂのメモリには、ＲＯＭのような書き換え不可能なメモリ及びフラッシュメモリ等といった書き換え可能なメモリの両方が含まれうる。
【００８５】
これによれば、設定値に対する複数の候補値が他のＥＣＵ１０ｂのメモリに記憶されるので、自ＥＣＵ１０ａは、複数の候補値を記憶するための領域を他の情報を記憶するために利用することが可能となる。例えば仕向け値のように、設定値が複数のＥＣＵに共通して用いられるものである場合、より大きな効果が奏される。
【００８６】
なお、ここでは自ＥＣＵ１０ａが、複数の他のＥＣＵ１０ｂ、１０ｃと通信可能に接続されている例を説明したが、自ＥＣＵ１０ａに接続される他のＥＣＵの数は、これに限定されるものではない。例えば自ＥＣＵ１０ａは、少なくとも一つの他のＥＣＵ１０ｂと通信可能に接続されており、複数の候補値が該他のＥＣＵ１０ｂのメモリに記憶されるよう構成されていてもよい。
【００８７】
ところで、本実施形態において、自ＥＣＵ１０ａは、上記実施形態のＥＣＵ１０と同様に、設定判断部、アドレス部、対応取得部、特定部を備え、一致アドレスを特定するように構成されていてもよい。または、自ＥＣＵ１０ａは、特定部を備えず、一致アドレスを取得するように構成されていてもよい。後者の場合、例えば他のＥＣＵ１０ｂが、上記実施形態のＥＣＵ１０と同様に、設定判断部、アドレス部、対応取得部、特定部を備えるように構成されることにより、自ＥＣＵ１０ａは、他のＥＣＵ１０ｂから一致アドレスを取得するように構成されてもよい。
【００８８】
（３ｈ）上記（３ｇ）では、複数の候補値が他のＥＣＵ１０ｂが備えるメモリに記憶されていたが、複数の候補値が記憶される記憶装置はこれに限定されるものではない。複数の候補値は、例えば、Hard Disk Drive（以下、ＨＤＤ）といった記憶装置に記憶されていてもよい。ＨＤＤ３０は、データを書き換え可能な記憶装置である。ここではＨＤＤを例に挙げて説明するが、これに限定されるものではなく、ＨＤＤはデータを保存するデータ保存部として機能し、且つデータを書き換え可能な任意の記憶装置であってよい。
【００８９】
具体的には、図１７に示す車載システム２において、自ＥＣＵ１０ｄは、他のＥＣＵ１０ｅ及び一つのＨＤＤ３０と通信線５により通信可能に接続されている。自ＥＣＵ１０ｄ及び他のＥＣＵ１０ｅは、上記実施形態のＥＣＵ１０と同様に、設定判断部、アドレス部、対応取得部、特定部を備え、一致アドレスを特定するように構成されうる。自ＥＣＵ１０ｄは、他のＥＣＵ１０ｅと共に、ＨＤＤ３０を共用するように構成されている。ここで、複数の候補値は、ＨＤＤ３０に記憶されていてもよい。
【００９０】
これによれば、自ＥＣＵ１０ｄ及び他のＥＣＵ１０ｅのそれぞれにおいては、複数の候補値を記憶するための記憶領域を備える必要が無くなる。つまり、これら複数の候補値が記憶されていた記憶領域を他の情報を記憶させるために有効に用いることが可能となる。
【００９１】
なお、自ＥＣＵ１０ｄに通信可能に接続される他のＥＣＵは複数であってもよく、自ＥＣＵ１０ｄがこれら複数の他のＥＣＵと共にＨＤＤ３０を共用するように構成されていてもよい。また、自ＥＣＵ１０ｄ及び他のＥＣＵ１０ｅは、特定部を備えないように構成されてもよい。
【００９２】
（３ｉ）上記実施形態において、対応情報の例を図６のように示したが、対応情報の態様はこれに限定されるものではない。対応情報は、候補値と該候補値が記憶されている領域を示すアドレスとの対応を示すものであれば、図６に示すテーブル形式に限らず、どのような態様で表されてもよい。また、候補値が記憶されている領域を示すアドレスは、どのような態様で表されてもよい。例えば、候補値が記憶されている領域を示すアドレスは、アドレスを示すデータ列のうち上位の数ビットまたは下位の数ビットを用いて表されうる。
【００９３】
（３ｊ）上記実施形態における１つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、１つの構成要素が有する１つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、１つの構成要素によって実現したり、複数の構成要素によって実現される１つの機能を、１つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【００９４】
（３ｋ）上述したＥＣＵ１０、ＣＰＵ１２、車載システム１の他、ＣＰＵ１２を機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、データ記憶方法など、種々の形態で本開示を実現することもできる。
【符号の説明】
【００９５】
１  車載システム、１０  ＥＣＵ、１２  ＣＰＵ、１３  ＲＯＭ、１５  コントローラ、１６  フラッシュメモリ、１９  メモリ。
【図１】
2018116552.tif 000003
【図２】
2018116552.tif 000004
【図３】
2018116552.tif 000005
【図４】
2018116552.tif 000006
【図５】
2018116552.tif 000007
【図６】
2018116552.tif 000008
【図７】
2018116552.tif 000009
【図８】
2018116552.tif 000010
【図９】
2018116552.tif 000011
【図１０】
2018116552.tif 000012
【図１１】
2018116552.tif 000013
【図１２】
2018116552.tif 000014
【図１３】
2018116552.tif 000015
【図１４】
2018116552.tif 000016
【図１５】
2018116552.tif 000017
【図１６】
2018116552.tif 000018
【図１７】
2018116552.tif 000019