説明

ファイルシステム相互運用性をサポートするメモリカード

1つの大きなデータ記憶領域として、または複数のより小さいデータ記憶領域群としてインテリジェントに動作するリムーバブルデータストレージデバイスを提供する。リムーバブルデータストレージデバイスは、現世代の電子製品(32ビットアドレシングを用いる)だけでなく、レガシー製品(16ビットアドレシングを用いる)においても用いられえる。ホストデバイスは、このリムーバブルストレージデバイスに記憶されたデータにアクセスするために、このリムーバブルストレージデバイスに結合する。例として、リムーバブルデータストレージデバイスはメモリカードでありえる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ記憶に関し、より具体的にはデータ記憶を行うメモリカードに関する。
【背景技術】
【0002】
メモリカードは、さまざまな製品(例えば電子製品)と共に用いるためにディジタルデータを記憶するのによく用いられる。メモリカードの例は、フラッシュタイプつまりEEPROMタイプのメモリセルを用いてデータを記憶するフラッシュカードである。フラッシュカードは、比較的小さいフォームファクタを有し、カメラ、ハンドヘルドコンピュータ、セットトップボックス、携帯のまたは他のオーディオプレーヤー/レコーダ(例えばMP3デバイス)、および医療用モニタのような製品のためのディジタルデータを記憶するのに用いられてきた。フラッシュカードの大手供給元は、カリフォルニア州、サニーベールのサンディスク社である。
【0003】
従来のメモリシステムは、例えば、メモリカード(例えばフラッシュカード)フォーマットによって表現されえる。従来のメモリシステムは、メモリコントローラおよびさまざまなメモリチップを含む。メモリチップの数は、その従来のメモリシステムによって提供されるべき記憶容量に依存する。メモリコントローラは、入力電圧(VIN)および入力/出力(I/O)バスを受け取る。メモリコントローラは、アドレス/データ/制御バスをメモリチップのそれぞれに供給するよう動作する。加えて、メモリコントローラは、メモリチップのそれぞれのチップイネーブル端子に提供されるチップセレクト信号を作ることができる。このメモリコントローラは、チップセレクト信号を用いることによって、データ記憶または検索のためにアクセスされるべきメモリチップ群のうちの一つを選択的にアクティベートする。加えて、メモリチップは、動作のためにさまざまな電圧レベルを要求するので、メモリコントローラは、チャージポンプおよび電圧調整回路を含みえる。代替として、メモリチップのそれぞれが、それら自身でチャージポンプおよび電圧調整回路を含みえる。チャージポンプおよび電圧調整回路は、メモリチップのそれぞれに供給されるいくつかの異なる出力電圧レベルを作ることができる。例として、入力電圧(VIN)は、3.3または1.8ボルトでありえ、異なる出力電圧レベルは、3ボルト、6ボルト、12ボルトおよび24ボルトでありえる。
【0004】
メモリカードは、その比較的小さいフォームファクタのために非常に携帯が便利である取り外し可能な記憶媒体である。前述のように、メモリカードは、カメラ、ハンドヘルドコンピュータ、セットトップボックス、携帯のまたは他のオーディオプレーヤー/レコーダ(例えばMP3デバイス)、および医療用モニタのような製品のために、ディジタルデータを記憶するために用いられてきた。これらの製品は、ホストデバイスとも呼ばれる。
【0005】
伝統的に、ホストデバイスは、16ビット(16bit)アドレシングをサポートするファイルシステムコンフィギュレーションを利用してきた。この16ビットアドレシングは、普及したディスクオペレーションシステム(DOS)環境から継承された。残念ながら、この16ビットアドレシングは、最大アドレス可能なアドレス空間として2ギガバイト(GB)を有する。これは問題になるが、それはメモリカードのデータ記憶容量が、既に、または近い将来、2ギガバイトを超えることがありえるからである。その結果、よくある16ビットアドレシングを用いるホストデバイスは、2ギガバイトを超えるメモリカードによって提供される追加のメモリ容量を利用できなくなる。
【0006】
さらに最近では、より高度でより高価なホストデバイスは、それぞれのアロケーションユニットまたはクラスタについて16ビットより多いビットをサポートするファイルシステムコンフィギュレーションを用いる。FAT−32は、それぞれのアロケーションユニットまたはクラスタについて32ビットアドレスのうち28ビットを用いる、16ビットFATシステムの拡張である。このような最大アドレス可能なアドレス空間は8テラバイト(TB)である。今日、および予見可能な将来においては、メモリカードのデータ容量は、1テラバイトよりも充分に下である。
【0007】
さらに、メモリカードは現実的に、既存のデータの破壊または損失なく、16ビットアドレシングを用いるホストデバイス、または32ビットアドレシングを用いるホストデバイスのいずれでも用いられることが可能でなければならない。換言すれば、メモリカードは、ファイルシステムコンフィギュレーションに関わらず適切に動作することが必要である。しかし、2つの異なるファイルシステムコンフィギュレーションの存在は、非効率なデータ記憶になるだけでなく、信頼性の低いデータ記憶につながりえる。信頼性の低いデータ記憶は、データ損失にもつながりえる。
【発明の開示】
【発明が解決しようとする課題】
【0008】
よってメモリカードの容量を拡張し、それと共に古いファイルシステムだけでなく、新しいファイルシステムも信頼性高くサポートするような改良されたアプローチに対する要求がある。
【課題を解決するための手段】
【0009】
大きく言って、本発明は、1つの大きなデータ記憶領域として、または複数のより小さいデータ記憶領域群としてインテリジェントに動作するリムーバブルデータストレージデバイスに関する。リムーバブルデータストレージデバイスは、現世代の電子製品(32ビットアドレシングを用いる)だけでなく、レガシー製品(16ビットアドレシングを用いる)においても用いられえる。ホストデバイスは、このリムーバブルストレージデバイスに記憶されたデータにアクセスするために、このリムーバブルストレージデバイスに結合する。一般に、ホストデバイスは、カメラ、ハンドヘルドコンピュータ、セットトップボックス、携帯のまたは他のオーディオプレーヤー/レコーダ(例えばMP3デバイス)、および医療用モニタのような電子デバイスである。
【0010】
本発明は、システム、装置、デバイス、方法またはコンピュータで読み取り可能な媒体を含む多くのやり方で実現されえる。本発明のいくつかの実施形態が以下に説明される。
【0011】
不揮発性データ記憶を提供するメモリカードからデータを読み出す方法として、本発明のある実施形態は、前記メモリカードの不揮発性データ記憶の第1ボリュームからのボリューム情報にアクセスすること、前記ボリューム情報に基づいて前記メモリカード上に1つまたは複数のボリュームが存在するか決定すること、前記決定することが、前記メモリカード上に1つのボリュームが存在すると決定するとき、前記第1ボリュームだけを提供するよう前記メモリカードを動作させ、前記メモリカードの前記不揮発性データ記憶は、前記1つのボリュームにアサインされる、動作させること、および前記決定することが、前記メモリカード上に複数のボリュームが存在すると決定するとき、複数のボリュームを提供するよう前記メモリカードを動作させ、前記複数のボリュームのうちの1つは、前記第1ボリュームであり、前記不揮発性データ記憶は、前記複数のボリュームに分割される、動作させることの行為を少なくとも含む。
【0012】
第1サイズの単一のパーティションとして、または第2サイズの複数のパーティションとしてコンフィギャされえるメモリカードとして、本発明のある実施形態は、データ記憶を提供する不揮発性データ記憶であって、前記不揮発性データ記憶は、少なくとも第1パーティションを含むよう、かつ少なくとも前記第1パーティションを記述するパーティション情報を記憶するようにコンフィギャされる、不揮発性データ記憶、複数のスイッチ位置のうちの1つに設定されるスイッチ、および前記不揮発性データ記憶に記憶された前記データへのアクセスを管理するコントローラを少なくとも含む。前記コントローラは、前記不揮発性データ記憶に記憶された前記パーティション情報を調べることによって、前記パーティション情報に基づいて、前記単一のパーティションまたは前記複数のパーティションが用いられているかを決定する。前記コントローラが、前記単一のパーティションが用いられていると決定するとき、前記不揮発性データ記憶は単一のボリュームとしてアドレス指定される。前記コントローラが、前記複数のパーティションが用いられていると決定するとき、前記不揮発性データ記憶は、前記スイッチの前記スイッチ位置に基づいて、複数のパーティションとしてアドレス指定される。
【0013】
不揮発性データ記憶を提供するメモリデバイスとして、本発明のある実施形態は、前記メモリデバイスの不揮発性データ記憶の第1ボリュームからのボリューム情報にアクセスする手段、前記ボリューム情報に基づいて前記メモリデバイス上に1つまたは複数のボリュームが存在するか決定する手段、および前記メモリデバイスのコンフィギュレーションに基づいて、前記決定する手段が前記メモリデバイス上に存在すると決定する前記1つまたは複数のボリュームで前記メモリカードを動作させる手段を少なくとも備える。
【0014】
本発明の他の局面および優位性は、添付の図面と併せて以下の詳細な説明から明らかになろう。図面は例示的に本発明の原理を示す。
【発明を実施するための最良の形態】
【0015】
本発明は、添付の図面と併せて以下の詳細な説明によって容易に理解されよう。ここで同様の参照番号は同様の要素を示す。
【0016】
本発明は、1つの大きなデータ記憶領域として、または複数のより小さいデータ記憶領域群としてインテリジェントに動作するリムーバブルデータストレージデバイスに関する。リムーバブルデータストレージデバイスは、現世代の電子製品(32ビットアドレシングを用いる)だけでなく、レガシー製品(16ビットアドレシングを用いる)においても用いられえる。ホストデバイスは、このリムーバブルストレージデバイスに記憶されたデータにアクセスするために、このリムーバブルストレージデバイスに結合する。一般に、ホストデバイスは、カメラ、ハンドヘルドコンピュータ、セットトップボックス、携帯のまたは他のオーディオプレーヤー/レコーダ(例えばMP3デバイス)、および医療用モニタのような電子デバイスである。
【0017】
ある実施形態において、リムーバブルデータストレージデバイスは、メモリカードである。ここで用いられるように、メモリカードは、カード状の構成を含むと共に、メモリスティックのようなあまりカード状ではないものも含む。
【0018】
本発明のこの局面の実施形態は、図1〜7を参照して以下に説明される。しかし、当業者には、ここで与えられたこれら図についての詳細な説明は例示目的であり、本発明は、これらの限定された実施形態を超えて外縁が延びることが容易に理解されよう。
【0019】
図1は、メモリカード102と共にホストデバイス100のブロック図である。このメモリカード102は、ホストデバイス100のための不揮発性記憶を提供する。メモリカード102は、取り外し可能なやり方でホストデバイス100に典型的には結合する。ある実施形態において、メモリカード102は、ホストデバイス100において対応するコネクタと結合するコネクタを有する。
【0020】
ホストデバイス100は、コンピュータ、カメラ、ビデオレコーダ、携帯情報端末などのようなものに関しえる。メモリカード102が取り外し可能であることから、データは、容易にホストデバイスから分離して移動されえる。
【0021】
ホストデバイスは、従来は、FAT−16フォーマットのファイルをサポートするファイルシステムを利用してきた。FAT−16フォーマットにおいては、2ギガバイト(GB)の最大アドレス可能なアドレス空間にアクセスするために、16ビットのアドレスが用いられる。メモリカードのデータ記憶容量は、既に、または近い将来に、2ギガバイトを超えることがありえる。その結果、FAT−16フォーマットを用いるホストデバイスは、2ギガバイトを超えるメモリカード102によって提供される追加のメモリ容量を利用することができない。
【0022】
一方、より高度でより高価なホストデバイスは、ファイルのためにFAT−32フォーマットを使用する。このFAT−32フォーマットは、8テラバイト(TB)の最大アドレス可能なアドレス空間にアクセスするために32ビットのアドレスを用いる。今日、および予見可能な将来においては、メモリカードのデータ容量は、1テラバイトよりも充分に下である。
【0023】
本発明によれば、メモリカードは、16ビットアドレシング(すなわちFAT−16ファイルフォーマット)を用いるホストデバイス、または32ビットアドレシング(すなわちFAT−32ファイルフォーマット)を用いるホストデバイスと共に用いるのに適する。いずれの場合でも、2ギガバイトを超えるメモリカード102の記憶容量が利用されえる。ホストデバイス100が32ビットアドレシングをサポートする場合、メモリカード102は、メモリカード102は、FAT−32ファイルのためにフォーマットされた単一のボリュームとして動作する。一方、ホストデバイス100が16ビットアドレシングをサポートする場合、メモリカード102は、複数のボリュームにパーティションが切られ、それぞれのボリュームは、FAT−16ファイルのためにフォーマットされ、2ギガバイトまでのデータ記憶容量を提供する。
【0024】
複数のボリューム間での切り替えを促進するために、メモリカード102は、スイッチを含みえる。ユーザは、このスイッチと対話して、メモリカード102内の利用可能なボリュームのうちどれがホストデバイス100によって利用されるべきかを選択できる。
【0025】
図2は、本発明のある実施形態によるメモリカード200の透視図である。メモリカード200は、図1に示されたメモリカード102についての一つの代表的実施形態である。
【0026】
メモリカード200は、メモリカード200のためのハウジング202を含む。このハウジング202は、メモリカード200内の回路および/または要素のための保護カバーとして機能する。メモリカード200は、ホストデバイスにおいて対応するコネクタと相互接続するコネクタエンド204も含む。このホストデバイスは、それの任意の周辺機器を含むと定義される。さらに、本発明によれば、メモリカード200は、スイッチ206を含む。図2に示されるように、スイッチ206は、2つの位置を有し、FAT−16フォーマットの2つの異なるボリュームを提供するメモリカードと共に用いるのに適する。したがって、スイッチ206の1つの位置は第1ボリュームを選択し、スイッチ206の第2位置は第2ボリュームを選択する。
【0027】
メモリカード200は、典型的には小さなフォームファクタと関連付けられることが理解されよう。典型的には、このフォームファクタは、縦横2インチ・3インチ(5.08センチメートル・7.62センチメートル)より小さく、厚さは0.25インチ(0.635センチメートル)より小さい。メモリカード200の構成は大きく変わりえる。したがって、図2に示されるメモリカード200の構成は、本発明の限定ではなく、代表的な実施形態であるだけである。
【0028】
さらに、スイッチ206は、2つより多い位置を有しえることが理解されよう。例えば、もしメモリカード200が4つのボリュームにパーティションが切られていたなら、スイッチ206は、少なくとも3つのスイッチ位置を必要とするだろう。例として、データ記憶容量として16ギガバイトを有するメモリカードは、それぞれ2ギガバイトの8つのパーティションに区切られ、関連付けられたスイッチは、実現例に依存して3から8つの位置を有するだろう。メモリカードも1つより多いスイッチを有しえる。
【0029】
図3は、本発明のある実施形態によるメモリカードボリューム評価プロセス300のフロー図である。メモリカードボリューム評価プロセス300は、例えば、メモリカード内のホストコントローラによって実行される。このホストコントローラは、メモリカードのデータ記憶要素に対しデータをリードまたはライトするためにホスト(ホストデバイス)と通信する。
【0030】
メモリカードボリューム評価プロセス300は、メモリカードがアクティベートされるとき開始される。メモリカードのアクティベーションの例は、(i)メモリカードを電源オンにすること、または(ii)メモリカードをホストデバイスのレセプタクルに挿入することを含む。初めに、判断302は、メモリカードがアクティベートされたかを決定する。判断302が、メモリカードがアクティベートされていないと決定するとき、メモリカードボリューム評価プロセス300はそのようなイベントを待つ。換言すれば、メモリカードボリューム評価プロセス300は、メモリカードがアクティベートされるときに起動されえる。
【0031】
いったん判断302が、メモリカードがアクティベートされたと決定すると、初期ボリュームからのボリューム情報が取り出される(304)。ここで初期ボリュームは、メモリカードのデータ記憶要素に指定されるボリューム(ファイルシステムと互換性がある)である。このメモリカードは、以前に1つ以上のボリュームにわたってファイルを記憶するためにフォーマットされている。メモリカードが1つしかボリュームを有しない場合、この1つのボリュームが初期ボリュームである。メモリカードが複数のボリュームを有する場合、第1ボリュームが初期ボリュームである。
【0032】
次に、判断306は、ボリューム情報が、互換性ファイルシステムが16ビット以下のファイルシステムであることを示すかを決定する。換言すれば、判断306は、ファイルシステムが16ビット(またはそれ未満)のアドレシングのためのファイルシステムか、すなわちFAT−16(またはそれ未満)でフォーマットされたファイルかを決定する。ボリュームが16ビット(またはそれ未満)のファイルシステムではないことをボリューム情報が示すと、判断306が決定するとき、ホストデバイスは、メモリカードが単一のボリュームを用いることを知らされる(308)。ここで、ファイルシステムは、32ビットアドレシングをそれから利用し、よってこの単一のボリュームのためのファイルフォーマットは、FAT−32でフォーマットされたファイルになる。一方、ファイルシステムが16ビット以下(すなわちFAT−16)であることをボリューム情報が示すと、判断306が決定するとき、スイッチ位置が読み出される(310)。ここで図2に示されるように、メモリカードは、複数の異なるスイッチ位置のうちの1つにセットされているスイッチ206を含む。
【0033】
判断312は、スイッチ位置が第1位置であるかをそれから決定する。スイッチ位置が第1位置ではないと判断312が決定するとき、適切なアドレスオフセットが設定される(314)。この場合、メモリカードは、複数のボリュームにパーティションが切られ、第1ボリューム以外のボリュームをアドレシングするときは、適切なアドレスオフセットが利用される。代替として、判断312に続いてスイッチ位置が第1位置にあるとき、および操作314に続いて、ホストデバイスは、もしあるなら適切なアドレスオフセットと共に複数の選択可能なボリュームのうちの1つとしてメモリカードを用いるよう知らされる(316)。ここで、メモリカードは複数の異なるボリュームを用い、スイッチ位置は、ボリュームのうちの1つを選択するよう利用され、必要な場合は適切なアドレスオフセットが提供される。動作308および316に続いて、メモリカードボリューム評価プロセス300は完了し終了する。
【0034】
図4は、本発明のある実施形態によるメモリシステム400のブロック図である。メモリシステム400は、例えば、メモリカード(例えばフラッシュカード)を表す。このメモリシステム400は、例えば、図1に示されるメモリカード102または図2に示されるメモリカード200として用いるのに適する。
【0035】
メモリシステム400は、メモリコントローラ402およびメモリチップ404〜410を含む。メモリチップ404〜410の個数は、従来のメモリシステム400によって提供されるべき記憶容量およびそれぞれのメモリチップの実際のメモリ容量に依存する。メモリコントローラ402は、入力/出力(I/O)バス412を受け取る。メモリコントローラ402は、アドレス/データ/制御バス414をメモリチップ404〜410のそれぞれに供給するよう動作する。加えて、メモリコントローラ402は、メモリチップ404〜410のそれぞれのチップイネーブル(CE)端子に供給されるチップセレクト(CS)信号416を作る。メモリコントローラ402は、チップセレクト信号416を用いることによって、データ記憶または検索のためにアクセスされるべきメモリチップ404〜410のうちの1つを選択的にアクティベートする。
【0036】
メモリシステム400は、スイッチ418をさらに含む。このスイッチ418は、ユーザが選ぶことができる2つ以上のスイッチ位置を有する。異なるスイッチ位置は、異なるボリュームを選択するのに用いられる。より具体的には、スイッチ418は、そのスイッチ位置の指示をメモリコントローラ402に提供する。メモリコントローラ402は、そのスイッチ位置の指示に従ってそれから動作する。
【0037】
図5Aは、本発明と共に用いるのに適する単一ボリュームアドレス空間500を示す図である。このアドレス空間は、000000HEX から7FFFFFHEX までの論理アドレスの2ギガバイトの範囲を示す。アドレス空間500内には、記憶されたボリューム情報502およびホストによって供給されたデータ504がある。ボリューム情報502は、このアドレス空間がFAT−16ファイルフォーマットとしてコンフィギャされているかの指示を少なくとも含む。ここで、アドレス空間は、4ギガバイトの範囲をカバーするので、もしFAT−16ファイルフォーマットがこのコンフィギュレーションで利用されるなら、利用可能なデータ記憶のうち50%しか利用されえない。したがって、図5Aに示されるアドレス空間500は、32ビットアドレシング(すなわちFAT−32ファイルフォーマット)をサポートするファイルシステムと共に用いるのに適する。
【0038】
図5Bは、本発明と共に用いるのに適する複数ボリュームアドレス空間520の図である。このアドレス空間520も4ギガバイトの範囲をカバーするが、2ギガバイトのパーティションのペアに分割されている。つまり、アドレス空間520は、第1および第2の2ギガバイト領域に分割されている。第1の2ギガバイト領域は、000000HEX から3FFFFFHEX までを含み、第2の2ギガバイトボリュームは、400000HEX から7FFFFFHEX までを含む。ここで、第1ボリュームは、ボリューム情報522およびホストによって供給されたデータ524を含む。同様に、第2ボリュームは、ボリューム情報526およびホストによって供給されたデータ528を含む。したがって、図5Bに示されるアドレス空間520は、16ビットアドレシング(すなわちFAT−16ファイルフォーマット)をサポートするファイルシステムと共に用いるのに適する。アドレス空間520が関連付けられたホストデバイスによって利用されるとき、ホストデバイスは、16ビットアドレシング、すなわちFAT−16フォーマットを理解し、よって第1ボリュームまたは第2ボリュームのいずれかをアドレス指定できる。図2に示されるスイッチ206のようなこのスイッチは、ホストが第1ボリュームまたは第2ボリュームのいずれかをアドレス指定するようにするために利用される。
【0039】
メモリカードからボリューム情報を読み出すことによって、ホストデバイスおよび/またはメモリカードは、そのメモリカードに以前に適用されてフォーマットを理解する。例えば、もしメモリカードが図5Bに示されるのと同様の第1および第2ボリュームにコンフィギャされていたなら、ボリューム情報522を読み出すと、ホストデバイスおよび/またはメモリカードは、16ビットアドレシング(すなわちFAT−16ファイルフォーマット)が利用されると理解する。したがって、そのような場合、ホストはその後、第1ボリュームまたは第2ボリュームのいずれかに関連付けられたデータ記憶にアクセスする。第2ボリュームを用いる場合、アドレスオフセットが利用される。
【0040】
代替として、もしメモリカードが図5Aに示されるもののような単一のボリュームだけにコンフィギャされていたなら、ボリューム情報502を読み出すと、ホストデバイスおよび/またはメモリカードは、メモリカードが32ビットアドレシング、すなわちFAT−32フォーマットでフォーマットされていると理解する。その結果、ホストデバイスはその後、記憶容量のその全範囲をカバーする単一ボリュームに関連付けられたデータ記憶にアクセスする。
【0041】
したがって、本発明によればメモリカードは、FAT−16またはFAT−32ファイルシステムをサポートするホストデバイスとの相互運用性を提供する。ホストデバイスがより複雑に、大量のデータを扱うようになるに従って、より高い容量のメモリカードを提供する能力が重要である。しかし、FAT−16およびFAT−32システムの間の相互運用性が維持されることも同時に大切である。
【0042】
図6は、本発明のある実施形態によるメモリカードのアドレス空間600のための異なるコンフィギュレーションを示す図である。この異なるコンフィギュレーションは、3つの異なるボリュームを表す。ボリュームのうちの適切な、または望ましいものは、メモリカードの3位置スイッチのスイッチ位置によって選択されえる。例えば、スイッチ206は、ある実施形態においては3位置スイッチでありえる。第1ボリューム602は、000000HEX から3FFFFFHEX までの論理アドレスの2ギガバイトの範囲を有する。第1ボリュームは、メモリカードの3位置スイッチのスイッチ位置Aによって選択されえる。第2ボリューム604は、400000HEX から7FFFFFHEX までの論理アドレスの2ギガバイトの範囲を有する。第2ボリュームは、メモリカードのスイッチのスイッチ位置Bによって選択されえる。第3ボリューム606は、000000HEX から7FFFFFHEX までの論理アドレスの4ギガバイトの範囲を有する。第3ボリュームは、メモリカードの3位置スイッチのスイッチ位置Cによって選択されえる。メモリカードの第1または第2ボリュームが用いられるとき、ボリュームは、FAT−16またはFAT−32フォーマットを用いえる。しかし第3ボリュームを用いるためには、ボリュームはFAT−32フォーマットを用いなければならない。メモリカードが工場から出荷されるとき、全ての3つのコンフィギュレーションが無効にされえる。それから、メモリカードに記憶されたシステム情報を用いて、ファームウェアは、FAT−16またはFAT−32ファイルフォーマットを用いるかを決定する。この実施形態において、ファームウェアは、適切なファイルフォーマット/ボリュームを決定するために、システムコンフィギュレーション情報を利用しなくてもよい。代わりに、ファームウェアは、メモリカードのために適切なファイルフォーマット/コンフィギュレーションをスイッチ位置に基づいて決定する。例えば、第1ボリュームは、システム情報のために000000HEX から001023HEX までの論理アドレスを、004096HEX から005119HEX までの全体の論理アドレスにおいて用いえて、データのために001024HEX から4001215HEXまでの論理アドレスを、006144HEX から4007359HEXまでの全体の論理アドレスにおいて用いえる。
【0043】
図7は、3位置スイッチと共にやはり用いられえる代替の論理アドレスからカード論理アドレスマッピングを示す。SW Aとラベルが付けられた左のカラムは、スイッチが位置Aにあるときのマッピングを記述する。ホストアドレス000000HEX から0003FFHEX までを含む領域702は、カードLBAの001000HEX から0013FFHEX までを含む領域722にマッピングされる。この領域は、FAT−16システム情報が記憶される所である。スイッチが位置Bniあるとき、SW Bとラベルが付けられた第2カラムは、このボリュームについてのFAT−16システム情報を含む領域703が、カードLBAの001400HEX から0017FFHEX までを含む領域723にマッピングされることを示す。同様に、スイッチが位置Aにあるときに選択されるデータ領域712は、カードLBA領域724にマッピングされ、スイッチが位置Bにあるときに選択されるデータ領域713は、カードLBA領域725にマッピングされる。これらの全ては、カードLBAマッピングにおいて別個の領域であるので、両方のボリュームについてのシステムデータおよびユーザデータは、同時に共存しえ、スイッチは、位置Aおよび位置Bの間で動かされえ、データの損失なしに位置Aに戻されえる。
【0044】
スイッチがFAT−32ファイルシステムをサポートする位置Cにあるとき、ホストマッピングは、SW Cとラベルが付けられたカラムにおいて示される。ホストアドレス000000HEX から000FFFHEX までを含む領域701は、カードLBAの000000HEX から000FFFHEX までを含む領域721にマッピングされる。この例で001000HEX から7A2B7FHEX までカバーするユーザデータ領域711は、領域723、724および725にマッピングされる。
【0045】
このもう一つの実施形態の一つの改良点は、ファームウェアに、第1および第3ボリュームのための初期論理アドレス空間を異なる物理位置にアサインさせることである。この改良点の利点によって、メモリカードは、FAT−16およびFAT−32フォーマットの両方を持って工場を出荷されることができ、よって新しいシステムおよびレガシーシステムの両方によって用いられるのに適し、カスタマーによるフォーマットを要求しないことである。
【0046】
本発明による集積回路パッケージは、メモリシステムにおいて用いられえる。本発明はさらに、上述のようなメモリシステムを含む電子システムに関しえる。メモリシステムは、さまざまな電子製品と共に用いられるディジタルデータを記憶するのによく用いられる。しばしば、メモリシステムは、電子システムから取り外し可能であり、それによって記憶されたディジタルデータは携帯可能である。これらのメモリシステムは、メモリカードと呼ばれえる。本発明によるメモリシステムは、比較的小さいフォームファクタを有しえ、カメラ、ハンドヘルドまたはノートブックコンピュータ、ネットワークカード、ネットワーク機器、セットトップボックス、携帯のまたは他のオーディオプレーヤー/レコーダ(例えばMP3デバイス)、および医療用モニタのような電子製品のためのディジタルデータを記憶するのに用いられえる。メモリカードの例は、PCカード(以前はPCMCIAデバイス)、フラッシュカード、セキュアディジタル(SD)カード、マルチメディアカード(MMCカード)、およびATAカード(例えばコンパクトフラッシュ(登録商標)カード)を含む。例として、メモリカードは、データを記憶するためにフラッシュタイプまたはEEPROMタイプメモリセルを用いえる。より一般には、メモリシステムは、メモリカード(メモリスティックを含む)または他の半導体メモリ製品に関しえる。
【0047】
本発明の優位性は多くある。異なる実施形態または実現例は、以下の優位性のうちの1つ以上を生じえる。本発明のある優位性は、メモリシステムが、16ビットまたは32ビットアドレシングを用いるホストデバイスで用いられえることである。本発明の他の優位性は、ファイルフォーマットの自動検出がユーザエラーを軽減し、以前に記憶されたデータを保護することである。
【0048】
本発明の多くの特徴および優位性は、記載された説明から明らかであり、よって添付の特許請求の範囲は、そのような本発明の全ての特徴および優位性をカバーするものと意図される。さらに、多くの改変および変更が当業者には容易に行われえるので、本発明は図示および説明されたのと同じ構成および操作に限定されるべきではない。したがって、全ての適切な改変および等価物は、本発明の範囲内に入るべきものと解されえる。本発明のさらに他の優位性は、高密度メモリシステムが最近の電子製品(32ビットアドレシングを用いる)だけでなく、レガシー製品(16ビットアドレシングを用いる)でも用いられえることである。
【図面の簡単な説明】
【0049】
【図1】メモリカードと共にホストデバイスを示すブロック図である。
【図2】本発明のある実施形態によるメモリカードの透視図である。
【図3】本発明のある実施形態によるメモリカードボリューム評価プロセスのフロー図である。
【図4】本発明のある実施形態によるメモリシステムのブロック図である。
【図5A】本発明と共に用いるのに適する単一ボリュームアドレス空間を示す図である。
【図5B】本発明と共に用いるのに適する複数ボリュームアドレス空間の図である。
【図6】3つの可能なボリューム指定のうちの1つを選択するために3位置スイッチを用いる本発明のさらなる実施形態を示す図である。
【図7】図6の実施形態に関連する論理アドレシング変換を示す図である。

【特許請求の範囲】
【請求項1】
不揮発性データ記憶を提供するメモリカードからデータを読み出す方法であって、
(a)前記メモリカードの不揮発性データ記憶の第1ボリュームからのボリューム情報にアクセスすること、
(b)前記ボリューム情報に基づいて前記メモリカード上に1つまたは複数のボリュームが存在するか決定すること、
(c)前記決定すること(b)が、前記メモリカード上に1つのボリュームが存在すると決定するとき、前記第1ボリュームだけを提供するよう前記メモリカードを動作させ、前記メモリカードの前記不揮発性データ記憶は、前記1つのボリュームにアサインされる、動作させること、および
(d)前記決定すること(b)が、前記メモリカード上に複数のボリュームが存在すると決定するとき、複数のボリュームを提供するよう前記メモリカードを動作させ、前記複数のボリュームのうちの1つは、前記第1ボリュームであり、前記不揮発性データ記憶は、前記複数のボリュームに分割される、動作させること、
を含む方法。
【請求項2】
請求項1に記載の方法であって、
前記メモリカードは、複数のスイッチ位置を有するスイッチを含み、
前記動作させること(d)は、少なくとも
(d1)前記スイッチのためのスイッチ位置を決定すること、および
(d2)前記スイッチ位置に基づいて前記複数のボリュームのうちの1つを選択的にイネーブルさせること、
を含む方法。
【請求項3】
請求項2に記載の方法であって、
前記スイッチは、少なくとも第1位置および第2位置を有し、
前記動作させること(d)は、さらに少なくとも
(d3)前記スイッチが前記第2位置にあるとき、アドレスオフセットを課すこと、
を含む方法。
【請求項4】
請求項3に記載の方法であって、前記アドレスオフセットは、16ビットアドレシングを用いたファイルシステムで可能であるよりも多くのデータ記憶容量を前記メモリカードが提供できるようにする方法。
【請求項5】
請求項2に記載の方法であって、
前記スイッチは、少なくとも第1位置および第2位置を有し、
前記スイッチ位置が前記第1位置にあり、前記メモリカードが前記複数のボリュームを提供するよう動作させられているとき、前記不揮発性データ記憶の前記第1ボリュームがアクセスされ、
前記スイッチ位置が前記第2位置にあり、前記メモリカードが前記複数のボリュームを提供するよう動作させられているとき、前記不揮発性データ記憶の第2ボリュームがアクセスされる方法。
【請求項6】
請求項5に記載の方法であって、前記メモリカードは、単一のボリュームまたはボリュームのペアのうちのいずれか1つにフォーマットされ、前記ボリュームのペアは前記第1ボリュームおよび前記第2ボリュームである方法。
【請求項7】
請求項6に記載の方法であって、前記メモリカードのための全体の不揮発性データ記憶は、前記単一のボリュームとしてXギガバイトの前記第1ボリュームにフォーマットされるか、または前記ボリュームのペアとしてそれぞれX/2ギガバイトの前記第1および第2ボリュームにフォーマットされる方法。
【請求項8】
請求項1に記載の方法であって、前記方法は、さらに
(e)前記メモリカードのアクティベーションを検出すること、
を含み、
前記アクセスすること(a)、前記決定すること(b)、および前記動作させること(c)または(d)は、いったん前記検出すること(e)が前記メモリカードの前記アクティベーションを検出すると実行される方法。
【請求項9】
請求項8に記載の方法であって、前記メモリカードの前記アクティベーションは、前記メモリカードの電源オンと共に、または前記メモリカードのホストデバイスへの挿入と共に起こる方法。
【請求項10】
請求項1に記載の方法であって、
前記メモリカードは、単一のボリュームまたは複数のボリュームにフォーマットされ、
前記メモリカードのための全体の不揮発性データ記憶は、前記単一のボリュームとしてXギガバイトの前記第1ボリュームにフォーマットされるか、または前記複数のボリュームとしてそれぞれX/NギガバイトのN個のボリュームにフォーマットされる方法。
【請求項11】
請求項1に記載の方法であって、前記決定すること(b)が、1つのボリュームが前記メモリカード上に存在すると決定するとき、前記第1ボリュームはFAT−32ファイルフォーマットを有する方法。
【請求項12】
請求項1に記載の方法であって、前記決定すること(b)が、前記メモリカード上に複数のボリュームが存在すると決定するとき、前記複数のボリュームのそれぞれはFAT−16ファイルフォーマットを有する方法。
【請求項13】
第1サイズの単一のパーティションとして、または第2サイズの複数のパーティションとしてコンフィギャされえるメモリカードであって、
データ記憶を提供する不揮発性データ記憶であって、前記不揮発性データ記憶は、少なくとも第1パーティションを含むよう、かつ少なくとも前記第1パーティションを記述するパーティション情報を記憶するようにコンフィギャされる、不揮発性データ記憶、
複数のスイッチ位置のうちの1つに設定されるスイッチ、および
前記不揮発性データ記憶に記憶された前記データへのアクセスを管理するコントローラ、
を備えるメモリカードであって、
前記コントローラは、前記不揮発性データ記憶に記憶された前記パーティション情報を調べることによって、前記パーティション情報に基づいて、前記単一のパーティションまたは前記複数のパーティションが用いられているかを決定し、
前記コントローラが、前記単一のパーティションが用いられていると決定するとき、前記不揮発性データ記憶は単一のボリュームとしてアドレス指定され、
前記コントローラが、前記複数のパーティションが用いられていると決定するとき、前記不揮発性データ記憶は、前記スイッチの前記スイッチ位置に基づいて、複数のパーティションとしてアドレス指定されるメモリカード。
【請求項14】
請求項13に記載のメモリカードであって、前記1つ以上のパーティションはボリュームであるメモリカード。
【請求項15】
請求項13に記載のメモリカードであって、前記コントローラが、前記単一のパーティションが前記メモリカード上で用いられていると決定するとき、前記単一のパーティションはFAT−32ファイルフォーマットを有するメモリカード。
【請求項16】
請求項13に記載のメモリカードであって、前記コントローラが、前記複数のパーティションが用いられていると決定するとき、前記複数のパーティションのそれぞれはFAT−16ファイルフォーマットを有するメモリカード。
【請求項17】
請求項13に記載のメモリカードであって、
前記メモリカードは、単一のパーティションまたは複数のパーティションのいずれかにフォーマットされ、
前記メモリカードのための全体の不揮発性データ記憶は、前記単一のパーティションとしてXギガバイトの第1パーティションにフォーマットされるか、または前記複数のパーティションとしてそれぞれX/NギガバイトのN個のパーティションにフォーマットされるメモリカード。
【請求項18】
請求項13に記載のメモリカードであって、前記メモリカードはフラッシュメモリデバイスであるメモリカード。
【請求項19】
不揮発性データ記憶を提供するメモリデバイスであって、
(a)前記メモリデバイスの不揮発性データ記憶の第1ボリュームからのボリューム情報にアクセスする手段、
(b)前記ボリューム情報に基づいて前記メモリデバイス上に1つまたは複数のボリュームが存在するか決定する手段、および
(c)前記メモリデバイスのコンフィギュレーションに基づいて、前記決定する手段が前記メモリデバイス上に存在すると決定する前記1つまたは複数のボリュームで前記メモリカードを動作させる手段、
を備えるメモリデバイス。
【請求項20】
請求項19に記載のメモリデバイスであって、
前記決定する手段が、1つのボリュームが前記メモリデバイス上に存在すると決定するとき、前記動作させる手段は、前記メモリデバイスを第1モードで動作させ、
前記決定する手段が、複数のボリュームが前記メモリデバイス上に存在すると決定するとき、前記動作させる手段は、前記メモリデバイスを第2モードで動作させる、
メモリデバイス。
【請求項21】
請求項20に記載のメモリデバイスであって、前記第1モードおよび前記第2モードのうちの1つのユーザ選択を可能にするスイッチ手段をさらに備えるメモリデバイス。
【請求項22】
請求項19に記載のメモリデバイスであって、前記動作させる手段は、前記決定する手段が、1つのボリュームが前記メモリデバイス上に存在すると決定するとき、前記第1ボリュームだけを提供するよう前記メモリデバイスを動作させるメモリデバイス。
【請求項23】
請求項19に記載のメモリデバイスであって、前記動作させる手段は、前記決定する手段が、複数のボリュームが前記メモリデバイス上に存在すると決定するとき、複数のボリュームを提供するよう前記メモリデバイスを動作させ、前記複数のボリュームのうちの1つは、前記第1ボリュームであり、前記不揮発性データ記憶は前記複数のボリュームに分割されるメモリデバイス。
【請求項24】
請求項19に記載のメモリデバイスであって、前記メモリデバイスはメモリカードであるメモリデバイス。
【請求項25】
請求項19に記載のメモリデバイスであって、前記メモリデバイスはフラッシュメモリデバイスであるメモリデバイス。
【請求項26】
不揮発性データ記憶を提供するメモリカードからデータを読み出す方法であって、
(a)前記メモリカード上のスイッチのスイッチ位置にアクセスすること、
(b)前記スイッチ位置に基づいて前記メモリカード上に1つまたは複数のボリュームが存在するか決定すること、
(c)前記決定すること(b)が、前記メモリカード上に1つのボリュームが存在すると決定するとき、前記第1ボリュームだけを提供するよう前記メモリカードを動作させ、前記メモリカードの前記不揮発性データ記憶は、前記1つのボリュームにアサインされる、動作させること、および
(d)前記決定すること(b)が、前記メモリカード上に複数のボリュームが存在すると決定するとき、複数のボリュームを提供するよう前記メモリカードを動作させ、前記複数のボリュームのうちの1つは、前記第1ボリュームであり、前記不揮発性データ記憶は、前記複数のボリュームに分割される、動作させること、
を含む方法。
【請求項27】
請求項26に記載の方法であって、前記スイッチは3つの位置を有する方法。
【請求項28】
第1サイズの単一のパーティションとして、または第2サイズの複数のパーティションとしてコンフィギャされえるメモリカードであって、
データ記憶を提供する不揮発性データ記憶であって、前記不揮発性データ記憶は、少なくとも第1パーティションを含むよう、かつ少なくとも前記第1パーティションを記述するパーティション情報を記憶するようにコンフィギャされる、不揮発性データ記憶、
複数のスイッチ位置のうちの1つに設定されるスイッチ、および
前記不揮発性データ記憶に記憶された前記データへのアクセスを管理するコントローラ
を備えるメモリカードであって、
前記コントローラは、前記スイッチの前記スイッチ位置を調べることによって、前記パーティション情報に基づいて、前記単一のパーティションまたは前記複数のパーティションが用いられているかを決定し、
前記コントローラが、前記単一のパーティションが用いられていると決定するとき、前記不揮発性データ記憶は単一のボリュームとしてアドレス指定され、
前記コントローラが、前記複数のパーティションが用いられていると決定するとき、前記不揮発性データ記憶は、前記スイッチの前記スイッチ位置に基づいて、複数のパーティションとしてアドレス指定されるメモリカード。
【請求項29】
請求項28に記載のメモリカードであって、前記1つ以上のパーティションはボリュームであるメモリカード。
【請求項30】
請求項28に記載のメモリカードであって、前記コントローラが、前記単一のパーティションが前記メモリカード上で用いられていると決定するとき、前記単一のパーティションはFAT−32ファイルフォーマットを有するメモリカード。
【請求項31】
請求項28に記載のメモリカードであって、前記コントローラが、前記複数のパーティションが用いられていると決定するとき、前記複数のパーティションのそれぞれはFAT−16ファイルフォーマットを有するメモリカード。
【請求項32】
請求項28に記載のメモリカードであって、
前記メモリカードは、単一のパーティションまたは複数のパーティションにフォーマットされ、
前記メモリカードのための全体の不揮発性データ記憶は、前記単一のボリュームとしてXギガバイトの第1パーティションにフォーマットされるか、または前記複数のボリュームとしてそれぞれX/NギガバイトのN個のパーティションにフォーマットされる
メモリカード。
【請求項33】
請求項32に記載のメモリカードであって、前記スイッチはN+1のスイッチ位置を有するメモリカード。
【請求項34】
請求項28に記載のメモリカードであって、前記メモリカードは、フラッシュメモリデバイスであるメモリカード。
【請求項35】
請求項32に記載のメモリカードであって、前記スイッチは3つのスイッチ位置を有するメモリカード。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図6】
image rotate

【図7】
image rotate


【公表番号】特表2007−518188(P2007−518188A)
【公表日】平成19年7月5日(2007.7.5)
【国際特許分類】
【出願番号】特願2006−549320(P2006−549320)
【出願日】平成16年12月22日(2004.12.22)
【国際出願番号】PCT/US2004/043683
【国際公開番号】WO2005/071529
【国際公開日】平成17年8月4日(2005.8.4)
【出願人】(592012513)サンディスク コーポレイション (173)
【氏名又は名称原語表記】SanDisk Corporation
【Fターム(参考)】