(57)【要約】【課題】電子機器では、フラッシュメモリなどの不揮発性半導体メモリを電子機器の記憶部として実用可能にすることが求められている。【解決手段】電子機器１は、データ書込み処理において既に書込まれたデータに対する上書きが禁止されている不揮発性半導体メモリ１６を有し、実データおよび当該実データに対応した管理データを記憶する第１記憶部５３と、データ書込み処理において任意の値へのデータ上書きが可能な第２記憶部５４と、第１記憶部５３に対するデータアクセスを制御する制御部５２とを有する。制御部５２は、第１記憶部５３に記憶されている管理データを、第２記憶部５４にコピーし、第２記憶部５４に記憶されている管理データを参照して、第１記憶部５３の実データにアクセスする。【選択図】図６
2011113338.tif 000002
【特許請求の範囲】
【請求項１】
データ書込み処理において既に書込まれたデータに対する上書きが禁止されている不揮発性半導体メモリを有し、実データおよび当該実データに対応した管理データを記憶する第１記憶部と、
データ書込み処理において任意の値へのデータ上書きが可能な第２記憶部と、
前記第１記憶部に対するデータアクセスを制御する制御部と
を有し、
前記制御部は、
前記第１記憶部に記憶されている前記管理データを、前記第２記憶部にコピーし、
前記第２記憶部に記憶されている前記管理データを参照して、前記第１記憶部の実データにアクセスする
電子機器。
【請求項２】
前記制御部は、
前記第１記憶部に実データを新たに書き込む場合、前記第１記憶部の管理データを更新せずに前記第２記憶部にコピーされた管理データを前記第１記憶部への実データの書き込みに基づいて、上書きする
請求項１記載の電子機器。
【請求項３】
前記制御部は、
前記第１記憶部の前記管理データの記憶領域を初期化する場合、
初期化された当該記憶領域に、前記第２記憶部に記憶されている管理データを書き込む
請求項２記載の電子機器。
【請求項４】
前記制御部は、
前記第１記憶部の前記管理データを前記第２記憶部にコピーする場合に、前記第１記憶部から読み込んだ管理データの誤りを訂正して、前記第２記憶部に書込む
請求項１から３のいずれか一項記載の電子機器。
【請求項５】
前記第１記憶部は、
前記実データおよび前記管理データの各々を、当該メモリのアドレス空間を分ける実データ領域および管理データ領域の各々に記憶し、
前記管理データとして、対応する前記実データの当該メモリでの格納先のアドレスを記憶し、
前記制御部は、
前記第１記憶部において前記アドレスが重複している重複状態である場合、当該管理データ各々の前後の管理データを読み込み、重複状態にある各管理データが各々の前後の管理データのアドレスと連続するように、前記第１記憶部において重複状態にある管理データのアドレスを訂正する
請求項４記載の電子機器。
【請求項６】
前記第１記憶部は、
記憶するデータの誤りを訂正する誤り訂正符号を記憶し、
前記制御部は、
前記第１記憶部の前記データを前記第２記憶部にコピーする場合に、前記第１記憶部の前記データおよび前記誤り訂正符号を読み込み、読み込んだ誤り訂正符号を用いて読み込んだデータを訂正し、訂正後のデータを前記第２記憶部に記憶させる
請求項４または５記載の電子機器。
【請求項７】
前記制御部は、
当該電子機器の起動時に、前記第１記憶部に記憶されている前記管理データを、前記第２記憶部にコピーする場合に、管理データについての重複の有無を判断する
請求項５記載の電子機器。
【請求項８】
前記第２記憶部は、揮発性メモリである
請求項１から７のいずれか一項記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性半導体メモリを有する電子機器に関する。
【背景技術】
【０００２】
フラッシュメモリなどの半導体メモリは、書き込まれたデータを不揮発的に記憶保持する不揮発性の半導体メモリである。
このため、フラッシュメモリなどの半導体メモリは、ハードディスクドライブなどと同様に、電子機器の記憶部として利用できる。
たとえば特許文献１は、フラッシュメモリを有する電子機器を開示する。このような電子機器では、フラッシュメモリに対して、電気機器が使用するたとえば設定データ、アプリケーションデータなどの実データを記憶保持させることができる。
【０００３】
ところで、フラッシュメモリなどの不揮発性半導体メモリを電子機器の記憶部として用いる場合、不揮発性半導体メモリには、実データの他に、実データの管理データを記憶させるとよい。
ここで、管理データは、たとえば各実データの格納先のアドレスなどの情報を含むデータである。
また、フラッシュメモリなどの不揮発性半導体メモリを電子機器の記憶部として用いる場合、不揮発性半導体メモリのアドレス空間に対して、実データを記憶する実データ領域と、管理データを記憶する管理データ領域とを分けて設定するとよい。
これにより、電子機器は、たとえばフラッシュメモリを記憶部としたファイルシステムを利用することができる。
たとえば電子機器は、不揮発性半導体メモリに保存した実データにアクセスする場合、不揮発性半導体メモリの管理データ領域のみを探索することで、実データの格納先のアドレスを特定し、実データにアクセスすることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２４１５７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、フラッシュメモリなどの半導体メモリでは、データの上書きが制限されている。
【０００６】
たとえばＮＯＲ型やＮＡＮＤ型のフラッシュメモリでは、データ上書き処理において所定の値へデータを上書きする機能がない。ＮＯＲ型フラッシュメモリでは、たとえば「０」から「１」へビットを上げる方向での上書きが禁止されている。
このため、ＮＯＲ型フラッシュメモリでは、実データの追加書込みが可能な場合であっても、管理データの上書き処理が実行できない場合がある。
たとえばＮＯＲ型フラッシュメモリの管理データ領域に管理データの誤り訂正符号「１０１０」が既に書き込まれている場合、この誤り訂正符号の上に、実データの追加書き込み後の新たな誤り訂正符号「１１１０」を書き込むことができない。この例では、上位２ビット目を「０」から「１」に上書きする必要がある。
【０００７】
以上のように、フラッシュメモリなどの不揮発性半導体メモリでは、データの上書きについて制約がある。
このため、フラッシュメモリなどの不揮発性半導体メモリを記憶部として利用した場合、電子機器は、たとえば実データを記憶部に書き込む際に管理データを上書きにより更新することができないことがある。
【０００８】
このように電子機器では、フラッシュメモリなどの不揮発性半導体メモリを電子機器の記憶部として実用可能にすることが求められている。
【課題を解決するための手段】
【０００９】
本発明の第１の観点の電子機器は、データ書込み処理において既に書込まれたデータに対する上書きが禁止されている不揮発性半導体メモリを有し、実データおよび当該実データに対応した管理データを記憶する第１記憶部と、データ書込み処理において任意の値へのデータ上書きが可能な第２記憶部と、前記第１記憶部に対するデータアクセスを制御する制御部とを有し、前記制御部は、前記第１記憶部に記憶されている前記管理データを、前記第２記憶部にコピーし、前記第２記憶部に記憶されている前記管理データを参照して、前記第１記憶部の実データにアクセスする。
【００１０】
好適には、前記制御部は、前記第１記憶部に実データを新たに書き込む場合、前記第１記憶部の管理データを更新せずに前記第２記憶部にコピーされた管理データを前記第１記憶部への実データの書き込みに基づいて、上書きしてもよい。
【００１１】
好適には、前記制御部は、前記第１記憶部の前記管理データの記憶領域を初期化する場合、初期化された当該記憶領域に、前記第２記憶部に記憶されている管理データを書き込んでもよい。
【００１２】
好適には、前記制御部は、前記第１記憶部の前記管理データを前記第２記憶部にコピーする場合に、前記第１記憶部から読み込んだ管理データの誤りを訂正して、前記第２記憶部に書込んでもよい。
【００１３】
好適には、前記第１記憶部は、前記実データおよび前記管理データの各々を、当該メモリのアドレス空間を分ける実データ領域および管理データ領域の各々に記憶し、前記管理データとして、対応する前記実データの当該メモリでの格納先のアドレスを記憶し、前記制御部は、前記第１記憶部において前記アドレスが重複している重複状態である場合、当該管理データ各々の前後の管理データを読み込み、重複状態にある各管理データが各々の前後の管理データのアドレスと連続するように、前記第１記憶部において重複状態にある管理データのアドレスを訂正してもよい。
【００１４】
好適には、前記第１記憶部は、記憶するデータの誤りを訂正する誤り訂正符号を記憶し、前記制御部は、前記第１記憶部の前記データを前記第２記憶部にコピーする場合に、前記第１記憶部の前記データおよび前記誤り訂正符号を読み込み、読み込んだ誤り訂正符号を用いて読み込んだデータを訂正し、訂正後のデータを前記第２記憶部に記憶させてもよい。
【００１５】
好適には、前記制御部は、当該電子機器の起動時に、前記第１記憶部に記憶されている前記管理データを、前記第２記憶部にコピーする場合に、管理データについての重複の有無を判断してもよい。
【００１６】
好適には、前記第２記憶部は、揮発性メモリでもよい。
【発明の効果】
【００１７】
本発明では、フラッシュメモリなどの不揮発性半導体メモリを電子機器の記憶部として利用することができる。
【図面の簡単な説明】
【００１８】
【図１】図１は、本発明の実施形態に係る携帯電話機の外観の斜視図である。
【図２】図２は、図１の携帯電話機のハードウェア構成図である。
【図３】図３は、図１の携帯電話機に用いられるＮＯＲ型フラッシュメモリのアドレス空間の説明図である。
【図４】図４は、図３のＮＯＲ型フラッシュメモリのアドレス空間での１組の管理データ領域と実データ領域との対応関係の説明図である。
【図５】図５は、図２のＤＲＡＭのアドレス空間の説明図である。
【図６】図６は、図１の携帯電話機のＮＯＲ型フラッシュメモリにＣＰＵがアクセスするために携帯電話機に実現される機能を模式的に示すブロック図である。
【図７】図７は、携帯電話機の起動時のコピー動作の説明図である。
【図８】図８は、図１の携帯電話機における実データの書き込み動作の説明図である。
【図９】図９は、図１の携帯電話機における実データの読み出し動作の説明図である。
【図１０】図１０は、図１の携帯電話機におけるＮＯＲ型フラッシュメモリの管理データ領域のガーベージコレクション動作の説明図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態を図面に関連付けて説明する。
【００２０】
図１は、本発明の実施形態に係る携帯電話機１の外観の斜視図である。
図１の携帯電話機１は、上部筐体１０１、下部筐体１０２およびヒンジ部１０３を有する。
【００２１】
上部筐体１０１および下部筐体１０２は、略同一サイズの長方形形状を有する。
上部筐体１０１と下部筐体１０２とは、ヒンジ部１０３により開閉可能に連結される。
図１は、上部筐体１０１と下部筐体１０２とを開いた状態である。
上部筐体１０１には、表示部１３が設けられる。
下部筐体１０２には、操作部１２の複数の入力キーが設けられる。
【００２２】
図２は、図１の携帯電話機１のハードウェア構成図である。
携帯電話機１は、たとえば無線通信部（ＲＦ）１１、操作部（ＫＥＹ）１２、表示部（ＤＩＳＰ）１３、音声モデム部（ＭＯＤＥＭ）１４、ＣＰＵ（Central Processing Unit）１５、不揮発性半導体メモリ（ＮＶ＿ＭＥＭ）１６、ＤＲＡＭ１７、およびこれらを接続するシステムバス１８とを有する。
また、携帯電話機１の各部は、バッテリ１９から供給される電力により動作する。
【００２３】
無線通信部１１は、図示しない基地局との通信チャネルを確立し、基地局と通信データを送受する。
そして、無線通信部１１は、ＣＰＵ１５からの入力信号に含まれる通信データを基地局へ無線送信する。
また、無線通信部１１は、基地局から受信した通信データを含む信号をＣＰＵ１５へ出力する。
これにより、無線通信部１１は、たとえばフラッシュメモリから読み出した電子メールデータを送信する。また、無線通信部１１は、たとえば受信した電子メールデータを、フラッシュメモリに保存させるために、ＣＰＵ１５へ出力する。
【００２４】
操作部１２は、複数の入力キーを有する。
複数の入力キーには、たとえばテンキー、電源キー、通話キー、文字キーなどがある。
入力キーは、図１に示すように、携帯電話機１の下部筐体１０２の前面に配置される。
そして、操作部１２は、ユーザにより操作された入力キーに対応する入力データを含む操作信号をＣＰＵ１５へ出力する。
これにより、操作部１２は、たとえば作成したテキストデータについてのフラッシュメモリへの書込み指示や、フラッシュメモリに保存したテキストデータについての読出し指示を入力する。
【００２５】
表示部１３は、たとえばＩＰＳ（In Plane Switching）液晶デバイス、ＬＣＤ（Liquid Crystal Display Device）、有機ＥＬ（Electro-Luminescence）デバイスなどを有する。
表示部１３は、図１に示すように、携帯電話機１の上部筐体１０１の前面に配置される。
そして、表示部１３は、ＣＰＵ１５から入力された表示信号に含まれる表示データを表示する。
これにより、表示部１３は、たとえばフラッシュメモリから読み出したテキストデータなどを表示する。
【００２６】
音声モデム部１４は、スピーカ２０およびマイクロホン２１に接続される。
そして、音声モデム部１４は、マイクロホン２１に入力された音声をサンプリングし、音声データを含む信号をＣＰＵ１５へ出力する。
また、音声モデム部１４は、ＣＰＵ１５からの入力信号に含まれる音声データによりスピーカ２０を駆動する。
これにより、スピーカ２０から、たとえばフラッシュメモリから読み出した音声データの音声などが再生される。
【００２７】
不揮発性半導体メモリ１６は、書き込まれたデータなどを不揮発的に記憶保持できる半導体メモリであればよく、たとえばＮＯＲ型フラッシュメモリにより構成すればよい。
ＮＯＲ型フラッシュメモリは、ＣＰＵ１５などにより、データの書込みアクセス、読出しアクセス、消去アクセスが可能である。また、ＮＯＲ型フラッシュメモリは、データの上書きアクセスも可能である。そして、ＮＯＲ型フラッシュメモリは、書き込まれたデータを記憶保持する。
なお、ＮＯＲ型フラッシュメモリは、ガーベージコレクション処理などでの初期化処理により、各記憶ビットに所定の値（たとえば「１」）か書き込まれる。よって、ＮＯＲ型フラッシュメモリの書込みアクセスまたは上書きアクセスでは、各記憶ビットの値を「１」から「０」に落とす書込み処理が実行される。
【００２８】
そして、不揮発性半導体メモリ１６は、携帯電話機１で使用する各種のデータおよびプログラムを記憶する。
。不揮発性半導体メモリ１６に記憶されるプログラムは、たとえばＣＤ−ＲＯＭ（Compact Disc Read Only Memory）などのコンピュータ読み取り可能な記録媒体からインストールしたものでも、インターネットなどの伝送媒体によりダウンロードしてインストールしたものでもよい。
【００２９】
図３は、図２の不揮発性半導体メモリ１６として用いられるＮＯＲ型フラッシュメモリのアドレス空間の説明図である。
ＮＯＲ型フラッシュメモリは、複数の物理ブロック３１を有する。物理ブロック３１は、複数の物理ページを有する。物理ページは、複数の記憶ビットを有する。
そして、ＮＯＲ型フラッシュメモリは、データの書込み処理および読み出し処理において、物理ページ単位で複数の記憶ビットに対するデータの書込みが可能である。
また、ＮＯＲ型フラッシュメモリは、データの初期化処理（消去処理）において、物理ブロック３１の単位で複数の記憶ビットに対するデータの初期化処理が可能である。
【００３０】
なお、ＮＯＲ型フラッシュメモリの物理ページは、ＮＡＮＤ型フラッシュメモリの物理ページと同様に、ＣＰＵ１５などにより実際に書込みデータ（たとえば後述する実データ、管理データ）が書き込まれる領域と、拡張領域とにより構成されてもよい。
この場合、拡張領域には、当該物理ページと論理ページとの対応付けを示す論物アドレスの変換データ、当該物理ページの有効無効を示すデータ、当該物理ページが書き換え中であるか否かを示すスデータスデータなどを格納することができる。
【００３１】
そして、不揮発性半導体メモリ１６として用いられるＮＯＲ型フラッシュメモリのアドレス空間には、図３に示すように、複数の管理データ領域３２と、複数の実データ領域３３とが固定的に割り当てられる。
複数の実データ領域３３と複数の管理データ領域３２とは、１対１に対応する。
【００３２】
実データ領域３３は、たとえば１個または複数個の物理ブロック３１により構成される。
実データ領域３３には、ＣＰＵ１５などが不揮発性半導体メモリ１６に保存させて利用したい電子メールデータ、テキストデータ、音声データ、携帯電話機１の設定データなどの実データが書き込まれる。
電子メールデータ、音声データなどは、アプリケーションデータである。
【００３３】
管理データ領域３２は、たとえば１個または複数個の物理ブロック３１により構成される。
管理データ領域３２には、ＣＰＵ１５などにより管理データが書き込まれる。
管理データは、たとえば実データ領域３３に保存された実データのファイル名、各実データについての実データ領域３３内の格納先のアドレスなどの、対応する実データの管理情報を有する。
【００３４】
また、後述する図４に示すように、実データ領域３３の最終アドレスには、各領域のデータについての誤り訂正符号３３−３が格納される。
誤り訂正符号３３−３には、たとえばＥＣＣ、チェックサムなどがある。
このように領域毎に誤り訂正符号３３−３を記憶させることにより、ＣＰＵ１５は、各領域において経年劣化などによりビット誤りが発生したとしてもそのビット誤りを訂正し、各領域に書き込んだ正しいデータを得ることができる。
これにより、ＮＯＲ型フラッシュメモリについての不揮発性半導体メモリ１６としての信頼性を向上させることができる。
【００３５】
また、ここでは、ＮＯＲ型フラッシュメモリのアドレス空間に対して、管理データ領域３２および実データ領域３３を固定的に割り当てている。
これにより、たとえばＮＯＲ型フラッシュメモリから実データを読み出す場合に、ＣＰＵ１５は、固定化された管理データ領域３２のみを検索するだけで、当該実データの格納位置を得ることができる。
よって、ＮＯＲ型フラッシュメモリのアドレス空間の全体を検索する必要がなくなり、不揮発性半導体メモリ１６のアクセス時間を短縮することができる。
【００３６】
図４は、１組の管理データ領域３２と実データ領域３３との対応関係の説明図である。
図４の実データ領域３３には、第１実データ３３−１と、第２実データ３３−２とが格納されている。実データ領域の最終アドレスには、第１実データ３３−１と第２実データ３３−２とによる実データの誤り訂正符号３３−３が格納される。
また、図４の管理データ領域３２には、第１実データの第１管理データ３２−１と、第２実データの第２管理データ３２−２とが格納される。
この場合、ＣＰＵ１５は、たとえば第１実データ３３−１を読み出す場合、管理データ領域３２を検索することにより、第１実データの第１管理データ３２−１を検出する。
そして、ＣＰＵ１５は、第１管理データ３２−１に基づいて、第１実データ３３−１を格納するアドレスを特定し、実データ領域３３のその特定したアドレスから第１実データ３３−１を読み出す。
【００３７】
図２のＤＲＡＭ１７は、任意の値へのデータの上書きが可能なメモリである。
なお、ＤＲＡＭ１７の替わりに、ＳＲＡＭなどの揮発性メモリを用いてもよい。ＤＲＡＭ１７、ＳＲＡＭは、フラッシュメモリよりも高速にデータアクセスが可能である。
そして、ＤＲＡＭ１７は、ＣＰＵ１５により、データの書込みアクセス、上書きアクセス、読出しアクセス、消去アクセスが可能である。
また、ＤＲＡＭ１７は、書込みアクセスおよび上書きアクセスにおいて、ビットを「１」から「０」に落とす書込み処理と、ビットを「０」から「１」に上げる書込み処理とが可能である。
すなわち、ＤＲＡＭ１７に対するデータの上書きアクセスでは、任意の値への上書きが可能である。
【００３８】
図５は、ＤＲＡＭ１７として用いられる図２のＤＲＡＭ１７のアドレス空間の説明図である。
そして、図５に示すように、ＤＲＡＭ１７は、図３の不揮発性半導体メモリ１６のアドレス空間に設定された管理データ領域３２と同数の複数の管理データ領域４１を記憶する。
また、ＤＲＡＭ１７に記憶される複数の管理データ領域４１は、たとえば携帯電話機１の電源投入時に図３の不揮発性半導体メモリ１６からコピーされた複数の管理データ領域３２である。
ＤＲＡＭ１７の管理データ領域４１の個数は、不揮発性半導体メモリ１６の管理データ領域３２の個数と一致する。
【００３９】
図２のＣＰＵ１５は、プログラムを実行するコンピュータである。
そして、ＣＰＵ１５が、不揮発性半導体メモリ１６に記憶されるプログラムを読み込んで実行することにより、携帯電話機１の制御部が実現される。
【００４０】
図６は、図２の不揮発性半導体メモリ１６にＣＰＵ１５がアクセスするために携帯電話機１に実現される機能を模式的に示すブロック図である。
複数のアプリケーション部５１と、ファイルシステム部５２とは、ＣＰＵ１５によって実現される。
また、ＮＯＲ型フラッシュメモリに対して物理ページ毎にデータの書込み処理を行うライト手段５５、物理ページ毎に読み出し処理を行うリード手段５６、物理ブロック３１毎に初期化処理を行う初期化手段５７が不揮発性半導体メモリ１６によって実現されている。
ＣＰＵ１５は、これらのアクセス手段を用いて、ＮＯＲ型フラッシュメモリにアクセス可能である。
【００４１】
アプリケーション部５１は、たとえば電子メール部、通話部、プレーヤ部、撮像部などとして機能する。
そして、アプリケーション部５１は、操作部１２の操作入力などに応じて、ファイルシステム部５２に対して実データの書込みアクセス、読出しアクセス、消去アクセスを指示する。
たとえばアプリケーション部５１は、ファイルシステム部５２に対して実データを指定した読出しアクセスを要求する。
この場合、ファイルシステム部５２は、リード手段５６を用いて不揮発性半導体メモリ１６から指定された実データを読み込み、アプリケーション部５１に返す。
アプリケーション部５１は、要求した実データを受け取ると、無線通信部１１、表示部１３、音声モデム部１６などへ出力する。
これにより、不揮発性半導体メモリ１６に記憶されデータ楽曲データが携帯電話機１において再生されたり、不揮発性半導体メモリ１６に記憶されデータ電子メールデータが携帯電話機１から基地局へ送信されたりする。
【００４２】
ファイルシステム部５２は、不揮発性半導体メモリ１６およびＤＲＡＭ１７を管理する。
また、ファイルシステム部５２は、不揮発性半導体メモリ１６に記憶保存させる各実データを、ファイルにより管理する。ファイルシステム部５２は、実データに対して、互いに識別可能なファイル名を付与する。
【００４３】
そして、ファイルシステム部５２は、たとえば携帯電話機１の起動時に、不揮発性半導体メモリ１６のすべての管理データ領域３２を、ＤＲＡＭ１７にコピーする。
ファイルシステム部５２は、リード手段５６を用いて不揮発性半導体メモリ１６から管理データを物理ページ毎に読出し、読み出した管理データをＤＲＡＭ１７に書き込む。
【００４４】
また、ファイルシステム部５２は、アプリケーション部５１により実データの書込みアクセス、読出しアクセス、消去アクセスが要求されると、要求内容に応じたシーケンス処理を実行する。
ファイルシステム部５２は、アクセス手段５５〜５７を用いて、不揮発性半導体メモリ１６に対してデータの書込み処理、読出し処理、初期化処理を実行する。
【００４５】
たとえば実データの読み出しアクセスが要求された場合、ファイルシステム部５２は、ＤＲＡＭ１７において当該実データのファイル名を検索し、要求に係る実データの不揮発性半導体メモリ１６での格納アドレスを特定する。
次に、ファイルシステム部５２は、リード手段５６を用いて、不揮発性半導体メモリ１６について特定した格納アドレスから、実データを読み込む。
そして、ファイルシステム部５２は、不揮発性半導体メモリ１６から読み込んだ実データを、要求に係る実データとしてアプリケーション部５１へ出力する。
【００４６】
この他にも例えば実データの書込みアクセスが要求された場合、ファイルシステム部５２は、ＤＲＡＭ１７内の管理データを検索し、不揮発性半導体メモリ１６のたとえば未使用の実データ領域３３を検索する。
次に、ファイルシステム部５２は、ライト手段５５を用いて、不揮発性半導体メモリ１６の当該未使用の実データ領域３３に実データと誤り訂正符号とを書き込む。
また、ファイルシステム部５２は、ＤＲＡＭ１７において対応する管理データ領域４１に、実データ領域３３に書き込んだ実データのファイル名などの管理データと誤り訂正符号とを書き込む。
【００４７】
また、ファイルシステム部５２は、アプリケーション部５１からの指示が無くとも、たとえば不揮発性半導体メモリ１６に対して所定量以上の実データの書き込みを実行した場合には、不揮発性半導体メモリ１６の管理データ領域３２についてのガーベージコレクション処理を実行する。
このガーベージコレクション処理では、ファイルシステム部５２は、まず、初期化手段５７を用いて、対象となる不揮発性半導体メモリ１６の管理データ領域３２を初期化する。
次に、ファイルシステム部５２は、ライト手段５５を用いて、初期化した不揮発性半導体メモリ１６の管理データ領域３２に、ＤＲＡＭ１７に記憶されている最新の管理データ領域４１の管理データおよび誤り訂正符号を書き込む。
【００４８】
次に、ＮＯＲ型フラッシュメモリ（１６）を用いた場合のアクセス動作について詳しく説明する。
以下では、携帯電話機１の起動時のコピー動作、実データの書込み動作、読出し動作、ガーベージコレクション動作について説明する。
【００４９】
図７は、携帯電話機１の起動時のコピー動作の説明図である。
携帯電話機１が起動されると、ＣＰＵ１５はプログラムを実行し、ＣＰＵ１５にファイルシステム部５２が実現される。
【００５０】
携帯電話機１の起動時には、ファイルシステム部５２は、まず、ＮＯＲ型フラッシュメモリ（１６）から、管理データ領域３２を読み込む（ステップＳＴ１）。
管理データ領域３２は、図３に示すように、ＮＯＲ型フラッシュメモリのアドレス空間に対して固定化されている。
よって、ファイルシステム部５２は、ＮＯＲ型フラッシュメモリの所定のアドレスから、管理データ領域３２のデータを短時間に読み込むことができる。
【００５１】
次に、ファイルシステム部５２は、読み込んだ管理データ領域３２の管理データと、読み込んだ誤り訂正符号とを比較し、読み込んだ管理データ領域３２にビット誤りが発生しているか否かを判断する。
読み込んだ管理データ領域３２にビット誤りが発生している場合、ファイルシステム部５２は、誤り訂正符号を用いて、読み込んだ管理データ領域３２の管理データのビット誤りを訂正する。
【００５２】
次に、ファイルシステム部５２は、ビット誤りが無い管理データ領域３２のデータ、またはビット誤りを訂正した管理データ領域３２のデータを、ＤＲＡＭ１７に書き込む（ステップＳＴ２）。
これにより、ファイルシステム部５２は、携帯電話機１の起動時に、ＮＯＲ型フラッシュメモリに記憶されデータ管理データ領域３２を、ＤＲＡＭ１７にコピーする。
ＤＲＡＭ１７には、ビット誤りを含まない管理データ領域４１がコピーされる。
【００５３】
また、ファイルシステム部５２は、以上の管理データ領域のコピー処理を、ＮＯＲ型フラッシュメモリのすべての管理データ領域３２について実行する。
これにより、ＤＲＡＭ１７には、ＮＯＲ型フラッシュメモリのすべての管理データ領域３２のデータがコピーされる。
【００５４】
すべての管理データ領域３２のデータについてのコピー処理が終了すると、ファイルシステム部５２は、ＤＲＡＭ１７にコピーした管理データ領域４１のデータについての訂正処理を実行する。
具体的には、ファイルシステム部５２は、ＤＲＡＭ１７にコピーしたすべての管理データ領域４１をスキャンし、重複した管理データがＤＲＡＭ１７に記憶されているか否かを判断する。
たとえばＤＲＡＭ１７に同じアドレスを示す複数の管理データが記憶されている場合、ファイルシステム部５２は、重複状態にある複数の管理データがＤＲＡＭ１７に存在すると判断する。
【００５５】
重複状態にある複数の管理データがＤＲＡＭ１７に存在する場合、ファイルシステム部５２は、当該複数の管理データについての訂正処理を実行する。
ファイルシステム部５２は、たとえば重複状態にある各管理データの前後の管理データを読み込む。
通常、複数の実データは実データ領域３３において順番に並べて格納される。
このため、通常は、管理データ領域３２の複数の管理データのアドレスも順番に並ぶ。
そして、ファイルシステム部５２は、重複している各管理データを、前後の管理データとアドレスが順番に並ぶように訂正する。
たとえば重複状態にある管理データのアドレスが５であり、その前後の管理データのアドレスが１と３である場合、重複状態にある管理データのアドレスを５から２に訂正する。これにより、訂正前のアドレスの並びが「１→５→３」である場合に、訂正後のアドレスは「１→２→３」の順番に並ぶようになる。
【００５６】
図８は、ＮＯＲ型フラッシュメモリへの実データの書き込み動作の説明図である。
実データの書き込み時に、ファイルシステム部５２は、ＤＲＡＭ１７の管理データを読み込み、たとえば未使用の実データ領域３３を検索する（ステップＳＴ１１）。
未使用の実データ領域３３を検出すると、ファイルシステム部５２は、ライト手段５５を用いて、ＮＯＲ型フラッシュメモリの当該未使用の実データ領域３３に、実データと誤り訂正符号とを書き込む（ステップＳＴ１２）。
次に、ファイルシステム部５２は、書き込みをした実データ領域３３に対応するＤＲＡＭ１７の管理データ領域４１を更新する（ステップＳＴ１３）。
ファイルシステム部５２は、当該ＤＲＡＭ１７の管理データ領域４１に、実データ領域３３に書き込んだ実データのファイル名、格納先のアドレスなどの管理データと、誤り訂正符号とを書き込む。
【００５７】
図９は、ＮＯＲ型フラッシュメモリへの実データの読み出し動作の説明図である。
実データの読出し時に、ファイルシステム部５２は、ＤＲＡＭ１７の管理データを読み込み、読み出し要求に係る実データの格納先のアドレスを特定する（ステップＳＴ２１）。
読出し要求に係る実データの格納先アドレスを特定すると、ファイルシステム部５２は、リード手段５６を用いて、ＮＯＲ型フラッシュメモリの当該アドレスから、実データを読み込む（ステップＳＴ２２）。
【００５８】
図１０は、ＮＯＲ型フラッシュメモリの管理データ領域３２のガーベージコレクション動作の説明図である。
このガーベージコレクション動作は、たとえばＮＯＲ型フラッシュメモリに対して所定量以上の実データの書き込みを実行した場合などに実行される。
図１０（Ａ）は、管理データ領域３２，４１の書込み直後の状態図である。
図１０（Ｂ）は、ガーベージコレクション前のビット化けが発生した管理データ領域３２，４１の状態図である。
図１０（Ｃ）は、ガーベージコレクション後の管理データ領域３２，４１の状態図である。
ＮＯＲ型フラッシュメモリの管理データ領域３２では、図１０（Ａ）および（Ｂ）に示すように、書込み後の経年劣化などにより、ビット化けが起きることがある。
【００５９】
管理データ領域３２のガーベージコレクション動作では、ファイルシステム部５２は、初期化手段５７を用いて、処理対象の管理データ領域３２を初期化する。これにより、当該処理対象の管理データ領域３２のデータは、たとえばすべて「１」になる。
次に、ファイルシステム部５２は、ＤＲＡＭ１７から、初期化したＮＯＲ型フラッシュメモリの管理データ領域３２に対応する管理データ領域４１のデータを読み込む。
次に、ファイルシステム部５２は、ライト手段５５を用いて、ＤＲＡＭ１７から読み込んだ管理データ領域４１のデータを、初期化したＮＯＲ型フラッシュメモリの管理データ領域３２に書き込む。
これにより、ガーベージコレクション前にＮＯＲ型フラッシュメモリの管理データ領域３２に発生しデータビット化けは、消去される。
【００６０】
以上のように、本実施形態では、ＮＯＲ型フラッシュメモリ（１６）にアクセスする場合、ファイルシステム部５２は、ＮＯＲ型フラッシュメモリからＤＲＡＭ１７にコピーした管理データを参照する。
そして、ＤＲＡＭ１７は、データ書込み処理において任意の値へのデータ上書きが可能であるため、たとえばＮＯＲ型フラッシュメモリに実データを書き込む場合には、ＤＲＡＭ１７に当該実データの管理データを書き込むことができる。
また、本実施形態では、ガーベージコレクション処理において、ＮＯＲ型フラッシュメモリの管理データ領域３２を初期化し、初期化された当該管理データ領域３２に、ＤＲＡＭ１７に記憶されている管理データを書き込む。
よって、本実施形態では、ＮＯＲ型フラッシュメモリに書き込んだ実データとその管理データとの整合性を維持することができる。
それゆえ、本実施形態では、ＮＯＲ型フラッシュメモリに、実データおよび当該実データの管理データを記憶させ、ＮＯＲ型フラッシュメモリを不揮発性半導体メモリ１６として使用することができる。
【００６１】
また、本実施形態では、ＮＯＲ型フラッシュメモリの管理データ領域３２のデータをＤＲＡＭ１７にコピーする場合に、読み込んだ当該管理データ領域３２の誤り訂正符号を用いて読み込んだ管理データを訂正し、訂正後の管理データをＤＲＡＭ１７に記憶させる。
また、本実施形態では、ＮＯＲ型フラッシュメモリに記憶されているすべての管理データをＤＲＡＭ１７にコピーし、ＤＲＡＭ１７にコピーしたすべての管理データをスキャンし、ＤＲＡＭ１７において重複している管理データを訂正する。
よって、ＤＲＡＭ１７にコピーされた管理データは、ビット誤りおよび重複データを含まない正しい管理データになる。
たとえばＮＯＲ型フラッシュメモリに保存された管理データにおいて経年劣化によるビット誤りが発生したとしても、ファイルシステム部５２は、そのビット誤りが訂正された正しい管理データを参照してＮＯＲ型フラッシュメモリの実データにアクセスできる。
【００６２】
以上の実施形態は、本発明の好適な実施形態の例であるが、本発明は、これに限定されるものではなく、発明の要旨を逸脱しない範囲において種々の変形または変更が可能である。
【００６３】
たとえば上記実施形態では、不揮発性半導体メモリ１６として、データ書込み処理において所定の値へのデータ上書きができないＮＯＲ型フラッシュメモリを使用している。
この他にも例えば、データ書込み処理において既に書込まれたデータに対する直接的な上書きができないＮＡＮＤ型フラッシュメモリなどの不揮発性半導体メモリ１６を使用してもよい。
【００６４】
上記実施形態では、ファイルシステム部５２は、携帯電話機１の起動時に、ＮＯＲ型フラッシュメモリの管理データを、ＤＲＡＭ１７としてのＤＲＡＭ１７にコピーしている。
この他にも例えば、ファイルシステム部５２は、携帯電話機１の起動中に定期的に、ＮＯＲ型フラッシュメモリの管理データを、ＤＲＡＭ１７としてのＤＲＡＭ１７にコピーしてもよい。
【００６５】
上記実施形態では、ファイルシステム部５２は、所定量以上のデータ書込みがなされた場合に、ＤＲＡＭ１７の管理データを、ＮＯＲ型フラッシュメモリにコピーしている。
この他にも例えば、ファイルシステム部５２は、携帯電話機１のシャットダウン時（停止時）に、ＤＲＡＭ１７の管理データを、ＮＯＲ型フラッシュメモリにコピーしてもよい。
さらに他にも例えば、ファイルシステム部５２は、バッテリ１９の電力の残量が所定値を下回った場合には、実データの書込みの度に、ＤＲＡＭ１７の管理データをＮＯＲ型フラッシュメモリにコピーしてもよい。
【００６６】
上記実施形態は、携帯電話機１の例である。
この他にも例えば、本発明は、ＰＨＳ端末、携帯ゲーム機器、ＰＤＡ、携帯ナビゲーション装置、携帯再生装置、コンピュータ装置などの各種の電子機器に適用できる。
【符号の説明】
【００６７】
１…携帯電話機（電子機器）、１６…不揮発性半導体メモリ（第１記憶部）、１７…ＤＲＡＭ（第２記憶部）、３２…管理データ領域、３３…実データ領域、５２…ファイルシステム部（制御部）。
【図１】
2011113338.tif 000003
【図２】
2011113338.tif 000004
【図３】
2011113338.tif 000005
【図４】
2011113338.tif 000006
【図５】
2011113338.tif 000007
【図６】
2011113338.tif 000008
【図７】
2011113338.tif 000009
【図８】
2011113338.tif 000010
【図９】
2011113338.tif 000011
【図１０】
2011113338.tif 000012