(57)【要約】【課題】バックアップの処理時間を短縮させる。【解決手段】ＩＣカード（記憶装置）１０は、ＲＡＭ１３と、初期化可能な複数のページに区画され、データ領域１５ａ及びバックアップ領域１５ｂを有するＥＥＰＲＯＭ１５と、書込み対象データが、データ領域１５ａのどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する判断手段１２ａと、書込み対象データが書き込まれる部分以外の保護対象データをＥＥＰＲＯＭ１５に書き込む第１の書込み手段１２ｂと、ＥＥＰＲＯＭ１５の保護対象データをバックアップ領域１５ｂに書き込む第２の書込み手段１２ｃと、ＲＡＭ１３に書込み対象データを書き込む第３の書込み手段１２ｄと、所望のページを初期化する初期化手段１２ｅと、ＥＥＰＲＯＭ１５の書込み対象データ及び保護対象データを、初期化手段１２ｅが初期化したデータ領域のページに書き込む第４の書込み手段１２ｆとを備える。【選択図】図１
2008134945.tif 000002
【特許請求の範囲】
【請求項１】
揮発性メモリと、
初期化可能な複数のページに区画され、データ領域及びバックアップ領域を有する不揮発性メモリと、
前記不揮発性メモリに書き込む予定の書込み対象データが、前記データ領域のどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する判断手段と、
少なくとも、前記判断手段によって前記書込み対象データが書き込まれると判断されたページにおける、前記書込み対象データが書き込まれる部分以外の保護対象データを前記揮発性メモリに書き込む第１の書込み手段と、
前記揮発性メモリに書き込まれた前記保護対象データを前記バックアップ領域に書き込む第２の書込み手段と、
前記揮発性メモリに前記書込み対象データを書き込む第３の書込み手段と、
前記判断手段によって前記書込み対象データが書き込まれると判断されたページを初期化する初期化手段と、
前記揮発性メモリに書き込まれた前記書込み対象データ及び前記保護対象データを、前記初期化手段が初期化した前記データ領域のページに書き込む第４の書込み手段と、
を備える記憶装置。
【請求項２】
請求項１に記載の記憶装置において、
前記第２の書込み手段は、前記保護対象データが複数のページに分散している場合には、最小限のページ数に収まるように前記保護対象データを書き込むこと、
を特徴とする記憶装置。
【請求項３】
請求項２に記載の記憶装置において、
前記不揮発性メモリは、管理領域を備え、
前記保護対象データの収め方に関する情報を前記管理領域に記憶して管理するデータ管理手段を備えること、
を特徴とする記憶装置。
【請求項４】
揮発性メモリと、
初期化可能な複数のページに区画され、データ領域及びバックアップ領域を有する不揮発性メモリとを備える記憶装置のＣＰＵに実行させる記憶装置のプログラムであって、
前記不揮発性メモリに書き込む予定の書込み対象データが、前記データ領域のどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する判断手順と、
少なくとも、前記判断手順によって前記書込み対象データが書き込まれると判断されたページにおける、前記書込み対象データが書き込まれる部分以外の保護対象データを前記揮発性メモリに書き込む第１の書込み手順と、
前記揮発性メモリに書き込まれた前記保護対象データを前記バックアップ領域に書き込む第２の書込み手順と、
前記揮発性メモリに前記書込み対象データを書き込む第３の書込み手順と、
前記判断手順によって前記書込み対象データが書き込まれると判断されたページを初期化する初期化手順と、
前記揮発性メモリに書き込まれた前記書込み対象データ及び前記保護対象データを、前記初期化手順で初期化した前記データ領域のページに書き込む第４の書込み手順と、
を備える記憶装置のプログラム。
【請求項５】
揮発性メモリと、
初期化可能な複数のページに区画され、データ領域及びバックアップ領域を有する不揮発性メモリとを備える記憶装置に記憶処理を行わせる記憶処理方法であって、
前記不揮発性メモリに書き込む予定の書込み対象データが、前記データ領域のどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する判断工程と、
少なくとも、前記判断工程によって前記書込み対象データが書き込まれると判断されたページにおける、前記書込み対象データが書き込まれる部分以外の保護対象データを前記揮発性メモリに書き込む第１の書込み工程と、
前記揮発性メモリに書き込まれた前記保護対象データを前記バックアップ領域に書き込む第２の書込み工程と、
前記揮発性メモリに前記書込み対象データを書き込む第３の書込み工程と、
前記判断工程によって前記書込み対象データが書き込まれると判断されたページを初期化する初期化工程と、
前記揮発性メモリに書き込まれた前記書込み対象データ及び前記保護対象データを、前記初期化工程で初期化した前記データ領域のページに書き込む第４の書込み工程と、
を備える記憶処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のデータを記憶する記憶装置、記憶装置のプログラム及び記憶処理方法に関するものである。
【背景技術】
【０００２】
ＩＣカードは、その用途から常に電力の瞬断を考慮した作りこみが必要である（例えば、特許文献１）。例えば、ＩＣカードが何らかの処理中に、利用者による引き抜きや、リーダー／ライタとの端子間で接触不良が生じると、処理（データの更新など）の中断が発生し、カード内の大切なデータが破壊される可能性がある。
【０００３】
このため、一般的なＩＣカードは、瞬断によるデータの破壊を防ぐために専用の保護機能を搭載している。
機能の概要は、更新されるデータのバックアップを予め他の領域にコピーした後、実際にデータの更新作業を行う。更新作業が完了した場合は、バックアップ領域に更新が成功した情報を追加する。もし、更新途中に処理が中断されたならば、次にカードが活性化した直後にバックアップ領域の内容を調べ、更新作業が完了していないデータに対して実際のデータ領域に書き戻す。このバックアップ処理は、一時的な使用用途のデータを除き全ての保持されるデータに対して実施されるべきである。
【０００４】
図６は、従来のＩＣカードのメモリの内容を示す図である。
ＩＣカードは、データ保存領域として一般的に不揮発性メモリが使用されるが、この不揮発性メモリへの書き込みは、通常初期化を行ってから書き込みが行われる。
このとき、一度に初期化される領域を１ページとすると、図６（Ａ）に示すように、更新領域Ｘが３ページにわたる場合、ページＡ及びページＣに更新データ以外のデータＹが含まれる。保証されるべきデータは、このデータＹなので、ページＡ及びページＣがバックアップ対象となる。
【０００５】
このように、更新領域が複数のページにわたった場合でも、バックアップ時には、保証されるべきデータＹが含まれるページのみを保護するので、バックアップ領域は、図６（Ｂ）に示すように、最大２ページ必要である。従来の方式では、バックアップ領域は、必要最大数のページ分を確保し、ページ単位でデータを退避させていた。
しかし、不揮発性メモリの大容量化が進む中、初期化単位も１２８ｂｙｔｅ、２５６ｂｙｔｅと拡大しており、初期化単位の領域が拡大するに伴い、初期化に要する処理時間も増加している。加えて、初期化する領域が拡大するということは、初期化後の書き込み処理の時間も増加する。コマンド処理の高速化が求められる中、書換え保証のためのバックアップ処理時間の増加は重大な問題となる。
【特許文献１】特開平９−５４７１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の課題は、バックアップの処理時間を短縮させることができる記憶装置、記憶装置のプログラム及び記憶処理方法を提供することである。
【課題を解決するための手段】
【０００７】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施例に対応する符号を付して説明するが、これに限定されるものではない。
請求項１の発明は、揮発性メモリ（１３）と、初期化可能な複数のページに区画され、データ領域（１５ａ）及びバックアップ領域（１５ｂ）を有する不揮発性メモリ（１５）と、前記不揮発性メモリ（１５）に書き込む予定の書込み対象データ（Ａ）が、前記データ領域（１５ａ）のどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する判断手段（１２ａ）と、少なくとも、前記判断手段（１２ａ）によって前記書込み対象データ（Ａ）が書き込まれると判断されたページにおける、前記書込み対象データ（Ａ）が書き込まれる部分以外の保護対象データ（Ｃ）を前記揮発性メモリ（１３）に書き込む第１の書込み手段（１２ｂ）と、前記揮発性メモリ（１３）に書き込まれた前記保護対象データ（Ｃ）を前記バックアップ領域（１５ｂ）に書き込む第２の書込み手段（１２ｃ）と、前記揮発性メモリ（１３）に前記書込み対象データ（Ａ）を書き込む第３の書込み手段（１２ｄ）と、前記判断手段（１２ａ）によって前記書込み対象データ（Ａ）が書き込まれると判断されたページを初期化する初期化手段（１２ｅ）と、前記揮発性メモリ（１３）に書き込まれた前記書込み対象データ（Ａ）及び前記保護対象データ（Ｃ）を、前記初期化手段（１２ｅ）が初期化した前記データ領域（１５ａ）のページに書き込む第４の書込み手段（１２ｆ）と、を備える記憶装置（１０）である。
請求項２の発明は、請求項１に記載の記憶装置（１０−２）において、前記第２の書込み手段（１２ｃ）は、前記保護対象データ（Ｃ）が複数のページに分散している場合には、最小限のページ数に収まるように前記保護対象データ（Ｃ）を書き込むこと、を特徴とする記憶装置（１０−２）である。
請求項３の発明は、請求項２に記載の記憶装置（１０−２）において、前記不揮発性メモリ（１５）は、管理領域（１５ｃ）を備え、前記保護対象データ（Ｃ）の収め方に関する情報を前記管理領域（１５ｃ）に記憶して管理するデータ管理手段（１２ｇ）を備えること、を特徴とする記憶装置（１０−２）である。
請求項４の発明は、揮発性メモリ（１３）と、初期化可能な複数のページに区画され、データ領域（１５ａ）及びバックアップ領域（１５ｂ）を有する不揮発性メモリ（１５）とを備える記憶装置（１０）のＣＰＵ（１２）に実行させる記憶装置のプログラムであって、前記不揮発性メモリ（１５）に書き込む予定の書込み対象データ（Ａ）が、前記データ領域（１５ａ）のどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する判断手順（＃１、＃２）と、少なくとも、前記判断手順（＃１、＃２）によって前記書込み対象データ（Ａ）が書き込まれると判断されたページにおける、前記書込み対象データ（Ａ）が書き込まれる部分以外の保護対象データ（Ｃ）を前記揮発性メモリ（１３）に書き込む第１の書込み手順（＃３）と、前記揮発性メモリ（１３）に書き込まれた前記保護対象データ（Ｃ）を前記バックアップ領域（１５ｂ）に書き込む第２の書込み手順（＃４）と、前記揮発性メモリ（１３）に前記書込み対象データ（Ａ）を書き込む第３の書込み手順（＃５）と、前記判断手順（＃１、＃２）によって前記書込み対象データ（Ａ）が書き込まれると判断されたページを初期化する初期化手順（＃６）と、前記揮発性メモリ（１３）に書き込まれた前記書込み対象データ（Ａ）及び前記保護対象データ（Ｃ）を、前記初期化手順（＃６）で初期化した前記データ領域（１５ａ）のページに書き込む第４の書込み手順（＃７）と、を備える記憶装置のプログラムである。
請求項５の発明は、揮発性メモリ（１３）と、初期化可能な複数のページに区画され、データ領域（１５ａ）及びバックアップ領域（１５ｂ）を有する不揮発性メモリ（１５）とを備える記憶装置（１０）に記憶処理を行わせる記憶処理方法であって、前記不揮発性メモリ（１５）に書き込む予定の書込み対象データ（Ａ）が、前記データ領域（１５ａ）のどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する判断工程（＃１、＃２）と、少なくとも、前記判断工程（＃１、＃２）によって前記書込み対象データ（Ａ）が書き込まれると判断されたページにおける、前記書込み対象データ（Ａ）が書き込まれる部分以外の保護対象データ（Ｃ）を前記揮発性メモリ（１３）に書き込む第１の書込み工程（＃３）と、前記揮発性メモリ（１３）に書き込まれた前記保護対象データ（Ｃ）を前記バックアップ領域（１５ｂ）に書き込む第２の書込み工程（＃４）と、前記揮発性メモリ（１３）に前記書込み対象データ（Ａ）を書き込む第３の
書込み工程（＃５）と、前記判断工程（＃１、＃２）によって前記書込み対象データ（Ａ）が書き込まれると判断されたページを初期化する初期化工程（＃６）と、前記揮発性メモリ（１３）に書き込まれた前記書込み対象データ（Ａ）及び前記保護対象データ（Ｃ）を、前記初期化工程（＃６）で初期化した前記データ領域（１５ａ）のページに書き込む第４の書込み工程（＃７）と、を備える記憶処理方法である。
【発明の効果】
【０００８】
本発明によれば、以下のような効果がある。
（１）保護対象データをバックアップ領域に書き込む場合には、ページごとに書き込むのではなく、保護されるべきデータのみを書き込むので、書き込み領域を縮小させることができ、バックアップの処理時間を短縮させることができる。
（２）保護対象データが複数のページに分散している場合には、最小限のページ数に収まるように保護対象データを書き込むので、保護対象データを効率よく書き込むことができ、初期化する領域が減少し、バックアップの処理時間をより短縮させることができる。
（３）保護対象データの収め方に関する情報を管理領域に記憶して管理するので、保護対象データを確実に管理することができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面等を参照して、本発明の実施例について、さらに詳しく説明する。
【実施例１】
【００１０】
図１は、本発明による記憶装置の実施例１を示す図である。
実施例１のＩＣカード（記憶装置）１０は、通信部１１と、ＣＰＵ１２と、ＲＡＭ１３と、ＲＯＭ１４と、ＥＥＰＲＯＭ１５などとを備える。
【００１１】
通信部１１は、巻き線コイルなどのアンテナと、変調回路及び復調回路などのＩ／Ｏインターフェースとを備え、非接触式でリーダー／ライタ２０と通信を行い、ＣＰＵ１２及びリーダー／ライタ２０間の通信を媒介する部分である。
【００１２】
ＣＰＵ１２は、ＩＣカード１０を統括制御する中央処理装置であり、四則演算や論理演算などの算術的な処理を行い、通信部１１を介してリーダー／ライタ２０から受信するコマンドに応じて、ＲＯＭ１４及びＥＥＰＲＯＭ１５に記憶されている実行コード（プログラム）を実行する部分である。
【００１３】
また、ＣＰＵ１２は、判断手段１２ａと、第１の書込み手段１２ｂと、第２の書込み手段１２ｃと、第３の書込み手段１２ｄと、初期化手段１２ｅと、第４の書込み手段１２ｆとを備える。
判断手段１２ａは、ＥＥＰＲＯＭ１５に書き込む予定の書込み対象データが、ＥＥＰＲＯＭ１５のデータ領域１５ａのどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する制御部である。
第１の書込み手段１２ｂは、判断手段１２ａによって書込み対象データが書き込まれると判断されたページにおける、書込み対象データが書き込まれる部分以外の保護対象データをＲＡＭ１３に書き込む制御部である。
第２の書込み手段１２ｃは、ＲＡＭ１３に書き込まれた保護対象データをバックアップ領域１５ｂに書き込む制御部である。
第３の書込み手段１２ｄは、ＲＡＭ１３に書込み対象データを書き込む制御部である。
初期化手段１２ｅは、判断手段１２ａによって書込み対象データが書き込まれると判断されたページを初期化する制御部である。
第４の書込み手段１２ｆは、ＲＡＭ１３に書き込まれた書込み対象データ及び保護対象データを、初期化手段１２ｅが初期化したデータ領域１５ａのページに書き込む制御部で
ある。
【００１４】
ＲＡＭ１３は、揮発性メモリであり、ＣＰＵ１２が処理を行う作業領域や、リーダー／ライタ２０とデータをやり取りするための送受信用のバッファなどとして使用される。
ＲＯＭ１４は、不揮発性の読み出し専用のメモリであり、実行コードや、各種パラメータなどが記憶されている。
ＥＥＰＲＯＭ１５は、随時書き換え可能な不揮発性メモリであり、実行コードや固有情報（カード固有の番号、会員番号）などが記憶されている。
また、ＥＥＰＲＯＭ１５は、各領域にアドレスが付されており、初期化可能な複数のページに区画され、各種データが記憶されるデータ領域１５ａ、及び、バックアップ時に使用されるバックアップ領域１５ｂを有する。
【００１５】
一方、リーダー／ライタ２０は、ＩＣカード１０と非接触式で通信する装置であり、ＩＣカード１０に対して電源やクロックなどを供給し、コマンドやデータを送信する。
【００１６】
図２及び図３は、ＩＣカード１０のバックアップ動作について説明する図である。
まず、ＣＰＵ１２（図１参照）は、リーダー／ライタ２０から受信したコマンドを解釈し、書込み処理を伴うコマンドであれば、図２（＃１）に示すように、ＥＥＰＲＯＭ１５に書き込む予定の書込み対象データＡが、ＥＥＰＲＯＭ１５のデータ領域１５ａのどのページのどのアドレスから、どのページのどのアドレスまでに書き込まれるかを判断する。
ここでは、図２（＃２）の破線部分Ｂ、すなわち、データ領域１５ａの１ページ目と２ページ目とにまたがるように、書込み対象データＡが書き込まれると判断したものとする。
【００１７】
ついで、図２（＃３）に示すように、ＣＰＵ１２は、書込み対象データＡが書き込まれると判断されたデータ領域１５ａの１ページ目と２ページ目における、書込み対象データＡが書き込まれる部分以外の保護対象データＣをＲＡＭ１３に書き込む。
さらに、図２（＃４）に示すように、ＣＰＵ１２は、ＲＡＭ１３に書き込まれた保護対象データＣをバックアップ領域１５ｂに書き込む。
【００１８】
そして、図３（＃５）に示すように、ＣＰＵ１２は、ＲＡＭ１３に書込み対象データＡを書き込む。
次に、図３（＃６）に示すように、ＣＰＵ１２は、書込み対象データＡが書き込まれると判断された１ページ目と２ページ目を初期化する。
最後に、図３（＃７）に示すように、ＣＰＵ１２は、ＲＡＭ１３に書き込まれた書込み対象データＡ及び保護対象データＣを、初期化手段１２ｅが初期化したデータ領域１５ａのページに書き込む。
なお、バックアップ領域１５ｂに書き込んだ保護対象データＣは、復旧の必要がなくなり次第消去してもよいし、必要に応じて残しておいてもよい。
【００１９】
このように、実施例１によれば、保護対象データＣをバックアップ領域１５ｂに書き込む場合には、ページごとに書き込むのではなく、図２（＃４）に示すように、保護されるべきデータのみを書き込むので、書き込み領域を縮小させて書き込み時間を短縮させることができ、結果として、バックアップの処理時間を短縮させることができる。
また、本実施例では、記憶装置をＩＣカード１０に適用しているので、コマンド処理の高速化が求められるＩＣカードに最適である。
【実施例２】
【００２０】
図４は、本発明による記憶装置の実施例２を示す図であり、図５は、従来の方式と実施例２の方式とを比較するための図である。
なお、前述した実施例１と同様な機能を果たす部分には、同一の符号又は末尾に統一した符号を付して、重複する説明や図面を適宜省略する。
実施例２のＩＣカード１０−２は、保護対象データＣの書き込み方を改良したものである。実施例１のＩＣカード１０と異なる点は、ＥＥＰＲＯＭ１５が管理領域１５ｃを備える点と、ＣＰＵ１２がデータ管理手段１２ｇを備える点である。
また、第２の書込み手段１２ｃは、保護対象データＣが複数のページに分散している場合には、最小限のページ数に収まるように保護対象データを書き込み、データ管理手段１２ｇは、保護対象データＣの収め方に関する管理情報（各データの先頭アドレス及びデータ長など）を管理領域１５ｃに記憶して管理する。これにより、保護すべきデータのみを取り出したものを連結してバックアップ領域１５ｂに格納することができるようになる。
【００２１】
このような構成とすることで、図５（Ａ）に示すように、従来の方式であれば、２ページ分の領域の初期化が必要であったものが、図５（Ｂ）に示すように、１ページ分の初期化ですむようになる。したがって、初期化対象ページの減少を図ることができ、書換え保証のためのバックアップの処理時間を短縮させることができる。
また、ＩＣカード１０−２が、書換え回数などを管理している管理領域１５ｃを予め備えているような場合には、その領域に管理情報を書き込むだけで簡単に保護対象データＣを管理することができる。なお、保護対象データＣを復旧させる場合には、管理領域１５ｃの管理情報に基づいて簡単に保護対象データＣを復旧させることができる。
【００２２】
（変形例）
以上説明した実施例に限定されることなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲内である。
（１）記憶装置は、ＩＣカードの例で説明したが、ＳＩＭカード、ＵＩＭカード、ＩＣタグ、また、携帯電話、携帯ホルダなどに挿入されるＳＩＭカード又はＵＩＭカードなどの他の記憶装置であってもよい。さらに、パーソナルコンピュータなどの情報処理端末や、ＰＤＡ（Personal Digital Assistant）などの携帯情報端末であってもよい。
（２）ＥＥＰＲＯＭ１５は、フラッシュメモリやＦｅＲＡＭ（ＦＲＡＭ：ラムトロン・インターナショナル・コーポレーションの登録商標）などの他の不揮発性メモリであってもよい。
【００２３】
（３）図２において、ＣＰＵ１２は、ＲＡＭ１３に保護対象データＣを書き込み（＃３）、その保護対象データＣをＲＡＭ１３からバックアップ領域１５ｂに書き込む（＃４）例で説明したが、＃３において、データ領域１５ａの２ページ分のデータを全てＲＡＭ１３に書き込み、＃４において、書き込んだデータの中から保護対象データＣのみをバックアップ領域１５ｂに書き込んでもよい。この場合、図３の＃５においては、ＲＡＭ１３に書き込んだデータ上に、書込み対象データＡを上書きすることになる。
（４）図３において、ＣＰＵ１２は、ＲＡＭ１３に書込み対象データＡを書き込んでから（＃５）、データ領域１５ａを初期化する（＃６）例で説明したが、これとは逆に、データ領域１５ａを初期化してから、ＲＡＭ１３に書込み対象データＡを書き込んでもよい。
【図面の簡単な説明】
【００２４】
【図１】本発明による記憶装置の実施例１を示す図である。
【図２】ＩＣカード１０のバックアップ動作について説明する図である。
【図３】ＩＣカード１０のバックアップ動作について説明する図である。
【図４】本発明による記憶装置の実施例２を示す図である。
【図５】従来の方式と実施例２の方式とを比較するための図である。
【図６】従来のＩＣカードのメモリの内容を示す図である。
【符号の説明】
【００２５】
１０、１０−２  ＩＣカード（記憶装置）
１１  通信部
１２  ＣＰＵ
１２ａ  判断手段
１２ｂ  第１の書込み手段
１２ｃ  第２の書込み手段
１２ｄ  第３の書込み手段
１２ｅ  初期化手段
１２ｆ  第４の書込み手段
１２ｇ  データ管理手段
１３  ＲＡＭ
１４  ＲＯＭ
１５  ＥＥＰＲＯＭ
１５ａ  データ領域
１５ｂ  バックアップ領域
１５ｃ  管理領域
２０  リーダー／ライタ
Ａ  書込み対象データ
Ｃ  保護対象データ
【図１】
2008134945.tif 000003
【図２】
2008134945.tif 000004
【図３】
2008134945.tif 000005
【図４】
2008134945.tif 000006
【図５】
2008134945.tif 000007
【図６】
2008134945.tif 000008