JP2003316592A - プログラム情報のフラッシュrom管理方法 - Google Patents

プログラム情報のフラッシュrom管理方法

Info

Publication number
JP2003316592A
JP2003316592A JP2002124727A JP2002124727A JP2003316592A JP 2003316592 A JP2003316592 A JP 2003316592A JP 2002124727 A JP2002124727 A JP 2002124727A JP 2002124727 A JP2002124727 A JP 2002124727A JP 2003316592 A JP2003316592 A JP 2003316592A
Authority
JP
Japan
Prior art keywords
flash rom
program
information
program information
management
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.)
Pending
Application number
JP2002124727A
Other languages
English (en)
Inventor
Yuya Yamazaki
猶矢 山崎
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2002124727A priority Critical patent/JP2003316592A/ja
Publication of JP2003316592A publication Critical patent/JP2003316592A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 プログラム情報の更新時に起因するアクシデ
ントが発生してもファームウェアが自動的に起動面を選
択して立ち上がることができるプログラム情報のフラッ
シュROM管理方法を提供する。 【解決手段】 プログラム情報を、フラッシュROM上
でフラッシュROM1セクタ256レコード、2セクタ
全512レコードのロールバッファで管理するように構
成し、ダウンロード時、プログラム情報の更新の際に電
源切断されてしまった場合でも、元の情報が残っている
ことから、電源ON後、必ず、プログラムが立ち上が
り、システムダウン等の致命的な事態を防ぐことができ
る。

Description

【発明の詳細な説明】 【0001】 【発明の属する技術分野】この発明は、ファームウェア
のプログラムをフラッシュROMに2面持つ場合、どち
らの面が運用面か判断するための、各面のファームウェ
アバージョン、チェックサム等の管理情報を管理するプ
ログラム情報のフラッシュROM管理方法に関するもの
である。 【0002】 【従来の技術】従来、システムの制御用に用いられ、バ
ージョンアップをしなければならないプログラムは、外
部装置からダウンロードして電気的に書き換えできる不
揮発メモリ(以下、フラッシュROMと言う)に書き換
えを実施している。このように外部からプログラムをダ
ウンロードする場合、ダウンロードの失敗等の障害が発
生し、正常にダウンロードされないとシステムダウンと
なる。ダウンロード失敗によるシステムダウンを防ぐた
め、ダウンロードするプログラムを、現在稼動中のフラ
ッシュROMとは別のフラッシュROMにダウンロード
することで、現在稼動中のプログラムを更新しないよう
にしている。このようにプログラムを2面管理している
ケースが多い。 【0003】この2面管理しているプログラムの内、ど
ちらの面からプログラムを立ち上げるかといったプログ
ラム情報は、フラッシュROMに1レコードで管理し、
プログラム面を選択していた。 【0004】 【発明が解決しようとする課題】従来のプログラム情報
のフラッシュROM管理方法は以上のように構成されて
いるので、従来のプログラム情報管理1レコード(フラ
ッシュROM上)では、プログラム情報が管理されてい
るフラッシュROMへの書き込み時に電源切断が発生す
ると、プログラム情報が破壊されてしまう可能性があ
る。このことにより、どちらの面で、プログラムを立ち
上げれば良いかという情報を失うため、ファームウェア
を立ち上げることができない。また、プログラム情報管
理1レコードのため、プログラム情報更新時には、常に
フラッシュROM上の同じエリアに対して、管理情報の
消去および書き込みを実施するので、フラッシュROM
の劣化速度が速くなるなどの課題があった。 【0005】この発明は上記のような課題を解決するた
めになされたもので、プログラム情報の更新時に起因す
るアクシデントが発生してもファームウェアが自動的に
起動面を選択して立ち上がることができることと、プロ
グラム情報レコードアクセスを同じエリアに実施しない
方式によるプログラム情報のフラッシュROM管理方法
を提供することを目的とする。 【0006】 【課題を解決するための手段】この発明に係るプログラ
ム情報のフラッシュROM管理方法は、プログラム情報
を、フラッシュROM上でフラッシュROM1セクタ2
56レコード、2セクタ全512レコードのロールバッ
ファで管理するようにしたものである。 【0007】 【発明の実施の形態】以下、この発明の実施の一形態を
説明する。 実施の形態1.図1はこの発明の実施の形態1による4
Mバイトの記憶容量を備えた装置を示す概略ブロック図
であり、図において、1は制御部本体を構成するCP
U、2はプログラム管理情報、プログラム本体等のデー
タを記憶させるCPU1からアクセス可能なフラッシュ
ROM、3はダイナミックRAM(ランダム・アクセス
・メモリ)、4は主信号FPGA(フィールド・プログ
ラムブル・ゲート・アレイ)、5は監視制御FPGA、
6はCPUバスである。なお、フラッシュROM2にイ
ンストールするプログラム等は、この装置の外部接続し
たホスト装置(図示せず)から送信される。図1は、上
記のような形態を設けているが、この実施の形態1で
は、プログラム情報のフラッシュROM管理方法に注目
する。 【0008】CPU1は、フラッシュROM2とCPU
バス6を介して相互に接続しており、CPU1は、フラ
ッシュROM2へ直接リード・ライトできるようになっ
ている。図2はフラッシュROMのセクタ構成および構
成内容を示す説明図であり、フラッシュROM2は、こ
の図2に示すようなセクタ構成で、フラッシュROMを
2石搭載し、フラッシュROM0/1のセクタ4〜32
にプログラム本体、セクタ33,34にフラッシュRO
M管理情報が格納されている。 【0009】図3はフラッシュROM管理情報の構成を
示す説明図である。フラッシュROM管理情報は、フラ
ッシュROM0上の33,34セクタ(図3上では、フ
ラッシュROM管理情報セクタ0,1)に存在し、1セ
クタ64Kbyteに256管理レコード(1レコード
256バイト)、2セクタで全512レコード構成のロ
ールバッファである。 【0010】図4はフラッシュROM管理レコードの情
報要素を示す説明図である。使用中フラグは、管理レコ
ードが使用されているかどうかが判別できるフラグ、プ
ログラム状態は、プログラムの運用面を示しており、0
/1面プログラムバージョンは、0,1面のプログラム
バージョン名、0/1面チェックサムは、0,1面のプ
ログラム本体のチェックサム値を示す。 【0011】次に動作について説明する。プログラム情
報のフラッシュROM管理方法について説明する。図3
に示したように、プログラムの管理情報をフラッシュR
OM2セクタに512レコードでプログラム情報を管理
する。こうすることにより、プログラムのダウンロード
時のプログラム情報をフラッシュROMセクタ0(図3
上)のあるレコードにアクセス時、電源切断されてもセ
クタ0の他のレコードもしくは、セクタ1(図3上)の
レコードは破壊されない。電源ON時には、必ずプログ
ラム情報のレコードがフラッシュROM上に存在し、プ
ログラムをどの面から起動するかを管理できる。 【0012】また、プログラム情報を512レコードで
管理しているので、常にフラッシュROMの同じエリア
に対して読み書きを実施しなくて済む。このような管理
方法にしておけば、フラッシュROMの劣化速度が速く
なることを防げる。 【0013】図5はフラッシュROM管理情報の最新情
報の読み出し方法を示すフローチャートである。装置の
電源ON時、CPU1は、図5に示すように、フラッシ
ュROM管理情報の最新情報を読み出して、プログラム
の運用面を決定する。まず、フラッシュROM管理情報
レコード512個から未使用管理レコードを検索し(ス
テップST1)、未使用管理レコードがあるかチェック
し(ステップST2)、未使用管理レコードがあれば、
未使用管理レコードの1レコード前より使用中管理レコ
ードを探し、その使用中レコードのチェックサムが正常
な管理レコードを探す(ステップST3)。正常な管理
レコードがあるかチェックし(ステップST4〜ST
6)、正常な管理レコードあれば、最新情報の管理レコ
ードが読み出される(ステップST9)。これにより、
プログラムの運用面、バージョン情報等の最新のプログ
ラム情報が読み出される。ステップST2,ST7にて
未使用管理レコード無しと判断された場合は、管理領域
不正となる(ステップST8)。本来、この実施の形態
1によるプログラム情報のフラッシュROM管理方法で
は、未使用管理レコードが無いということは有り得な
い。この根拠として、下記で示すフラッシュROM管理
情報の書き込み方法で示す。 【0014】図6はフラッシュROM管理情報の最新情
報の書き込み方法を示すフローチャートである。まず、
最新情報として書き込む情報のチェックサムを計算して
おく(ステップST10)。次に、フラッシュROM管
理情報レコード512個から未使用管理レコードを検索
し(ステップST11)、未使用管理レコードがあるか
チェックし(ステップST12)、未使用管理レコード
があれば、未使用管理レコードが0セクタの256レコ
ード目の場合は、1セクタ目の消去を実施、未使用管理
レコードが1セクタの512レコード目の場合は、0セ
クタ目の消去を実施する(ステップST13)。さら
に、未使用管理レコードにST10で作成した最新管理
情報を書き込む(ステップST14)。ステップST1
3のようにすることで、セクタ消去を実施中に電源切断
された場合でも、256/512番目のレコードが未使
用レコードとして必ず1つ残るので、プログラム管理情
報の最新面が、上記で示したフラッシュROM管理情報
読み出し方法で必ず読み出せ、未使用レコードが無いと
いった状態には落ち込まない。一方、ステップST12
にて未使用管理レコード無しと判断された場合は、管理
領域不正となる(ステップST15)。 【0015】なお、上記実施の形態1においては、プロ
グラム情報の管理エリアをフラッシュROM2上1レコ
ード256バイトの512レコード構成するものについ
て述べたが、必ずしもこれに限定されるものではなく、
1レコードのバイト数もレコード数は変更しても良い。
また、上記実施の形態1においては、プログラム情報の
管理エリアを電気的に消去でき、書き込み可能なメモリ
としてフラッシュROM2を使用した場合について述べ
たが、必ずしもこれに限定されるものではなく、所定の
バックアップ電力によりメモリ内容を保持可能なRAM
を使用しても良い。 【0016】 【発明の効果】以上のように、この発明によれば、プロ
グラム情報を、フラッシュROM上でフラッシュROM
1セクタ256レコード、2セクタ全512レコードの
ロールバッファで管理するように構成したので、ダウン
ロード時、プログラム情報の更新の際に電源切断されて
しまった場合でも、元の情報が残っていることから、電
源ON後、必ず、プログラムが立ち上がり、システムダ
ウン等の致命的な事態を防ぐことができる。また、プロ
グラム情報を512レコードで管理することから、フラ
ッシュROMアクセス(消去/書き込み)によるフラッ
シュROMの劣化を防ぐことができる。さらに、512
レコード分のプログラム情報が履歴としてフラッシュR
OM上に残っているので、プログラムの起動面、プログ
ラムバージョン等を確認することができる効果がある。
【図面の簡単な説明】 【図1】 この発明の実施の形態1による4Mバイトの
記憶容量を備えた装置を示す概略ブロック図である。 【図2】 フラッシュROMのセクタ構成および構成内
容を示す説明図である。 【図3】 フラッシュROM管理情報の構成を示す説明
図である。 【図4】 フラッシュROM管理レコードの情報要素を
示す説明図である。 【図5】 フラッシュROM管理情報の最新情報の読み
出し方法を示すフローチャートである。 【図6】 フラッシュROM管理情報の最新情報の書き
込み方法を示すフローチャートである。 【符号の説明】 1 CPU、2 フラッシュROM、3 ダイナミック
RAM、4 主信号FPGA、5 監視制御FPGA、
6 CPUバス。

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 プログラム情報を、フラッシュROM上
    でフラッシュROM1セクタ256レコード、2セクタ
    全512レコードのロールバッファで管理することを特
    徴とするプログラム情報のフラッシュROM管理方法。
JP2002124727A 2002-04-25 2002-04-25 プログラム情報のフラッシュrom管理方法 Pending JP2003316592A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002124727A JP2003316592A (ja) 2002-04-25 2002-04-25 プログラム情報のフラッシュrom管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002124727A JP2003316592A (ja) 2002-04-25 2002-04-25 プログラム情報のフラッシュrom管理方法

Publications (1)

Publication Number Publication Date
JP2003316592A true JP2003316592A (ja) 2003-11-07

Family

ID=29539704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002124727A Pending JP2003316592A (ja) 2002-04-25 2002-04-25 プログラム情報のフラッシュrom管理方法

Country Status (1)

Country Link
JP (1) JP2003316592A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013205933A (ja) * 2012-03-27 2013-10-07 Mitsubishi Electric Corp ファームウェア更新装置およびその方法
WO2016136014A1 (ja) * 2015-02-26 2016-09-01 三菱電機株式会社 監視レコーダ

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013205933A (ja) * 2012-03-27 2013-10-07 Mitsubishi Electric Corp ファームウェア更新装置およびその方法
WO2016136014A1 (ja) * 2015-02-26 2016-09-01 三菱電機株式会社 監視レコーダ
JPWO2016136014A1 (ja) * 2015-02-26 2017-04-27 三菱電機株式会社 監視レコーダ

Similar Documents

Publication Publication Date Title
JP4668416B2 (ja) ブート・ブロックへの書き込みアクセスを可能にする時のブート・ブロック・コードの保護
KR101004876B1 (ko) 비휘발성 메모리 시스템에서 사용하기 위한 전원 관리 블록
JP4238514B2 (ja) データ記憶装置
JP3726663B2 (ja) 電子制御装置の制御データ記憶装置
US8527730B2 (en) Data updating method, memory system and memory device
US9459857B2 (en) Managing wear of system areas of storage devices
US7558904B2 (en) Controller, data memory system, data rewriting method, and computer program product
FR2671223A1 (fr) Memoire semiconductrice remanente pour ordinateur personnel.
US20060265545A1 (en) Information processing apparatus, lifetime monitoring method and program for monitoring lifetime of storage device including flash memory
JPH11161563A (ja) データの記憶および再生方法
JP4373943B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP3268130B2 (ja) フラッシュeepromを用いたデータ処理装置
KR20000068206A (ko) 광 디스크 드라이브 마이크로콘트롤러용 프로그램 코드를 갱신하는 방법 및 광 디스크 드라이브
JP4046877B2 (ja) 一括消去型不揮発性メモリおよび携帯電話
JP4480815B2 (ja) メモリ書き換え方法及びコンピュータシステム
JP2008504628A (ja) 安全なフラッシング
JPH10326227A (ja) フラッシュメモリを記憶媒体とする記憶装置の管理方式
JP2003316592A (ja) プログラム情報のフラッシュrom管理方法
JP2006504200A (ja) 共通論理ブロックに関連付けられている物理ブロックを解決するための方法および装置
JP4026588B2 (ja) ディスクアレイ装置およびディスクキャッシュ管理方法ならびにプログラム
WO2012172708A1 (ja) バックアップ装置およびバックアップ装置の動作方法
JP3805195B2 (ja) プログラム書き換え装置及びプログラム書き換え方法
US20070271311A1 (en) Disk array device and data management method for managing master data and replication data replicated from master data
JP2006134123A (ja) データ記録装置及びそれを備える商品処理装置
JP2009053993A (ja) ファイルシステム管理装置