JP2003216511A - 不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体 - Google Patents

不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体

Info

Publication number
JP2003216511A
JP2003216511A JP2002014150A JP2002014150A JP2003216511A JP 2003216511 A JP2003216511 A JP 2003216511A JP 2002014150 A JP2002014150 A JP 2002014150A JP 2002014150 A JP2002014150 A JP 2002014150A JP 2003216511 A JP2003216511 A JP 2003216511A
Authority
JP
Japan
Prior art keywords
update
data
update data
volatile memory
writing
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
JP2002014150A
Other languages
English (en)
Inventor
Hiromi Ebara
裕美 江原
Shinji Kawano
眞二 川野
Futoshi Nakabe
中部  太志
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2002014150A priority Critical patent/JP2003216511A/ja
Publication of JP2003216511A publication Critical patent/JP2003216511A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【課題】 不揮発性メモリのデータが更新される領域に
対する消去が行われてから、更新された後の更新後デー
タが領域に書き込まれる間に、電源の遮断などがあった
場合に、更新される前のデータは復帰できても、データ
の更新再開を選択することはできなかった。 【解決手段】 本発明では、更新される前のデータと更
新に必要な更新用データが、更新される前のデータが消
去される前に不揮発性メモリに書き込まれる。また、不
揮発性メモリには、更新後データの書き込み途中である
か否かを表す状態フラグが書き込まれる。そして、起動
の際に、状態フラグの設定が更新後データの書き込み途
中であることが検出されると、不揮発性メモリに記憶さ
れた更新される前のデータ及び更新用データを用いて更
新の再開を行うか元のデータを復帰するかが決定され
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データの更新が中
断された場合にも不揮発性メモリに更新される前のデー
タを保持する不揮発性メモリ装置、データを保持するた
めのデータ更新方法、データ更新プログラム及びそのデ
ータ更新プログラムが記録されたコンピュータ読み取り
可能な記録媒体に関するものである。
【0002】
【従来の技術】CPU(Central Processing Unit)を内蔵し
たIC(Integrated Circuit)カードは、これまで磁気カー
ドが利用されてきた分野で、磁気カードを置き替えるも
のとして利用が進みつつある。このようなICカードで
は、例えばキャッシングやクレジットの機能を提供する
接触型又は非接触型のものや、出札に利用される非接触
型のものが代表的である。
【0003】また、ヨーロッパなどで利用されているGS
M(Global System for Mobile Communications)方式の
携帯電話機(Mobile Subscriber)では、加入者の識別情
報や電話番号などを携帯電話機の端末(Mobile Equipmen
t)とは独立して管理するために、SIM(Subscriber Iden
tity Module)と呼ばれるCPUを内蔵したICカードが用い
られている。第3世代の携帯電話機でも、UIM(User Id
entity Module)と呼ばれるCPUを内蔵したICカードが用
いられる。SIMやUIMでは、クレジットカードサイズより
も小型のプラグイン型が用いられることが多く、SIMやU
IMは、通常端末に取り外し可能に装着される。加入者
は、これまで利用していた端末から取り外したSIM又はU
IMを次に利用する端末に装着することによって、次の端
末でこれまでの端末と同じ電話番号を使用することがで
きる。
【0004】SIMによって提供される多くの機能は電話
サービスに特化されているが、UIMでは、磁気カードを
置き替えるICカードと同様に、電子商取引の決済などに
利用されることも期待されている。
【0005】ここで、図1に一般的なICカードの構成を
示す。
【0006】図1に示すように、このICカード100
は、I/O(Input/Output)インタフェース101を介して
リーダライタ装置102と接続されている。リーダライ
タ装置102は、ICカード100のCPU103との間で
データを送受信する。リーダライタ装置102は、ICカ
ード100にデータを送信するだけでなく、電力も供給
する。非接触型ICカードであれば、電力の供給は搬送波
を用いて無線で行われる。また、携帯電話機の端末に装
着されるICカードであれば、電力は端末からICカードに
供給される。供給された電力は、リーダライタ装置10
2との通信や、CPU100が、ROM(Read-Only Memory)1
04やRAM(Random Access Memory)105との間でプロ
グラムやデータの読み出し又は書き込みを行うためなど
に利用される。
【0007】もちろん、携帯や取り外しのために、ICカ
ードには電力が供給されないことがある。また、ICカー
ドに記憶される情報には、例えば決済口座の残高のよう
に、継続的に利用されるものの、随時更新される情報が
通常含まれる。このため、ICカードには、電気的に書き
換え可能なEEPROM(Electrically Erasable Programmab
le ROM)などの不揮発性メモリが欠かせない。
【0008】図1の例であれば、残高などの情報は、EE
PROM106に書き込まれることになる。EEPROM106に
既に書き込まれていたデータが更新される場合、図2に
示すように、CPU103は、EEPROM106のデータが更
新される更新対象領域201から更新される前の更新前
データを読み出し()、読み出された更新前データを
RAM105に書き込む。CPU103は、RAM105に書き
込まれた更新前データを更新する()。また、EEPROM
106から更新前データが読み出されると、CPU103
は、更新対象領域201のデータを消去する()。CP
U103は、更新対象領域201のデータが消去されて
から、RAM105に記憶されている更新後のデータを更
新対象領域201に書き込む。
【0009】EEPROMのような不揮発性メモリでは、その
物理的特性のため、データの更新には、上述のような更
新手順が必要となる。
【0010】ところで、リーダライタ装置や携帯電話機
の端末から電力が供給されている場合でも、リーダライ
タ装置との接続が意図せず途切れたり、携帯電話機の端
末が落下した衝撃で携帯電話機の端末からバッテリが外
れたりすることによって、電源が突然遮断されることが
ある。電源が遮断されるのが上述のような更新手順の途
中でなければ、電源が遮断されても、リーダライタ装置
と接続されていない場合などと同じく、データは維持さ
れる。
【0011】しかしながら、上述のような更新手順の途
中で電源が意図せず遮断されると、データが喪失してし
まう恐れがある。例えば更新対象領域201のデータが
消去されてから消去済みの更新対象領域201に更新後
データが書き込まれるまでに、電源が遮断されると、揮
発性のRAM201に記憶されたデータは喪失してしま
う。
【0012】不慮の事態によってデータの書き換え途中
にデータが欠損することを避けるため、例えば特開平9
−179787号公報に記載された携帯可能情報記憶媒
体では、書き換え前の情報が、不揮発性メモリに確保さ
れたバックアップ領域に複写される。バックアップ領域
に複写された書き換え前の情報は、書き換えが正常に行
われるまで有効な情報として維持される。書き換えに異
常があれば、バックアップ領域に複写された書き換え前
の情報が元の領域に書き込まれる。
【0013】また、特開平2000−357216号公
報に記載されたICカードでは、同じデータが不揮発性
メモリに確保された2つの記憶領域にそれぞれ書き込ま
れる。このデータに対する更新は、2つの記憶領域につ
いて交互に行われる。一方の記憶領域に記憶されたデー
タの更新が失敗したとしても、他方の記憶領域には、そ
の更新の前のデータが残っている。
【0014】これらの公報に記載されているように、更
新前データが不揮発性メモリの別の領域に記憶されてい
る場合、更新前データが消去されてから更新後データが
書き込まれるまでに、電源が遮断されたとしても、更新
前データは失われない。
【0015】
【発明が解決しようとする課題】但し、更新後データ
は、電源の遮断によって、やはり失われてしまう。この
ため、電源の遮断があると、電源再投入後に単独でデー
タの更新を再開することができなかった。
【0016】この問題は、電子商取引などでは、取引当
事者同士の同意があって、データが更新されることもあ
るので、取引当事者の一方で更新されたデータが失わ
れ、取引当事者同士の情報に不整合が生じるのは、取引
上特に大きな問題となる。
【0017】また、ICカードだけでなく、著作権保護機
能付きのメモリカードであるSD(Secure Digital)メモリ
カードなど、不揮発性メモリを備えたその他の不揮発性
メモリ装置でも、この問題は同様に発生する。
【0018】本発明は、上述のような従来の技術におけ
る課題を鑑みてなされたものであり、電源の遮断があっ
ても、電源再投入後にデータの更新や維持を必要に応じ
て行うことが可能な不揮発性メモリ装置、データ更新方
法、データ更新プログラム及びそのプログラムが記録さ
れたコンピュータ読み取り可能な記録媒体を提供するこ
とを目的とするものである。
【0019】
【課題を解決するための手段】上述の目的を達成するた
めに、本発明は、以下の手段を採用している。
【0020】本発明では、不揮発性メモリに既に書き込
まれていたデータが更新される場合、更新対象領域に対
する消去が行われてから、更新された後の更新後データ
が更新対象領域に書き込まれる。
【0021】データの更新のために、不揮発性メモリの
更新対象領域とは異なる領域に、更新用データ記憶領域
が確保される。更新データ書き込み手段は、更新対象領
域に対する消去の前に、更新される前の更新前データ及
び更新前データを更新後データに更新するのに必要な更
新用データを更新対象領域に書き込む。更新用データ
は、例えば更新前データの更新部分である更新データを
含む。
【0022】状態フラグ設定手段は、不揮発性メモリに
記憶される状態フラグを設定する。この状態フラグは、
更新対象領域に対する更新後データの書き込み途中であ
るか否かを表す。例えば更新後データが更新対象領域に
書き込まれると、状態フラグ設定手段は、状態フラグの
設定を、更新後データの書き込み途中であるという設定
から、更新後データの書き込み途中でないという設定に
変更する。
【0023】更新後データの書き込み途中に、意図しな
い電源遮断などがあり、データの更新が中断されたとす
ると、状態フラグは、不揮発性メモリに記憶されている
ので、電源が再投入されるのに伴って不揮発性メモリ装
置が起動する際には、更新後データの書き込み途中に設
定されたままである。
【0024】更新再開決定手段は、不揮発性メモリが起
動する際、状態フラグの設定が更新後データの書き込み
の途中であることを検出した場合、例えば外部からの指
示に従って、更新用データ記憶領域の更新前データ及び
更新用データを用いて更新対象領域に対する更新後デー
タの書き込みを再開するか、更新用データ記憶領域の更
新前データを更新対象領域に書き込むかを決定する。
【0025】更新後データも更新前データも、不揮発性
メモリに確保された更新用データ記憶領域に記憶された
データから得られるので、必要に応じて更新後データか
更新前データのいずれかを更新対象領域に書き込むこと
ができる。更新再開決定手段が外部からの指示に従う場
合には、この指示が与えられるまで不用意な書き込みが
行われることもなく、指示があれば、それに従い、更新
前データ及び更新後データのいずれのデータが書き込ま
れる。
【0026】このような不揮発性メモリ装置に、不揮発
性メモリだけでなく、揮発性メモリも備えてもよい。こ
の揮発性メモリは、更新前データ及び更新用データを一
時的に記憶するために用いられる。そして、更新用デー
タ書き込み手段は、揮発性メモリに記憶された更新前デ
ータ及び更新用データを更新用データ記憶領域に複写す
る。
【0027】この場合、例えば更新データの書き込み要
求がある度に、不揮発性メモリに確保された更新用デー
タ記憶領域に書き込みを行う必要がなくなる。更新前デ
ータや更新データ又は更新用データが所定量以上、揮発
性メモリに蓄積された後、揮発性メモリから不揮発性メ
モリの更新用データ記憶領域に更新前データ及び更新用
データを複写すればよい。
【0028】これによって不揮発性メモリに確保された
更新用データ記憶領域に対する書き込み回数を低減する
ことができ、データ更新時間の短縮を図ることができ
る。また、書き込み回数が減少すれば、不揮発性メモリ
の使用寿命も長くなる。
【0029】また、更新用データ書き込み手段は、更新
用データ記憶領域に更新後データの書き込み種別を書き
込むようにしてもよい。状態フラグ設定手段は、更新後
データの書き込み種別も状態フラグに設定する。更新再
開決定手段は、更新用データ記憶領域の書き込み種別が
状態フラグに設定された書き込み種別と対応する更新後
データについてのみ、書き込みを再開することを決定す
る。
【0030】書き込み種別を対象となるデータに合わせ
て適当に設定すれば、全ての更新用データについて書き
込みを再開する必要がない場合でも、必要なデータにつ
いてのみ書き込みを再開することができる。
【0031】この場合に、更新用データ書き込み手段
は、更新用データ記憶領域に、状態フラグに設定された
書き込み種別に対応する更新用データのみを書き込むよ
うにしてもよい。これによって、更新用データ記憶領域
に対する不必要な書き込みも回避することができる。
【0032】また、更新用データ書き込み手段は、更新
用データ記憶領域の基準位置からの更新前データ又は更
新用データのオフセットも更新用データ記憶領域に書き
込むようにしてもよい。この場合、更新用データ書き込
み手段は、オフセットに基づいて、更新前データ及び更
新用データの更新用データ記憶領域への書き込み開始位
置を定める。
【0033】これによって、不揮発性メモリに確保され
た更新用データ記憶領域の特定の箇所だけに更新用デー
タが多数回書き込まれる問題が回避される。その結果、
不揮発性メモリを最大限の期間利用することができる。
【0034】本発明は、電気通信回線などを介して個別
に流通するデータ更新プログラムとして提供されること
もある。このデータ更新プログラムは、不揮発性メモリ
を制御するCPUなどを備えた制御装置と協働し、この制
御装置を、上述の不揮発性メモリ装置として機能させ
る。例えばこの制御装置がデータ更新プログラムに従っ
て不揮発性メモリに対する制御を行ったり、不揮発性メ
モリ装置が動作したりすると、本発明は、データ更新方
法として実施される。また、データ更新プログラムは、
CD-ROMなどのコンピュータ読み取り可能な記録媒体に記
録された状態で流通することもある。
【0035】
【発明の実施の形態】以下、添付図面を参照して本発明
の実施の形態につき説明する。以下の実施の形態では、
本発明は、データ更新プログラムとして提供される。
【0036】このデータ更新プログラムは、例えばCPU
を内蔵したICカードや拡張されたSDメモリカード(以
下、SDXと記載する)に本発明の機能を実現させるプロ
グラムである。
【0037】SDXは、SDメモリカードのソフトウェアと
ハードウェアの構成をICカードと同等の構成に拡張した
ものである。SDXでは、電子商取引などに利用されるた
めに、OS(Operating System)や各種のアプリケーション
が利用するライブラリも用意される。
【0038】もっとも、SDXの基本的なハードウェア構
成は、図1に示されたCPUを内蔵したICカードの構成と
同様であるので、以下では、このICカードに内蔵された
CPUが、データ更新プログラムを実行するものとして説
明する。 (実施の形態1)CPUがデータ更新プログラムを実行す
ると、ICカードのハードウェアとデータ更新プログラム
が協働することによって、このICカードを本発明が適用
された不揮発性メモリ装置として機能させる。
【0039】図3に示すように、不揮発性メモリ装置
は、不揮発性メモリ301を備える。不揮発性メモリ3
01には、EEPROMを用いることができる。EEPROMやフラ
ッシュメモリでは、既述した通り、データの更新は、既
に書き込まれていたデータが更新される更新対象領域3
02に対して消去が行われてから、更新された後の更新
後データが更新対象領域302に書き込まれることによ
って行われる。
【0040】更新用データ書き込み手段305は、更新
される前の更新前データ及び更新前データを更新後デー
タに更新するのに必要な更新用データを不揮発性メモリ
301の更新対象領域302とは異なる領域に確保され
た更新用データ記憶領域に書き込む。
【0041】この不揮発性メモリ301には、データが
格納されるデータ格納領域303とは別に、不揮発性メ
モリ301の制御のためのワーク領域304が確保され
ており、更新用データ記憶領域として、このワーク領域
304が用いられる。
【0042】更新用データは、図3に示すように、例え
ば更新前データの更新部分である更新データや各データ
のデータサイズなどの管理情報を含む。
【0043】状態フラグ設定手段306は、不揮発性メ
モリ301のワーク領域304に記憶される状態フラグ
に値を設定する。状態フラグの値には、例えば更新対象
領域302に対する更新後データの書き込みの途中であ
ることを表す値(以下、書き込み中と記載)と、更新対
象領域302に対する更新後データの書き込みの途中で
ないことを表す値(以下、未処理と記載)とが用意され
る。
【0044】状態フラグは、更新前データと更新用デー
タとの組毎に用意される必要はない。例えば電子商取引
における一つの項目について複数の内部データが発生す
る場合、複数の内部データに対応する一連の組を単位と
して状態フラグが用意されてもよい。
【0045】更新再開決定手段307は、起動の後、状
態フラグの設定が書き込み中であることを検出した場
合、ワーク領域304の更新前データ及び更新用データ
を用いて前記更新対象領域に対する更新後データの書き
込みを再開するかワーク領域304の更新前データを更
新対象領域302に書き込むかを決定する。
【0046】更新用データのワーク領域への複写や状態
フラグの設定などに伴う、不揮発性メモリへの書き込み
(消去を含む)、不揮発性メモリからの読み出しの制御
は、データ更新プログラムを用いる場合、ICカードのCP
U103が行うことになる。また、CPU103は、この制
御を行うことによって、実施の形態1におけるデータ更
新方法を実行することにもなる。
【0047】図4はこの実施の形態1におけるデータ更
新方法を説明するためのフローチャートであり、データ
更新の中断がない場合の手順を表す。
【0048】図4に示すように、データ更新の必要な書
き込み要求があると、CPU103は、更新用データ書き
込み手段305として動作し、更新前データを更新対象
領域302からワーク領域304に複写する(S10
1)。すなわち、CPU103は、更新対象領域302か
ら更新前データを読み出し、読み出された更新前データ
をワーク領域304に書き込む制御を行う。
【0049】また、CPU103は、書き込み要求に伴っ
て入力された更新データを含む更新用データもワーク領
域304に書き込む(S102)。
【0050】ワーク領域304に更新前データ及び更新
用データを書き込むと、CPU103は、状態フラグ設定
手段305として動作し、状態フラグを書き込み中に設
定する(S103)。また、CPU103は、更新対象領
域302にあるデータを消去し、更新対象領域302を
書き込み可能な状態にする。
【0051】状態フラグを書き込み中に設定すると、CP
U103は、更新前データ及び更新用データを用いて生
成された更新後データを更新対象領域302に書き込む
制御を、その状態フラグに対応する全ての更新後データ
が更新対象領域302に書き込まれるまで繰り返す(S
104)。
【0052】この際、CPU103は、更新用データの管
理情報を参照してワーク領域304から更新前データと
更新データとを適宜読み出すことによって更新後データ
を生成する。
【0053】状態フラグに対応する全ての更新後データ
が更新対象領域302に書き込まれると、CPU103
は、状態フラグ設定手段305として動作し、状態フラ
グを未処理に設定する(S105)。状態フラグが未処
理に設定されると、ワーク領域304に記憶された更新
用データは適時消去される。
【0054】通常このようにデータの更新は行われる。
更新後データを更新対象領域302に書き込んでいる途
中に、意図しない電源遮断が起こっても、更新前データ
と更新データとを含む更新用データがワーク領域304
に残っているから、更新前データも更新後データも喪失
しない。電源が再投入されれば、更新前データか更新後
データを更新対象領域302に書き込むことができる。
すなわち、データ更新の途中で電源遮断などがあって
も、ICカードがその次に起動する際、データの更新を再
開するかデータを更新しないで更新前データを維持する
かを選択することができる。
【0055】図5はこの実施の形態1におけるデータ更
新方法を説明するための他のフローチャートであり、デ
ータ更新の中断後、データの更新再開又は維持を行う手
順を示す。
【0056】電源投入に伴う起動の際、CPU103は、
更新再開決定手段307として動作し、図5に示すよう
に、状態フラグが書き込み中であるか否かを検出する
(S201)。状態フラグの設定を検出することによっ
て、その起動の前のデータ更新が正常に行われたか否か
が判断される。
【0057】状態フラグが書き込み中ではなく未処理で
あることを検出した場合、その起動の前のデータ更新は
正常に行われることを意味するので、CPU103は、更
新再開決定手段307としての動作を終了し、データの
更新の再開も更新前データの維持も行われない。
【0058】一方、状態フラグが書き込み中であること
を検出した場合、その起動の前のデータ更新は異常によ
って完了していないことを意味するので、CPU103
は、継続して更新再開決定手段307として動作し、外
部からの指示に従い、データの更新を再開するか否かを
決定する(S202)。
【0059】データの更新を再開することを決定した場
合、CPU103は、ワーク領域304の更新前データ及
び更新用データを用いて生成した更新後データを更新対
象領域302に書き込む(S203)。
【0060】一方、データの更新を再開しないことを決
定した場合、CPU103は、ワーク領域304の更新前
データを更新対象領域302に書き込む(S204)。
【0061】更新後データ又は更新前データの更新対象
領域302への書き込みが行われると、CPU103は、
状態フラグ設定手段306として動作し、状態フラグを
未処理に設定する(S205)。
【0062】以上のように、この実施の形態1では、状
態フラグが書き込み中であることを検出した場合、外部
からの指示に従い、データの更新を再開するか否かが決
定されるため、この指示が与えられるまで更新対象領域
に不用意な書き込みが行われることもなく、指示があれ
ば、更新前データ及び更新後データのいずれのデータも
書き込むことができる。 (実施の形態2)実施の形態2における不揮発性メモリ
装置は、図6に示すように、不揮発性メモリ301だけ
でなく、RAMなどの揮発性メモリ601も備える。この
揮発性メモリ601にはワーク領域602が確保され、
このワーク領域602は更新前データ及び更新用データ
を一時的に記憶するために用いられる。
【0063】この場合に、不揮発性メモリ装置の更新用
データ書き込み手段305は、揮発性メモリ601のワ
ーク領域602に記憶された更新前データ及び更新用デ
ータを不揮発性メモリ301のワーク領域304に複写
する。
【0064】この実施の形態2では、ICカードに内蔵さ
れたCPU103は、データ更新プログラムに従って、揮
発性メモリ601への書き込みや揮発性メモリ601か
らの読み出しの制御も行う。この制御を行うことによっ
て、CPU103は、実施の形態2におけるデータ更新方
法を実行することにもなる。
【0065】図7はこの実施の形態2におけるデータ更
新方法を説明するためのフローチャートであり、データ
更新の中断がない場合の手順を表す。
【0066】図7に示すように、データ更新の必要な書
き込み要求があると、CPU103は、更新用データ書き
込み手段305として動作し、更新前データを更新用対
象領域302からワーク領域602に複写する(S70
1)。
【0067】また、CPU103は、書き込み要求に伴っ
て入力された更新データを含む更新用データもワーク領
域602に書き込む(S702)。
【0068】続いて、CPU103は、状態フラグ設定手
段306として動作し、揮発性メモリ601に記憶され
る状態フラグを書き込み中に設定する(S703)。
【0069】そして、CPU103は、揮発性メモリ60
1のワーク領域602に書き込まれた更新用データを不
揮発性メモリ301に確保されたワーク領域304に複
写する(S704)。この後、CPU103は、揮発性メ
モリ601に記憶された状態フラグも不揮発性メモリ3
01に複写する。
【0070】この後の手順は、実施の形態1で説明した
手順S104、S105と同様である。また、データ更
新の中断後、データの更新再開又は維持を行う手順も、
実施の形態1で説明した手順201〜205と同様に行
われる。
【0071】このように、揮発性メモリ601に更新前
データ及び更新用データを一時的に記憶しておく場合、
書き込み要求がある度に、ワーク領域304に更新用デ
ータを書き込む必要がなくなる。すなわち、手順S70
1から手順S702までが繰り返されて、ワーク領域6
02に更新前データや更新データ又は更新用データが所
定量以上蓄積されてから、手順S703以降を行うよう
にしてもよい。
【0072】この場合、不揮発性メモリ301に確保さ
れたワーク領域304に対する書き込み回数が減るか
ら、全体としてデータ更新の高速化を図ることが可能と
なる。更新データについては通常サイズが小さいことか
ら特に有効である。 (実施の形態3)実施の形態1で既述した通り、状態フ
ラグは、更新前データと更新用データの一連の組を単位
として用意されることがある。図8に示す例では、N個
の組に対して1つの状態フラグが対応付けられている。
【0073】ところで、一連の組には、データ更新の再
開が必ずしも必要ないデータが含まれることもある。例
えば電子商取引などにおいて時期の異なる複数のトラン
ザクションで共用されるデータは、データ更新の再開の
必要性が高いが、1回のトランザクションでしか利用さ
ない一時的なデータに対するデータ更新の再開の必要性
は少ない。このような場合には、必要なデータについて
のみデータ更新の再開又は維持が行い得るようにすれば
十分である。
【0074】このために、状態フラグに設定される値に
書き込み種別が含まれるようにしてもよい。ここで、不
揮発性メモリ装置の基本的な構成は、実施の形態1と同
様であるが、不揮発性メモリ装置の状態フラグ設定手段
306は、状態フラグの値に、書き込み種別として絶対
書き込み又は通常書き込みを設定するものとする。絶対
書き込みは、例えばデータ更新の再開又は維持の選択に
対する必要なことが予め知られているデータのみの書き
込みを表す。通常書き込みは、全てのデータの書き込み
を表す。この場合、状態フラグに、未処理、書き込み
中、絶対書き込み、通常書き込みという4つの値を用意
してもよいし、未処理、絶対書き込み、通常書き込みと
いう3つの値を用意してもよい。状態フラグに未処理、
絶対書き込み、通常書き込みの3つの値を用意した場
合、絶対書き込み又は通常書き込みは、書き込み中であ
ることも表す。以下では、状態フラグに3つの値が用意
されているものとする。
【0075】また、更新用データ書き込み手段305
は、ワーク領域304に書き込み種別も書き込む。書き
込み種別は、更新用データの管理情報の一つとして扱わ
れる。管理情報には、この他、更新前データのサイズ、
更新データのサイズ、更新前データの更新位置が含まれ
る。
【0076】この実施の形態3では、データ更新プログ
ラムは、このような不揮発性メモリ装置としてICカード
を機能させる。また、ICカードのCPU103は、実施の
形態3におけるデータ更新方法を実行することにもな
る。
【0077】図9はこの実施の形態3におけるデータ更
新方法を説明するためのフローチャートであり、データ
更新の中断がない場合の手順を表す。
【0078】図9に示すように、データ更新の必要な書
き込み要求があると、CPU103は、実施の形態1と同
様に、更新用データ書き込み手段305として動作し、
更新前データを更新用対象領域302からワーク領域3
04に複写する(S101)。
【0079】また、CPU103は、書き込み要求に伴っ
て入力された更新データを含む更新用データもワーク領
域304に書き込む(S901)。この更新用データに
は、絶対書き込みか通常書き込みを表す書き込み種別が
含まれる。
【0080】ワーク領域304に更新前データ及び更新
用データを書き込むと、CPU103は、状態フラグ設定
手段305として動作し、状態フラグに書き込み種別を
設定する(S902)。また、CPU103は、更新対象
領域302にあるデータを消去し、更新対象領域302
を書き込み可能な状態にする。
【0081】この後、実施の形態1と同様に手順S10
4が行われ、手順S104が完了すれば、手順S105
が行われる。意図しない電源の遮断があり、手順S10
5が行われなかった場合、ICカードがその次に起動する
際、データの更新を再開するかデータを更新しないで更
新前データを維持するかを選択することができる。
【0082】図10はこの実施の形態3におけるデータ
更新方法を説明するための他のフローチャートであり、
データ更新の中断後、データの更新再開又は維持を行う
手順を示す。
【0083】電源投入に伴う起動の際、CPU103は、
更新再開決定手段307として動作し、図10に示すよ
うに、状態フラグが書き込み種別であるか否かを検出す
る(S1001)。例えば状態フラグが未処理でなけれ
ば、状態フラグは書き込み種別であると検出される。
【0084】状態フラグが未処理であることを検出した
場合、その起動の前のデータ更新は正常に行われていた
ことを意味するので、実施の形態1と同様に、CPU10
3は、更新再開決定手段307としての動作を終了し、
データの更新の再開も更新前データの維持も行われな
い。
【0085】一方、状態フラグが書き込み種別であるこ
とを検出した場合、その起動の前のデータ更新は異常に
よって完了していないことを意味するので、CPU103
は、継続して更新再開決定手段307として動作し、実
施の形態1と同様に、外部からの指示に従い、データの
更新を再開するか否かを決定する(S202)。
【0086】データの更新を再開することを決定した場
合、CPU103は、ワーク領域304の書き込み種別が
状態フラグに設定された書き込み種別と対応する更新後
データのみを更新対象領域302に書き込む(S100
2)。状態フラグに設定された書き込み種別が絶対書き
込みであれば、更新用データに絶対書き込みという書き
込み種別が書き込まれたものについてのみ、更新後デー
タが生成され、それらが更新対象領域302に書き込ま
れる。更新用データに通常書き込みという書き込み種別
が書き込まれたものの更新後データは生成されない。一
方、状態フラグに設定された書き込み種別が通常書き込
みであれば、更新用データに絶対書き込みという書き込
み種別が書き込まれたものも含め全てについて、更新後
データが生成され、それらが更新対象領域302に書き
込まれる。
【0087】また、データの更新を再開しないことを決
定した場合、CPU103は、ワーク領域304の更新前
データを更新対象領域302に書き込む(S204)。
【0088】更新後データ又は更新前データの更新対象
領域302への書き込みが行われると、CPU103は、
状態フラグ設定手段306として動作し、状態フラグを
未処理に設定する(S205)。
【0089】このように、実施の形態3では、必要なデ
ータについてのみ選択にデータの更新を再開することが
できる。
【0090】なお、この実施の形態3では、全ての更新
用データをワーク領域604に書き込んだが、これに限
られるものではない。状態フラグに設定された書き込み
種別に対応するもののみ、ワーク領域604に更新用デ
ータを書き込むようにしてもよい。
【0091】また、実施の形態2のように揮発性メモリ
601が用いられる場合でも、実施の形態3の内容は基
本的に変わらない。この場合、状態フラグ設定手段30
6は、揮発性メモリ601のワーク領域602に記憶さ
れる状態フラグに書き込み種別又は未処理を設定し、ワ
ーク領域304に記憶すればよい。
【0092】また、各実施の形態において、更新用デー
タ書き込み手段305は、ワーク領域304の基準位置
からの更新前データ又は更新用データのオフセットもワ
ーク領域304に書き込むようにしてもよい。この場
合、更新用データ書き込み手段305は、オフセットに
基づいて、更新前データ及び更新用データのワーク領域
304への書き込み開始位置を定める。オフセットは、
例えば状態フラグや管理情報の個数と同様に、更新前デ
ータと更新用データの一連の組に対応して、ワーク領域
304に書き込まれる。
【0093】これによって、既に書き込まれている更新
前データ及び更新用データの後、オフセットで示された
位置に次の更新前データ及び更新後データが書き込まれ
る。また、書き込みタイミングごとにオフセットの値を
変化させる。例えば一連のデータをワーク領域304に
書き込む場合に、ワーク領域304の開始位置からのオ
フセットをはじめは0にしておき、オフセットで示され
た位置に1番目のデータが書き込まれたら、オフセット
は所定量増分される。2番目のデータは、増分されたオ
フセットで示される位置に書き込まれ、2番目のデータ
が書き込まれると、さらにオフセットが所定量だけ増分
される。このように、オフセットで示された位置に更新
前データ及び更新後データが次々と書き込まれる結果、
更新前データ及び更新用データがワーク領域304に渡
って満遍なく書き込まれることになり、ワーク領域の特
定の箇所だけに更新用データが多数回書き込まれるのを
回避することができる。従って、不揮発性メモリを最大
限の期間利用することができる。
【0094】なお、データ更新プログラムを専用の回路
で実現し、不揮発性メモリ装置を構成することも可能で
ある。また、データ更新プログラムは、ICカードなどの
ROMや書き換え可能な不揮発性メモリに記憶されるが、
データ更新プログラム単体が電気通信回線などを介して
流通することもある。さらに、データ更新プログラム
は、CD-ROMなどのコンピュータ読み取り可能な記録媒体
に記録された状態で流通することもある。
【0095】
【発明の効果】以上説明した通り、本発明では、更新後
データも更新前データも、不揮発性メモリの更新用デー
タ記憶領域に書き込まれており、装置が起動する際に更
新後データか更新前データのいずれかを更新対象領域に
書き込むかを決定する。このため、データの更新が意図
しない電源遮断などによって中断されたとしても、必要
に応じてデータの更新を再開することも、元のデータに
戻すこともできる。
【0096】また、揮発性メモリに記憶された更新前デ
ータ及び更新用データを更新用データ記憶領域に複写す
るようにすれば、不揮発性メモリの更新用データ記憶領
域に対する書き込み回数を低減することができ、データ
更新時間の短縮を図ることができる。また、書き込み回
数が減少すれば、不揮発性メモリの使用寿命も長くな
る。
【0097】また、更新用データ記憶領域に更新後デー
タの書き込み種別を書き込み、状態フラグに書き込み種
別も設定するようにすれば、全ての更新用データについ
て書き込みを再開する必要がない場合でも、必要なデー
タについてのみ書き込みを再開することができる。
【0098】また、更新用データ記憶領域の基準位置か
らの更新前データ又は更新用データのオフセットに基づ
いて、更新前データ及び更新用データの書き込み開始位
置を決定すれば、更新用データ記憶領域の特定の箇所だ
けに更新用データが多数回書き込まれる問題が回避され
る。
【図面の簡単な説明】
【図1】 ICカードの概略構成を示す図
【図2】 データを更新する従来の手順を説明するため
の図
【図3】 実施の形態1における不揮発性メモリ装置の
概略構成を示す図
【図4】 実施の形態1におけるデータ更新方法を説明
するためのフローチャート
【図5】 実施の形態1におけるデータ更新方法を説明
するための他のフローチャート
【図6】 実施の形態2における不揮発性メモリ装置の
概略構成を示す図
【図7】 実施の形態2におけるデータ更新方法を説明
するためのフローチャート
【図8】 更新用データと状態フラグを具体的に説明す
るための図
【図9】 実施の形態3におけるデータ更新方法を説明
するためのフローチャート
【図10】 実施の形態3におけるデータ更新方法を説
明するための他のフローチャート
【符号の説明】
106 EEPROM 301 不揮発性メモリ 302 更新対象領域 303 データ格納領域 304 ワーク領域 305 更新用データ書き込み手段 306 状態フラグ設定手段 307 更新再開決定手段
フロントページの続き (72)発明者 中部 太志 東広島市鏡山3丁目10番18号株式会社松下 電器情報システム広島研究所内 Fターム(参考) 5B018 GA04 HA03 HA40 KA12 MA24 NA06 QA05 QA15 5B035 AA11 BB09 CA11 CA29 CA31 5B082 DE06

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 不揮発性メモリに既に書き込まれていた
    データが更新される更新対象領域に対して消去を行って
    から、更新された後の更新後データを前記更新対象領域
    に書き込む不揮発性メモリ装置であって、 更新される前の更新前データ及び前記更新前データを前
    記更新後データに更新するのに必要な更新用データを、
    前記不揮発性メモリの前記更新対象領域とは異なる領域
    に確保された更新用データ記憶領域に書き込む更新用デ
    ータ書き込み手段と、 前記不揮発性メモリに記憶された状態フラグに、前記更
    新対象領域に対する前記更新後データの書き込みの途中
    であるか否かを設定する状態フラグ設定手段と、 該不揮発性メモリ装置が起動する際、前記状態フラグの
    設定が前記更新後データの書き込みの途中であることを
    検出した場合、前記更新用データ記憶領域の前記更新前
    データ及び前記更新用データを用いて前記更新対象領域
    に対する前記更新後データの書き込みを再開するか前記
    更新用データ記憶領域の前記更新前データを前記更新対
    象領域に書き込むかを決定する更新再開決定手段とを備
    えた不揮発性メモリ装置。
  2. 【請求項2】 前記更新前データ及び前記更新用データ
    を一時的に記憶するための揮発性メモリを備え、 前記更新用データ書き込み手段は、前記揮発性メモリに
    記憶された前記更新前データ及び前記更新用データを前
    記更新用データ記憶領域に複写する請求項1記載の不揮
    発性メモリ装置。
  3. 【請求項3】 前記更新用データ書き込み手段は、前記
    更新用データ記憶領域に前記更新後データの書き込み種
    別も書き込み、 前記状態フラグ設定手段は、前記更新後データの書き込
    み種別も前記状態フラグに設定し、 前記更新再開決定手段は、前記更新用データ記憶領域の
    書き込み種別が前記状態フラグに設定された書き込み種
    別と対応する前記更新後データについてのみ、書き込み
    を再開することを決定する請求項1又は2記載の不揮発
    性メモリ装置。
  4. 【請求項4】 前記更新用データ書き込み手段は、前記
    状態フラグに設定された書き込み種別に対応する前記更
    新用データのみを前記更新用データ記憶領域に書き込む
    請求項3記載の不揮発性メモリ装置。
  5. 【請求項5】 前記更新用データ書き込み手段は、前記
    更新用データ記憶領域の基準位置からの前記更新前デー
    タ又は前記更新用データのオフセットも前記更新用デー
    タ記憶領域に書き込み、前記オフセットに基づいて、前
    記更新前データ及び前記更新用データの前記更新用デー
    タ記憶領域への書き込み開始位置を定める請求項1記載
    の不揮発性メモリ装置。
  6. 【請求項6】 不揮発性メモリに既に書き込まれていた
    データが更新される更新対象領域に対して消去を行って
    から、更新された後の更新後データを前記更新対象領域
    に書き込む不揮発性メモリ方法であって、 更新される前の更新前データ及び前記更新前データを前
    記更新後データに更新するのに必要な更新用データを、
    前記不揮発性メモリの前記更新対象領域とは異なる領域
    に確保された更新用データ記憶領域に書き込む手順と、 前記不揮発性メモリに記憶された状態フラグに、前記更
    新対象領域に対する前記更新後データの書き込みの途中
    であるか否かを設定する手順と、 該不揮発性メモリ装置が起動する際、前記状態フラグの
    設定が前記更新後データの書き込みの途中であることを
    検出した場合、前記更新用データ記憶領域の前記更新前
    データ及び前記更新用データを用いて前記更新対象領域
    に対する前記更新後データの書き込みを再開するか前記
    更新用データ記憶領域の前記更新前データを前記更新対
    象領域に書き込むかを決定する手順とを備えたデータ更
    新方法。
  7. 【請求項7】 既に書き込まれていたデータが更新され
    る更新対象領域に対して消去が行われてから、更新され
    た後の更新後データが前記更新対象領域に書き込まれる
    不揮発性メモリを制御する制御装置を、 更新される前の更新前データ及び前記更新前データを前
    記更新後データに更新するのに必要な更新用データを、
    前記不揮発性メモリの前記更新対象領域とは異なる領域
    に確保された更新用データ記憶領域に書き込む更新用デ
    ータ書き込み手段、 前記不揮発性メモリに記憶された状態フラグに、前記更
    新対象領域に対する前記更新後データの書き込みの途中
    であるか否かを設定する状態フラグ設定手段、 起動の際、前記状態フラグの設定が前記更新後データの
    書き込みの途中であることを検出した場合、前記更新用
    データ記憶領域の前記更新前データ及び前記更新用デー
    タを用いて前記更新対象領域に対する前記更新後データ
    の書き込みを再開するか前記更新用データ記憶領域の前
    記更新前データを前記更新対象領域に書き込むかを決定
    する更新再開決定手段として機能させるためのデータ更
    新プログラム。
  8. 【請求項8】 請求項7に記載のデータ更新プログラム
    が記録されたコンピュータ読み取り可能な記録媒体。
JP2002014150A 2002-01-23 2002-01-23 不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体 Pending JP2003216511A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002014150A JP2003216511A (ja) 2002-01-23 2002-01-23 不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002014150A JP2003216511A (ja) 2002-01-23 2002-01-23 不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体

Publications (1)

Publication Number Publication Date
JP2003216511A true JP2003216511A (ja) 2003-07-31

Family

ID=27650913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002014150A Pending JP2003216511A (ja) 2002-01-23 2002-01-23 不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体

Country Status (1)

Country Link
JP (1) JP2003216511A (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005524133A (ja) * 2002-04-16 2005-08-11 アエスカ エス.ア. トランザクションにおけるメモリカードのデータの変更方法
JP2005346566A (ja) * 2004-06-04 2005-12-15 Matsushita Electric Ind Co Ltd 携帯電話
JP2006011818A (ja) * 2004-06-25 2006-01-12 Toshiba Corp 携帯可能電子装置及び携帯可能電子装置の制御方法
JP2006276982A (ja) * 2005-03-28 2006-10-12 Fujitsu Ltd ファイル管理装置、及び、ファイル管理方法
JPWO2005041050A1 (ja) * 2003-10-27 2007-11-22 松下電器産業株式会社 記録媒体、データ処理装置及びデータ処理方法
JP2008134945A (ja) * 2006-11-29 2008-06-12 Dainippon Printing Co Ltd 記憶装置、記憶装置のプログラム及び記憶処理方法
JP2009157756A (ja) * 2007-12-27 2009-07-16 Toshiba Corp 情報処理装置およびデータ復旧方法
JP2009169747A (ja) * 2008-01-17 2009-07-30 Toshiba Corp 情報処理装置およびデータ復旧方法
JP2009187079A (ja) * 2008-02-04 2009-08-20 Toshiba Corp 情報処理装置およびデータ復旧方法
WO2010134300A1 (ja) * 2009-05-21 2010-11-25 パナソニック株式会社 メモリコントローラ、不揮発性記憶装置、アクセス装置、不揮発性記憶システム、データ書き込み方法、および、プログラム
JP2013003831A (ja) * 2011-06-16 2013-01-07 Dainippon Printing Co Ltd Icチップ、icチップ用処理プログラム、及びicチップにおける書き込み処理方法
CN102880561A (zh) * 2011-05-13 2013-01-16 株式会社东海理化电机制作所 闪存装置
JP2013092938A (ja) * 2011-10-26 2013-05-16 Dainippon Printing Co Ltd Icチップ、icチップにおける処理方法、icチップ用処理プログラム、及びicカード等

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005524133A (ja) * 2002-04-16 2005-08-11 アエスカ エス.ア. トランザクションにおけるメモリカードのデータの変更方法
JPWO2005041050A1 (ja) * 2003-10-27 2007-11-22 松下電器産業株式会社 記録媒体、データ処理装置及びデータ処理方法
JP4731325B2 (ja) * 2003-10-27 2011-07-20 パナソニック株式会社 記録媒体、データ処理装置及びデータ処理方法
JP4634745B2 (ja) * 2004-06-04 2011-02-16 パナソニック株式会社 携帯電話
JP2005346566A (ja) * 2004-06-04 2005-12-15 Matsushita Electric Ind Co Ltd 携帯電話
JP2006011818A (ja) * 2004-06-25 2006-01-12 Toshiba Corp 携帯可能電子装置及び携帯可能電子装置の制御方法
JP2006276982A (ja) * 2005-03-28 2006-10-12 Fujitsu Ltd ファイル管理装置、及び、ファイル管理方法
JP2008134945A (ja) * 2006-11-29 2008-06-12 Dainippon Printing Co Ltd 記憶装置、記憶装置のプログラム及び記憶処理方法
JP2009157756A (ja) * 2007-12-27 2009-07-16 Toshiba Corp 情報処理装置およびデータ復旧方法
JP2009169747A (ja) * 2008-01-17 2009-07-30 Toshiba Corp 情報処理装置およびデータ復旧方法
JP2009187079A (ja) * 2008-02-04 2009-08-20 Toshiba Corp 情報処理装置およびデータ復旧方法
WO2010134300A1 (ja) * 2009-05-21 2010-11-25 パナソニック株式会社 メモリコントローラ、不揮発性記憶装置、アクセス装置、不揮発性記憶システム、データ書き込み方法、および、プログラム
US8688896B2 (en) 2009-05-21 2014-04-01 Panasonic Corporation High speed writing mode in memory controller, nonvolatile storage device, accessing device, nonvolatile storage system, and method and program for writing data
CN102880561A (zh) * 2011-05-13 2013-01-16 株式会社东海理化电机制作所 闪存装置
US9465730B2 (en) 2011-05-13 2016-10-11 Kabushiki Kaisha Tokai Rika Denki Seisakusho Flash memory device
JP2013003831A (ja) * 2011-06-16 2013-01-07 Dainippon Printing Co Ltd Icチップ、icチップ用処理プログラム、及びicチップにおける書き込み処理方法
JP2013092938A (ja) * 2011-10-26 2013-05-16 Dainippon Printing Co Ltd Icチップ、icチップにおける処理方法、icチップ用処理プログラム、及びicカード等

Similar Documents

Publication Publication Date Title
JP4768237B2 (ja) 携帯可能電子装置及び携帯可能電子装置の制御方法
JP4701618B2 (ja) 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
JP2003216511A (ja) 不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体
JP2010182270A (ja) 携帯可能電子装置および携帯可能電子装置におけるデータ管理方法
KR100746198B1 (ko) 데이터 저장장치, 데이터 저장방법, 및 그 기록매체
CN109685190B (zh) 一种ic卡掉电保护方法及装置
JP3376331B2 (ja) フラッシュメモリを用いる記憶方法及び記憶制御プログラムを記録した記録媒体
JP6233134B2 (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム
JP2000357216A (ja) Icカード
WO2005026924A1 (ja) データ更新システム、データ更新装置及び外部記憶媒体
JP7322923B2 (ja) セキュアエレメント,トランザクション制御方法およびデバイス
JP5341947B2 (ja) Icカード、icカードの制御方法、および携帯可能電子装置の制御方法
JP2004265275A (ja) Icカード及びicカードプログラム
JP2008305263A (ja) 不揮発性半導体記憶装置及びメモリ管理方法
JP7068603B2 (ja) 電子情報記憶媒体、icカード、電子情報記憶媒体によるアップデート方法及びアップデートプログラム
JP6915437B2 (ja) 電子情報記憶媒体、icカード、電子情報記憶媒体によるアップデート方法及びアップデートプログラム
JP3863479B2 (ja) Icカード
CN114528147B (zh) 双操作***中指纹删除的方法和装置
JP2005174468A (ja) フラッシュメモリのアクセス制御方法
JP2008134945A (ja) 記憶装置、記憶装置のプログラム及び記憶処理方法
JP2005025441A (ja) Icカードのアプリケーションプログラム更新方法
JP5853559B2 (ja) Icチップ、icチップにおける処理方法、icチップ用処理プログラム、及びicカード
JP6281302B2 (ja) 情報処理装置、icカード、及びデータ処理方法
JP5853590B2 (ja) Icチップ、icチップにおける処理方法、icチップ用処理プログラム、及びicカード等
JP6252341B2 (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム