JP2015191395A - 電子情報記憶媒体、情報処理方法、及び情報処理プログラム - Google Patents

電子情報記憶媒体、情報処理方法、及び情報処理プログラム Download PDF

Info

Publication number
JP2015191395A
JP2015191395A JP2014067506A JP2014067506A JP2015191395A JP 2015191395 A JP2015191395 A JP 2015191395A JP 2014067506 A JP2014067506 A JP 2014067506A JP 2014067506 A JP2014067506 A JP 2014067506A JP 2015191395 A JP2015191395 A JP 2015191395A
Authority
JP
Japan
Prior art keywords
data
writing
predetermined size
dummy
area
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
JP2014067506A
Other languages
English (en)
Other versions
JP6233134B2 (ja
Inventor
直樹 勝又
Naoki Katsumata
直樹 勝又
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing 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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2014067506A priority Critical patent/JP6233134B2/ja
Publication of JP2015191395A publication Critical patent/JP2015191395A/ja
Application granted granted Critical
Publication of JP6233134B2 publication Critical patent/JP6233134B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

【課題】消去または書き込み途中の電源断により、不揮発性メモリの状態が不定状態となった場合でも、そのことによる影響を受けずにデータの内容を保証することが可能な電子情報記憶媒体、情報処理方法、及び情報処理プログラムを提供する。【解決手段】CPU10は、不揮発性メモリ13に書き込まれたログデータと同じサイズのダミーデータを当該ログデータに続けて不揮発性メモリ13に書き込み、当該CPU10の再起動時に、ダミーデータと同じサイズの分割領域であって消去状態にある分割領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを書き込む。【選択図】図4

Description

不揮発性メモリを備えるICチップ等の電子情報記憶媒体の技術分野に関する。
ICチップの不揮発性メモリの状態は、大別して、「消去済み」と、「書き込み済みと、「不定」との3つの状態に分けることができる。消去済みとは、全てのbitが0、もしくは1の安定している状態(以下、「消去状態」という)である(0か1かは、ICチップにより異なる)。この消去状態になるのは、正常に消去動作が完了した場合、消去または書き込み途中に電源断が発生し、かつ、不定とならなかった場合などが挙げられる。書き込み済みとは、いくつかのbitが消去状態から変化しており、かつ、安定している状態(以下、「書き込み状態」という)である。この書き込み状態になるのは、正常に書き込み動作が完了した場合、消去または書き込み途中に電源断が発生し、かつ、不定とならなかった場合などが挙げられる。不定とは、不揮発性メモリの状態が安定していない状態(以下、「不定状態」という)であり、例えば、時間経過により不揮発性メモリに格納されているデータが変化した状態や、該当領域に書き込みを行った際、書き込み結果が意図した値とならない状態、浅く書き込まれた結果、「0」か「1」どちらの値にも変化しうる状態である。この不定状態となるのは、消去または書き込み途中に電源断が発生し、かつ安定しなかった場合や、ICチップが故障した場合などが挙げられる。
これらの状態を取りうる不揮発性メモリにおいて、意図しない状態とならないようにするため、トランザクション(Transaction)という仕組みが利用されている。トランザクションとは、一連の消去または書き込み処理において、開始前もしくは終了後のどちらかの状態のみを取り得るようにする仕組みのことを言う。特許文献1には、電源供給が中断した場合に、データの書き込み前の状態に戻すことが記載されている。トランザクションでは、消去または書き込み処理の対象領域データを事前にバックアップしておき、消去または書き込み処理が失敗した場合には、バックアップしておいたデータを書き戻す一方、消去または書き込み処理が成功した場合には、バックアップしておいたデータを無効化するようになっている。このように、消去または書き込み処理の動作を保証するためのトランザクション内においても、消去または書き込み処理が実施されており、トランザクションとは異なる仕組みでその動作を保証する必要がある。トランザクション内での消去または書き込み処理の保証に関して、従来技術では、バックアップ処理において、バックアップ用のデータは、必要に応じて書き足すことで書き換えを実施しない対策、或いは、チェックサムやCRC(Cyclic Redundancy Check)等の妥当性確認データを保存しておき、必要に応じて確認するなどの対策が講じられている。
特許4195822号
従来技術での対策により、多くのケースにおいてはバックアップされたデータの内容を保証することが可能となる。しかしながら、不揮発性メモリの状態が不定状態となっている場合については、その領域を検知、回避することができず、そのまま不定状態の領域を使用してしまうことでデータが破損してしまう可能性があった。
そこで、本発明は、消去または書き込み途中の電源断により、不揮発性メモリの状態が不定状態となった場合でも、そのことによる影響を受けずにデータの内容を保証することが可能な電子情報記憶媒体、情報処理方法、及び情報処理プログラムを提供することを目的とする。
上記課題を解決するために、請求項1に記載の発明は、不揮発性メモリとプロセッサとを備える電子情報記憶媒体において、前記プロセッサは、所定のデータを前記不揮発性メモリに書き込む第1書き込み手段と、前記書き込まれた前記所定のデータと同じ所定サイズのダミーデータを当該所定のデータに続けて前記不揮発性メモリに書き込む第2書き込み手段と、当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記不揮発性メモリに書き込む第3書き込み手段と、を備えることを特徴とする。
請求項2に記載の発明は、請求項1に記載の電子情報記憶媒体において、前記不揮発性メモリは、実データを格納するデータ格納領域と、前記実データのバックアップデータを格納するバックアップ領域と、前記バックアップデータのログデータであって少なくとも前記バックアップデータの格納先を示すログデータを前記所定のデータとして格納するログデータ格納領域と、を有し、前記第1書き込み手段は、前記データ格納領域の前記実データを書き換える場合、当該実データのバックアップデータを前記バックアップ領域に書き込み、且つ、前記バックアップデータの前記ログデータをログデータ格納領域に書き込んだ後に、当該実データを書き換え、前記第2書き込み手段は、前記ログデータ格納領域に書き込まれた前記ログデータと同じ所定サイズのダミーデータを当該ログデータに続けて前記ログデータ格納領域に書き込み、前記第3書き込み手段は、当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記ログデータ格納領域に書き込むことを特徴とする。
請求項3に記載の発明は、請求項2に記載の電子情報記憶媒体において、前記第3書き込み手段は、当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を2つ分以上空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記ログデータ格納領域に書き込むことを特徴とする。
請求項4に記載の発明は、請求項2に記載の電子情報記憶媒体において、前記第3書き込み手段は、前記プロセッサの再起動時に前記ログデータ格納領域に最新のデータとして異常な所定サイズのデータが格納され、且つ当該最新のデータの1つ前のデータとして異常な前記所定サイズのデータが格納されている場合において、当該最新のデータの1つ前の所定サイズのデータのさらに1つ前の領域が前記消去状態である場合、当該最初のデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該最初のデータと同じ所定サイズのダミーデータを書き込むことを特徴とする。
請求項5に記載の発明は、請求項2に記載の電子情報記憶媒体において、前記プロセッサの再起動時に前記ログデータ格納領域に最新のデータとして正常な前記ログデータが格納されている場合、当該ログデータに基づいて前記バックアップデータを前記データ格納領域に書き戻す書き戻し手段を更に備えることを特徴とする。
請求項6に記載の発明は、請求項2に記載の電子情報記憶媒体において、前記プロセッサの再起動時に前記ログデータ格納領域に最新のデータとして正常でない所定サイズのデータが格納されている場合において、当該最新のデータの1つ前のデータとして正常な前記ログデータが格納されている場合、当該ログデータに基づいて前記バックアップデータを前記データ格納領域に書き戻す書き戻し手段を更に備えることを特徴とする。
請求項7に記載の発明は、不揮発性メモリとプロセッサとを備える電子情報記憶媒体において前記プロセッサにより実行される情報処理方法であって、所定のデータを前記不揮発性メモリに書き込む第1書き込みステップと、前記書き込まれた前記所定のデータと同じ所定サイズのダミーデータを当該所定のデータに続けて前記不揮発性メモリに書き込む第2書き込みステップと、当該プロセッサの再起動時に前記不揮発性メモリに、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記不揮発性メモリに書き込む第3書き込みステップと、を含むことを特徴とする。
請求項8に記載の発明は、不揮発性メモリとプロセッサとを備える電子情報記憶媒体における前記プロセッサを、所定のデータを前記不揮発性メモリに書き込む第1書き込み手段と、前記書き込まれた前記所定のデータと同じ所定サイズのダミーデータを当該所定のデータに続けて前記不揮発性メモリに書き込む第2書き込み手段と、当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記不揮発性メモリに書き込む第3書き込み手段として機能させることを特徴とする。
本発明によれば、消去または書き込み途中の電源断により、不揮発性メモリの状態が不定状態となった場合でも、そのことによる影響を受けずにデータの内容を保証することができる。
ICカード1の概要構成例を示す図である。 (A)は、ログデータ格納領域の概念図を示す図であり、(B)は、ログデータの構造例を示す図である。 ログデータ格納領域Rにおける分割領域R1〜R9に、ログデータ、またはダミーデータが書き込まれる様子を示す概念図である。 電源投入時のCPU10の処理の一例を示すフローチャートである。 コマンド受信時のCPU10の処理の一例を示すフローチャートである。
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、ICカードに対して本発明を適用した場合の実施の形態である。
先ず、図1を参照して、本実施形態に係るICカード1の構成及び機能概要について説明する。図1は、ICカード1の概要構成例を示す図である。なお、ICカード1は、キャッシュカード、クレジットカード、社員カード等として使用される。或いは、ICカード1は、スマートフォンや携帯電話機等の通信機器に組み込まれる。ICチップ1aは通信機器の回路基板上に直接組み込んで構成するようにしてもよい。
ICカード1には、図1に示すように、ICチップ1aが搭載されている。ICチップ1aは、本発明の電子情報記憶媒体の一例である。ICチップ1aは、CPU(Central Processing Unit)10、RAM(Random Access Memory)11、ROM(Read Only Memory)12、不揮発性メモリ13、及びI/O回路14を備えて構成される。なお、I/O回路14は、外部端末2とのインターフェイスを担う。ICカード1が接触ICカードの場合、I/O回路14には、例えばISO/IEC7816によって定められたC1〜C8の8個の端子が設けられている。例えば、C1端子は電源端子、C2端子はリセット端子、C3端子はクロック端子、C5端子はグランド端子、C7端子は外部端末2とのデータ通信を行う端子である。なお、この例では、接触式のICカードの例を示したが、外部端末2に近づくことにより、磁界をエネルギーとして無結線状態で電源供給され(電圧印加され)、動作する非接触式のICカード(アンテナ及び変復調回路を含む)であってもよい。外部端末2の例としては、ICカード発行機、ATM、改札機、認証用ゲート等が挙げられる。或いは、ICカード1が通信機器に組み込まれる場合、外部端末2には通信機器の機能を担うコントローラが該当する。
CPU10は、ROM12または不揮発性メモリ13に記憶された各種プログラム(本発明の情報処理プログラムを含む)を実行するプロセッサ(コンピュータ)である。CPU10は、例えば外部端末2からI/O回路14を介して受信されたコマンドに応じて、プログラムに従って後述する処理を実行する。ここで、コマンドは、例えば、APDU(Application Protocol Data Unit)として外部端末2から送信される。APDUとして送られるコマンドは、CLA部、INS部、P1部、P2部、Lc部、Data部、Le部から構成される。CLA部及びINS部は、コマンドの種類を示す情報を格納する。P1部及びP2部は、コマンド処理におけるパラメータを格納する。Lc部は、Data部のデータ長を格納する。Data部は、例えば更新用のデータを格納する。Le部は、コマンドをチェックするための情報を格納する。
不揮発性メモリ13には、例えばフラッシュメモリが適用される。なお、不揮発性メモリ13は、「Electrically Erasable Programmable Read-Only Memory」であっても構わない。不揮発性メモリ13には、データ格納領域、バックアップ領域、及びログデータ格納領域等を有する。データ格納領域には、例えばアプリケーションプログラム等で使用される実データが格納される。実データは、データ格納領域への書き込み用のデータ、または書き換え用のデータである。ここで、書き込みとは、消去状態にある領域に対して、データを保存する動作である。書き換えとは、書き込み状態にある領域のデータを、別のデータへと書き換える動作であり、消去と書き込みを組み合わせた動作(消去したあとに、書き込みを実施)である。バックアップ領域及びログデータ格納領域は、書き込み保証用のバッファ領域である。バックアップ領域には、データ格納領域の実データのバックアップデータ(つまり、実データの複製)が格納される。ログデータ格納領域には、バックアップデータのログデータ(所定のデータの一例)が格納される。ログデータは、バックアップデータをデータ格納領域に書き戻す(ロールバック)するために必要な管理情報である。
図2(A)は、ログデータ格納領域の概念図を示す図であり、図2(B)は、ログデータの構造例を示す図である。図2(A)に示すように、ログデータ格納領域Rは、同じサイズ(データ長)の8分割された分割領域となっており、例えばリングバッファとして形成される。なお、図2(A)の例では、ログデータ格納領域Rとして、同じサイズ(図2(A)の例では、8バイトであるが、8バイト以外でもよい)の9つの分割領域R1〜R9を示しているがこれに限定されるものではない。また、分割領域R1〜R9は、初期段階では消去状態になっている。そして、分割領域R1〜R9には、図2(B)に示すように、例えば8バイトから構成されるログデータが書き込み可能になっている。図2(B)に示すログデータは、バックアップ元アドレスと(実データの格納元のアドレス)、バックアップ先アドレス(バックアップデータの格納先のアドレス)、バックアップデータのサイズ、各種フラグ、及びCRCとにより構成される。また、図示しないが、分割領域R1〜R9には、ログデータと同じサイズ(例えば、8バイト)のダミーデータが書き込み可能になっている。ダミーデータは、ログデータの区切り(電源投入、または1トランザクション)を表すデータであり、例えば、全てのバイトが16進数で“A(h)”で構成される。また、ダミーデータは、破損してもよいデータ(言い換えれば、破損することを前提とするデータ)であり、不定状態になる可能性がある分割領域に書き込まれる。これにより、不定状態でない分割領域をログデータの書き込み用として確保することができる。なお、ダミーデータは、実データと混同しない(実データと区別しやすい)データであればどのようなデータであってもよい(全てのバイトが“A(h)”でなくてもよい)。
そして、CPU10は、本発明における第1書き込み手段、第2書き込み手段、第3書き込み手段、及び書き戻し手段として機能する。具体的には、CPU10は、例えば外部端末2からI/O回路14を介して受信されたコマンド(例えば、更新コマンド)により指定された更新用のデータで、データ格納領域の実データ(データ格納領域に格納されている実データ)を書き換える場合、トランザクション処理により、当該実データのバックアップデータをバックアップ領域に書き込み、且つ、当該バックアップデータのログデータをログデータ格納領域(上述した分割領域)に書き込んだ後に、当該実データを書き換える。そして、上記トランザクション処理の完了時に、CPU10は、ログデータ格納領域に書き込まれたログデータと同じ所定サイズのダミーデータを当該ログデータに続けてログデータ格納領域(上述した分割領域)に書き込む。
また、CPU10は、例えば電源投入によるCPU10の再起動時に、ダミーデータと同じ所定サイズの分割領域であって消去状態にある分割領域を少なくとも1つ分空けた(何らかのデータが書き込まれている領域から1つ分空けた)後に続けて当該ダミーデータと同じ所定サイズ(例えば、8バイト)の次のダミーデータをログデータ格納領域に書き込む。これにより、不定状態でない分割領域をログデータの書き込み用として確保することができる。或いは、CPU10は、例えば電源投入によるCPU10の再起動時に、ダミーデータと同じ所定サイズの分割領域であって消去状態にある分割領域を2つ分以上空けた(何らかのデータが書き込まれている領域から2つ分以上空けた)後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータをログデータ格納領域に書き込むように構成するとなおよい。これにより、不定状態でない分割領域をログデータの書き込み用として確保することに加えて、後述するように、電源投入前後を区分するための確実な情報を確保することができる。
図3は、ログデータ格納領域Rにおける分割領域R1〜R9に、ログデータ、またはダミーデータが書き込まれる様子を示す概念図である。先ず、図3(A)に示すように、最新のデータとしてダミーデータが分割領域R2に書き込まれている。図3(A)の例において、分割領域R2のダミーデータは、トランザクション処理が完了したことを示す。仮に、分割領域R2へのダミーデータの書き込み中に電源断になった場合、分割領域R2は不定状態になる可能性があり、また、ダミーデータも破損している可能性がある。分割領域にデータの書き足しをしていく場合、電源断により正常データ(正常なログデータ、または正常なダミーデータ)以外となるのは、必ず最後の分割領域である。そのため、正常データの間に、それ以外のデータが含まれていた場合は、ICチップ1aが異常(例えば、故障)であると判断することができる。
次に、図3(A)に示す状態において電源断し、その後、電源投入によりCPU10が再起動すると、図3(B)に示すように、分割領域R2に最新のデータとしてダミーデータが格納されているので、消去状態にある2つの分割領域R3,R4を空けた次の分割領域R5に次のダミーデータが書き込まれている。ここで、1つ目の分割領域R3は、図3(A)に示す状態での書き込みの途中で電源断(例えばICカード1が引き抜かれることで電源断)により、不定状態となっている場合がある。しかし、2つ目の分割領域R4は、この領域R4に書き込みをしようとする機会がないため、必ず安定した消去状態になっている。そのため、このような分割領域R4を、常に、電源投入前後を区分するための確実な情報とすることができる。なぜなら、電源投入時に分割領域R5へのダミーデータの書き込みの途中で電源断により分割領域R5が不定状態となる場合がある。そのため、書き込み前に消去状態に見えていたとしても、書き込み直後、または書き込み後の時間経過により正常なダミーデータではなくなる可能性がある。しかしその場合であっても、2つ目の分割領域R4は安定した状態であるため、破損したデータが電源投入時に書き込んだダミーデータであると判断することが可能である。そして、このように不定状態にある分割領域R3と分割領域R5との間に、安定した消去状態である分割領域4を挟むことができるので、ICチップ1aが異常(例えば故障)とするか否かの判定を容易に行うことが可能となる。なお、ダミーデータ自身は、トランザクションに関する可変情報を持たないため、破損したことにより正常なデータが読み取れなかったとしても、データの欠損は発生しない。
次に、図3(B)に示す状態において、データ格納領域の実データが書き換えられる場合、トランザクション処理により、実データのバックアップデータがバックアップ領域に書き込まれると、図3(C)に示すように、当該バックアップデータのログデータが分割領域R6に書き込まれ、その後、次の実データのバックアップデータがバックアップ領域に書き込まれると、図3(D)に示すように、当該バックアップデータのログデータが分割領域R7に書き込まれ、トランザクション処理が終了すると、図3(E)に示すように、ダミーデータが分割領域R8に書き込まれることになる。
次に、図4及び図5等を参照して、ICカード1aにおけるCPU10の処理の一例について説明する。図4は、電源投入時のCPU10の処理の一例を示すフローチャートである。図5は、コマンド受信時のCPU10の処理の一例を示すフローチャートである。
図4に示す処理は、ICチップ1aに電源が投入され、CPU10が起動することにより開始される。図4に示す処理が開始されると、CPU10は、不揮発性メモリ13におけるログデータ格納領域から最新のデータを検索する(ステップS1)。一方、CPU10は、最新のデータを検索できたか否かを判定する(ステップS2)。CPU10は、最新のデータを検索できた場合(ステップS2:YES)、ステップS3へ進む。一方、CPU10は、最新のデータを検索できなかった場合(ステップS2:NO)、ステップS9へ進む。
ステップS3では、CPU10は、検索されたデータを確認対象データとし、当該確認対象データがダミーデータであるか否かを判定する。確認対象データがダミーデータであると判定された場合(ステップS3:YES)、ステップS9へ進む。この場合、書き込みの途中で電源断されることなく正常に電源オフされたものと見做すことができる。一方、確認対象データがダミーデータでないと判定された場合(ステップS3:NO)、ステップS4へ進む。この場合、確認対象データは、正常なログデータ、破損したログデータ、または破損したダミーデータである。
ステップS4では、CPU10は、確認対象データのCRCが正常であるか否かを判定する。確認対象データが破損したダミーデータである場合、ログデータとダミーデータとは同一構造であるため、ログデータにおいてCRCがあるバイト位置と同じダミーデータの位置を参照すれば、正常でないことが判定できる。確認対象データのCRCが正常であると判定された場合(ステップS4:YES)、つまり、正常なログデータである場合、ステップS5へ進む。一方、確認対象データのCRCが正常でないと判定された場合(ステップS4:NO)、つまり、破損したログデータ、または破損したダミーデータである場合、ステップS7へ進む。
ステップS5では、CPU10は、正常であると判定されたログデータに基づいて、バックアップ領域のバックアップデータをデータ格納領域に書き戻す。次いで、CPU10は、確認対象データの1つ前のデータに変更して(遡り)(ステップS6)、1つ前のデータを確認対象データとし、ステップS3に戻り、上記と同様の処理を行う。
ステップS7では、CPU10は、確認対象データが最新のデータであるか否かを判定する。確認対象データが最新のデータでないと判定された場合(ステップS7:NO)、ステップS8へ進む。一方、確認対象データが最新のデータであると判定された場合(ステップS7:YES)、ステップS6へ移行する。つまり、最新のデータは、電源断を考慮し破損しても構わないという趣旨である。この場合、ステップS6で、破損されたデータの1つ前のデータに変更され、ステップS4で正常なログデータであると判定された場合(つまり、最新のデータとして正常でないデータが格納されている場合において、当該最新のデータの1つ前のデータとして正常なログデータが格納されている場合)、当該ログデータに基づいて、バックアップ領域のバックアップデータがデータ格納領域に書き戻されることになる。
ステップS8では、CPU10は、確認対象データが格納されている分割領域の1つ前の分割領域は消去状態(確認対象データの1つ前は消去状態)であるか否かを判定する。確認対象データの1つ前は消去状態であると判定された場合(ステップS8:YES)、ステップS9に進む。つまり、CPU10は、最新のデータとして異常なデータが格納され、且つ当該最新のデータの1つ前のデータとして異常なデータが格納されている場合において、当該最新のデータを格納する分割領域の2つ前の分割領域が消去状態である場合、ステップS9へ進む。ここで、最新のデータを格納する分割領域の2つ前の分割領域とは、最新のデータ(例えば、図3(C)に示す分割領域R6のデータ)の1つ前のデータ(例えば、図3(C)に示す分割領域R5のデータ)のさらに1つ前の分割領域(例えば、図3(C)に示す分割領域R4)である。一方、確認対象データの1つ前は消去状態でないと判定された場合(ステップS8:NO)、異常終了する。この場合、ICチップ1aが攻撃等の外的要因により故障しているとして、ICチップ1aを機能停止させることができる。つまり、破損したデータが2つ連続して続いた後、更に1つ前のデータが消去状態でなければ異常終了となる。
ステップS9では、CPU10は、上記検索されたデータまたは先頭から、消去状態にある分割領域を2つ分空ける。なお、CPU10は、上記検索されたデータから、消去状態にある分割領域を1つ分空けてもよい。次いで、CPU10は、2つ分空けた分割領域の後に続けてダミーデータを書き込み(ステップS10)、バックアップ領域に格納された対象のバックアップデータを消去し(ステップS11)し、処理を終了する。
一方、図5に示す処理は、例えば、トランザクション処理の開始により開始される。図5に示す処理が開始されると、CPU10は、書き換え対象である実データのバックアップデータをバックアップ領域に書き込む(ステップS21)。次いで、CPU10は、当該バックアップデータのログデータをログデータ格納領域の分割領域に書き込む(ステップS22)。次いで、CPU10は、書き換え対象である実データをページ単位で消去し、更新用のデータを実データとしてデータ格納領域(書き換え対象の実データと同一アドレスの領域)に書き込む(ステップS23)。次いで、CPU10は、ダミーデータを、ステップS22で書き込んだログデータに続けてログデータ格納領域の分割領域に書き込む(ステップS24)。次いで、CPU10は、ステップS21で書き込んだバックアップデータをバックアップ領域から消去する(ステップS25)。
以上説明したように、上記実施形態によれば、CPU10は、不揮発性メモリ13に書き込まれたログデータと同じサイズのダミーデータを当該ログデータに続けて不揮発性メモリ13に書き込み、当該CPU10の再起動時に、当該ダミーデータと同じサイズの分割領域であって消去状態にある分割領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを不揮発性メモリ13に書き込むように構成したので、消去または書き込み途中の電源断により、不揮発性メモリ13の状態が不定状態となった場合でも、そのことによる影響を受けずにデータの内容を保証(巡回型のデータ内容を単領域で保証)することができる。また、消去状態にある分割領域を2つ分以上空けた後に続けて当該ダミーデータと同じサイズの次のダミーデータを書き込む構成によれば、電源投入前後を区分するための確実な情報を確保することができ、ICチップ1aが異常(例えば故障)とするか否かの判定を容易に行うことができる。
なお、上述したトランザクション内でのデータ保証に限らず、動作ログ等、一定量のデータを記録しておく際に本発明を適用することにより、トランザクションの仕組みを利用するよりも高速に、かつデータを失わずに書き込むことができる。
1 ICカード
1a ICチップ
2 外部端末
10 CPU
11 RAM
12 ROM
13 不揮発性メモリ
14 I/O回路

Claims (8)

  1. 不揮発性メモリとプロセッサとを備える電子情報記憶媒体において、
    前記プロセッサは、
    所定のデータを前記不揮発性メモリに書き込む第1書き込み手段と、
    前記書き込まれた前記所定のデータと同じ所定サイズのダミーデータを当該所定のデータに続けて前記不揮発性メモリに書き込む第2書き込み手段と、
    当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記不揮発性メモリに書き込む第3書き込み手段と、
    を備えることを特徴とする電子情報記憶媒体。
  2. 前記不揮発性メモリは、実データを格納するデータ格納領域と、前記実データのバックアップデータを格納するバックアップ領域と、前記バックアップデータのログデータであって少なくとも前記バックアップデータの格納先を示すログデータを前記所定のデータとして格納するログデータ格納領域と、を有し、
    前記第1書き込み手段は、前記データ格納領域の前記実データを書き換える場合、当該実データのバックアップデータを前記バックアップ領域に書き込み、且つ、前記バックアップデータの前記ログデータをログデータ格納領域に書き込んだ後に、当該実データを書き換え、
    前記第2書き込み手段は、前記ログデータ格納領域に書き込まれた前記ログデータと同じ所定サイズのダミーデータを当該ログデータに続けて前記ログデータ格納領域に書き込み、
    前記第3書き込み手段は、当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記ログデータ格納領域に書き込むことを特徴とする請求項1に記載の電子情報記憶媒体。
  3. 前記第3書き込み手段は、当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を2つ分以上空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記ログデータ格納領域に書き込むことを特徴とする請求項2に記載の電子情報記憶媒体。
  4. 前記第3書き込み手段は、前記プロセッサの再起動時に前記ログデータ格納領域に最新のデータとして異常な所定サイズのデータが格納され、且つ当該最新のデータの1つ前のデータとして異常な前記所定サイズのデータが格納されている場合において、当該最新のデータの1つ前の所定サイズのデータのさらに1つ前の領域が前記消去状態である場合、当該最初のデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該最初のデータと同じ所定サイズのダミーデータを書き込むことを特徴とする請求項2に記載の電子情報記憶媒体。
  5. 前記プロセッサの再起動時に前記ログデータ格納領域に最新のデータとして正常な前記ログデータが格納されている場合、当該ログデータに基づいて前記バックアップデータを前記データ格納領域に書き戻す書き戻し手段を更に備えることを特徴とする請求項2に記載の電子情報記憶媒体。
  6. 前記プロセッサの再起動時に前記ログデータ格納領域に最新のデータとして正常でない所定サイズのデータが格納されている場合において、当該最新のデータの1つ前のデータとして正常な前記ログデータが格納されている場合、当該ログデータに基づいて前記バックアップデータを前記データ格納領域に書き戻す書き戻し手段を更に備えることを特徴とする請求項2に記載の電子情報記憶媒体。
  7. 不揮発性メモリとプロセッサとを備える電子情報記憶媒体において前記プロセッサにより実行される情報処理方法であって、
    所定のデータを前記不揮発性メモリに書き込む第1書き込みステップと、
    前記書き込まれた前記所定のデータと同じ所定サイズのダミーデータを当該所定のデータに続けて前記不揮発性メモリに書き込む第2書き込みステップと、
    当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記不揮発性メモリに書き込む第3書き込みステップと、
    を含むことを特徴とする情報処理方法。
  8. 不揮発性メモリとプロセッサとを備える電子情報記憶媒体における前記プロセッサを、
    所定のデータを前記不揮発性メモリに書き込む第1書き込み手段と、
    前記書き込まれた前記所定のデータと同じ所定サイズのダミーデータを当該所定のデータに続けて前記不揮発性メモリに書き込む第2書き込み手段と、
    当該プロセッサの再起動時に、前記ダミーデータと同じ所定サイズの領域であって消去状態にある領域を少なくとも1つ分空けた後に続けて当該ダミーデータと同じ所定サイズの次のダミーデータを前記不揮発性メモリに書き込む第3書き込み手段として機能させることを特徴とする情報処理プログラム。
JP2014067506A 2014-03-28 2014-03-28 電子情報記憶媒体、情報処理方法、及び情報処理プログラム Active JP6233134B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014067506A JP6233134B2 (ja) 2014-03-28 2014-03-28 電子情報記憶媒体、情報処理方法、及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014067506A JP6233134B2 (ja) 2014-03-28 2014-03-28 電子情報記憶媒体、情報処理方法、及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2015191395A true JP2015191395A (ja) 2015-11-02
JP6233134B2 JP6233134B2 (ja) 2017-11-22

Family

ID=54425839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014067506A Active JP6233134B2 (ja) 2014-03-28 2014-03-28 電子情報記憶媒体、情報処理方法、及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP6233134B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020009347A (ja) * 2018-07-12 2020-01-16 ルネサスエレクトロニクス株式会社 情報処理装置及び制御方法
US11403041B2 (en) 2020-09-23 2022-08-02 Kioxia Corporation Memory system and control method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012169038A1 (ja) * 2011-06-09 2012-12-13 Necディスプレイソリューションズ株式会社 電子機器、電源操作ログ記録方法および記録媒体
JP2013037430A (ja) * 2011-08-04 2013-02-21 Dainippon Printing Co Ltd Icチップ、icチップにおける処理方法、及びicチップ用処理プログラム
JP2014206905A (ja) * 2013-04-15 2014-10-30 株式会社デンソー 書き込み装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012169038A1 (ja) * 2011-06-09 2012-12-13 Necディスプレイソリューションズ株式会社 電子機器、電源操作ログ記録方法および記録媒体
JP2013037430A (ja) * 2011-08-04 2013-02-21 Dainippon Printing Co Ltd Icチップ、icチップにおける処理方法、及びicチップ用処理プログラム
JP2014206905A (ja) * 2013-04-15 2014-10-30 株式会社デンソー 書き込み装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020009347A (ja) * 2018-07-12 2020-01-16 ルネサスエレクトロニクス株式会社 情報処理装置及び制御方法
JP7089423B2 (ja) 2018-07-12 2022-06-22 ルネサスエレクトロニクス株式会社 情報処理装置及び制御方法
US11403041B2 (en) 2020-09-23 2022-08-02 Kioxia Corporation Memory system and control method thereof

Also Published As

Publication number Publication date
JP6233134B2 (ja) 2017-11-22

Similar Documents

Publication Publication Date Title
JP4768237B2 (ja) 携帯可能電子装置及び携帯可能電子装置の制御方法
JP2012128643A (ja) メモリシステム
CN109685190B (zh) 一种ic卡掉电保护方法及装置
JP6233134B2 (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム
KR101783526B1 (ko) Ic 카드, 전자 장치 및 휴대 가능 전자 장치
JP2003216511A (ja) 不揮発性メモリ装置、データ更新方法、データ更新プログラム及びそのプログラムが記録されたコンピュータ読み取り可能な記録媒体
JP2008310596A (ja) 携帯可能電子装置および携帯可能電子装置の制御方法
JP2009176147A (ja) 電子機器および電子機器のメモリアクセス許可判別方法
JP2019049876A (ja) 電子情報記憶媒体、icカード、電子情報記憶媒体によるテーブル管理方法及びテーブル管理プログラム
JP6040895B2 (ja) マイクロコンピュータ及び不揮発性メモリのブロック管理方法
JP3607658B2 (ja) 携帯可能電子装置
JP2000357216A (ja) Icカード
JP7322923B2 (ja) セキュアエレメント,トランザクション制御方法およびデバイス
JP2001312891A (ja) 半導体メモリ装置
JP2008305263A (ja) 不揮発性半導体記憶装置及びメモリ管理方法
JP2006293706A (ja) アプリケーションの更新機能を有するマルチアプリケーションicカード
JP6252341B2 (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム
JP5341947B2 (ja) Icカード、icカードの制御方法、および携帯可能電子装置の制御方法
JP5983349B2 (ja) Icカード、データ読み書き方法、及びデータ読み書きプログラム
JP5050508B2 (ja) 記憶装置、記憶装置のプログラム及び記憶処理方法
JP3835753B2 (ja) Icカード
JP6281302B2 (ja) 情報処理装置、icカード、及びデータ処理方法
JP6015461B2 (ja) 情報記録媒体、データ読み書き方法、及びデータ読み書きプログラム
JP3863479B2 (ja) Icカード
JP2017138763A (ja) 電子情報記憶媒体、データ書き込み方法、及びデータ書き込みプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170913

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171009

R150 Certificate of patent or registration of utility model

Ref document number: 6233134

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150