JP4480815B2 - メモリ書き換え方法及びコンピュータシステム - Google Patents

メモリ書き換え方法及びコンピュータシステム Download PDF

Info

Publication number
JP4480815B2
JP4480815B2 JP24797799A JP24797799A JP4480815B2 JP 4480815 B2 JP4480815 B2 JP 4480815B2 JP 24797799 A JP24797799 A JP 24797799A JP 24797799 A JP24797799 A JP 24797799A JP 4480815 B2 JP4480815 B2 JP 4480815B2
Authority
JP
Japan
Prior art keywords
memory
routine
area
rewriting
data
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.)
Expired - Fee Related
Application number
JP24797799A
Other languages
English (en)
Other versions
JP2000090011A (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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of JP2000090011A publication Critical patent/JP2000090011A/ja
Application granted granted Critical
Publication of JP4480815B2 publication Critical patent/JP4480815B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators

Description

【0001】
【発明の属する技術分野】
本発明は,メモリ書き換え方法及びコンピュータシステムにかかり,特に,自動車内の駆動シーケンスを制御する制御装置等におけるメモリ書き換え方法及びコンピュータシステムに関する。
【0002】
【従来の技術】
欧州特許公開公報EP0664387B1には,自動車の制御装置に格納された制御プログラムを変更する方法が開示されている。この文献に示された方法においては,プログラムを変更するためにプログラム識別子が読み出されて記憶される。このプログラム識別子は,基準プログラム識別子として格納される。それ以前にプログラム及びプログラム識別子のために使用されたメモリ領域は,消去された後,新しくプログラミングされる。新しくプログラミングするために,記憶されている基準プログラム識別子が新しいプログラム識別子として書き込まれて,次に新しいプログラムが外部から書き込まれる。基準プログラム識別子を生成することによって,新しいプログラムの書き込み中に車両電源が変動したり,あるいは車両電源が落ちてもこの情報が失われることはない。
【0003】
新しいプログラムのロード中に車両電源が変動したり,あるいは車両電源が落ちたりしたときには,他の制御装置あるいはプログラミング装置を介して,外部から回復すべき領域に新たに書き込みを行わなければならない。同様に,バックアップコピーをそのまま保存しなければならない。車両電源が変動したり,あるいは車両電源が落ちた場合には,プログラミングプロセスを完全に繰り返すことが必要になるからである。
【0004】
また,ドイツ特許公開公報DE4332499A1には,自動車制御装置内の,電気的に消去可能な不揮発性メモリを完全に新しくプログラミングする方法が知られている。この文献に示されたプログラミングプロセスは,再度の書き込みのできないROMを使用せずに行われる。すなわち,消去可能な不揮発メモリが,少なくとも2つの消去可能かつプログラミング可能な領域に分割され,そのそれぞれの領域にプログラム(プログラミングモジュール)が書き込まれる。
【0005】
メモリを2つの領域に分割することによって,プログラミングプロセスの終了前に自動車とデータ末端装置との間で電圧がなくなった場合に,このプログラミングプロセスを完全に繰り返すことが可能になる。プログラミング可能な不揮発性メモリ内の2つのメモリ領域の各々に,それぞれプログラムが存在しているからである。従って,2つのプログラムのうち一方が消えた場合でも,他方のメモリ領域には完全なプログラムが存在しているからである。
【0006】
ところで,上記公開公報には,完全な新規プログラミングが開示されているだけであって,プログラム部分やプログラムルーチンを消去せずに,プログラムを2分割することや,他のプログラム部分やプログラムルーチンを追加することは示されていない。従って,プログラムの書き換えの際には,バックアップコピーは保存しておく必要がある。電圧がなくなるなどの障害の後には完全な新規プログラミングが必要となるからである。この新規プログラミングは,自動的には遂行されず,外部から行わなければならない。
【0007】
また,例えばメモリプロセスまたはプログラミングプロセスにエラーがあった場合に,データエラーを検出する様々な方法が知られている。そのためにはデータやプログラムをエラーコードやエラー検出コードで表さなければならず,その中には本来の情報の他にエラー検出のための冗長な情報も含まれている。この種の情報は,例えばパリティビットであって,それは縦あるいは横合計形成のようなチェック合計形成(イーブン パリティチェック)によるエラー検出を可能にする。
【0008】
他の線形及び/またはサイクリックに実行可能な検査方法としては,ハミングコード,BCHコード(Bose,Chandhuri,Hocquengham),アブラムソンコード等が知られている。これらの検査方法にはサイクリック冗長性チェック(CRC)も含められる。このCRCにおいては,データやプログラム,すなわち,消去,コピー,読み込むべき情報から,CRC方法に従ってブロック的に試験ビットが形成されて,この情報と共に処理される。
【0009】
上述の検査方法においては,エラー検出の他にエラー補正も行われるが,それぞれ検出された個別エラーのみに関するものである。それぞれの検査文字は所定の法則性に従って形成しなければならないので,この法則性を模倣する個々のエラーは認識されない。従って,この方法によるエラー検出,及びそれに伴う補正は完全には保証されない。また,認識できないエラーしか発生しない確率は極めて低く,それによって通常は必ずしもすべてのエラーが簡単に認識されるわけではなく,従って必ずしもすべてのエラーが補正されるわけではない。
【0010】
さらに,例えばプログラミングプロセスの間に電圧が中断した場合に発生するような,比較的大きなデータ領域やプログラム領域が失われた場合には,エラー検出は実行されるが,エラー補正はもはや実行されないことがある。この検査方法における補正は,個別エラーを補償することしかできないからである。
【0011】
【発明が解決しようとする課題】
以上説明したように,従来のメモリ書き換え方法においては,以下の問題点があった。まず,メモリ書き換え途中に何らかのエラーが発生した場合には,回復すべき領域やメモリ内容全体を外部から新たに書き込まなければならないという第1の問題点があった。
【0012】
また,メモリ書き換え途中に何らかの障害が発生した場合に不完全な領域の自動的な再形成は行われず,これも外部から完全なプログラミングによって実行しなければならないという第2の問題点があった。
【0013】
さらにまた,エラー検査の方法において検出されないエラーは,該当するメモリ領域内に他のエラーが検出された場合でも補正されない。同様に,完全な新規プログラミングなしでメモリ領域全体を補正することも行われないという第3の問題点があった。
【0014】
本発明は,従来のメモリ制御が有する上記問題点に鑑みてなされたものであり,本発明の目的は,任意の時点で任意の障害や中断に対しても十分に対応でき,さらに所定のメモリ領域について予め定められた初期状況を自発的に再構成することの可能な,新規かつ改良されたメモリ書き換え方法及びコンピュータシステムを提供することである。
【0015】
【課題を解決するための手段】
上記課題を解決するため,本発明の第1の観点によれば,請求項1に記載のように,第1のメモリと第2のメモリとを含む処理装置において,少なくとも前記第1のメモリは複数のメモリ領域に区画され,前記第1のメモリの所定のメモリ領域に格納されたデータ及び/またはプログラムを書き換えるメモリ書き換え方法において,前記データ及び/またはプログラムを,前記第1のメモリの所定のメモリ領域及び/または前記第2のメモリにバックアップコピーした後に,前記データ及び/またはプログラムを書き換えることを特徴とする,メモリ書き換え方法が提供される。
【0016】
前記プログラムは,請求項2に記載のように,少なくとも第1のプログラムと第2のプログラムとを含み,前記第1のプログラムは,前記第2のプログラムを呼び出すことを特徴とする。
【0017】
少なくとも第1と第2のプログラム(ルーチン)を使用することによって,元のデータ及び/またはプログラムを後から補うことが可能になる。これは,メモリ領域を定められたように分割することによって保証され,データ及び/またはプログラム(ルーチン)の消去及び/またはコピー及び/または書込み前に,処理装置内でそのデータ及び/またはプログラム(ルーチン)からバックアップコピーをオリジナル領域としての他のメモリ領域内に形成することが可能になる。
【0018】
本発明に基づく方法は,付加的なプログラムルーチン(付加ルーチン)及び/または保護すべきデータあるいは回復すべきメモリ領域は,エラーの場合に自動的に保護され,かつ/または回復され,かつ/または最初に始動されたプロセスが新しく初期化されるように構成されている。
【0019】
また,前記データのバックアップコピーは,請求項3に記載のように,前記データ及び/またはプログラムの書き換えの後に,再びオリジナルとして書き込まれることを特徴とする。
【0020】
また,前記プログラムのバックアップコピーは,請求項4に記載のように,前記データ及び/またはプログラムの書き換え時にエラーが発生してないと判断された場合に,消去されることを特徴とする。
【0021】
保護すべきデータ及び/またはプログラム(ルーチン)のバックアップコピーは,オリジナルの消去後直ちに書き戻され,あるいはバックアップコピーは,プログラムを制御するルーチンの場合には,プログラミングプロセスが成功した後に消去され,それによって両方の場合にこのパックアップコピーをそのまま保存する必要がなくなる。データ及び/またはプログラム(ルーチン)のためのバックアップ領域は,通常の場合には安全上重要でない他のデータ及び/またはプログラム(ルーチン)を含んでいる場合があり,安全のために消去される。従って,必要以上に大きいメモリスペースを確保しないで済む。
【0022】
選択的に第1と第2のルーチンを同時に,かつ/または別々に実行することができる。制御装置メーカーによる車両のための制御装置のプログラミングの場合には,これは,第2のルーチン,すなわち付加ルーチンとして例えば顧客固有のプログラム(ルーチン),従って車両メーカーのプログラムが使用される場合に,プログラミングプロセスにおいて,個別に車両タイプ,使用場所及び使用条件などに適合された固有の顧客要請を考慮できることを意味している。さらに,任意の時点で付加ルーチンの結合を行うことができる。
【0023】
前記データ及び/またはプログラムの書き換え時にエラーが発生したと判断された場合には,請求項5に記載のように,前記データ及び/またはプログラムが自動的に再形成されることを特徴とする,
【0024】
前記プログラミング処理の際にエラーが発生した場合には,請求項6に記載のように,前記メモリ書き換え時に始動されたプロセスが,前記第1のメモリ内で初期化されることを特徴とする,
【0025】
それによってまず,メモリ領域に関して予め定められた初期状態が外部の介入なしで自動的に再形成され,さらにメモリ需要を増大させることのない確実な方法が得られ,それが極めてフレキシブルに適合されたプログラミングを可能にする。
【0026】
また,前記第1のメモリは,請求項7に記載のように,不揮発性メモリであり,少なくとも前記第1のプログラムが前記第1のメモリに格納されることを特徴とする。
【0027】
また,前記第2のメモリは,請求項8に記載のように,バッファメモリとして機能し,前記データ及び/またはプログラムが一時的に格納されることを特徴とする。
【0028】
また,前記第1のメモリ及び/または前記第2のメモリは,請求項9に記載のように,少なくとも1つのオリジナル領域及び/またはバックアップ領域及び/またはバッファメモリ領域に区画されることを特徴とする。
【0029】
また,データ及び/またはプログラムを書き換えるためのプロセスの制御は,請求項10に記載のように,前記第1のメモリ及び/または前記第2のメモリに読み込まれたプログラム及び/またはデータによって実行されることを特徴とする。
【0030】
また,請求項11に記載の発明は,前記バックアップ領域に他のデータ及び/またはプログラムが格納されて,前記プログラム及び/または前記データを書き換えにより保護するために,前記バックアップ領域が消去されることを特徴とする。
【0031】
また,前記処理装置は,請求項12に記載のように,不揮発性で書き換えのできない第3のメモリをさらに含み,データ及び/またはプログラムの書き換えのためのプロセスを始動させる前記第1のプログラムの少なくとも一部が,前記第3のメモリ及び/または前記第1のメモリの書き換えのできないメモリ領域に格納されることを特徴とする。
【0032】
また,上記課題を解決するため,本発明の第2の観点によれば,請求項13に記載のように,第1のメモリと第2のメモリとを含む処理装置において,少なくとも第1のメモリは複数のメモリ領域に区画され,前記第1のメモリの所定の領域に格納されたデータ及び/またはプログラムを書き換えるためのコンピュータシステムにおいて,前記データ及び/またはプログラムを,前記第1のメモリの所定のメモリ領域及び/または前記第2のメモリにバックアップコピーした後に,前記データ及び/またはプログラムを書き換えることを特徴とする,コンピュータシステムが提供される。
【0033】
また,前記第1のメモリは,請求項14に記載のように,不揮発性メモリであることを特徴とする。
【0034】
また,前記第2のメモリは,請求項15に記載のように,バッファメモリとして機能し,前記データ及びまたはプログラムが一時的に格納されることを特徴とする。
【0035】
前記第1のメモリ及び/または前記第2のメモリは,請求項16に記載のように,少なくとも1つのオリジナル領域及び/またはバックアップ領域及び/またはバッファメモリ領域に区画されることを特徴とする。
【0036】
なお,本明細書または図面において,プログラムとプログラムルーチンとルーチンとは,実質的に同様の意味として用いるものとする。また,プログラミングとは,メモリの書き換え動作を行うこと,より具体的には,メモリ内容の消去,コピー,読み込み等の一連の動作をいうものとする。
【0037】
【発明の実施の形態】
以下に添付図面を参照しながら,本発明にかかるメモリ書き換え方法及びコンピュータシステムの好適な実施の形態について詳細に説明する。なお,本明細書及び図面において,実質的に同一の機能構成を有する構成要素については,同一の符号を付することにより重複説明を省略する。
【0038】
(第1の実施の形態)
本実施の形態にかかるメモリ書き換え方法が適用されるコンピュータシステムを図1〜図4を参照しながら説明する。
コンピュータシステムは,図1に示したように,処理装置100と,処理装置100とインターフェイス107により接続されて処理装置100とデータやプログラムの授受を行うプログラミング装置108とを含んでいる。インターフェイス108は,シリアルインターフェイスあるいはパラレルインターフェイスのいずれを用いることもできる。なお,図示したシステムは一例にすぎず,他の入出力ユニットにより接続される他のCPUやメモリを備えるようにしてもよい。
【0039】
処理装置100は,メモリとして,フラッシュメモリ104と,RAM105とを含んでいる。さらに,選択的なメモリとして,ROM106とを含むことができる。これらのメモリ104,105,106は,バスシステム103を介して,CPU101及び入出力ユニット102に接続されている。
【0040】
フラッシュメモリ104は,書き換え可能な不揮発性メモリの一例であり,メモリ内容のブロック単位の消去と書き込みが可能である。なお,書き換え可能な不揮発性メモリには,紫外線により記録内容の消去を行うEPROMや,電気的に記録内容の消去を行うEEPROMがある。
【0041】
RAM105は,書き換え可能な揮発性メモリの一例であり,補助的なメモリとして,特にデータやプログラムの一時的な記憶に用いられる。このRAM105からも同様にプログラムを開始することができる。
【0042】
ROM106は,書き換えのできない不揮発性メモリの一例であり,特別の安全性を得るために,選択的に設けることができる。すなわち,データ/プログラムの書き換え時にエラーが発生した場合に備えて,データロードプログラム等を格納するためにこのROM106を用いることができる。
【0043】
上述のフラッシュメモリ104,RAM105,ROM106のメモリ領域の詳細について,図2を参照しながら説明する。
フラッシュメモリ104のメモリ領域200は,図2に示したように,データのバックアップ領域であるメモリ領域SB201と,第2のプログラムたる付加ルーチン(Zusatzroutinen)ZRのバックアップ領域であるメモリ領域SB202と,データのオリジナル領域であるメモリ領域S203と,付加ルーチンZRのオリジナル領域であるメモリ領域SB204と,に区画されている。
【0044】
RAM105のメモリ領域206には,RAMメモリ領域SB207が区画されている。このRAMメモリ領域SB207の一部には,処理中に生じるフラッシュメモリ領域SB201〜SB204のコピーが一時的に格納される。
【0045】
ROM106のメモリ領域208には,ROMメモリ領域209が区画されている。このROMメモリ領域SB209には,システムと処理を始動させる第1のプログラムたるブートプログラム(ROM内ルーチンRR)が格納されている。
【0046】
上記コンピュータシステムを用いた本実施の形態にかかるメモリ書き換え方法を,図3を参照しながら説明する。
本実施の形態における,ROM106を使用して付加ルーチンZRを保護する方法について,図3に示した流れ図を参照しながら説明する。
【0047】
プログラミングは,図3に示したように,システム始動または新規プログラミング(ステップ300)により,あるいはプログラミング要請(ステップ301)により開始する。プログラミング要請(ステップ301)より開始する場合には,このプログラミング要請によってROM内ルーチンRRが実行される(ステップ303)。
【0048】
ROM内ルーチンRRは,フラッシュメモリ領域SB204からRAMメモリ領域SB207へ,付加ルーチンZRのコピーを行わせる(ステップ305)。この付加ルーチンZRは,例えば,フラッシュメモリ104のプログラミングに用いられる。
【0049】
次いで,付加ルーチンZRは,RAMメモリ領域SB207内で実行されて(ステップ305),独立して,あるいはROM内ルーチンRRを用いて,フラッシュメモリ104の書き換え,すなわち,他のメモリ領域のコピー,消去,あるいは,プログラミングプロセスを制御する。付加ルーチンZRとROMルーチンRRは,選択的に同時に実行することもできる。また,フラッシュメモリ104の他のメモリ領域のコピー,消去,プログラミングプロセスの制御は,ROM内ルーチンRRが独立して行うこともできる。
【0050】
プログラミングするために,付加ルーチンZRのバックアップ領域たるフラッシュメモリ領域SB202内のプログラムルーチンがまず消去されて(ステップ306),付加ルーチンZRのバックアップコピーが代わりに格納される(ステップ307)。すなわち,フラッシュメモリ領域SB204の付加ルーチンZRが,バックアップ領域たるフラッシュメモリ領域SB202にコピーされる。
【0051】
次いで,フラッシュメモリ領域204が消去される。そして,外部から,例えばインターフェイス107を介してプログラミング装置108によって,新しいバージョンの付加ルーチンZRによるプログラミングを行うことができる(ステップ308)。その場合に,選択的に,フラッシュメモリの他のメモリ領域,例えばプログラムルーチンのメモリ領域を消去したりプログラミングすることも可能である。
【0052】
次いで,付加ルーチンZRをコピーした際(ステップ307)にフラッシュメモリ領域SB204でエラーが発生したかが検査される(ステップ309)。この検査は,例えば従来技術で説明したサイクリック冗長性チェック等により行われる。
【0053】
ステップ309における検査の結果,フラッシュメモリ領域SB204でエラーが発生していない場合には,プログラム完了後にフラッシュメモリ領域SB202内の付加ルーチンZRが消去される(ステップ310)。次いで,最初にこのフラッシュメモリ領域SB202内に存在していたデータやルーチンが装置外部等から格納される(ステップ311)。
【0054】
ステップ309における判断の結果,フラッシュメモリ領域SB204でエラーが発生している場合,すなわち何らかの理由でメモリ書き換えが中断した後に,フラッシュメモリ領域SB204内に有効なデータやプログラムルーチンが存在していない場合には,システム始動あるいは新規プログラミングする際(ステップ300)に,ROM内ルーチンRRによって認識される(ステップ302)。
【0055】
ROM内ルーチンRRは,フラッシュメモリ領域SB202の付加ルーチンZRのバックアップコピーをメモリ領域SB207のRAMへコピーさせる(ステップ304)。ここでも選択的に,付加ルーチンZRをROMルーチンRRと同時に実行することができる。そのためには最初にあったのと同じメモリ領域SB204のプログラミングを外部から行わなければならない。
【0056】
プログラミングの完了後に,フラッシュメモリ領域SB202内の付加ルーチンZRが同様に消去されて(ステップ310),もとからあったデータ及び/またはプログラムルーチンによって,あるいはこれらのデータ及び/またはプログラムルーチンの変更された新しいバージョンによって外から代えられる(ステップ311)。これは,付加ルーチンZRのバックアップコピーがそのまま格納されるのではなく,プログラミングに成功した後に消去されて,変更された,あるいはこのメモリ領域にあるべきデータ及び/またはプログラムによって上書きできることを意味している。従って,ステップ311で選択的に,フラッシュメモリの他の部分も消去及び/またはプログラミングすることができる。このことは,ステップ308についても同様である。
【0057】
(第2の実施の形態)
本実施の形態にかかるメモリ書き換え方法を,図4を参照しながら説明する。なお,本実施の形態においても,上述した第1の実施の形態と同様のコンピュータシステムが用いられる。上記第1の実施の形態はプログラム(付加ルーチンZR)の保護に関するものであったが,本実施の形態は,データの保護に関するものである。ここでいう保護すべきデータとは,例えば,制御装置の全寿命の間失われてはならないデータである。
【0058】
プログラミングは,図4に示したように,システム始動または新規プログラミング(ステップ400)により,あるいはプログラミング要請(ステップ401)により開始する。プログラミング要請(ステップ401)によりデータSDを保護しなければならない場合には,プログラミング要請(ステップ401)によってそれに応じたROM内ルーチンRRが実行される(ステップ403)。
【0059】
ROM内ルーチンRRは,フラッシュメモリ領域SB204からRAMメモリ領域SB207へ,付加ルーチンZRのコピーを行わせる(ステップ405)。この付加ルーチンZRは,例えば,フラッシュメモリ104のプログラミングに用いられる。
【0060】
次いで,付加ルーチンZRは,RAMメモリ領域SB207内で実行されて(ステップ405),独立して,あるいはROM内ルーチンRRを用いて,フラッシュメモリ104の書き換え,すなわち,他のメモリ領域のコピー,消去,あるいは,プログラミングプロセスを制御する。付加ルーチンZRとROMルーチンRRは,選択的に同時に実行することができる。また,フラッシュメモリ104の他のメモリ領域のコピー,消去,プログラミングプロセスを制御は,ROM内ルーチンが独立して行うこともできる。
【0061】
データを有するデータ領域あるいはメモリ領域をプログラミングの際に消去しなければならない場合には,このデータSDがメモリ領域SB201で確保される(ステップ406)。次いで,データSBのメモリ領域S203が消去され,あるいはプログラムを変更される(ステップ407)。次いで,保護すべきデータSDがメモリ領域SB201から再びデータのオリジナル領域であるメモリ領域SB203へコピーされる(ステップ408)。このプロセスの制御は,RAMメモリ領域SB207へコピーすべきメモリ領域SB204の付加ルーチンZR及び/またはROM内ルーチンRRによって行われる。
【0062】
次いで,第1の実施の形態と同様に,データの保護の正確さが検査される(ステップ309)。この検査は,上述の従来技術と同様の手法が用いられる。
【0063】
ステップ309における判断の結果,フラッシュメモリ領域SB203でエラーが発生している場合,すなわち,何らかの理由でメモリ書き換えが中断した後に,フラッシュメモリ領域SB203内に有効なデータが存在していない場合には,システムの始動あるいは新規プログラミングする際(ステップ400)に,ROM内ルーチンRRによって認識される(ステップ402)。
【0064】
ROM内ルーチンRR及び/または付加ルーチンZRは,フラッシュメモリ領域SB201の保護すべきデータSDのバックアップコピーをオリジナル領域であるメモリ領域SB203へコピーさせる。そのために,付加ルーチンZRがフラッシュメモリSB204からRAMSB207へロードされる。(ステップ404)。そして,ステップ407,408,309,410におけるプロセスの制御は,ROM内ルーチンRR及び/または付加ルーチンZRによって行われる。
【0065】
ステップ309における判断の結果,保護すべきデータSDを保護する際にエラーが発生しなかった場合には,データ領域SB201を例えば外部から入力手段108によって新しくプログラミングすることができる(ステップ410)。この場合,内部バスを使用することも,状況条件により可能である。
【0066】
なお,上記ステップ407あるいは410において,選択的にフラッシュメモリの他の部分を消去及び/またはプログラミングすることも可能である。
【0067】
(第3の実施の形態)
本実施の形態にかかるメモリ書き換え方法が適用されるコンピュータシステムは,処理装置100と,処理装置100とインターフェイス107により接続されるプログラミング装置108とを含んでいる点で,上記実施の形態と同様である。また,処理装置100は,メモリとして,書き換え可能な読み出し専用メモリたるフラッシュメモリ104と,RAM105とを含んでいる。なお,ROMを含んでいない点で上記実施の形態と異なる。
【0068】
ROMを使用しないプログラミング方法は,ブートブロックの存在を前提としている。このブートブロックは,CPU100内に設けるか,あるいはフラッシュメモリ104の,利用者にはアクセスできない領域,または書き込み保護された領域内に設けられる。
【0069】
上記実施の形態においてROM106に格納されていたROM内ルーチンRRは,本実施の形態においては,フラッシュルーチンRFとブートブロック内ルーチンRBとに分割されて,フラッシュメモリ104及びRAM105に格納されている。このフラッシュルーチンRF及びブートブロック内ルーチンRBについては後述する。
【0070】
上述のフラッシュメモリ104,RAM105のメモリ領域の詳細について,図5を参照しながら説明する。
フラッシュメモリ104のメモリ領域200は,図5に示したように,データのバックアップ領域であるメモリ領域SB201aと,第2のプログラムたる付加ルーチンZRのバックアップ領域であるメモリ領域SB202aと,データのオリジナル領域であるメモリ領域S203aと,付加ルーチンZRのオリジナル領域であるメモリ領域SB204aとに区画されている点で上記実施の形態と同様である。
【0071】
さらに,フラッシュメモリ104のメモリ領域200はメモリ領域205に区画されており,この点で上記実施の形態と異なる。このフラッシュメモリ領域205aには,上述のブートブロック内ルーチンRFが格納されている。
【0072】
フラッシュメモリ領域201aには,データのバックアップ領域が設けられる。メモリ領域SB202aには,ルーチンのバックアップ領域が設けられ,ROM内ルーチンRRの一部(フラッシュメモリ内ルーチンRF)及び付加ルーチンZRが格納されている。メモリ領域SB203aは,本実施の形態においてはデータのためのオリジナル領域である。メモリ領域SB204aは,同様にオリジナル領域であるが,本実施の形態ではルーチンのためのものである。ROM内ルーチンRRの残りの部分(ブートブロックルーチンRB)は,メモリブロックSB205のブートブロック内に格納されている。
【0073】
RAM105のメモリ領域206には,メモリ領域SB207aが区画されている。このRAMメモリ領域SB207aには,上述のフラッシュルーチンRFあるいは付加ルーチンZRが格納される。
【0074】
本実施の形態では,RAMメモリ領域SB207aは,図2に示したRAMメモリ領域SB207とは大きさや区画が異なっている。このことは,フラッシュメモリメモリ領域SB201a〜204aについても同様であり,図2に記載されている領域とは大きさと区画位置を異ならせることができる。
【0075】
上記コンピュータシステムを用いた本実施の形態にかかるメモリ書き換え方法を,図6を参照しながら説明する。本実施の形態は,付加ルーチンZRを保護する方法である。
【0076】
プログラミングは,図6に示したように,プログラミング要請(ステップ601)によって,フラッシュ内ルーチンRFが実行される(ステップ606)。フラッシュ内ルーチンRFは,付加ルーチンZR及び/またはフラッシュ内ルーチンRF,あるいはフラッシュ内ルーチンRFの一部を,フラッシュメモリ領域204aからRAMメモリ領域207aへコピーさせる(ステップ607)。このとき,フラッシュ内ルーチンRFは,フラッシュ内ルーチンRF自身をコピーしなければならない。このプロセスを以下に説明する。
【0077】
まず,第1の方法は,フラッシュ内ルーチンRFがRAM105へ完全には転送されず,一部のみを転送するものである。このとき,転送されない残りのフラッシュ内ルーチンRFと付加ルーチンZRをコピーする権限を有する部分が,フラッシュメモリ104のいずれかの領域,例えば,フラッシュメモリ領域SB204a内に残っている。
【0078】
また,第2の方法は,RAM領域SB207aにコピーされるフラッシュ内ルーチンRFの中に,次のステップで,残りのフラッシュ内ルーチンRF及び付加ルーチンZRをRAM領域207aへコピーするルーチンを設けることである。この方法によれば,メモリ領域SB204aの内容全体をRAMメモリ領域SB207aへコピー可能になる。このルーチンは,フラッシュ内ルーチンRF及び/または付加ルーチンZR内におくことができるので,すでにRAMメモリ207aへ転送されたRF及び/または付加ルーチンZRによってプロセスを制御することができる。
【0079】
また,第3の方法は,フラッシュ内ルーチンRFと付加ルーチンZRとに分割する方法である。まず付加ルーチンZRがSB204aからRAM領域SB207aへコピーされ,この付加ルーチンZRにより,フラッシュ内ルーチンRFをフラッシュメモリ領域204aからRAMメモリ領域207aへコピーすることが可能になる。それによってコピープロセス全体が1つのステップで可能になり,フラッシュ内ルーチンRF及び付加ルーチンZRによって制御される。その場合にフラッシュ内ルーチンRFは,付加ルーチンZRの実行のきっかけを与え,それによって制御責任をZRに委ねる。
【0080】
RAMメモリ領域207aにコピーされた付加ルーチンZR及び/またはフラッシュ内ルーチンRFは,RAMメモリ領域207aで実行されて,フラッシュメモリのための他のコピー,消去並びにプログラミングプロセスを制御する。従ってそれに続くプロセスのそれ以降の制御は,付加ルーチンZR及び/またはフラッシュ内ルーチンRFによって行うことができる。
【0081】
プログラミングするために,バックアップ領域であるメモリ領域202aのデータ及び/またはプログラムが消去される(ステップ608)。次いで,メモリ領域SB207aから付加ルーチンZR及び/またはフラッシュ内ルーチンRFのバックアップコピーが,メモリ領域202aへ書き込まれる(ステップ609)。そしてメモリ領域204aの消去とプログラミングが,付加ルーチンZR及び/またはフラッシュ内ルーチンRFの完全に新しいバージョンによって外部から行われる(ステップ610)。
【0082】
次いで,上述のステップ309における検査によって,プログラミングの正確さが検査される。プログラミングが正確に実行された場合には,バックアップ領域SB202a全体が消去されて(ステップ612),ここに元から存在するデータ及び/またはプログラムによって,あるいはこれらのデータ及び/またはプログラムの新しいバージョンによって外部から代えられる。それがその後メモリ領域SB202a内で新しく書き込まれる(ステップ613)。その場合にステップ610及び/またはステップ613で選択的に,フラッシュメモリの他の部分を消去及び/またはプログラミングすることができる。
【0083】
ステップ309における判断の結果,エラーが発生していると判断された場合,すなわち任意の理由でプログラミングが中止されて,フラッシュメモリ領域SB204aには有効なデータ及び/またはプログラムがない場合には,システム始動あるいは新規プログラミング(ステップ600)の後に,ブートブロック内ルーチンRBにより確認される(ステップ602)。ブートブロック内ルーチンRBが,フラッシュ内ルーチンRF及び/または付加ルーチンZRのバックアップコピーをメモリ領域202aからRAMのメモリ領域207aへコピーさせる(ステップ603)。
【0084】
次いで,メモリ領域207a内の付加ルーチンZR及び/またはフラッシュ内ルーチンRFが,付加ルーチンZR及び/またはフラッシュ内ルーチンRFの書き戻しを自立して制御する。そのために,オリジナル領域,すなわちメモリ領域SB204aが消去される(ステップ604)。次いで,フラッシュメモリ領域202aからフラッシュメモリ領域204aへ,付加ルーチンZR及び/またはフラッシュ内ルーチンRFを書き込むことによって,このオリジナル領域が回復される(ステップ605)。従って,その後外部から任意のプログラミングプロセスを要請することができ,フラッシュメモリ領域SB202aのバックアップコピーとの競合をもたらすことはない。
【0085】
制御装置は,エラーの場合には常に該当する領域の新規プログラミングを要請するが,保護すべきすべてのデータはこの新規プログラミングプロセスの最初にはまた,最初にそれに割り当てられた領域にある。従って定められた初期状態の再形成が,自動的に行われる。
【0086】
本実施の形態においては,ステップ610及び/またはステップ613で選択的に,フラッシュメモリの他の部分を消去及び/またはプログラミングすることも可能である。その場合に特に,保護すべきデータSD及び/または保護すべきルーチンが入っている1つまたは複数の領域は別にして,フラッシュメモリ全体を新しくプログラミングすることができる。
【0087】
(第4の実施の形態)
本実施の形態にかかるメモリ書き換え方法を,図7を参照しながら説明する。なお,本実施の形態においても,上述した第3の実施の形態と同様のコンピュータシステムが用いられる。上記第3の実施の形態はプログラム(付加ルーチンZR)の保護に関するものであったが,本実施の形態は,データの保護に関するものである。ここでいう保護すべきデータとは,例えば,制御装置の全寿命の間失われてはならないデータである。また,本実施の形態では,保護すべきデータSDの保護がROMを使用せずに行われる点に特徴がある。
【0088】
プログラミングは,図7に示したように,プログラミング要請(ステップ701)によって,フラッシュ内ルーチンRFが実行される(ステップ706)。フラッシュ内ルーチンRFは,付加ルーチンZR及び/またはフラッシュ内ルーチンRF,あるいはフラッシュルーチンRFの一部を,フラッシュメモリ領域204aからRAMメモリ領域207aへコピーさせる(ステップ707)。このステップ707は,上記第3の実施の形態と同様に行われる。
【0089】
RAMメモリ領域207aにコピーされた付加ルーチンZR及び/またはフラッシュ内ルーチンRFは,RAMメモリ領域207aで実行されて,フラッシュメモリのための他のコピー,消去及びプログラミングプロセスを制御する。例えば,保護すべきデータSDがある領域の全部または一部をプログラミングの際に消去しなければならない場合には,このデータがメモリ領域203aからメモリ領域201aへコピーされて,保護される(ステップ708)。次いで,少なくともデータ領域SB203aが全部または部分的に消去されて(ステップ709),保護すべきデータSDがメモリ領域SB201aからメモリ領域SB203aへコピーされる(ステップ710)。
【0090】
次いで,上述のステップ309における検査によって,プログラミングプロセスにおいてエラーが発生したかが調べられる。エラーが発生していない場合には,データ領域,すなわちメモリ領域SB201aを元から存在するデータ及び/またはプログラム部分あるいはこのデータ及び/またはプログラムの新しいバージョンによって外部から代えることができる(ステップ711)。その場合にステップ709及び/または711において,選択的にフラッシュメモリの他の部分を消去し,かつ/またはプログラミングすることも可能である。
【0091】
任意の理由からプログラミングを中止した後に領域203aに有効なデータがない,すなわちエラーの場合には,システムを始動させて新しくプログラミングする(ステップ700)ことによって,ブートブロック内ルーチンRBにより検出される(ステップ702)。このブートブロック内ルーチンRBは,保護すべきデータSDのバックアップコピーをフラッシュメモリ領域201aからオリジナル領域であるフラッシュメモリ領域SB203aへコピーさせる(ステップ703)。
【0092】
ブートブロック内ルーチンRBが,付加ルーチンZR及び/またはフラッシュ内ルーチンRF,あるいはフラッシュルーチンRFの一部を,上記実施の形態と同様の方法によって,フラッシュメモリ領域204aからRAMメモリ領域207aへコピーさせる(ステップ703)。次いで,付加ルーチンZR及び/またはフラッシュ内ルーチンRFが実行されて,フラッシュメモリのための他のコピー,消去及びプログラミングプロセスを制御する。
【0093】
次いで,オリジナル領域,すなわちフラッシュメモリ領域SB203aが消去されて(ステップ704),保護すべきデータSDがバックアップ領域からオリジナル領域へコピーされて,メモリ領域SB203aが回復される(ステップ705)。従って,例えばステップ701におけるように,任意のプログラミングプロセスを外部から要請することができ,メモリ領域SB201aのバックアップコピーとの競合がもたらされることはない。
【0094】
制御装置100は,エラーの場合には常に該当する領域の新規プログラミングを要請するが,保護すべきデータSDはこの新規プログラミングの開始時にはまた,最初に割り当てられた領域にある。従って保護すべきデータに関しても前のルーチンに関してと同様に,定められた初期状態が自動的に再形成される。従ってエラーの場合に最初に始動されたプロセスが新しく初期化されて,保護すべきデータSDが自動的に回復される。保護すべきデータSDのバックアップコピーは,オリジナルの消去後即座に書き戻されて,それによってそれがそのまま保存されることはない。
【0095】
本実施の形態においては,ステップ709及び/またはステップ711で選択的に,フラッシュメモリの他の部分を消去及び/またはプログラミングすることも可能である。その場合に特に,保護すべきデータSD及び/または保護すべきルーチンが入っている1つまたは複数の領域は別にして,フラッシュメモリ全体を新しくプログラミングすることができる。
【0096】
すべての実施の形態について,保護すべきデータSDのバックアップコピーは,オリジナル領域からオリジナルを消去した後すぐに,このオリジナル領域へ書き戻される。同様に,すべての実施の形態において,保護すべきルーチンのバックアップコピーは,ステップ309における検査の結果,プログラミングに成功した後に消去されて,そこにあるべき及び/または任意の新しいデータ及び/またはプログラムが書き込まれる。
【0097】
以上,添付図面を参照しながら本発明にかかるメモリ書き換え方法及びコンピュータシステムの好適な実行形態について説明したが,本発明はかかる例に限定されない。当業者であれば,特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり,それらについても当然に本発明の技術的範囲に属するものと了解される。
【0098】
【発明の効果】
以上説明したように,本発明によれば,メモリ書き換えの任意の時点における任意の障害や中断に対しても十分に対応でき,さらに所定のメモリ領域について予め定められた初期状況を自発的に再構成することが可能である。
【図面の簡単な説明】
【図1】発明の実施の形態にかかるコンピュータシステムの説明図である。
【図2】フラッシュメモリ,RAM,及びROMのメモリ領域の説明図である。
【図3】第1の実施の形態にかかるメモリ書き換え方法を示す流れ図である。
【図4】第2の実施の形態にかかるメモリ書き換え方法を示す流れ図である。
【図5】フラッシュメモリ,RAM,及びROMのメモリ領域の説明図である。
【図6】第3の実施の形態にかかるメモリ書き換え方法を示す流れ図である。
【図7】第4の実施の形態にかかるメモリ書き換え方法を示す流れ図である。
【符号の説明】
100 制御装置
101 CPU
102 入出力ユニット
103 バスシステム
104 フラッシュメモリ(第1のメモリ)
105 RAM(第2のメモリ)
106 ROM(第3のメモリ)
107 インターフェイス
108 プログラミング装置
200 フラッシュメモリのメモリ領域
SB201 データのバックアップ領域
SB202 付加ルーチンのバックアップ領域
SB203 データのオリジナル領域
SB204 付加ルーチンのオリジナル領域
206 RAMのメモリ領域
SB207 SB201〜SB204のコピー領域
208 ROMのメモリ領域
SB209 ROM内ルーチン
SB201a データのバックアップ領域
SB202a フラッシュ内ルーチン
SB203a データのオリジナル領域
SB204a 追加ルーチンのオリジナル領域
SB205 ブートルーチン
SB207a 付加ルーチン

Claims (16)

  1. 第1のメモリ領域及び第2のメモリ領域を含む第1のメモリ,第2のメモリ及び入出力インタフェースを有するコンピュータシステムにおいて,自装置に格納されているデータ及び/又はプログラムを書き換えるメモリ書換え方法であって,
    ログラムに含まれる第1のルーチン及び第2のルーチンのうち,前記第2のルーチンが前記第1のメモリ領域に格納されており,
    前記第1のメモリ領域から前記第2のメモリに前記第2のルーチンをコピーし,
    前記第1のメモリ領域又は前記第2のメモリから前記第2のメモリ領域に前記第2のルーチンをバックアップし,
    前記第1のメモリ領域に格納されている前記第2のルーチンを削除し,
    前記入出力インタフェースから読み込まれるデータにより,前記第1のメモリ領域上で前記第2のルーチンを書き換え,
    前記バックアップ,削除及び/又は書き換えの少なくともいずれかが,前記第2のメモリにコピーされた前記第2のルーチンにより実行されることを特徴とするメモリ書き換え方法。
  2. 前記第1のルーチンは,前記第2のルーチンを呼出し,前記第1のルーチン及び前記第2のルーチンは,前記バックアップ,削除及び書き換えを実行することを特徴とする,請求項1に記載のメモリ書き換え方法。
  3. 前記データのバックアップコピーは,前記第1のメモリ及び/又は前記第2のメモリに形成され,前記バックアップ,削除又は書き換えの後に,前記データのオリジナルとして再び読み込まれることを特徴とする,請求項1又は2に記載のメモリ書き換え方法。
  4. 前記第2のルーチンのバックアップコピーは,エラーが発生してない場合に,前記バックアップ,削除及び書き換えの後に消去されることを特徴とする,請求項1,2又は3のいずれか1項に記載のメモリ書き換え方法。
  5. 前記バックアップ,削除又は書き換え時にエラーが発生した場合に,前記バックアップ,削除及び書き換えが自動的に回復されることを特徴とする,請求項1,2,3又は4のいずれか1項に記載のメモリ書き換え方法。
  6. 前記バックアップ,削除又は書き換え時にエラーが発生した場合に,前記バックアップ,削除及び書き換えが自動的に前記第1のメモリ内で初期化されることを特徴とする,請求項1,2,3,4又は5のいずれか1項に記載のメモリ書き換え方法。
  7. 前記第1のメモリは,不揮発性メモリであり,前記第1のルーチンは,前記第1のメモリに格納されることを特徴とする,請求項1,2,3,4,5又は6のいずれか1項に記載のメモリ書き換え方法。
  8. 前記第2のメモリは,揮発性または不揮発性のバッファメモリであり,前記第2のメモリに前記第2のルーチンが一時的に格納されることを特徴とする,請求項1,2,3,4,5,6又は7のいずれか1項に記載のメモリ書き換え方法。
  9. 前記第1のメモリ及び/又は前記第2のメモリは,少なくとも1つのオリジナル領域及び/又はバックアップ領域及び/又はバッファメモリ領域を有することを特徴とする,請求項1,2,3,4,5,6,7又は8のいずれか1項に記載のメモリ書き換え方法。
  10. 前記バックアップ,削除及び書き換えは,前記第1のメモリ及び/又は前記第2のメモリに読み込まれたプログラム及び/又はデータによって制御されることを特徴とする,請求項9に記載のメモリ書き換え方法。
  11. 前記バックアップ領域に他のデータ及び/又はプログラムが格納されて,前記プログラム及び/又は前記データを書き換えから保護するために,前記バックアップ領域が消去されることを特徴とする,請求項10に記載のメモリ書き換え方法。
  12. 前記処理装置は,不揮発性で書き換えのできない第3のメモリをさらに含み,前記バックアップ,削除及び書き換えのためのプロセスを始動させる前記第1のプログラムの少なくとも一部が,前記第3のメモリ及び/又は前記第1のメモリの書き換えのできないメモリ領域に格納されることを特徴とする,請求項1,2,3,4,5,6,7,8,9,10又は11のいずれか1項に記載のメモリ書き換え方法。
  13. 第1のメモリ領域及び第2のメモリ領域を含む第1のメモリ,第2のメモリ及び入出力インタフェースを有し,自装置に格納されているデータ及び/又はプログラムを書き換えるコンピュータシステムであって,
    ログラムに含まれる第1のルーチン及び第2のルーチンのうち,前記第2のルーチンが前記第1のメモリ領域に格納されており,
    前記第1のメモリ領域から前記第2のメモリに前記第2のルーチンをコピーし,
    前記第1のメモリ領域又は前記第2のメモリから前記第2のメモリ領域に前記第2のルーチンをバックアップし,
    前記第1のメモリ領域に格納されている前記第2のルーチンを削除し,
    前記入出力インタフェースから読み込まれるデータにより,前記第1のメモリ領域上で前記第2のルーチンを書き換え,
    前記バックアップ,削除及び/又は書き換えの少なくともいずれかが,前記第2のメモリにコピーされた前記第2のルーチンにより実行されることを特徴とするコンピュータシステム。
  14. 前記第1のメモリは,不揮発性メモリであり,前記第2のメモリは,揮発性又は不揮発性メモリであることを特徴とする,請求項13に記載のコンピュータシステム。
  15. 前記第2のメモリは,バッファメモリであり,前記第2のメモリに前記第2のルーチンが一時的に格納されることを特徴とする,請求項13又は14に記載のコンピュータシステム。
  16. 前記第1のメモリ及び/又は前記第2のメモリは,少なくとも1つのオリジナル領域及び/又はバックアップ領域及び/又はバッファメモリ領域を有することを特徴とする,請求項13,14又は15のいずれか1項に記載のコンピュータシステム。
JP24797799A 1998-09-01 1999-09-01 メモリ書き換え方法及びコンピュータシステム Expired - Fee Related JP4480815B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19839680.5 1998-09-01
DE19839680A DE19839680B4 (de) 1998-09-01 1998-09-01 Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten

Publications (2)

Publication Number Publication Date
JP2000090011A JP2000090011A (ja) 2000-03-31
JP4480815B2 true JP4480815B2 (ja) 2010-06-16

Family

ID=7879351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24797799A Expired - Fee Related JP4480815B2 (ja) 1998-09-01 1999-09-01 メモリ書き換え方法及びコンピュータシステム

Country Status (4)

Country Link
US (1) US6430662B1 (ja)
JP (1) JP4480815B2 (ja)
DE (1) DE19839680B4 (ja)
RU (1) RU2248627C2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4842417B2 (ja) * 1999-12-16 2011-12-21 ソニー株式会社 記録装置
CA2419761A1 (en) * 2000-08-14 2002-02-21 Audi Performance & Racing Enhanced module chipping system
KR100516551B1 (ko) * 2000-11-25 2005-09-22 엘지전자 주식회사 원격 소프트웨어 업그레이드 시스템 및 방법
DE10143142A1 (de) * 2001-09-04 2003-01-30 Bosch Gmbh Robert Verfahren zum Betreiben einer Schaltungsanordnung, die einen Mikrocontroller und ein EEPROM enthält
DE10148047B4 (de) * 2001-09-28 2013-06-27 Robert Bosch Gmbh Verfahren und Vorrichtung zur Sicherung von Daten in einem Speicherbaustein und Speicherbaustein
DE10252059B3 (de) * 2002-11-08 2004-04-15 Infineon Technologies Ag Verfahren zum Betreiben einer Speicheranordnung
AU2003288763A1 (en) * 2003-12-29 2005-07-21 Lg Electronics Inc. Burner assembly for gas burners of radiant heating type
DE102004005680A1 (de) 2004-02-05 2005-08-25 Bayerische Motoren Werke Ag Vorrichtung und Verfahren zur Ansteuerung von Steuergeräten in einem Bordnetz eines Kraftfahrzeuges
DE102005059319A1 (de) 2005-12-09 2007-06-14 Robert Bosch Gmbh Verfahren zum Betreiben einer Einrichtung
US8365037B2 (en) 2007-01-03 2013-01-29 GM Global Technology Operations LLC Vehicle parameter infrastructure security strategy
JP4333745B2 (ja) * 2007-01-15 2009-09-16 株式会社デンソー 電子制御装置
DE102008002494A1 (de) 2008-06-18 2009-12-24 Robert Bosch Gmbh Verfahren zum Aktualisieren eines Speichersegments, Datenverarbeitungsschaltung und Speichersegment
US8417928B2 (en) 2008-09-24 2013-04-09 Marvell International Ltd. Turbo boot systems and methods for subsequent booting from a captured data stored in a non-volatile semiconductor memory
JP5683518B2 (ja) * 2012-03-27 2015-03-11 三菱電機株式会社 ファームウェア更新装置およびその方法
TWI493341B (zh) * 2012-07-09 2015-07-21 Phison Electronics Corp 記憶體儲存裝置及其修復方法
JP6543122B2 (ja) * 2015-07-17 2019-07-10 キヤノン株式会社 情報処理装置と、前記情報処理装置による不揮発記憶装置の初期化方法、及びプログラム
WO2019026442A1 (ja) * 2017-08-02 2019-02-07 フェリカネットワークス株式会社 情報処理装置、および情報処理方法
JP7134753B2 (ja) * 2018-07-10 2022-09-12 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
JP7244352B2 (ja) * 2019-05-22 2023-03-22 ファナック株式会社 ファイル管理装置
FR3114415A1 (fr) * 2020-09-21 2022-03-25 Psa Automobiles Sa Procédé et dispositif de mise à jour d’un logiciel d’un calculateur embarqué d’un véhicule, comportant une mémoire d’exécution et une mémoire de sauvegarde

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE715313C (de) 1939-09-01 1941-12-18 Max Berz Dipl Ing Verfahren zum Foerdern von Schuettgut
DE4332499A1 (de) 1993-09-24 1995-03-30 Bosch Gmbh Robert Verfahren zur vollständigen Neuprogrammierung eines löschbaren, nichtflüchtigen Speichers
DE4401891A1 (de) 1994-01-24 1995-07-27 Bayerische Motoren Werke Ag Verfahren zum Ändern der Arbeitsweise eines Steuergeräts von Kraftfahrzeugen
JP2812189B2 (ja) * 1994-02-10 1998-10-22 日本電気株式会社 プログラムダウンロード方法
DE4443065A1 (de) * 1994-12-03 1996-06-05 Bosch Gmbh Robert Verfahren zur Programmierung eines elektrisch löschbaren, nichtflüchtigen Speichers in einem elektronischen Rechengerät sowie Steuergerät zur Verwendung bei dem Verfahren
US6009500A (en) * 1995-06-07 1999-12-28 Compaq Computer Corporation Replacement of erroneous firmware in a redundant non-volatile memory system
US5717887A (en) * 1995-07-28 1998-02-10 Nomai Sa System for the automatic substitution of control firmware embedded in a removable disk drive
JP3003619B2 (ja) * 1997-04-09 2000-01-31 日本電気株式会社 装置内部設定情報バックアップ装置及び方法並びに装置内部設定情報バックアップ制御プログラムを記憶した記憶媒体
US6009520A (en) * 1997-12-10 1999-12-28 Phoenix Technologies, Ltd Method and apparatus standardizing use of non-volatile memory within a BIOS-ROM

Also Published As

Publication number Publication date
DE19839680A1 (de) 2000-03-02
JP2000090011A (ja) 2000-03-31
RU2248627C2 (ru) 2005-03-20
DE19839680B4 (de) 2005-04-14
US6430662B1 (en) 2002-08-06

Similar Documents

Publication Publication Date Title
JP4480815B2 (ja) メモリ書き換え方法及びコンピュータシステム
US6308265B1 (en) Protection of boot block code while allowing write accesses to the boot block
JP4037605B2 (ja) 不揮発性メモリユニットのコントローラ、同コントローラを有するメモリシステム及び不揮発性メモリユニットの制御方法
JP4933268B2 (ja) フラッシュメモリシステムの起動動作
US8527730B2 (en) Data updating method, memory system and memory device
KR100316981B1 (ko) 플래시 메모리를 구비한 마이크로컴퓨터 및 플래시 메모리에 프로그램을 저장하는 방법
US20080104361A1 (en) Storage Device, Memory Managing Apparatus, Memory Managing Method, and Program
US20080098388A1 (en) Safe Flashing
JP2008533574A (ja) セクタ単位での消去の可能な半導体メモリ手段の第1のセクタへの再書き込み方法および装置
US6546455B1 (en) Method and device for modifying the memory contents of control equipment
KR101601751B1 (ko) 차량용 전자제어유닛 및 그 부트 소프트웨어 리프로그래밍 방법
JP3805195B2 (ja) プログラム書き換え装置及びプログラム書き換え方法
KR100654344B1 (ko) 플래시 메모리를 이용한 기억장치 및 그 에러 복구 방법
CN112579179A (zh) 一种嵌入式系统的分区挂载方法
US7849279B2 (en) Method for the secure updating data areas in non volatile memory, device to perform such a method
JP4031693B2 (ja) 不揮発性メモリおよびこれを有したデータ記憶装置
JP4332134B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2006018594A (ja) 情報処理装置
JP2007041798A (ja) 情報処理装置及び情報処理装置のメモリ書き換え方法
JP4580724B2 (ja) 不揮発性メモリの制御方法
JP2001051910A (ja) 不揮発メモリ装置
JP4812278B2 (ja) 電子制御装置のデータ再書き込み方法
JPH07168769A (ja) 不揮発性メモリに対するデータ更新方法
JP3178913B2 (ja) 半導体ファイル装置
JP4245594B2 (ja) メモリコントローラ及びフラッシュメモリシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060901

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090210

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090511

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090518

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090610

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100122

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100317

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140326

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees