(57)【要約】【課題】  フラッシュメモリに対応するシステムにおいて、コストの削減、及びファイルシステム立ち上げ処理時間の短縮等を図る。【解決手段】  ＦＡＴが利用する論理−物理アドレス変換テーブルを板状メモリ１に対して格納する。これにより、セット本体のマイコンでは、ファイルシステム立ち上げ時に論理−物理アドレス変換テーブルを構築する必要が無くなる。また、板状メモリ１の論理−物理アドレス変換テーブルから必要なデータ部分を読み出して利用すればよいので、このデータは、比較的小容量の内部ＲＡＭに格納してもマイコンの処理能力を低下させない。従って、論理−物理アドレス変換テーブル保持のための外付けＲＡＭを省略することが出来る。【選択図】        図２
2008090870.tif 000002
【特許請求の範囲】
【請求項１】
当該記憶媒体とデータの送受信を行う本体装置に対して着脱可能とされると共に、記憶領域を所定の固定長により分割した分割記憶領域が形成されているものとしたうえで、
上記分割記憶領域は、少なくとも１つのデータ読出／書き込み単位領域からなるデータ消去単位領域を１つ以上備えて構成され、
少なくとも、上記分割記憶領域ごとに対応して付された物理アドレスと、上記分割記憶領域に対して書き込まれるべきデータに対応づけられる論理アドレスとの対応を示すテーブル情報と、未使用の論理アドレスに対してデータ未記録領域としての分割記憶領域の物理アドレスを対応させたアドレス情報とが上記記憶領域の所定の分割記憶領域に記憶されているとともに、
上記テーブル情報であることを識別するための識別情報が、上記テーブル情報に対して付されている
ことを特徴とする記憶媒体。
【請求項２】
記憶領域を所定の固定長により分割した分割記憶領域が形成されている記憶媒体と、
上記記憶媒体が着脱可能とされると共に、装着された上記記憶媒体とデータの送受信を行うことの出来る本体装置とから成り、
上記記憶媒体は、少なくとも１つのデータ読出／書き込み単位領域からなるデータ消去単位領域を１つ以上備えて構成さた上記分割記憶領域を備えて構成され、
上記分割記憶領域ごとに対応して付された物理アドレスと、上記分割記憶領域に対して書き込まれるべきデータに対応づけられる論理アドレスとの対応を示すテーブル情報と、未使用の論理アドレスに対してデータ未記録領域としての分割記憶領域の物理アドレスを対応させたアドレス情報とが上記記憶領域の所定の分割記憶領域に記憶されているとともに、上記テーブル情報であることを識別するための識別情報が、上記テーブル情報に対して付されており、
上記本体装置は、装着された記憶媒体に記憶されている上記テーブル情報及び上記アドレス情報を利用して、この装着された記憶媒体とのデータの送受信を実行するように構成されている、
ことを特徴とする電子機器システム。
【請求項３】
上記本体装置と上記記憶媒体間とで送受信されるデータは、時系列データであることを特徴とする請求項２に記載の電子機器システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データが記憶される記憶媒体、及びこの記憶媒体とデータの送受信（データの書き込み／読み出し）を行う本体装置と上記記憶媒体とから成る電子機器システムに関するものである。
【背景技術】
【０００２】
近年、例えばフラッシュメモリなどの固体記憶素子を搭載した、小型の記憶装置（記憶媒体）を形成し、例えばビデオカメラその他の各種の機器に装填することで画像、音声、データファイルなどを記憶できるようにするものが開発されている。
そのような記憶装置は、例えば従来より在った３．５インチフロッピーディスク（登録商標）よりも小型とすることで、対応するドライブも小型のものとなり、例えばビデオカメラや録音機器、携帯用コンピュータ装置などへの搭載にも適するものとなる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、上記のようなフラッシュメモリを利用した記憶装置に対するデータの書き込み／読み出しを行うファイルシステムにおいては、フラッシュメモリの特性として書き込み／消去の繰り返し回数に寿命があることを背景として、論理アドレスと物理アドレスという概念を導入し、この論理アドレスと物理アドレスとを利用して、記憶装置に対するデータの書き込み／読み出しを実行するように構成することが提案されている。
【０００４】
このような構成を採る場合、システムにおいてフラッシュメモリとしての記憶装置にアクセスしてデータの書き込み／読み出し等を行うためには、上記論理アドレスと物理アドレスとの対応を示すテーブル（以降、論理−物理アドレス変換テーブル）が必要となる。
【０００５】
これまでは、論理−物理アドレス変換テーブルは、この記憶装置を利用するセット本体側に用意するようにされていた。
ところが、この論理−物理アドレス変換テーブルは、フラッシュメモリの記憶容量にもよるが、大きいときには１６ＫＢ程度のデータサイズを要する。これに対して、本体セットにおける１チップのマイクロコンピュータ（以下、本明細書ではマイコンと略す）内のＲＡＭ容量は、高々数十ＫＢ程度である。このため、セット本体のマイコン内のＲＡＭに論理−物理アドレス変換テーブルを格納しようとすると、この論理−物理アドレス変換テーブルによってＲＡＭの記憶領域のかなり多くの領域が占有されるので、この状態でのマイコンの処理能力を考えると、実質的にマイコン内で論理−物理アドレス変換テーブルを扱うことは困難である。また、廉価なマイコンでは、ＲＡＭ容量が１０ＫＢ程度しかない場合もあり、論理−物理アドレス変換テーブルのサイズとＲＡＭ容量との兼ね合いによっては、論理−物理アドレス変換テーブルを格納することが不可能な場合もある。
【０００６】
このため、フラッシュメモリによる記憶装置に対応するセット本体側においては外付けのＲＡＭを設け、このＲＡＭに対して論理−物理アドレス変換テーブルを格納するように構成することになる。
しかし、外付けのＲＡＭを備えることで、それだけコストが高くなり、また、外付けのＲＡＭを駆動するための電力も要するため消費電力も増加することになるという問題を抱えることになる。特に消費電力に関しては、セット本体がバッテリにより駆動される携帯機器であるような場合には、バッテリの寿命に影響してくることになり、その問題が顕著となる。
【０００７】
また、外付けＲＡＭに保持された論理−物理アドレス変換テーブルの情報は、例えばこれまでセット本体に装填されていた記憶装置が外されるとクリアされ、論理−物理アドレス変換テーブルの情報の生成は、セット本体に対して記憶装置が装填される度に行われるのが通常である。
この論理−物理アドレス変換テーブルの生成に際しては、セット本体のマイコンが装填されている記憶装置内部の状態をチェックし、ファイル管理システムとしての論理−物理アドレス変換テーブルの情報を構築する。そして、これを外付けのＲＡＭに格納するようにされる。
このような準備処理に要する時間は、最速であれば数秒程度であるが、例えば廉価な処理能力の低いマイコンでは、その数倍の時間を要することになる。例えば、記憶装置に対するデータ書き込み／読み出しのためのアクセスは、この後に行われるので、ユーザにとっては、上記のような準備処理期間は待ち時間として受け取られる。ユーザにとっての使い勝手を考慮すれば、出来るだけこのような準備処理に要する時間は短縮されるべきである。
【課題を解決するための手段】
【０００８】
そこで、本発明は上記した課題を考慮して、当該記憶媒体とデータの送受信を行う本体装置に対して着脱可能とされると共に、記憶領域を所定の固定長により分割した分割記憶領域が形成されているものとしたうえで、上記分割記憶領域は、少なくとも１つのデータ読出／書き込み単位領域からなるデータ消去単位領域を１つ以上備えて構成され、少なくとも、上記分割記憶領域ごとに対応して付された物理アドレスと、上記分割記憶領域に対して書き込まれるべきデータに対応づけられる論理アドレスとの対応を示すテーブル情報と、未使用の論理アドレスに対してデータ未記録領域としての分割記憶領域の物理アドレスを対応させたアドレス情報とが上記記憶領域の所定の分割記憶領域に記憶されているとともに、 上記テーブル情報であることを識別するための識別情報が、上記テーブル情報に対して付されているようにして記憶媒体を構成することとした。
【０００９】
また、記憶領域を所定の固定長により分割した分割記憶領域が形成されている記憶媒体と、上記記憶媒体が着脱可能とされると共に、装着された上記記憶媒体とデータの送受信を行うことの出来る本体装置とから成り、上記記憶媒体は、少なくとも１つのデータ読出／書き込み単位領域からなるデータ消去単位領域を１つ以上備えて構成さた上記分割記憶領域を備えて構成され、上記分割記憶領域ごとに対応して付された物理アドレスと、上記分割記憶領域に対して書き込まれるべきデータに対応づけられる論理アドレスとの対応を示すテーブル情報と、未使用の論理アドレスに対してデータ未記録領域としての分割記憶領域の物理アドレスを対応させたアドレス情報とが上記記憶領域の所定の分割記憶領域に記憶されているとともに、上記テーブル情報であることを識別するための識別情報が、上記テーブル情報に対して付されており、上記本体装置は、装着された記憶媒体に記憶されている上記テーブル情報及び上記アドレス情報を利用して、この装着された記憶媒体とのデータの送受信を実行するように構成することとした。
【発明の効果】
【００１０】
以上説明したように本発明は論理−物理アドレス変換テーブルを記憶装置内に記憶させるように構成している。
これにより、本体装置側では論理−物理アドレス変換テーブルを構築するための処理を実行する必要が無くなり、例えばファイルシステム立ち上げに要する時間を短縮させることが出来る。これは、ユーザにとっては、例えば記憶装置を本体に差し替えたときなどにおいて、記憶装置に対するデータ書き込み／読み出しが可能となるまでの待ち時間の短縮として捉えられるので、それだけユーザにとっては電子機器システムの使い勝手が向上されることになる。
【００１１】
また、このような構成の場合、本体装置では、例えば記憶装置に格納されている論理−物理アドレス変換テーブルから必要なデータ部分を読み出せばよいようにされるのであるが、この読み出した論理−物理アドレス変換テーブルの一部データは、例えばマイコン内部のＲＡＭで保持しても特に負担とはならないほどに小さいサイズとなる。
従って、本体装置においては、論理−物理アドレス変換テーブルの全データを内部で保持するための領域を確保するための外付けのＲＡＭ等を設ける必要が無くなるため、それだけ本体装置のコストを低減させることが可能になる。また、外付けのＲＡＭを駆動するための消費電力分が節減されることで、それだけ低消費電力化を図ることも可能となる。
また本発明では、記憶装置に格納されている論理−物理アドレス変換テーブルに対して識別情報を付すことで、上記のようにして記憶装置に記憶されている論理−物理アドレス変換テーブルを読み出すのにあたり、記憶データ内における論理−物理アドレス変換テーブルの特定を可能としているものである。
【００１２】
更に、本発明では、未使用の論理アドレスに対してデータ未記録領域としての分割記憶領域の物理アドレスを対応させたアドレス情報を記憶装置に記憶させておくことで、別階層で未使用ブロックのサーチを行うことなく、このアドレス情報を参照することで未使用ブロックの所在を直ちに特定することが出来る。つまり、データ書き込み時において、未使用ブロックをサーチする処理は不要となり、それだけ軽い処理負担で迅速に未使用ブロックに対するデータ書き込みを実行していくことが出来ることになる。これは、記録データが、例えば音声データや動画像データなどとされてリアルタイムな処理が要求される時系列データである場合に特に有効となるものである。
【発明を実施するための最良の形態】
【００１３】
以降、本発明の実施の形態について説明する。なお、本実施の形態としての記憶装置は板状の外形形状を有する板状メモリとされる。
説明は次の順序で行う。
１．メモリの外形形状
２．メモリフォーマット
２−１．メモリファイルシステム処理階層
２−２．物理的データ構造
２−３．物理アドレス及び論理アドレスの概念
２−４．本実施の形態の論理−物理アドレス変換テーブル
３．システム構成
【００１４】
１．メモリの外形形状
まず図５により、本発明の実施の形態の形態としての記憶装置である、板状メモリ１の外形形状について説明する。
板状メモリ１は、例えば図５に示すような板状の筐体内部に例えば所定容量ののメモリ素子を備える。本実施の形態としては、このメモリ素子としてフラッシュメモリ（Flash Memory）が用いられるものである。
図３に平面図、正面図、側面図、底面図として示す筐体は例えばプラスチックモールドにより形成され、サイズの具体例としては、図に示す幅Ｗ１１、Ｗ１２、Ｗ１３のそれぞれが、Ｗ１１＝６０ｍｍ、Ｗ１２＝２０ｍｍ、Ｗ１３＝２．８ｍｍとなる。
【００１５】
筐体の正面下部から底面側にかけて例えば９個の電極を持つ端子部２が形成されており、この端子部２から、内部のメモリ素子に対する読出又は書込動作が行われる。
筐体の平面方向の左上部は切欠部３とされる。この切欠部３は、この板状メモリ１を、例えばセット本体側のドライブ（着脱機構）へ装填する際などに挿入方向を誤ることを防止するためのものとなる。
また筐体底面側には使用性の向上のため滑り止めを目的とした凹凸部４が形成されている。
さらに底面側には、記憶内容の誤消去を防止する目的のスライドスイッチ５が形成されている。
【００１６】
２．メモリフォーマット
２−１．メモリファイルシステム処理階層
続いて、板状メモリ１を記憶媒体とするシステムにおけるフォーマットについて説明していく。
図６は、板状メモリ１を記憶媒体とするシステムのファイルシステム処理階層を示すものである。
この図に示すように、ファイルシステム処理階層としては、アプリケーション処理層の下に、順次、ファイル管理処理層、論理アドレス層、物理アドレス層、フラッシュメモリアクセスがおかれる。この階層では、ファイル管理処理層がいわゆる（ＦＡＴ(File Allocation Table)となる。また、この図から分かるように、本実施の形態のファイルシステムでは論理アドレス及び物理アドレスという概念が導入されているのであるが、これについては後述する。
【００１７】
２−２．物理的データ構造
図７には、板状メモリ１内の記憶素子である、フラッシュメモリの物理的データ構造が示されている。
フラッシュメモリとしての記憶領域は、セグメントという固定長のデータ単位が大元となる。このセグメントは、１セグメントあたり４ＭＢ或いは８ＭＢとして規定されるサイズであり、１つのフラッシュメモリ内におけるセグメント数は、そのフラッシュメモリの容量に依存して異なってくる。
【００１８】
そして、この１セグメントを図７（ａ）に示すように、ブロックという固定長のデータ単位（８ＫＢ又は１６ＫＢ）により区切るようにされる。原則として、１セグメントは５１２ブロックに区切られることから、図７（ａ）に示すブロックｎについては、ｎ＝５１１とされることになる。但し、フラッシュメモリでは、ディフェクトエリア（書き込み不可な損傷エリア）としてのブロック数が所定数の範囲で許可されているため、データ書き込みが有効とされる実質的なブロック数を対象とすれば、上記ｎは５１１よりも少なくなる。
【００１９】
図７（ａ）に示すようにして形成されるブロック０〜ｎのうち、先頭の２つのブロック０，１はブートブロックといわれる。但し、実際には有効なブロックの先頭から２つのブロックがブートブロックとして規定されることになっており、必ずしもブートブロックがブロック０，１である保証はない。
そして、残りのブロックが、ユーザデータが格納されるユーザブロックとなる。
【００２０】
１ブロックは、図７（ｄ）に示すようにして、ページ０〜ｍにより分割される。１ページの容量は、図７（ｅ）に示すように、５１２バイトのデータエリアと１６バイトの冗長部よりなる、５２８（＝５１２＋１６）バイトの固定長とされる。なお、冗長部の構造については図７（ｆ）により後述する。
また、１ブロック内のページ数としては、１ブロックの容量が８ＫＢの場合には１６ページ、１６ＫＢの場合には３２ページとなる。
このような、図７（ｄ）（ｅ）に示されるブロック内のページ構造は、上記ブートブロックとユーザブロックとで共通である。
また、フラッシュメモリでは、データの読み出し／書き込みはページ単位で行われ、データの消去はブロック単位で行われるものとされる。そして、データの書き込みは、消去済みのページに対してしか行われないものとされている。従って、実際のデータの書き換えや書き込みは、ブロック単位を対象として行われることになる。
【００２１】
先頭のブートブロックは、図７（ｂ）に示すように、ページ０に対してヘッダーが格納され、ページ１には初期不良データの位置（アドレス）を示す情報が格納される。また、ページ２にはＣＩＳ／ＩＤＳといわれる情報が格納される。
２つめのブートブロックは図７（ｃ）に示すように、ブートブロックとしてのバックアップのための領域とされている。
【００２２】
図７（ｅ）に示された冗長部（１６バイト）は、図７（ｆ）に示す構造を有する。
この冗長部は、図のように先頭の第０バイト〜第２バイトの３バイトが、データエリアのデータ内容の更新に応じて書き換えが可能なオーバーライトエリアとされる。このオーバーライトエリアのうち、第０バイトにはブロックステータスが格納され、第１バイトにはデータステータスが格納される(Block Flag Data)。また、第２バイトの上位の所定ビットを利用して変換テーブルフラグ(Page Data Status1)が格納される。
【００２３】
原則として第３バイト〜第１５バイトは、その内容が現ページのデータ内容に応じて固定とされ、書き換えが不可とされる情報が格納される領域となる。
第３バイトには管理フラグ(Block Info)が格納され、第４，第５バイトから成る２バイトの領域には、後述する論理アドレス(Logic Address)が格納される。
第６〜第１０バイトの５バイトの領域は、フォーマットリザーブの領域とされ、続く第１１，第１２バイトの２バイトが、上記フォーマットリザーブに対して誤り訂正を施すための分散情報ＥＣＣを格納する領域とされる。
残る第１３〜第１５バイトには、図７（ｅ）に示すデータエリアのデータに対して誤り訂正を行うためのデータＥＣＣが格納される。
【００２４】
上記図７（ｆ）に示した冗長部の第３バイトに格納される管理フラグは、図８に示すようにして、ビット７〜ビット０ごとにその内容が定義されている。
ビット７，６、及びビット１，０はリザーブ（未定義）領域とされている。
ビット５は現ブロックに対してのアクセス許可の有効（‘１’；Free）／無効(‘０’；Read Protected)を示すフラグが格納される。ビット４には現ブロックについてのコピー禁止指定（‘１’；ＯＫ ／‘０’；ＮＧ）についてのフラグが格納される。
【００２５】
ビット３は変換テーブルフラグとされる。この変換テーブルフラグは、現ブロックが後述する論理−物理アドレス変換テーブルであるのか否かを示す識別子であり、このビット３の値が‘０’とされていれば、現ブロックは論理−物理アドレス変換テーブルであることが識別され、‘０’であれば無効となる。つまり、現ブロックは論理−物理アドレス変換テーブルではないことが識別される。
【００２６】
ビット２はシステムフラグが格納され、‘１’であれば現ブロックがユーザブロックであることが示され、‘０’であればブートブロックであることが示される。
【００２７】
ここで、セグメント及びブロックと、フラッシュメモリ容量との関係を図１３（左３列を参照）により説明しておく。
板状メモリ１のフラッシュメモリ容量としては、４ＭＢ，８ＭＢ，１６ＭＢ，３２ＭＢ，６４ＭＢ，１２８ＭＢの何れかであるものとして規定されている。
そして、最も容量の小さい４ＭＢの場合であると、１ブロックは８ＫＢと規定された上で、そのブロック数としては５１２個とされる。つまり、４ＭＢはちょうど１セグメントの容量を有するものとされる。そして、４ＭＢの容量であれば、同様に１ブロック＝８ＫＢの容量が規定された上で、２セグメント＝１０２４ブロックとなる。なお、前述したように、１ブロック＝８ＫＢであれば、１ブロック内のページ数は１６ページとなる。
但し１６ＭＢの容量では、１ブロックあたりの容量として８ＫＢと１６ＫＢの両者が存在することが許可されている。このため、２０４８ブロック＝４セグメント（１ブロック＝８ＫＢ）のものと、１０２４ブロック＝２セグメント（１ブロック＝１６ＫＢ）のものとの２種類が在ることになる。１ブロック＝１６ＫＢの場合には、１ブロック内のページ数は３２ページとなる。
【００２８】
また、３２ＭＢ，６４ＭＢ，１２８ＭＢの容量では、１ブロックあたりの容量は１６ＫＢのみであるとして規定される。従って、３２ＭＢでは２０４８ブロック＝４セグメントとなり、６４ＭＢでは４０９６ブロック＝８セグメントとなり、１２８ＭＢでは８１９２ブロック＝１６セグメントとなる。
【００２９】
２−３．物理アドレス及び論理アドレスの概念
次に、上述したようなフラッシュメモリの物理的データ構造を踏まえたうえで、図９に示すデータ書き換え動作に従って、本実施の形態のファイルシステムにおける物理アドレスと論理アドレスの概念について説明する。
【００３０】
図９（ａ）には、或るセグメント内から４つのブロックを抜き出して、これを模式的に示している。
各ブロックに対しては物理アドレスが付される。この物理アドレスはメモリにおけるブロックの物理的な配列順に従って決まるもので、或るブロックとこれに対応付けされた物理アドレスとの関係は不変となる。ここでは、図９（ａ）に示す４ブロックに対して、上から順に物理アドレスの値として、１０５，１０６，１０７，１０８が付されている。なお、実際の物理アドレスは２バイトにより表現される。
【００３１】
ここで、図９（ａ）に示すように、物理アドレス１０５，１０６で示されるブロックがデータの記憶されている使用ブロックで、物理アドレス１０７，１０８で示されるブロックがデータが消去（即ち、未記録領域）された未使用ブロックとなっている状態であるとする。
【００３２】
そして、論理アドレスであるが、この論理アドレスは、ブロックに対して書き込まれたデータに付随するようにして割り振られるアドレスとされる。そして、この論理アドレスが、ＦＡＴファイルシステムが利用するアドレスとされている。
図９（ａ）では、４つの各ブロックに対して、上から順に論理アドレスの値として、１０２，１０３，１０４，１０５が付されている状態が示されている。なお、論理アドレスも実際には２バイトにより表現されるものである。
【００３３】
ここで、上記図９（ａ）に示す状態から、例えば物理アドレス１０５に格納されているデータの更新として、内容の書き換え又は一部消去を行うとする。
このような場合、フラッシュメモリのファイルシステムでは、同じブロックに対して更新したデータを再度書き込むことはせずに、未使用のブロックに対してその更新したデータを書き込むようにされる。
つまり、例えば図９（ｂ）に示すようにして、物理アドレス１０５のデータは消去したうえで、更新されたデータはこれまで未使用ブロックであった物理アドレス１０７で示されるブロックに書き込むようにされる（処理1）。
【００３４】
そして、処理2として示すように、データ更新前（図９（ａ））の状態では物理アドレス１０５に対応していた論理アドレス１０２が、更新されたデータが書き込まれたブロックの物理アドレス１０７に対応するように、論理アドレスについての変更を行うものである。これに伴って、データ更新前は物理アドレス１０７に対応していた論理アドレス１０４については、物理アドレス１０５に対応するように変更されている。
【００３５】
つまり、物理アドレスはブロックに対して固有に付されるアドレスであり、論理アドレスは、一旦ブロックに対して書き込まれたデータに付随するようにしてついて回る、ブロック単位の書き込みデータに固有となるアドレスであるとみることができる。
【００３６】
このようなブロックのスワップ処理が行われることで、或る同一の記憶領域（ブロック）に対して繰り返し集中的にアクセスされることが無くなり、書き換え回数が決まっているフラッシュメモリの寿命を延ばすことが可能となる。
そして、この際に論理アドレスを上記処理2のようにして扱うことで、ブロックのスワップ処理によって更新前と更新後のデータとで書き込まれるブロックの移動があるようにされても、ＦＡＴからは同一のアドレスが見えることになり、以降のアクセスを適正に実行することができるものである。
なお、後述する論理−物理アドレス変換テーブル上での更新のための管理を簡略にすることなどを目的として、ブロックのスワップ処理は、１セグメント内で完結するものとして規定されている。逆に言えば、ブロックのスワップ処理はセグメント間で跨るようにしては行われない。
【００３７】
２−４．本実施の形態の論理−物理アドレス変換テーブル
上記図９による説明から分かるように、ブロックのスワップ処理が行われることで、物理アドレスと論理アドレスの対応は変化する。従って、フラッシュメモリに対するデータの書き込み及び読み出しのためのアクセスを実現するには、物理アドレスと論理アドレスとの対応が示される論理−物理アドレス変換テーブルが必要となる。つまり、論理−物理アドレス変換テーブルをＦＡＴが参照することで、ＦＡＴが指定した論理アドレスに対応する物理アドレスが特定され、この特定された物理アドレスにより示されるブロックにアクセスすることが可能になるものである。逆に言えば、論理−物理アドレス変換テーブルが無ければ、ＦＡＴによるフラッシュメモリへのアクセスが不可能となる。
【００３８】
従来では、例えばセット本体に対して板状メモリ１が装着されたときに、セット本体側のマイコンが板状メモリ１の記憶内容をチェックすることで、セット本体側で論理−物理アドレス変換テーブルの構築を行い、更にこの構築された論理−物理アドレス変換テーブルをセット本体側のＲＡＭに格納するようにしていた。つまり、板状メモリ１内には、論理−物理アドレス変換テーブルの情報は格納されてはいなかった。
これに対して本実施の形態では、以降説明するようにして板状メモリ１に対して、論理−物理アドレス変換テーブルを格納するように構成するものである。
【００３９】
図１０は、本実施の形態の板状メモリ１に対して格納される論理−物理アドレス変換テーブルの構築形態を概念的に示すものである。
つまり、本実施の形態では、例えば論理アドレスの昇順に従って、これに対応する２バイトの物理アドレスを格納するようにしたテーブル情報を論理−物理アドレス変換テーブルとして構築するようにされる。
なお、前述したように、物理アドレス、及び論理アドレスは共に２バイトで表現される。これは、１２８ＭＢの最大容量のフラッシュメモリの場合には８１９２個のブロックが存在するため、最大で、この８１９２個のブロック数をカバーできるだけのビット数が必要とされることに基づく。
このため、上記図１０において例示している物理アドレスと論理アドレスとについても、実際に即して２バイトで表現している。但し、ここでは、この２バイトを１６進数により表記している。つまり、「０ｘ」によりその後続く値が１６進法表記であることが示される。なお、この「０ｘ」により１６進数であることを表す表記は、以降の説明において１６進数を表記する場合にも同様に用いることとする。
【００４０】
図１１に、上記図１０に示した概念に基づく、本実施の形態としての論理−物理アドレス変換テーブルの構造例を示す。
本実施の形態の論理−物理アドレス変換テーブルは、フラッシュメモリの或るブロック（但し、最後のセグメント内であることが規定される）に対して、図１１に示すようにして格納される。
先ず図１１（ａ）に示すように、ブロックを分割するページのうち、ページ０，１からなる２ページの領域がセグメント０用の論理−物理アドレス変換テーブルとして割り当てられる。例えば、図１３にて説明したように、フラッシュメモリが４ＭＢの容量であれば１セグメントしか有さないために、このページ０，１のみの領域が論理−物理アドレス変換テーブルの領域となる。
また、例えばフラッシュメモリが８ＭＢの容量であれば２セグメントを有するため、セグメント０用の論理−物理アドレス変換テーブルとして割り当てられるページ０，１に加え、これに続くページ２，３の２ページがセグメント１用の論理−物理アドレス変換テーブルとして割り当てられることになる。
【００４１】
以降、フラッシュメモリの容量の増加に応じて、続く２ページごとにセグメントごとの論理−物理アドレス変換テーブルの割り当て領域が設定されていくことになる。そして、最大の１２８ＭＢの容量を有する場合であれば１６セグメントが存在するため、最大では、セグメント１５用までのページが論理−物理アドレス変換テーブルの領域として割り当てられることになる。従って、最大の１２８ＭＢの容量のフラッシュメモリでは、３０ページが使用されることになり、図１１（ａ）に示すページＮとしては、最大でＮ＝２９となる。
これまでの説明から分かるように、論理−物理アドレス変換テーブルは、セグメントごとに管理されるものである。
【００４２】
図１１（ｂ）は、１セグメントあたりの論理−物理アドレス変換テーブルの構造を示すものとして、２ページ分のデータエリアを抜き出して示している。つまり、１ページのデータエリアは５１２バイト（図７（ｅ）参照）であることから、図１１（ｂ）には、１０２４（＝５１２×２）バイトが展開されている状態が示されている。
【００４３】
図１１（ｂ）に示すように、この２ページ分のデータエリアである１０２４バイトについて２バイトごとに区切り、この２バイトごとの領域を、先頭から順次、論理アドレス０用、論理アドレス１用・・・・、のようにして割付を行い、最後は先頭から９９１バイト目と９９２バイト目の２バイトの領域を論理アドレス４９５用の領域として割り付けるように規定を行う。これら２バイトごとの領域に対して、各論理アドレスが対応する物理アドレスを書き込むようにする。従って、本実施の形態の論理−物理アドレス変換テーブルでは、実際のデータ更新によるブロックのスワップ処理などにより物理アドレスと論理アドレスの対応が変更された場合には、論理アドレスを基準として、物理アドレスの格納状態が更新されるようにしてテーブル情報の書き換えが行われることになる。
【００４４】
また、残る９９３バイト目から最後の１０２４バイト目までの計３２バイトの領域は、余剰ブロックの物理アドレスが格納される領域として割り当てられる。つまり、１６個の余剰ブロックの物理アドレスを管理することが出来る。ここでいう余剰ブロックとは、例えばブロック単位でデータの更新を行う際に書き換え対象となるデータを一時待避させる領域として設定されたいわゆるワークブロックなどを言うものである。
【００４５】
ところで、１セグメントは５１２ブロックに分割されているものであると先に説明したのにも関わらず、図１１に示したテーブル構造では、管理可能なブロック数が論理アドレス０用〜論理アドレス４９５用の４９６ブロックでしかないのは、実際上、上記した余剰アドレスが設定されることと、前述したように、フラッシュメモリでは、或ブロック数のディフェクト（使用不可領域）が許可されており、現実には、相当数のディフェクトブロックが存在することに依る。
従って、実際には、書き込み／消去が有効なブロックを管理するのに、４９６ブロックを管理できるように構成しておけば充分とされるものである。
【００４６】
そして、このようにして論理−物理アドレス変換テーブルが格納されるブロックについては、これを形成する各ページの冗長部における管理フラグ（図８参照）のデータ内容として、この管理フラグのビット３に対して‘０’がセットされることになる。これにより、当該ブロックが論理−物理アドレス変換テーブルが格納されているブロックであることが示されることになる。
【００４７】
論理−物理アドレス変換テーブルが格納されるブロックも、論理−物理アドレス変換テーブルの内容の書き換えがあった場合には、例外なく、先に図９にて説明したスワップ処理が行われる。従って、論理−物理アドレス変換テーブルが記録されているブロックは不定であり、或る特定のブロックに論理−物理アドレス変換テーブルを格納するように規定することは出来ない。
そこで、ＦＡＴは、フラッシュメモリにアクセスして上記した管理フラグのビット３が‘０’とされているブロックを検索することで、論理−物理アドレス変換テーブルが格納されているブロックを識別するようにされる。但し、論理−物理アドレス変換テーブルが格納されているブロックの検索がＦＡＴによって容易に行われるようにすることを考慮して、論理−物理アドレス変換テーブルが格納されているブロックは、そのフラッシュメモリ内における最後のナンバが付されたセグメントに在るように、本実施の形態では規定するものとされる。これにより、ＦＡＴは最後のナンバが付されたセグメントのブロックのサーチだけで、論理−物理アドレス変換テーブルを検索することができる。つまり、論理−物理アドレス変換テーブルを検索するのに、フラッシュメモリの全てのセグメントを検索する必要は無いようにされる。
上記図１１に示した論理−物理アドレス変換テーブルは、例えば板状メモリ１の製造時において格納するようにされる。
【００４８】
ここで、再度図１３を参照して、フラッシュメモリ容量と論理−物理アドレス変換テーブルのサイズとの関係を説明しておく。
上記図１１にて説明したように、１セグメントを管理するための論理−物理アドレス変換テーブルのサイズは２ページ分の１０２４バイト、つまり１ＫＢとなる。従って、図１３の最も右の列に記されているように、フラッシュメモリが４ＭＢ（１セグメント）の容量では論理−物理アドレス変換テーブルは１ＫＢのサイズとなる。また、フラッシュメモリの容量が８ＭＢ（２セグメント）では論理−物理アドレス変換テーブルは２ＫＢ（４ページ）となる。
また、フラッシュメモリの容量が１６ＭＢの場合、２０４８ブロック＝４セグメントのものでは論理−物理アドレス変換テーブルは４ＫＢ（８ページ）、１０２４ブロック＝２セグメントのものでは論理−物理アドレス変換テーブルは２ＫＢ（４ページ）となる。
そして、フラッシュメモリの容量が３２ＭＢ（４セグメント）では論理−物理アドレス変換テーブルは４ＫＢ（８ページ）、フラッシュメモリの容量が６４ＭＢ（８セグメント）では論理−物理アドレス変換テーブルは８ＫＢ（１６ページ）となり、フラッシュメモリの容量が最大の１２８ＭＢ（１６セグメント）では論理−物理アドレス変換テーブルは１６ＫＢ（３２ページ）となる。
【００４９】
ところで、例えば従前におけるフラッシュメモリのファイルシステムの構成では、論理−物理アドレス変換テーブル上において、未使用とされる論理アドレスに対応する物理アドレスの領域には、実質的なアドレス値は不確定として格納しないようにされている。
一例を挙げると、図１２（ｂ）に示す論理−物理アドレス変換テーブルにおいて、例えば論理アドレス０ｘ００００，０ｘ０００１，０ｘ０００２，０ｘ０００３は既に使用されているものとすると、これらに対応する物理アドレスの格納領域には、例えばそれぞれ、０ｘ０００２，０ｘ０００６，０ｘ０００７，０ｘ０００８という実際に論理アドレス（０ｘ００００〜０ｘ０００３）に対応してデータが書き込まれた物理アドレスの値が格納されていることになる。
これに対して、論理アドレス０ｘ０００４は未使用であるとするならば、この論理アドレス０ｘ０００４が対応する物理アドレスの格納領域には、０ｘＦＦＦＦという無効値（即ち、未使用であることが識別される値）が設定される。
【００５０】
ここで、上記図１２（ｂ）に示す論理−物理アドレス変換テーブルを利用して、論理アドレス０ｘ０００４に対応するデータを新規に記録しようとした場合には、例えばＦＡＴにより、論理−物理アドレス変換テーブルとは異なる階層で、物理的に未使用とされているブロックの検索を行い、この検索されたブロックに対してデータの書き込みを実行するようにされる。そして、論理−物理アドレス変換テーブルに対しては、そのデータ書き込みが新規に行われたブロックを示す物理アドレスを論理アドレス０ｘ０００４に対応する格納領域に対して書き込むようにして、その内容を更新することになる。
【００５１】
このような論理−物理アドレス変換テーブルの管理形態であると、次のような不都合が生じることが想定される。
ここで、セット本体側において扱うべきデータが、動画像データや楽曲等の音声データなど、いわゆるリアルタイム性を有する時系列データであるとする。
そして、セット本体では、入力されてきた時系列データについてリアルタイムに信号処理を行って、このデータを記録データとして板状メモリ１に記録するような構成が採られているものとする。
。
上記図１２（ｂ）により説明したような論理−物理アドレス変換テーブルの管理形態を採っているとすると、データ記録時には、先に述べたような未使用ブロックのサーチが必然となるが、上記したような時系列データを記録していく場合には、入力された記録データがオーバーフローしない程度の平均速度で書き込む必要があるため、この際の未使用ブロックのサーチは非常に重い処理となってしまう。つまり、現状では、リアルタイム性を有するデータを板状メモリ１に記録することは非常に困難であり、実用上は、リアルタイム性が要求されない文書ファイルや静止画ファイルなどの記録にとどまっている。
【００５２】
そこで、本実施の形態の論理−物理アドレス変換テーブルとしては、未使用の論理アドレスに対応する格納領域に対して、未使用のエリアとして管理されているブロックの物理アドレスを予め割り当てておくようにする。この具体例を図１２（ａ）に示す。
図１２（ａ）に示す論理−物理アドレス変換テーブルにおいては、論理アドレス０ｘ００００，０ｘ０００１，０ｘ０００２，０ｘ０００３は使用されているものとされ、これに対応する物理アドレスの格納領域に対して、例えば０ｘ０００２，０ｘ０００６，０ｘ０００７，０ｘ０００８という、実際にデータが記録されている物理アドレスの値が格納されている点では図１２（ａ）と同様である。また、論理アドレス０ｘ０００４は未使用であるとしている点も図１２（ａ）と同様である。
【００５３】
但し、本実施の形態では、この未使用の論理アドレス０ｘ０００４が対応する物理アドレスの格納領域に対しては、０ｘＦＦＦＦという無効値を設定するのではなく、未使用のエリアのブロックを指定する物理アドレスとして、例えば０ｘ０００９を格納する。ここでは、未使用のエリアに関して、論理アドレス０ｘ０００４に対応する格納領域しか示していないが、他の未使用とされる論理アドレスに対応する格納領域の各々に対しても、同様にして、それぞれ異なる未使用のブロックの物理アドレスが格納されるものである。
【００５４】
このようにして論理−物理アドレス変換テーブルを構築した場合、論理−物理アドレス変換テーブルに対して既に空きエリアを示す物理アドレスが、論理アドレスと対応付けされて示されているものと見ることが出来る。
これにより、ＦＡＴでは、論理−物理アドレス変換テーブルを参照することで事前に未使用のブロックの物理アドレスと論理アドレスとの対応を採ることが出来、データ記録時においては、図１２（ｂ）に示した形態の場合のように、未使用のブロックをサーチする処理を実行する必要が無くなる。つまり、ＦＡＴ上で空きエリアとして管理される論理アドレスに対応する物理アドレスを論理−物理アドレス変換テーブルを参照することにより得て、この物理アドレスにより示されるブロックに対してアクセスしてデータ書き込みを実行すればよいことになる。このため、セット本体のマイコンの処理負担は大幅に軽減され、例えば先に述べた時系列データの記録も容易に実現可能となるものである。なお、これまでのように文書ファイルや静止画データなど、リアルタイムな処理が要求されないデータ書き込みに際しても、図１２（ａ）に示した本実施の形態のファイルシステムとすれば、当然のこととして、これまでよりもデータ書き込みに要する時間は短縮されるものである。
【００５５】
３．システム構成
図１は、これまで説明した本実施の形態の板状メモリ１に対応してデータの授受を行うことの出来るセット本体（本体装置）の構成を示している。この図に示すセット本体１００と板状メモリ１とにより、本実施の形態としての電子機器システムが構成される。この場合、セット本体１００は、板状メモリ１に対して少なくともオーディオデータの書き込み／読み出しを行うことが可能な機器とされている。
【００５６】
セット本体１００の構成としては、当該セット本体１００が着脱可能に装填される着脱機構１２０が備えられ、この着脱機構１２０に装填された板状メモリ１と、マイコン１０９とのデータの授受は、ホストインターフェイスＩＣ１０１を介することで行われる。
【００５７】
また、このセット本体１００には、例えば、マイクロフォン１０３が備えられて、このマイクロフォン１０３により収音された音声は、マイクアンプ１０４を介して音声信号としてＤＳＰ(Digital Signal Processor)１０２に対して供給される。ＤＳＰ１０２では、この入力された音声信号をデジタルオーディオデータに変換して、エンコード処理当をはじめとする所要の信号処理を施し、記録データとしてマイコン１０９に供給する。
マイコン１０９は、この記録データをホストインターフェイスＩＣ１０１を介して板状メモリ１に記録するための処理を実行することが可能とされる。
【００５８】
また、マイコン１０９は、板状メモリ１に記録されているオーディオデータをホストインターフェイスＩＣ１０１を介して読み出し、この読み出したデータをＤＳＰ１０２に供給する。
ＤＳＰ１０２では、供給されたデータについて復調処理をはじめとする所要の信号処理を施して、最終的にはアナログ音声信号としてスピーカアンプ１０５に出力する。スピーカアンプ１０５では、入力された音声信号を増幅してスピーカ１０６に出力する。これにより、再生音声が出力される。
【００５９】
また、マイコン１０９は、表示ドライバ１０７を制御することで、表示部１０８に対して、所要の画像を表示させることが可能とされる。ここで、例えば板状メモリ１に対して動画若しくは静止画の画像データが記録されているとすれば、この画像データを読み出して、表示部１０８に表示させるようにすることも可能とされる。
【００６０】
操作部１１２には、セット本体に対する各種操作をユーザが行うための各種キーが設けられている。マイコン１０９は、この操作部１１２に対して行われた操作に応じたコマンドを受信し、コマンドに応じた所要の制御処理を実行する。
なお、この図に示すセット本体１００の構成はあくまでも一例であり、これに限定されるものではない。つまり、本実施の形態の板状メモリ１に対応してデータの送受信が可能な構成を採る限りは、どのようなタイプの電子機器とされていても構わないものである。
【００６１】
上記図１に示す構成のセット本体１００により、上述したような板状メモリ１に対する記録再生（データ書き込み／読み出し）を実現するのには、ファイルシステム上でＦＡＴが参照する論理−物理アドレス変換テーブルが必要となるのは前述したとおりである。
そこで図２に、上記図１に示す構成に基づくセット本体１００のマイコン１０９と板状メモリ１に格納されている論理−物理アドレス変換テーブル間とのインターフェイスを概念的に示す。
例えば、本実施の形態の板状メモリ１が装填されたときには、マイコン１０９は、ホストインターフェイスＩＣ１０１を介して、板状メモリ１に格納されている論理−物理アドレス変換テーブルＴＢのうちから必要なデータ部分を読み込んで、内部のＲＡＭ１１１に格納すればよいことになる。
【００６２】
また、上記図１に示した本実施の形態のシステムとの比較として、従来としてのシステムの構成を図３に示す。従来のシステムでは、板状メモリ１Ａに対して論理−物理アドレス変換テーブルが格納されていないものとしており、図３に示す構成は、これに対応した構成が採られている。なお、図３において図１と同一部分には同一符号を付して説明を省略する。
図３に示すシステム構成では、セット本体１００Ａにおいて、外付けのＲＡＭ１１３が備えられている点が図１と異なる。このＲＡＭ１１３はマイコン１０９と接続されている。
【００６３】
また、先に示した図２（本実施の形態のインターフェイス）に対する比較として、上記図３に示した従来としてのシステム構成に基づく、セット本体１００Ａのマイコン１０９と板状メモリ１とのインターフェイスを図４に示す。
【００６４】
ＲＡＭ１１３は論理−物理アドレス変換テーブルを格納するためのものとされる。つまり、板状メモリ１Ａ（これには論理−物理アドレス変換テーブルは格納されていない）が装着されると、マイコン１０９はホストインターフェイスＩＣ１０１を介して、板状メモリ１Ａにアクセスし、そのデータ内容をチェックして論理−物理アドレス変換テーブルを構築するための処理を実行する。そして、このようにして得られた論理−物理アドレス変換テーブルＴＢをＲＡＭ１１３に格納するものである。
【００６５】
例えば、マイコン１０９内のＲＡＭ１１１は多くても数十ＫＢ程度の容量しか有していないために、このＲＡＭ１１１に対して、最大で１６ＫＢのサイズを有する論理−物理アドレス変換テーブルを保持しておくのは、他の処理との兼ね合いを考えると非常に無理なことであり、ＲＡＭ１１１の容量によっては論理−物理アドレス変換テーブルのサイズを下回る場合さえある。つまり、セット本体側で論理−物理アドレス変換テーブルを作成してこれを保持する構成を採る場合、ＲＡＭ１１１に論理−物理アドレス変換テーブルを格納するのは現実的ではない。このために、従来では、外付けのＲＡＭ１１３が必要となるわけである。
【００６６】
これに対して、本実施の形態では板状メモリ１に論理−物理アドレス変換テーブルが格納されている構成を採っており、図２にて説明したように、単に板状メモリ１から論理−物理アドレス変換テーブルの必要な領域のみを読み出して、内部のＲＡＭ１１１に保持させればよい。例えばマイコン１０９が必要とする論理−物理アドレス変換テーブルが或る１セグメントの内容であるとすれば、１セグメント分の論理−物理アドレス変換テーブルのサイズは１０２４バイト（図１１参照）であり、ＲＡＭ１１１の容量を圧迫する程度のものではなく、何ら問題にはならないものである。
このため、図１にも示したように、本実施の形態では、外付けのＲＡＭ１１３は省略される。従って、それだけセット本体１００のコストを抑制することが可能になると共に、外付けのＲＡＭ１１３を駆動するための消費電力分を節減することが可能になる。
【００６７】
また、本実施の形態では、セット本体１００のマイコンの処理として、論理−物理アドレス変換テーブルを構築する処理も必要ない。このため、マイコンによる論理−物理アドレス変換テーブル構築処理のための待ち時間はなくなり、例えば板状メモリ１を装着したときに行われるファイルシステムの立ち上げ処理は、従来よりもはるかに短時間で済むことになる。
【００６８】
更に、本実施の形態では、図１２にて説明したように、未使用のブロックの物理アドレスを未使用の論理アドレスと対応させた論理−物理アドレス変換テーブルとしていることで、ＦＡＴによる未使用のブロックへのアクセスは、従来よりも軽い処理で迅速に実行されることになる。特に、図１に示したように、オーディオデータ等のリアルタイムな処理が要求されるデータを記録する構成をセット本体１００が採るような場合には有効となるものである。
【００６９】
なお、本実施の形態としては、これまで説明した構成に限定されるものではなく、必要に応じて変更が可能とされる。例えば、本発明の記憶装置としては、図３に示した外形形状に限定されるものではなく、他の外形形状とされても構わない。また、これまで説明したファイルシステムのフォーマットも、例えば実際に応じてその細部の規定などは変更されて構わない。更には、フラッシュメモリ容量のバリエーションも図１３に示したものに限定されるものではない。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施の形態としての板状メモリ及びセット本体から成るシステム構成を示すブロック図である。
【図２】本実施の形態における板状メモリとセット本体のマイコンとのインターフェイスを概念的に示す説明図である。
【図３】本実施の形態に対する比較としての、板状メモリ及びセット本体から成るシステム構成を示すブロック図である。
【図４】本実施の形態に対する比較としての、板状メモリとセット本体のマイコンとのインターフェイスを概念的に示す説明図である。
【図５】本実施の形態の板状メモリの外形形状を示す平面図、正面図、側面図、底面図である。
【図６】本実施の形態のファイルシステムにおける処理階層を示す説明図である。
【図７】フラッシュメモリの物理的データ構造を示すデータ構造図である。
【図８】管理フラグの内容を示す説明図である。
【図９】フラッシュメモリにおけるデータ更新処理と、物理アドレス及び論理アドレスの概念を説明するための説明図である。
【図１０】論理−物理アドレス変換テーブルの管理形態の概念を示す説明図である。
【図１１】本実施の形態の論理−物理アドレス変換テーブルの構造を示すデータ構造図である。
【図１２】論理−物理アドレス変換テーブルにおける未使用ブロックの管理形態を説明するための説明図である。
【図１３】フラッシュメモリ容量と、ブロック数、１ブロックの容量、１ページの容量、論理−物理アドレス変換テーブルのサイズとの関係を示す説明図である。
【符号の説明】
【００７１】
１  板状メモリ、２  端子部、４  凹凸部、５  スライドスイッチ、１００  セット本体、１０３  マイクロフォン、１０４  マイクアンプ、１０５  スピーカアンプ、１０６  スピーカ、１０７  表示ドライバ、１０８  表示部、１０９  マイコン（マイクロコンピュータ）、１１２  操作部、１２０  着脱機構、ＴＢ  論理−物理アドレス変換テーブル
【図１】
2008090870.tif 000003
【図２】
2008090870.tif 000004
【図３】
2008090870.tif 000005
【図４】
2008090870.tif 000006
【図５】
2008090870.tif 000007
【図６】
2008090870.tif 000008
【図７】
2008090870.tif 000009
【図８】
2008090870.tif 000010
【図９】
2008090870.tif 000011
【図１０】
2008090870.tif 000012
【図１１】
2008090870.tif 000013
【図１２】
2008090870.tif 000014
【図１３】
2008090870.tif 000015