[go: up one dir, main page]

JP2018116552A - 電子制御装置 - Google Patents

電子制御装置 Download PDF

Info

Publication number
JP2018116552A
JP2018116552A JP2017007617A JP2017007617A JP2018116552A JP 2018116552 A JP2018116552 A JP 2018116552A JP 2017007617 A JP2017007617 A JP 2017007617A JP 2017007617 A JP2017007617 A JP 2017007617A JP 2018116552 A JP2018116552 A JP 2018116552A
Authority
JP
Japan
Prior art keywords
value
address
setting
electronic control
control device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017007617A
Other languages
English (en)
Other versions
JP6969103B2 (ja
Inventor
暢矢 植松
Nobuya Uematsu
暢矢 植松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2017007617A priority Critical patent/JP6969103B2/ja
Priority to DE102018200660.1A priority patent/DE102018200660B4/de
Publication of JP2018116552A publication Critical patent/JP2018116552A/ja
Application granted granted Critical
Publication of JP6969103B2 publication Critical patent/JP6969103B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7206Reconfiguration of flash memory system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7207Details relating to flash memory management management of metadata or control data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Memory System (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】データの書込時間を短縮する技術を提供する。【解決手段】CPU12は、S10では、当該電子制御装置に対する設定を表す設定値を設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する。S50では、設定要求が有る場合に、複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである一致アドレス、を取得する。S90では、設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、一致アドレスを表すデータを、予め定められた記憶単位領域毎にデータの書込を行うコントローラ15に書き込ませる。【選択図】図5

Description

本開示は、フラッシュメモリ等の不揮発性メモリへのデータの書き込みを行う電子制御装置に関する。
従来、データの書き換えが可能な不揮発性メモリの一例としてフラッシュメモリが知られている。フラッシュメモリでは、一般的に、数バイト程度の予め定められた記憶領域である単位領域毎にデータの書込や読出が行われる。
特許文献1には、このようなフラッシュメモリに対してデータを書き込み、書き込んだデータを書き換える技術が提案されている。
特開2011−203809号公報
フラッシュメモリは、例えば、通信機器やAV機器や車両の制御を行う機器等といった、様々な分野の機器において使用されている。また、近年では、ますますその制御が複雑化し、これら機器の制御において用いられるデータのデータ量も増大している。
特許文献1に記載のようなフラッシュメモリでは、単位領域毎にデータの書込が行われる。このため、前述の機器の制御等に用いられるデータをそのままの形態でフラッシュメモリに書き込もうとすると、書込時間が長くなるという問題が生じうる。
本開示は、データの書込時間を短縮する技術を提供する。
本開示の電子制御装置(10)は、少なくともデータの書込を行う。電子制御装置は、設定判断部(S10)と、アドレス部(S50)と、書込指示部(S90)と、を備える。
設定判断部は、当該電子制御装置に対する設定を表す設定値を設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する。アドレス部は、設定要求が有る場合に、複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである一致アドレス、を取得する。書込指示部は、設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、一致アドレスを表すデータを、予め定められた記憶単位領域毎にデータの書込を行う実行部(15)に書き込ませる。
ここで、データの書込は記憶単位領域毎に行われるため、書き込まれるデータのデータ量が増加するほど、書込時間は増加する。
このような構成によれば、一致アドレスを表すデータを書き込むので、設定値として設定される指定値を表すデータをそのままの形態で書き込むよりも、例えば一致アドレスが指定値よりもデータ量が少ない場合等に、データの書込時間を短縮することができる。
なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
電子制御装置10の構成を示すブロック図。 仕向け値の書込について説明する図。 仕向け値に対する候補値について説明する図。 フラッシュメモリ16内に、仕向け値を記憶する仕向け値用記憶領域が含まれていることを説明する図。 第1実施形態の書込処理のフローチャート。 対応情報を示す図。 第1実施形態の実行処理のフローチャート。 第1実施形態の書込処理による作動の例を示す図。 第1実施形態の読出処理のフローチャート。 第1実施形態の読出処理による作動の例を示す図。 第2実施形態の書込処理のフローチャート。 第2実施形態の書込処理による作動の例を示す図。 他の実施形態における対応情報の例を示す図。 他の実施形態における書込データの例を示す図。 他の実施形態におけるメモリの構成例を示す図。 他の実施形態における、候補値が複数のECUのうちのあるECUが備えるメモリに記憶されている車載システムの例を示す図。 他の実施形態における、候補値がHDDに記憶されている車載システムの例を示す図。
以下、図面を参照しながら、本開示の実施形態を説明する。
[1.第1実施形態]
[1−1.構成]
図1に示す電子制御ユニット(以下、ECU)10は、車両に搭載されて用いられる装置である。以下でいう自車両とは、ECU10が搭載される車両をいう。
ECU10は、当該ECUを統括制御するためのCPU12と、ROM13、RAM14、フラッシュメモリ16等の半導体メモリ(以下、メモリ19)と、コントローラ15と、を有する周知のマイクロコンピュータ(以下、マイコン)11を中心に構成される。ECU10の各種機能は、CPU12が非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、メモリ19が、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。なお、ECU10を構成するマイコン11の数は1つでも複数でもよい。
ECU10は、CPU12がプログラムを実行することで、自車両の制御を行うために当該ECU10に割り当てられた各種機能を実現する。ECU10の各種機能を実現する手法はソフトウェアに限るものではなく、その一部又は全部の要素について、一つあるいは複数のハードウェアを用いて実現してもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は多数の論理回路を含むデジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現してもよい。
ECU10は、マイコン11と、I/O17と、電源回路18と、を備える。
具体的には、ECU10は、I/O17を介して通信線5により接続されている図示しない他のECUとの間で、互いに自車両を制御するためのデータである制御データを送受信し、制御データに基づいてECU10に割り当てられた各種機能を実現する。
また、ECU10は、I/O17を介して通信線5により外部装置9に接続されることが可能である。ECU10は、I/O17を介して接続される外部装置9からの要求に応じて、外部装置9により指定された情報であって当該ECU10に対する設定を表す情報である設定値を外部装置9により指定された値である指示値に設定する。
電源回路18は、自車両に搭載された図示しないバッテリから電力供給を受け、CPU12、ROM13、RAM14、コントローラ15、フラッシュメモリ16、コントローラ15等、ECU10の各部位に電力を供給する。
ROM13には、CPU12により実行されるプログラムが記憶されており、該プログラムとして、コントローラ15にフラッシュメモリ16を制御させるためのフラッシュメモリドライバや、各種アプリケーションが記憶されている。また、ROM13には、後述する候補値が記憶されている。
フラッシュメモリ16は、書き換え可能なメモリである。フラッシュメモリ16は、一例として2バイトの記憶領域(以下、記憶単位領域)毎にデータの書き込みや読み出しが行われる。また、フラッシュメモリ16には、後述する設定値用記憶領域が含まれる。
CPU12は、フラッシュメモリドライバに従い動作することで、コントローラ15を制御し、フラッシュメモリ16に対するデータの書き込み及び読み出しを行う。
コントローラ15は、CPU12からの指示に従って、データを書き換え可能であって予め定められた記憶単位領域毎にデータの書き込みが行われるメモリであるフラッシュメモリ16に対する制御を行う。
本実施形態では、このように構成されたECU10がI/O17を介して外部装置9に接続される例について説明する。
外部装置9は、ECU10の外部の装置であって、ECU10に対して、設定要求、または取得要求を出力するように構成されている。
ECU10は、外部装置9から、設定要求が有ると、後述する書込処理を実行する。設定要求とは、外部装置9が指定する設定値を、該設定に対する複数の候補値のうちの一つであって外部装置9が指定する指定値、に設定する要求である。また、ECU10は、外部装置9から、取得要求が有ると、後述する読出処理を実行する。取得要求とは、外部装置9が指定する設定値として設定されている値を読み出す要求である。
ここでいう設定値とは、ECU10に対する設定の種類を表すものであり、該設定値がとりうる複数の候補値が予め定められているものである。設定値には、例えば、後述する仕向け値が含まれうる。
ここで仕向け値について説明する。一般に、ECU10をはじめとする電子制御ユニットでは、図2に示すように、例えば車両の出荷前等に、仕向け値をフラッシュメモリ16に記憶させることで、国内向け、北米向けといった、仕向け先の管理を行っている。仕向け値は、ECU10の出荷時には「なし」に設定されている。すなわち仕向け値としては何も設定されておらず、仕向け値が設定されていないことを表す予め定められた初期値がフラッシュメモリ16に書き込まれている。そして、車両が製造工場から出荷される前に、外部装置9からの設定要求にて外部装置9が指定した指定値が仕向け値としてフラッシュメモリ16に書き込まれる。
図2では、「国内向け」が指定値として指定する設定要求が外部装置9から入力されており、この「国内向け」が仕向け値としてECU10に書き込まれる例が示されている。ECU10は仕向け値が書き込まれた後、車両に組み付けられる。そして、該組み付け後に車両が出荷される。
このような設定値には複数の候補値が予め設定されている。候補値とは、設定値に対する候補となる値である。すなわち、設定値がとり得る予め定められた値である。例えば、設定値の一つである前述の仕向け値に対しては、図3に示すように、「初期値」、「国内向け」、「北米向け」、「欧州向け」、「中近東向け」といった候補値が設定されている。本実施形態では、候補値は、6バイトで表されるものとする。
ECU10においては、前述のように、これら複数の候補値が、ROM13に、具体的にはROM13における予め定められたアドレスで示される領域内に、それぞれ記憶されている。
例えば、仕向け値を設定値とする例では、後述する図6に示すように、候補値の一つである「初期値」は、0x00002000といったアドレスで示される領域に記憶されている。また、「国内向け」は、0x00002006といったアドレスで示される領域に記憶されている。
本実施形態では、アドレスは4バイトで表されるものとする。つまり、本実施形態では、ROM13における記憶領域を示すアドレスは、候補値よりも、データ量が少なく設定されている。
フラッシュメモリ16には、前述のように設定値用記憶領域が含まれている。設定値用記憶領域とは、設定値に対して設定値毎に予め割り当てられたフラッシュメモリ16内の記憶領域である。例えば、設定値の一つである前述の仕向け値に対しては、図4に示すように、フラッシュメモリ16においてアドレスR1で表される領域が設定値用記憶領域として割り当てられている。仕向け値に対して割り当てられた設定値用記憶領域を仕向け値用記憶領域ともいう。
このように、外部装置9は、ECU10に対して、複数の候補値の中から選択した一つの候補値を設定値として設定する設定要求を出力するように構成されている。また、外部装置9は、ECU10に対して、複数の候補値の中の一つに設定された設定値の値を該設定値に対する設定値用記憶領域から読み出す取得要求を出力するように構成されている。
[1−2.処理]
次に、CPU12が実行する処理について、説明する。
[1−2−1.書込処理]
はじめに、CPU12が実行する書込処理について、図5に示すフローチャートを用いて説明する。書込処理は、外部装置9からの設定要求に従って、設定値を指定値に設定する処理である。書込処理は、外部装置9と接続されたことをきっかけとして、繰り返し実行される。
CPU12は、S10では、外部装置9から設定要求が有るか否かを判断する。CPU12は、設定要求が有る場合に処理をS30へ移行させ、設定要求が無い場合に本書込処理を終了する。
CPU12は、外部装置9からの設定要求が有る場合に移行するS30では、対応情報を取得する。対応情報とは、予めROM13に記憶されている情報であって、設定値と、該設定値に対する複数の候補値と、候補値のそれぞれが記憶されているROM13における領域を示すアドレスと、の対応関係を表す情報である。
例えば、仕向け値を設定値とする対応情報は図6のように示される。
CPU12は、続くS50では、一致アドレスを特定する。ここでいう一致アドレスとは、ROM13において複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである。
例えば、設定値としての仕向け値に対して指定値としての「国内向け」を設定する設定要求が有った場合、CPU12は、図6に示す対応情報に基づいて、仕向け値に対する複数の候補値の中から、指定値である「国内向け」と一致する候補値が記憶されている領域のアドレスを特定し、特定されたアドレスを一致アドレスとして取得する。すなわち、0x00002006を一致アドレスとして取得する。
CPU12は、続くS70では、書込データを生成する。書込データとは、CPU12が設定値用記憶領域に書込を行うデータをいう。本実施形態では、CPU12は、一致アドレスを表すデータを書込データとして生成する。
例えば、仕向け値を設定値とし「国内向け」を指定値とする設定要求があった場合、CPU12は一致アドレスである0x00002006を仕向け値用記憶領域に対する書込データとして生成する。
CPU12は、S90では、設定値用記憶領域に、書込データをコントローラ15に書き込ませる実行処理を行う。
CPU12は、例えば、仕向け値を設定値とし「国内向け」を指定値とする設定要求があった場合、一致アドレスを表すデータである0x00002006を書込データとして、仕向け値用記憶領域R1に対して該書込データをコントローラ15に書き込ませる。これにより、仕向け値用記憶領域R1では、ROM13において初期値が記憶されているアドレスである0x00002000が上書きされ、「国内向け」を表す0x100000000000が記憶されているアドレスである0x00002006が新たに書き込まれる。
CPU12は設定値用記憶領域への書込データの書込を終えると、本書込処理を終了する。
続いて、書込処理におけるS90にて実行される実行処理について図7に示すフローチャートを用いて説明する。
CPU12は、図7に示すように、S110にてS70にて生成された書込データを取得する。
CPU12は、S120では、コントローラ15に記憶単位領域毎にフラッシュメモリ16内にデータを書き込ませる。本実施形態では、2バイトを記憶単位領域とする。但し、これに限定されるものではなく、記憶単位領域は例えば4バイト等といったように任意に設定され得る。
CPU12は、S130では、未書込のデータが有るか否かを判断し、未書込のデータが無くなるまで繰り返し書込を実行する。
このような書込処理によれば、外部装置9から仕向け値を「国内向け」に設定する、といった設定要求が有った場合、図8に示すように、CPU12は、「国内向け」という候補値を示す6バイトのデータである0x100000000000ではなく、一致アドレスを示す4バイトのデータである0x0000200Cを、仕向け値用記憶領域に書き込むよう作動する。
フラッシュメモリ16内へのデータの書込は記憶単位領域毎に行われるので、書き込まれるデータ量が少ないほど、フラッシュメモリ16への書込時間が低減される。つまり、本書込処理によれば、フラッシュメモリ16内へ一致アドレスが書き込まれるので、フラッシュメモリ16内へ候補値が書き込まれる場合よりも、書込時間が短縮される。
[1−2−2.読出処理]
次に、CPU12が実行する読出処理について、図9に示すフローチャートを用いて説明する。読出処理は、取得要求に従って、設定値を取得する処理である。ここでは、取得要求が外部装置9から出力される例について説明する。読出処理は、外部装置9と接続されたことをきっかけとして、繰り返し実行される。なお、取得要求は、ECU10に接続された任意の装置からも出力され得る。また、取得要求は、ECU10からも出力され得る。
CPU12は、S210では、取得要求が有るか否かを判断する。取得要求とは、外部装置9が設定値の値を取得する要求である。
CPU12は、S220では、S210にて取得要求が有ると判断された場合に、設定値用記憶領域から一致アドレスを取得する。
例えば、仕向け値を取得する取得要求があった場合、CPU12は、フラッシュメモリ16における仕向け値用記憶領域R1から一致アドレスである0x0000200Cを取得する。
CPU12は、S230では、一致アドレスが示す領域に記憶されている候補値、を取得要求にて取得が要求された設定値として取得し、本読出処理を終了する。
このような読出処理によれば、例えば、外部装置9から仕向け値を取得する取得要求があった場合、CPU12は、図10に示すように、一致アドレスである0x0000200Cが示す領域に記憶されている候補値である、「国内向け」を表す0x100000000000を取得するように作動する。
[1−3.効果]
以上詳述した第1実施形態によれば、以下の効果を奏する。
(1a)ECU10は、少なくともデータの書込を行う。ECU10において、CPU12は、S10では、当該ECU10に対する設定を表す設定値を設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する。
また、CPU12は、S50では、設定要求が有る場合に、複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスである一致アドレス、を取得する。そして、CPU12は、S90では、設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、一致アドレスを表すデータを、予め定められた記憶単位領域毎にコントローラ15に書き込ませる。複数の候補値は、書き換え可能なメモリ、本実施形態ではフラッシュメモリ16に記憶されている。
ここで、フラッシュメモリ16内へのデータの書込は記憶単位領域毎に行われるので、書き込まれるデータのデータ量が増加するほど、フラッシュメモリ16へのデータの書込時間は増加する。
本実施形態によれば、アドレスである一致アドレスを表すデータを書き込むので、設定値としての指定値を表すデータを書き込むよりも、例えば一致アドレスが指定値よりもデータ量が少ない場合等に、フラッシュメモリ16へのデータの書込時間を短縮することができる。
また、ROM13には、複数の候補データが予め書き込まれている。これによれば、設定値として書き込む指定値を、複数の候補値の中から選択することができる。
(1b)一致アドレスを表すデータは、指定値を表すデータよりも、データ量が少ないように構成されている。これによれば、一致アドレスを書き込む場合は、指定値を書き込む場合よりも、書込時間を短縮することができる。
(1c)CPU12は、S30では、設定値と、複数の候補値と、候補値のそれぞれが記憶されている領域を示すアドレスと、の対応関係を設定値について示す対応情報、を取得する。
CPU12は、S50では、設定要求が有る場合に、対応情報を用いて、複数の候補値のうち指定値と一致する候補値、が記憶されている領域を示すアドレスを特定する。つまり、CPU12は、S50にて特定されたアドレスを一致アドレスとして取得する。
これによれば、対応情報を取得し一致アドレスを特定する構成を備えるので、ECU10自身において一致アドレスを特定することができる。
(1d)CPU12は、S210では、設定値を取得する要求である取得要求、が有るか否かを判断する。CPU12は、S220では、取得要求が有る場合に、設定値用記憶領域から一致アドレスを取得する。CPU12は、S220では、一致アドレスが示す領域に記憶されている候補値、を取得要求にて取得が要求された設定値として取得する。
これによれば、取得要求が有る場合には、設定値用記憶領域内に書き込まれている一致アドレスが示す領域に記憶されている候補値を、設定値として取得する。このため、(1a)のように設定値を設定する際のデータの書込時間を短縮し、且つ、設定値として、取得要求にて要求された候補値を取得することができる。
なお、ECU10が電子制御装置に相当し、コントローラ15が実行部に相当する。
また、S10が設定判断部としての処理に相当し、S30が対応取得部としての処理に相当し、S50がアドレス部、特定部としての処理に相当し、S90が書込指示部としての処理に相当し、S90が書込指示部としての処理に相当する。また、S210が取得判断部としての処理に相当し、S220がアドレス取得部としての処理に相当し、S230が設定値取得部としての処理に相当する。
[2.第2実施形態]
[2−1.第1実施形態との相違点]
第2実施形態は、基本的な構成は第1実施形態と同様であるため、相違点について以下に説明する。なお、第1実施形態と同じ符号は、同一の構成を示すものであって、先行する説明を参照する。
前述した第1実施形態では、ROM13における候補値が記憶されている領域のアドレスを絶対アドレスで表していた。これに対し、第2実施形態では、該アドレスを相対アドレスにより表す点で、第1実施形態と相違する。これに伴い、第2実施形態では、書込処理においてS55が追加され、S70、S90がS75、S95に置換される。
[2−2.処理]
次に、第2実施形態のCPU12が、第1実施形態の図5に示す書込処理に代えて実行する書込処理について、図11のフローチャートを用いて説明する。なお、図11におけるS10−S50、S90の処理は、図5におけるS10−S50、S90の処理と同様であるため、説明を一部簡略化している。
本実施形態の書込処理では、CPU12は、S50にて一致アドレスを特定し、処理をS55へ移行させる。
CPU12は、S55では、一致アドレスを相対アドレスに変換する。ここでいう相対アドレスとは基準アドレスに対する絶対アドレスの相対値である。基準アドレスは、ROM13内の任意の絶対アドレスに設定されうる。
本実施形態では、候補値記憶領域の先頭アドレスである0x00002000が基準アドレスとして設定されている。基準アドレスは予めROM13に記憶されている。候補値記憶領域とは、設定要求にて設定された、設定値に対する複数の候補値が記憶されている領域をいう。
なお、本実施形態では、図12に示すように、「初期値」、「国内向け」、「北米向け」といった3つの候補値が仕向け値に対する候補値として設定されている。これらの候補値は、上記実施形態と同様に、それぞれ6バイトで表される。つまり、ROM13における絶対アドレス0x00002000〜0x00002012で表される領域が、仕向け値に対する、候補値記憶領域に相当する。
本ステップでは、設定要求において指定値が「国内向け」に設定されている場合、0x00002006といった絶対アドレスが0x00000006といった相対値に変換される。同様に、設定要求において指定値が「北米向け」に設定されている場合、0x0000200Cといった絶対アドレスが0x0000000Cといった相対値に変換される。つまり、これらの候補値の絶対アドレスに対する相対値は、4バイト中の上位3バイトは同じ値であり、つまり0であり、4バイト中の下位1バイトのみを用いて識別可能である。この下位の1バイトは、候補値記憶領域の大きさに応じた大きさである。
CPU12は、S75では、S55にて変換された相対値を表すデータを書込データとして設定する。
CPU12は、S95では、コントローラ15に、書込データを仕向け値用記憶領域に書き込ませ、本書込処理を終了する。本実施形態では特に、CPU12は、相対値を表すデータである4バイトの書込データのうち、下位の1バイトについてのみデータの書込を実行する。つまり、相対値を表す書込データのうち、下位バイトから予め定められたデータ長のデータのみを書き込む。予め定められたデータ長とは、候補地記憶領域の大きさに応じたデータ長である。
CPU12は設定値用記憶領域への書込データの書込を終えると、本書込処理を終了する。
このような書込処理によれば、外部装置9から仕向け値を「国内向け」に設定する、といった設定要求が有った場合、図12に示すように、CPU12は、一致アドレスではなく、一致アドレスの相対値を仕向け値用記憶領域に書き込むよう作動する。特に本実施形態では、一致アドレスの相対値のうち所定のデータ長、つまり一致アドレスの相対値のうち下位1バイトの0x06のみを、仕向け値用記憶領域のうち該下位1バイトに対応する領域に書き込む。これによれば、フラッシュメモリ16内へ一致アドレスの相対値が書き込まれるので、フラッシュメモリ16内へ4バイト分の一致アドレスが書き込まれる場合よりも、書込時間が短縮される。
なお、外部装置9から仕向け値を取得する取得要求が有った場合は、仕向け値用記憶領域に記憶されている一致アドレスの相対値を取得し、該相対値を基準アドレスに基づいて絶対アドレスに変換し、変換後の絶対アドレスを用いて第1実施形態の読出処理と同様の処理を行えばよい。
[2−3.効果]
以上詳述した第2実施形態によれば、前述した第1実施形態の効果(1a)を奏し、さらに、以下の効果を奏する。
(2a)候補値が記憶されている領域を示すアドレスは、ROM13内における予め定められたアドレスである規定アドレスからの相対値により表されている。これによれば、設定値用記憶領域へ一致アドレスの相対値が書き込まれるので、一致アドレスが書き込まれる場合よりも、書込時間を短縮することができる。
[3.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
(3a)上記実施形態では、仕向け値を設定値としてECU10の作動を説明したが、設定値は仕向け値一つに限定されるものではない。設定値には、仕向け値以外に、例えば、仕向け値毎に予め設定されているエアコンの初期設定温度や、仕向け値毎に予め設定される種々の演算に用いられる定数等といった、予め設定される種々の設定値が含まれうる。また、仕向け値には、車体毎に予め定められているタイヤの空気圧の初期値や、車体毎に予め定められているスマートキーの識別番号等といった、車体毎に設定される種々の設定値が含まれうる。
ECU10は、こられの複数の設定値が用いられるように構成されていてもよい。これによれば、設定値毎に書込時間が短縮されるので、ECU10としてより多くの書込時間を短縮することができる。なおこの場合、S30にて取得される対応情報は、図13に示すように、設定値と、複数の候補値と、候補値のそれぞれが記憶されている領域を示すアドレスとの対応関係を、それぞれの設定値について表すものであってよい。
(3b)上記実施形態では、一致アドレスを表すデータを、書込データとして生成していたが、これに限定されるものではない。書込データには、例えば、一致アドレスと共に、管理情報及び識別情報(以下、ID)の少なくとも一方を含んだデータ、が含まれうる。図14に示すように、ID、一致アドレス、及び管理情報を書込データとして含む例を示す。管理情報とは、一致アドレスの書き換えの履歴を管理するための情報であり、例えば一致アドレスが書き換えられたか否か、いつ書き換えられたのか等を示す情報であってもよい。IDとは、設定要求を表す情報であり、例えば設定要求毎に設定された識別番号であってもよい。
フラッシュメモリ16には、例えば数十バイトの記憶領域からなるブロックが第1ブロック〜第nブロックのように複数設けられており、ブロック100毎に一括してデータの消去が行われうる。例えば、このブロック100毎にID、一致アドレス、及び管理情報を含む数十バイトの書込データが割り当てられるよう構成されていてもよい。
ただし、フラッシュメモリ16におけるブロックの大きさはこれに限定されるものではない。ブロックは数kバイトの記憶領域からなるものであってもよい。この場合、ID、一致アドレス、及び管理情報を含む数十バイトの複数の書込データが一つのブロックに含まれうる。
(3c)上記実施形態では、ROM13に記憶されている候補値のデータは6バイトで表されるものであり、これらの記憶されている領域を示すアドレスは4バイトで表されるものであったが、これに限定されるものではない。候補値のデータ、ROM13におけるアドレスは任意のデータ量で表されうる。
(3d)上記実施形態では、設定値に対する候補値が予め複数設定されていたが、これに限定されるものではない。設定値に対する候補値は予め1つ設定されていてもよい。
(3e)上記実施形態では、第2実施形態において、基準アドレスは候補値記憶領域の先頭アドレスに設定されていたが、これに限定されるものではない。基準アドレスは、ROM13内の任意の値に設定されうる。なお、基準アドレスは、候補値記憶領域内の任意のアドレスに設定されることが望ましい。また、基準アドレスは、例えば、上記実施形態のように候補値記憶領域内の先頭アドレス、または最終アドレスのいずれかに設定されることがより望ましい。
(3f)上記実施形態では、設定値用記憶領域と、複数の候補値が予め記憶される領域とはそれぞれ異なるメモリとして構成され、前者はフラッシュメモリ16として、後者はROM13として構成されていた。ただし、これに限定されるものではない。複数の候補値が予め記憶される領域が、フラッシュメモリ16とは異なる別の書き換え可能なメモリに記憶されていてもよい。
例えば、図15に示すように、メモリ19において、フラッシュメモリ16が複数のフラッシュメモリ16a、16bを有しており、フラッシュメモリ16aが上記実施形態におけるフラッシュメモリ16として用いられ、フラッシュメモリ16bが複数の候補値が記憶される第2の記憶部として用いられてもよい。これによれば、複数の候補値について書き換えを行うことができる。
なお、図示しないが、設定値用記憶領域と、複数の候補値が予め記憶される領域とは、同一の書き換え可能なメモリ内、例えば、図1におけるフラッシュメモリ16内に含まれていてもよい。
(3g)上記実施形態では、複数の候補値がECU10内のメモリであるフラッシュメモリ16に記憶されていたが、これに限定されるものではない。複数の候補値は、ECU10の外部に設けられた外部記憶装置に記憶されていてもよい。
具体的には、図16に示すように、車両に搭載されたシステムである車載システム1において、自ECU10aは、複数の他のECU10b、ECU10cと通信線5により通信可能に接続されている。他のECU10b、10cのうち少なくとも一つは、ROM、フラッシュメモリ等といった、データを記憶するメモリを備えている。
ここで、複数の候補値は、複数の他のECU10b、10cのうち少なくとも一つが備えるメモリに記憶されていてもよい。例えば、他のECU10bが備えるメモリに記憶されていてもよい。ここでいう他のECU10bのメモリには、ROMのような書き換え不可能なメモリ及びフラッシュメモリ等といった書き換え可能なメモリの両方が含まれうる。
これによれば、設定値に対する複数の候補値が他のECU10bのメモリに記憶されるので、自ECU10aは、複数の候補値を記憶するための領域を他の情報を記憶するために利用することが可能となる。例えば仕向け値のように、設定値が複数のECUに共通して用いられるものである場合、より大きな効果が奏される。
なお、ここでは自ECU10aが、複数の他のECU10b、10cと通信可能に接続されている例を説明したが、自ECU10aに接続される他のECUの数は、これに限定されるものではない。例えば自ECU10aは、少なくとも一つの他のECU10bと通信可能に接続されており、複数の候補値が該他のECU10bのメモリに記憶されるよう構成されていてもよい。
ところで、本実施形態において、自ECU10aは、上記実施形態のECU10と同様に、設定判断部、アドレス部、対応取得部、特定部を備え、一致アドレスを特定するように構成されていてもよい。または、自ECU10aは、特定部を備えず、一致アドレスを取得するように構成されていてもよい。後者の場合、例えば他のECU10bが、上記実施形態のECU10と同様に、設定判断部、アドレス部、対応取得部、特定部を備えるように構成されることにより、自ECU10aは、他のECU10bから一致アドレスを取得するように構成されてもよい。
(3h)上記(3g)では、複数の候補値が他のECU10bが備えるメモリに記憶されていたが、複数の候補値が記憶される記憶装置はこれに限定されるものではない。複数の候補値は、例えば、Hard Disk Drive(以下、HDD)といった記憶装置に記憶されていてもよい。HDD30は、データを書き換え可能な記憶装置である。ここではHDDを例に挙げて説明するが、これに限定されるものではなく、HDDはデータを保存するデータ保存部として機能し、且つデータを書き換え可能な任意の記憶装置であってよい。
具体的には、図17に示す車載システム2において、自ECU10dは、他のECU10e及び一つのHDD30と通信線5により通信可能に接続されている。自ECU10d及び他のECU10eは、上記実施形態のECU10と同様に、設定判断部、アドレス部、対応取得部、特定部を備え、一致アドレスを特定するように構成されうる。自ECU10dは、他のECU10eと共に、HDD30を共用するように構成されている。ここで、複数の候補値は、HDD30に記憶されていてもよい。
これによれば、自ECU10d及び他のECU10eのそれぞれにおいては、複数の候補値を記憶するための記憶領域を備える必要が無くなる。つまり、これら複数の候補値が記憶されていた記憶領域を他の情報を記憶させるために有効に用いることが可能となる。
なお、自ECU10dに通信可能に接続される他のECUは複数であってもよく、自ECU10dがこれら複数の他のECUと共にHDD30を共用するように構成されていてもよい。また、自ECU10d及び他のECU10eは、特定部を備えないように構成されてもよい。
(3i)上記実施形態において、対応情報の例を図6のように示したが、対応情報の態様はこれに限定されるものではない。対応情報は、候補値と該候補値が記憶されている領域を示すアドレスとの対応を示すものであれば、図6に示すテーブル形式に限らず、どのような態様で表されてもよい。また、候補値が記憶されている領域を示すアドレスは、どのような態様で表されてもよい。例えば、候補値が記憶されている領域を示すアドレスは、アドレスを示すデータ列のうち上位の数ビットまたは下位の数ビットを用いて表されうる。
(3j)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
(3k)上述したECU10、CPU12、車載システム1の他、CPU12を機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、データ記憶方法など、種々の形態で本開示を実現することもできる。
1 車載システム、10 ECU、12 CPU、13 ROM、15 コントローラ、16 フラッシュメモリ、19 メモリ。

Claims (7)

  1. 少なくともデータの書込を行う電子制御装置(10)であって、
    当該電子制御装置に対する設定を表す設定値を前記設定値に対する複数の候補値のうちの一つである指定値に設定する要求を表す設定要求、が有るか否か判断する設定判断部(S10)と、
    前記設定要求が有る場合に、前記複数の候補値のうち前記指定値と一致する前記候補値が記憶されている領域を示すアドレスである一致アドレス、を取得するアドレス部(S50)と、
    前記設定値に対して予め割り当てられた記憶領域である設定値用記憶領域に、前記一致アドレスを表すデータを、予め定められた記憶単位領域毎にデータの書込を行う実行部(15)に書き込ませる書込指示部(S90)と、
    を備える電子制御装置。
  2. 請求項1に記載の電子制御装置であって、
    前記一致アドレスを表すデータは、前記指定値を表すデータよりも、データ量が少ない
    電子制御装置。
  3. 請求項1または請求項2に記載の電子制御装置であって、
    前記設定値と、前記複数の候補値と、前記候補値のそれぞれが記憶されている領域を示すアドレスと、の対応関係を表す対応情報、を取得する対応取得部(S30)と、
    前記設定要求が有る場合に、前記対応情報を用いて、前記複数の候補値のうち指定値と一致する候補値が記憶されている領域を示すアドレスを特定する特定部(S50)と、
    を更に備え、
    前記アドレス部は、前記特定部により特定されたアドレスを前記一致アドレスとして取得する
    電子制御装置。
  4. 請求項1から請求項3のいずれか一項に記載の電子制御装置であって、
    前記設定値を取得する要求である取得要求、が有るか否かを判断する取得判断部(S210)と、
    前記取得要求が有る場合に、前記設定値用記憶領域から前記一致アドレスを取得するアドレス取得部(S220)と、
    前記一致アドレスが示す領域に記憶されている前記候補値、を前記取得要求にて取得が要求された設定値として取得する設定値取得部(S230)と、
    を更に備える電子制御装置。
  5. 請求項1から請求項4のいずれか一項に記載の電子制御装置であって、
    前記候補値が記憶されている領域を示すアドレスは、予め定められたアドレスである規定アドレスからの相対値により表される
    電子制御装置。
  6. 請求項1から請求項5のいずれか一項に記載の電子制御装置であって、
    複数の前記設定値が用いられるように構成された
    電子制御装置。
  7. 請求項1から請求項6のいずれか一項に記載の電子制御装置であって、
    前記複数の候補値が当該電子制御装置の外部に設けられた記憶装置に記憶されている
    電子制御装置。
JP2017007617A 2017-01-19 2017-01-19 電子制御装置 Active JP6969103B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017007617A JP6969103B2 (ja) 2017-01-19 2017-01-19 電子制御装置
DE102018200660.1A DE102018200660B4 (de) 2017-01-19 2018-01-16 Elektronisches steuergerät

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017007617A JP6969103B2 (ja) 2017-01-19 2017-01-19 電子制御装置

Publications (2)

Publication Number Publication Date
JP2018116552A true JP2018116552A (ja) 2018-07-26
JP6969103B2 JP6969103B2 (ja) 2021-11-24

Family

ID=62716577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017007617A Active JP6969103B2 (ja) 2017-01-19 2017-01-19 電子制御装置

Country Status (2)

Country Link
JP (1) JP6969103B2 (ja)
DE (1) DE102018200660B4 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004355161A (ja) * 2003-05-28 2004-12-16 Alpine Electronics Inc 環境に応じた仕様データを記憶可能な電子機器および電子機器への仕様データの設定方法
JP2010023726A (ja) * 2008-07-22 2010-02-04 Autonetworks Technologies Ltd 操作装置、操作システム及び車載機器設定装置
US20140297108A1 (en) * 2013-03-29 2014-10-02 Honda Motor Co., Ltd. Control specifications changing system, control specifications data server, and specifications changeable vehicle
JP2016000570A (ja) * 2014-06-11 2016-01-07 本田技研工業株式会社 制御仕様変更システム及び車両

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050204090A1 (en) 2004-03-10 2005-09-15 Eilert Sean S. Hardware stack for blocked nonvolatile memories
JP5520098B2 (ja) 2010-03-24 2014-06-11 スパンション エルエルシー データ処理方法、プログラムおよびシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004355161A (ja) * 2003-05-28 2004-12-16 Alpine Electronics Inc 環境に応じた仕様データを記憶可能な電子機器および電子機器への仕様データの設定方法
JP2010023726A (ja) * 2008-07-22 2010-02-04 Autonetworks Technologies Ltd 操作装置、操作システム及び車載機器設定装置
US20140297108A1 (en) * 2013-03-29 2014-10-02 Honda Motor Co., Ltd. Control specifications changing system, control specifications data server, and specifications changeable vehicle
JP2014198517A (ja) * 2013-03-29 2014-10-23 本田技研工業株式会社 制御仕様変更システム、制御仕様データサーバ及び仕様可変車両
JP2016000570A (ja) * 2014-06-11 2016-01-07 本田技研工業株式会社 制御仕様変更システム及び車両

Also Published As

Publication number Publication date
DE102018200660A1 (de) 2018-07-19
DE102018200660B4 (de) 2023-10-26
JP6969103B2 (ja) 2021-11-24

Similar Documents

Publication Publication Date Title
US6154808A (en) Method and apparatus for controlling data erase operations of a non-volatile memory device
US8589617B2 (en) Write once recording device
US20110231597A1 (en) Data access method, memory controller and memory storage system
US20080126712A1 (en) Semiconductor memory system having a snapshot function
US20070214309A1 (en) Nonvolatile storage device and data writing method thereof
US8185705B2 (en) Information recording medium, information recording medium accessing apparatus and accessing method
US20140181378A1 (en) Control device, control method, and program
US6546517B1 (en) Semiconductor memory
US20150113210A1 (en) Data storage flash memory management method and program
US10324664B2 (en) Memory controller which effectively averages the numbers of erase times between physical blocks with high accuracy
JP6447469B2 (ja) 書換システム
CN113238805A (zh) 一种芯片系统和芯片系统的启动方法
CN108604207A (zh) 用于独立于硬件的存储器存储的系统及方法
JP2008009932A (ja) 半導体記憶装置およびその制御方法
JP6464038B2 (ja) リプログラミングシステム
JP6969103B2 (ja) 電子制御装置
CN109426443B (zh) 存储器控制装置和方法
JP2007280108A (ja) 記憶媒体制御装置、記憶媒体制御方法、プログラム
JP6935694B2 (ja) 電子制御装置
JP2013033338A (ja) メモリシステム
JP2005321843A (ja) ファームウェアの書換え方法
JP2007286813A (ja) メモリ制御装置、メモリ制御方法
JP4826232B2 (ja) 情報処理装置およびブートプログラムの書き換え方法
JP2012146360A (ja) 半導体集積回路及び書込処理方法
KR101728864B1 (ko) 플래시 메모리 관리 방법, 장치 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210928

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211011

R151 Written notification of patent or utility model registration

Ref document number: 6969103

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250