JP6650354B2 - 書き換え装置及び書き換え方法 - Google Patents

書き換え装置及び書き換え方法 Download PDF

Info

Publication number
JP6650354B2
JP6650354B2 JP2016125464A JP2016125464A JP6650354B2 JP 6650354 B2 JP6650354 B2 JP 6650354B2 JP 2016125464 A JP2016125464 A JP 2016125464A JP 2016125464 A JP2016125464 A JP 2016125464A JP 6650354 B2 JP6650354 B2 JP 6650354B2
Authority
JP
Japan
Prior art keywords
recording
information
recording area
block
rewriting
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.)
Active
Application number
JP2016125464A
Other languages
English (en)
Other versions
JP2017228201A (ja
Inventor
賢 羽生
賢 羽生
秀和 足立
秀和 足立
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.)
Tokai Rika Co Ltd
Original Assignee
Tokai Rika Co Ltd
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 Tokai Rika Co Ltd filed Critical Tokai Rika Co Ltd
Priority to JP2016125464A priority Critical patent/JP6650354B2/ja
Publication of JP2017228201A publication Critical patent/JP2017228201A/ja
Application granted granted Critical
Publication of JP6650354B2 publication Critical patent/JP6650354B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Retry When Errors Occur (AREA)
  • Memory System (AREA)

Description

本発明は、書き換え装置及び書き換え方法に関する。
フラッシュメモリに記録させるデータを書き換えている最中に電源の遮断等の強制的な中断が発生した場合、フラッシュメモリには、不要なデータが記録された状態のままとなることがある。不要なデータに基づく制御が実行されないように、フラッシュメモリの書き換え装置は、種々の方法により不要なデータがいずれであるか判別できるように、各種データをフラッシュメモリに記録させている。
特許文献1の書き換え装置は、記録されている制御データに対し、回数データを対応付けて記録させている。そして、当該書き換え装置は、古い回数データに対応する記録ブロックに記録されている制御データを、予め定義された初期データに書き換える。回数データが新しく且つ初期データが記録される記録ブロックに、新たな制御データを書き込むことにより、フラッシュメモリに記録されている不要なデータに基づく制御が実行されることが抑制される。
特開2005−38518号公報
特許文献1の書き換え装置が実行する書き換え方法の場合、初期データに書き換えるたび回数データも増えるため、書き換え回数に制限のあるフラッシュメモリには適さない。
本発明の目的は、フラッシュメモリへの書き換え回数が少ない書き換え装置及び書き換え方法を提供することにある。
上記課題を解決するために、書き換え装置は、第1の記録領域及びこれと対をなす第2の記録領域を有する記録ブロックが複数設けられるフラッシュメモリと、第2の記録領域がブランクであることに基づきこれと対をなす第1の記録領域に記録される第1の情報を有効と判断し、有効と認められる第1の記録領域に記録される第1の情報に基づき制御対象の制御を実行する制御部とを備え、前記制御部は、書き換え情報が入力されたことをトリガとして、第2の記録領域に第2の情報が記録されていない第2の記録領域がブランクである記録ブロックを検索する第1の処理と、前記第1の処理で検索された記録ブロックの第2の記録領域に第2の情報を書き込む第2の処理と、前記第2の処理を実施した記録ブロックとは別の記録ブロックの第1の記録領域及び第2の記録領域をブランクにする第3の処理と、前記第3の処理を実施した記録ブロックの第1の記録領域に対し、前記書き換え情報に対応する第1の情報を書き込む第4の処理とを実施することを要旨とする。
この構成によれば、制御部は、第2の記録領域がブランクであることにより、これと対をなす第1の記録領域に記録される第1の情報を有効と判断する。このため、書き換え回数や有効性及び無効性を書き込む必要があった従来の書き換え装置と比較して、この構成は、有効性を示す情報を書き込まない分、フラッシュメモリへの書き込み回数が少ない。その分、フラッシュメモリの寿命が延びる。
上記構成において、前記制御部は、特定の制御対象の制御に使用される複数の記録ブロックのうち、第2の記録領域がブランクとされている記録ブロックが複数ある場合には、ユーザの感覚に訴えるための報知情報を出力する報知処理を実施することが好ましい。
書き換えの最中に瞬断が発生するなど意図しない要因により、特定の制御対象の制御に使用される複数の記録ブロックのうち、第2の記録領域がブランクとされている記録ブロックが複数存在することがある。この場合、特定の制御対象の制御に有効な第1の情報が複数存在することになるため、制御対象の好適な制御に影響が発生するおそれがある。
そこで、この構成によれば、制御対象の好適な制御に影響が発生するおそれがある場合に、ユーザの感覚に訴えるための報知情報が出力される。これにより、再度の書き込み処理が促され、特定の制御対象の制御に使用される複数の記録ブロックのうち、第2の記録領域がブランクとされている記録ブロックが複数存在する状態が解消されやすい。これにより、制御部は、制御対象の好適な制御を実施することができる。
上記構成において、前記制御部は、複数の記録ブロックのうち一つの記録ブロックに対して前記第3の処理を実施することが好ましい。
この構成によれば、特定の制御対象の制御に使用される複数の記録ブロックのうち、第2の記録領域がブランクとされる記録ブロックが複数個発生する状況が抑制される。これにより、制御部は、制御対象の好適な制御を実施することができる。
上記課題を解決するために、書き換え方法は、第1の記録領域及びこれと対をなす第2の記録領域を有する記録ブロックが複数設けられるフラッシュメモリに対し、書き換え情報が入力されたことをトリガとして、第2の記録領域に第2の情報が記録されていない第2の記録領域がブランクである記録ブロックを検索する第1の処理と、前記第1の処理で検索された記録ブロックの第2の記録領域に第2の情報を書き込む第2の処理と、前記第2の処理を実施した記録ブロックとは別の記録ブロックの第1の記録領域及び第2の記録領域をブランクにする第3の処理と、前記第3の処理を実施した記録ブロックの第1の記録領域に対し、前記書き換え情報に対応する第1の情報を書き込む第4の処理とを実施することを要旨とする。
この方法によれば、従来の方法と比較して、有効性を示す情報を書き込まない分、フラッシュメモリへの書き込み回数が少ない。その分、フラッシュメモリの寿命が延びる。当該フラッシュメモリは、第2の記録領域がブランクであることに基づきこれと対をなす第1の記録領域に記録される第1の情報を有効と判断し、有効と認められる第1の記録領域に記録される第1の情報に基づき制御対象の制御を実行する制御装置に使用することができる。
本発明の書き換え装置及び書き換え方法は、フラッシュメモリへの書き換え回数が少ないという効果を有する。
マイクロコンピュータの概略構成を示すブロック図。 情報を書き換える直前の状態を示すフラッシュメモリのブロック図。 情報を書き換えている最中(図6のステップS2完了時点)の状態を示すフラッシュメモリのブロック図。 情報を書き換えている最中(図6のステップS3完了時点)の状態を示すフラッシュメモリのブロック図。 情報を書き換えた直後(図6のステップS4完了時点)の状態を示すフラッシュメモリのブロック図。 情報を書き換える際のCPUの処理手順を示すフローチャート。
以下、書き換え装置を具体化したマイクロコンピュータの一実施形態について図面に従って説明する。
図1に示すように、マイクロコンピュータ1(以下、マイコン1)は、車載されるものであって、CPU(Central Processing Unit)2、フラッシュメモリ3、複数の内蔵周辺I/O(Input Output)4、接続モジュール5、及びこれら各種構成を相互接続するバス6を備える。
CPU2は、フラッシュメモリ3に記憶されている各種情報から、内蔵周辺I/O4を介して接続される各種車載機器の制御を実行する。また、CPU2は、接続モジュール5を介して接続されるツール9により入力される情報に基づき、フラッシュメモリ3に記憶される情報の書き換えを実行する。
フラッシュメモリ3は、CPU2が各種車載機器の制御に用いる各種制御情報が記録されるものであって、複数の記録ブロックを有する。記録ブロックは、車載機器毎に複数個ずつ設けられている。なお、これ以降の説明を簡易なものとするため、ここでは、ある特定の車載機器の制御に用いる情報が記録される記録ブロック10,20,30,40について説明する。
図2〜5に示すように、記録ブロック10,20,30,40は、それぞれ接頭情報記録領域、制御情報記録領域、無効情報記録領域、及び接尾情報記録領域の4つの記録領域を有する。
接頭情報記録領域11,21,31,41は、自身が所属する記録ブロックに記録されている情報がいずれの車載機器に対応するか否かを示す接頭情報が記録される領域とされている。
制御情報記録領域12,22,32,42は、該当する車載機器の制御に用いられる制御情報が記録される領域とされている。なお、制御情報記録領域12,22,32,42は、第1の記録領域に相当する。
無効情報記録領域13、23,33,43は、自身が所属する記録ブロックに記録される情報が車載機器の制御に無効であることを示す無効情報が記録される領域とされている。なお、無効情報記録領域13、23,33,43は、第2の記録領域に相当する。
接尾情報記録領域14,24,34,44は、自身が所属する記録ブロックに記録されている情報がいずれの車載機器に対応するか否かを示す接尾情報が記録される領域とされている。
なお、ここでは、記録ブロック10,20,30,40に記録される情報は、ある特定の車載機器の制御に用いる情報であることから、各接頭情報記録領域に記録される接頭情報は、各記録ブロック間で共通であり、また各接尾情報記録領域に記録される接尾情報も、各記録ブロック間で共通である。
CPU2は、ある特定の車載機器の制御を実行するとき、記録ブロック10,20,30,40の無効情報記録領域13、23,33,43を参照する。そして、ブランク(いずれの情報も記録されていない)状態の無効情報記録領域が所属する記録ブロックを有効な記録ブロックと判断する。CPU2は、有効な記録ブロックの制御情報記録領域に記録されている制御情報に基づき、ある特定の車載機器の制御を実行する。
例えば、フラッシュメモリ3に記録されている各情報が、図2に示される状態である場合、CPU2は、ブランク状態とされている無効情報記録領域33が含まれる記録ブロック30を有効な記録ブロックと判断する。CPU2は、有効な記録ブロック30の制御情報記録領域32に記録されている制御情報「5566」に基づき、ある特定の車載機器の制御を実行する。
なお、CPU2は、ブランク状態の無効情報記録領域を有する記録ブロックが複数ある場合、又はブランク状態の無効情報記録領域を有する記録ブロックがない場合、その旨(以下エラーであること)示す情報をユーザの感覚に訴えるための報知情報が含まれる報知信号を生成し、これをバス6に出力する。内蔵周辺I/O4のうち、報知用の車載機器(例えば、ナビゲーションディスプレイやメータディスプレイ等の表示装置、室内スピーカやホーン等の音響装置など)に対応する内蔵周辺I/O4は、バス6より受け取った報知信号を車載機器に出力する。これにより、報知用の車載機器が、ユーザに対して、エラーであることを報知する(報知処理)。当該報知処理により、ユーザに対して、該当する車載機器に関する情報を記録させる処理が促される。該当する車載機器に関する情報を記録させる処理が行われれば、該当する車載機器の制御が不安定になることが抑制される。
なお、ブランク状態の無効情報記録領域を有する記録ブロックが複数存在する状況は、例えば、書き換えの最中に瞬断が発生するなど意図しない要因により発生することがある。
次に、CPU2によるフラッシュメモリ3に記憶される情報の書き換えについて説明する。当該情報の書き換えは、ツール9と接続モジュール5とが接続されて、ツール9から制御情報が入力されることをトリガとして実行される。なお、ツール9から制御情報が入力される前の各記録ブロックに記録される情報は、図2に示す状態とし、ツール9から接続モジュール5に対し入力される書き換え情報は、ある特定の車載機器を制御するため制御情報「7788」であるものとする。
図6に示すように、CPU2は、ツール9から接続モジュール5に対して書き換え情報が入力されたことを認識すると、書き換え情報に該当する複数の記録ブロックのうち、有効な記録ブロックを検索する(ステップS1)。図2に示すように、本例では、無効情報記録領域33がブランク状態の記録ブロック30が有効な記録ブロックである。なお、当該ステップS1の処理が第1の処理に相当する。
次に、図6に示すように、CPU2は、有効な記録ブロックに無効情報を書き込み、当該有効な記録ブロックを無効化する(ステップS2)。図3に示すように、本例では、CPU2は、有効な記録ブロックである記録ブロック30におけるブランク状態の無効情報記録領域33に無効情報「55」を書き込むことにより、当該記録ブロック30を無効化する。なお、当該ステップS2の処理が第2の処理に相当する。
次に、図6に示すように、CPU2は、無効化した記録ブロックの次位の記録ブロックに記録されている情報を消去する(ステップS3)。図4に示すように、本例では、無効化された記録ブロック30の次位である記録ブロック40に記録されている情報を消去する。これにより、制御情報記録領域42及び無効情報記録領域43がブランクとなる。この次点で、無効情報記録領域43がブランクとされている記録ブロック40が有効となる。なお、当該ステップS3の処理が第の処理に相当する。
次に、図6に示すように、CPU2は、有効化した記録ブロックに書き換え情報を記録し(ステップS4)、一連の処理を終了する。図5に示すように、本例では、有効化した記録ブロック40の制御情報記録領域42に制御情報「7788」を記録し、一連の処理を終了する。なお、当該ステップS4の処理が第の処理に相当する。
この一連の処理の完了後、CPU2は、有効とされている記録ブロック40に記録されている制御情報「7788」を用いて、該当する車載機器を制御する。
次に、マイコン1の作用及び効果について説明する。
ツール9から接続モジュール5に対して書き換え情報が入力されたことを認識すると、CPU2は、上記ステップS1〜S4の各処理を実行する。これにより、フラッシュメモリ3に記録される情報の書き換えは、記録ブロック30に対して無効情報記録領域33への1回の書き込み、記録ブロック40に対して制御情報記録領域42への1回の書き込みとなる。
従来のように、記録回数や記録ブロックの有効であることを示す情報を記録させる場合、あらたな制御情報が書き込まれる記録ブロック(本例では記録ブロック40が相当する)に対して、書き換え情報及び記録回数や記録ブロックの有効であることを示す情報を記録させる必要があることから、少なくとも2回の書き込みが必要となる。
この点を鑑みると、本例のマイコン1は、従来よりもフラッシュメモリ3への書き換え回数が少ない。したがって、書き換えの回数が少なくなる分、フラッシュメモリ3の寿命が延びる。
CPU2は、特定の制御対象の制御に使用される複数の記録ブロック10,20,30,40のうち、一つの記録ブロックに対してステップS3の処理を実施する。これにより、第2の記録領域がブランクとされる記録ブロックが複数個発生する状況が抑制される。このため、CPU2は、特定の制御対象に対して好適な制御を実施することができる。
なお、上記実施形態は、以下のように変更してもよい。
・上記実施形態において、CPU2は、特定の制御対象の制御に使用される複数の記録ブロックのうち、第2の記録領域がブランクとされている記録ブロックが複数ある場合に、報知処理を実施したが、必ずしも実施しなくてもよい。
なお、例えば、複数の電子キーに対して、車載機器の使用を許可する場合など、制御対象によっては、第2の記録領域がブランクとされている記録ブロックが複数ある方が好ましい場合もある。
・上記実施形態において、CPU2は、複数の記録ブロックのうち一つの記録ブロックに対してステップS3の処理を実施したが、複数の記録ブロックに対して実施してもよい。
・上記実施形態において、CPU2は、ステップS2の処理を実施した記録ブロックの次位の記録ブロックに対してステップS3の処理を実施したが、当該ステップS3の処理対象記録ブロックは、ステップS2の処理対象記録ブロックの次位に限るものではない。
・上記実施形態では、ある特定の制御対象の制御情報が書き換えられる場合について説明したため、接頭情報記録領域及び接尾情報記録領域は書き換えられなかったが、これら各記録領域は、制御情報記録領域と同様に書き換えられてもよい。
・上記実施形態において、無効情報記録領域には、第2の情報として、無効情報「55」が記録されたが、ここに記録される情報は、統一されていなくてもよい。すなわち無効情報として書き換えた回数を記録して、当該回数をマイコン1に不具合が発生した場合の検討材料にしたり、フラッシュメモリ3の寿命判断に用いてもよい。このように、第2の情報が記録回数を示唆する情報であれば、当該情報を特定の制御対象以外の他の制御対象に利用することができる。
なお、書き換え最中の瞬断等により、正確な無効情報「55」が記録されず、不正確な無効情報「XX」が記録される場合があるが、このように記録されても、その後のCPU2における制御対象への制御には影響がない。これは、無効情報記録領域に情報が記録されているか否かによりCPU2がその無効情報記録領域が所属する記録ブロックの有効性を判断するためである。したがって、本例の書き換え方法を用いるマイコン1は、書き換え最中の瞬断にも強い。
・上記実施形態において、フラッシュメモリ3は、マイコン1に内蔵されていたが、取り外しされるタイプであってもよい。
・上記実施形態において、マイコン1の適用先は、車両に限らない。
次に、上記実施形態及び上記別例より想起される技術的思想について記載する。
(イ)第2の記録領域に記録される第2の情報は記録回数とし、当該記録回数を特定の制御対象以外の他の制御対象に利用すること。
1…マイクロコンピュータ(マイコン、書き換え装置)、2…CPU(制御部)、3…フラッシュメモリ、4…内蔵周辺I/O、5…接続モジュール、6…バス、9…ツール、10,20,30,40…記録ブロック、11,21,31,41…接頭情報記録領域、12,22,32,42…制御情報記録領域(第1の記録領域)、13,23,33,43…無効情報記録領域(第2の記録領域)、14,24,34,44…接尾情報記録領域。

Claims (4)

  1. 第1の記録領域及びこれと対をなす第2の記録領域を有する記録ブロックが複数設けられるフラッシュメモリと、
    第2の記録領域がブランクであることに基づきこれと対をなす第1の記録領域に記録される第1の情報を有効と判断し、有効と認められる第1の記録領域に記録される第1の情報に基づき制御対象の制御を実行する制御部とを備え、
    前記制御部は、書き換え情報が入力されたことをトリガとして、第2の記録領域に第2の情報が記録されていない第2の記録領域がブランクである記録ブロックを検索する第1の処理と、
    前記第1の処理で検索された記録ブロックの第2の記録領域に第2の情報を書き込む第2の処理と、
    前記第2の処理を実施した記録ブロックとは別の記録ブロックの第1の記録領域及び第2の記録領域をブランクにする第3の処理と、
    前記第3の処理を実施した記録ブロックの第1の記録領域に対し、前記書き換え情報に対応する第1の情報を書き込む第4の処理とを実施する書き換え装置。
  2. 請求項1に記載の書き換え装置において、
    前記制御部は、特定の制御対象の制御に使用される複数の記録ブロックのうち、第2の記録領域がブランクとされている記録ブロックが複数ある場合には、ユーザの感覚に訴えるための報知情報を出力する報知処理を実施する書き換え装置。
  3. 請求項1又は2に記載の書き換え装置において、
    前記制御部は、複数の記録ブロックのうち一つの記録ブロックに対して前記第3の処理を実施する書き換え装置。
  4. 第1の記録領域及びこれと対をなす第2の記録領域を有する記録ブロックが複数設けられるフラッシュメモリに対し、
    書き換え情報が入力されたことをトリガとして、第2の記録領域に第2の情報が記録されていない第2の記録領域がブランクである記録ブロックを検索する第1の処理と、
    前記第1の処理で検索された記録ブロックの第2の記録領域に第2の情報を書き込む第2の処理と、
    前記第2の処理を実施した記録ブロックとは別の記録ブロックの第1の記録領域及び第2の記録領域をブランクにする第3の処理と、
    前記第3の処理を実施した記録ブロックの第1の記録領域に対し、前記書き換え情報に対応する第1の情報を書き込む第4の処理とを実施する書き換え方法。
JP2016125464A 2016-06-24 2016-06-24 書き換え装置及び書き換え方法 Active JP6650354B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016125464A JP6650354B2 (ja) 2016-06-24 2016-06-24 書き換え装置及び書き換え方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016125464A JP6650354B2 (ja) 2016-06-24 2016-06-24 書き換え装置及び書き換え方法

Publications (2)

Publication Number Publication Date
JP2017228201A JP2017228201A (ja) 2017-12-28
JP6650354B2 true JP6650354B2 (ja) 2020-02-19

Family

ID=60889332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016125464A Active JP6650354B2 (ja) 2016-06-24 2016-06-24 書き換え装置及び書き換え方法

Country Status (1)

Country Link
JP (1) JP6650354B2 (ja)

Also Published As

Publication number Publication date
JP2017228201A (ja) 2017-12-28

Similar Documents

Publication Publication Date Title
CN104317622B (zh) 一种嵌入式设备程序烧录处理方法和系统
US8015344B2 (en) Apparatus and method for processing data of flash memory
US7908469B2 (en) Method for executing power on self test on a computer system and updating SMBIOS information partially
JP2005209188A (ja) フラッシュメモリのデータ復旧装置及び方法
WO2017157158A1 (zh) 写数据的方法及装置、计算机存储介质
TWI594188B (zh) 系統單晶片及其開機方法
JP5695112B2 (ja) データ記憶装置、データの記憶方法および車載用制御装置
JP2006172206A5 (ja)
US20100153622A1 (en) Data Access Controller and Data Accessing Method
JP6650354B2 (ja) 書き換え装置及び書き換え方法
US9507665B2 (en) Computing device and method for accessing BIOS using middleware controller of the computing device
JP2017097576A (ja) 書換システム
JP5323030B2 (ja) メモリ装置及びメモリ制御方法
JP6301820B2 (ja) リプログラミングシステム
US11307795B2 (en) Electronic processing devices and memory control methods thereof
JP6349827B2 (ja) 情報処理装置、初期化方法、及び、プログラム
JP2009223435A (ja) データ記憶方法及び装置、並びにプログラム
JP5254879B2 (ja) データ書込装置、データ書込方法及びプログラム
EP3502902B1 (en) Method and apparatus for managing a non-volatile random-access memory using a monitor
JP2018156230A (ja) 情報処理装置
JP2011039825A (ja) ファームウェア更新方法及びファームウェア更新装置
JP5332800B2 (ja) 記憶装置
JP2017097404A (ja) マイクロコンピュータ
CN115203704A (zh) 一种安全策略加载方法、装置、电子设备及可读存储介质
WO2019019800A1 (zh) 一种硬盘数据访问方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190814

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190827

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191025

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: 20200107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200120

R150 Certificate of patent or registration of utility model

Ref document number: 6650354

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150