IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 東芝メモリ株式会社の特許一覧

特開2022-74450メモリカード、メモリシステム、及びファイルの断片化解消方法
<>
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図1
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図2
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図3
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図4
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図5
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図6
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図7
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図8
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図9
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図10
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図11
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図12
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図13
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図14
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図15
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図16
  • 特開-メモリカード、メモリシステム、及びファイルの断片化解消方法 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022074450
(43)【公開日】2022-05-18
(54)【発明の名称】メモリカード、メモリシステム、及びファイルの断片化解消方法
(51)【国際特許分類】
   G06F 12/02 20060101AFI20220511BHJP
   G06F 12/06 20060101ALI20220511BHJP
   G06F 12/00 20060101ALI20220511BHJP
   G06F 13/10 20060101ALI20220511BHJP
   G06F 13/14 20060101ALI20220511BHJP
【FI】
G06F12/02 570A
G06F12/06 524
G06F12/00 597U
G06F13/10 340A
G06F13/14 320H
【審査請求】未請求
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2020184498
(22)【出願日】2020-11-04
(71)【出願人】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】100108855
【弁理士】
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100103034
【弁理士】
【氏名又は名称】野河 信久
(74)【代理人】
【識別番号】100075672
【弁理士】
【氏名又は名称】峰 隆司
(74)【代理人】
【識別番号】100153051
【弁理士】
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100162570
【弁理士】
【氏名又は名称】金子 早苗
(72)【発明者】
【氏名】南澤 秀和
(72)【発明者】
【氏名】福住 知也
(72)【発明者】
【氏名】江本 雄一
【テーマコード(参考)】
5B160
【Fターム(参考)】
5B160AB26
5B160MM09
(57)【要約】      (修正有)
【課題】ファイルの断片化解消処理を実行可能なメモリカード、メモリシステム、及びファイルの断片化解消方法を提供する。
【解決手段】メモリシステム1は、メモリカード10とホスト機器40を含む。メモリカードは、データ記憶領域211を有し、ホスト機器から受信した論理アドレスと、データ記憶領域の物理アドレスとをマッピングするテーブル217を記憶する不揮発性メモリ200と、不揮発性メモリを制御するメモリコントローラ100とを備える。メモリコントローラは、ホスト機器から受信した第1コマンド及びデータに基づいて、第1論理アドレスと、第2論理アドレスとを入れ替える。
【選択図】図1
【特許請求の範囲】
【請求項1】
データ記憶領域を有し、ホスト機器から受信した論理アドレスと、前記データ記憶領域の物理アドレスとをマッピングするテーブルを記憶する不揮発性メモリと、
前記不揮発性メモリを制御するコントローラと
を備え、
前記コントローラは、前記ホスト機器から受信した第1コマンド及びデータに基づいて、第1論理アドレスと、第2論理アドレスとを入れ替える、メモリカード。
【請求項2】
前記第1コマンドは、前記第1論理アドレスを含む第1アドレス範囲と、前記第2論理アドレスを含む第2アドレス範囲とを示す情報を含む、請求項1記載のメモリカード。
【請求項3】
前記情報において、前記第1アドレス範囲と、前記第2アドレス範囲とは、入れ替えが行われる論理アドレスの数によって指定される、請求項2記載のメモリカード。
【請求項4】
前記データは、前記第1アドレス範囲のスタートアドレスと、前記第2アドレス範囲のスタートアドレスとを含む、請求項2または3記載のメモリカード。
【請求項5】
前記コントローラは、前記第1論理アドレスと、前記第2論理アドレスとを入れ替えた後に、前記第1コマンド及び前記データに基づいて、第3論理アドレスと、第4論理アドレスとを入れ替える、請求項1乃至4のいずれか1項記載のメモリカード。
【請求項6】
前記コントローラは、前記第1論理アドレスと、前記第2論理アドレスとを入れ替えた後に、前記第1コマンド及び前記データに基づいて、第3論理アドレスと、第4論理アドレスとを入れ替え、
前記データは、更に、前記第3論理アドレスを含む第3アドレス範囲のスタートアドレスと、前記第4論理アドレスを含む第4アドレス範囲のスタートアドレスとを含む、請求項4記載のメモリカード。
【請求項7】
前記コントローラは、前記ホスト機器から受信した第2コマンドに基づいて、前記第1論理アドレスと前記第2論理アドレスとの入れ替えの結果を前記ホスト機器に送信する、請求項1乃至6のいずれか1項記載のメモリカード。
【請求項8】
前記コントローラは、前記ホスト機器から受信した第3コマンドに基づいて、前記第1論理アドレスと前記第2論理アドレスとの入れ替えの結果を含むステータス情報を前記ホスト機器に送信する、請求項1乃至6のいずれか1項記載のメモリカード。
【請求項9】
データ記憶領域を有し、ホスト機器から受信した論理アドレスと、前記データ記憶領域の物理アドレスとをマッピングするテーブルを記憶する不揮発性メモリと、前記不揮発性メモリを制御するコントローラとを含むメモリカードと、
前記メモリカードを制御するホスト機器と
を備え、
前記ホスト機器は、第1コマンド及びデータを前記メモリカードに送信し、
前記コントローラは、前記ホスト機器から受信した前記第1コマンド及び前記データに基づいて、第1論理アドレスと、第2論理アドレスとを入れ替える、メモリシステム。
【請求項10】
前記第1コマンドは、前記第1論理アドレスを含む第1アドレス範囲と、前記第2論理アドレスを含む第2アドレス範囲とを示す情報を含む、請求項9記載のメモリシステム。
【請求項11】
前記情報において、前記第1アドレス範囲と、前記第2アドレス範囲とは、入れ替えが行われる論理アドレスの数によって指定される、請求項10記載のメモリシステム。
【請求項12】
前記データは、前記第1アドレス範囲のスタートアドレスと、前記第2アドレス範囲のスタートアドレスとを含む、請求項10または11記載のメモリシステム。
【請求項13】
データ記憶領域を有し、ホスト機器から受信した論理アドレスと、前記データ記憶領域の物理アドレスとをマッピングするテーブルを記憶する不揮発性メモリと、前記不揮発性メモリを制御するコントローラとを含むメモリカードと、
前記メモリカードを制御するホスト機器と
を含むメモリシステムにおける、ファイル断片化解消方法であって、
前記ホスト機器が、第1コマンド及びデータを前記メモリカードに送信することと、
前記コントローラが、前記ホスト機器から受信した前記第1コマンド及び前記データに基づいて、第1論理アドレスと、第2論理アドレスとを入れ替えることと
を備える、方法。
【請求項14】
前記第1コマンドは、前記第1論理アドレスを含む第1アドレス範囲と、前記第2論理アドレスを含む第2アドレス範囲とを示す情報を含む、請求項13記載の方法。
【請求項15】
前記情報において、前記第1アドレス範囲と、前記第2アドレス範囲とは、入れ替えが行われる論理アドレスの数によって指定される、請求項14記載の方法。
【請求項16】
前記データは、前記第1アドレス範囲のスタートアドレスと、前記第2アドレス範囲のスタートアドレスとを含む、請求項14または15記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、メモリカード、メモリシステム、及びファイルの断片化解消方法に関する。
【背景技術】
【0002】
不揮発性メモリを搭載した記憶装置として、SDTMカードのようなメモリカードが知られている。SDTMカードは、近年普及してきたドライブレコーダーにも使用されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2013-171343号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ファイルの断片化解消処理を実行可能なメモリカード、及びメモリシステム、並びにファイルの断片化解消方法を提供する。
【課題を解決するための手段】
【0005】
実施形態に係るメモリカードは、データ記憶領域を有し、ホスト機器から受信した論理アドレスと、データ記憶領域の物理アドレスとをマッピングするテーブルを記憶する不揮発性メモリと、不揮発性メモリを制御するコントローラとを備える。コントローラは、ホスト機器から受信した第1コマンド及びデータに基づいて、第1論理アドレスと、第2論理アドレスとを入れ替える。
【図面の簡単な説明】
【0006】
図1図1は、第1実施形態に係るメモリシステムのブロック図である。
図2図2は、第1実施形態に係るメモリカードに含まれる論物変換テーブルを示す図である。
図3図3は、第1実施形態に係るメモリシステムにおいて、ホスト機器が発行するホストコマンドの構成を示す図である。
図4図4は、第1実施形態に係るメモリシステムにおいて、ホスト機器とメモリカードとの間で送受信されるデータの構成を示す図である。
図5図5は、第1実施形態に係るメモリシステムにおけるファイル断片化解消動作の概要を説明する図である。
図6図6は、第1実施形態に係るメモリシステムにおける論理アドレス入れ替え動作の概要を説明する図である。
図7図7は、第1実施形態に係るメモリシステムにおけるファイル断片化解消動作を示すフローチャートである。
図8図8は、第1実施形態に係るメモリシステムにおけるファイル断片化解消動作を示すフローチャートである。
図9図9は、第1実施形態に係るメモリシステムにおけるファイル断片化解消動作時のコマンドライン及びデータラインを示す図である。
図10図10は、第1実施形態に係るメモリシステムにおいて、ホスト機器が発行するホストコマンドの内容の一例を示す図である。
図11図11は、第1実施形態に係るメモリシステムにおいて、ホスト機器が送信するデータの内容の一例を示す図である。
図12図12は、第1実施形態に係るメモリシステムにおけるファイル断片化解消の実行結果確認動作を示すフローチャートである。
図13図13は、第1実施形態に係るメモリシステムにおけるファイル断片化解消の実行結果確認動作時のコマンドライン及びデータラインを示す図である。
図14図14は、第1実施形態に係るメモリシステムにおいて、ホスト機器が発行するホストコマンドの内容の一例を示す図である。
図15図15は、第1実施形態に係るメモリシステムにおいて、メモリカードが送信するデータの内容の一例を示す図である。
図16図16は、第1実施形態の変形例に係るメモリシステムにおいて、ホスト機器が発行するホストコマンドの内容の一例を示す図である。
図17図17は、第2実施形態に係るメモリシステムにおけるファイル断片化解消の実行結果確認動作を示すフローチャートである。
【発明を実施するための形態】
【0007】
以下、図面を参照して実施形態について説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【0008】
1.第1実施形態
第1実施形態に係るメモリシステムについて説明する。以下では、メモリシステムに含まれるメモリカードとして、SDTMカード(以下、「メモリカード」と表記する)を例に挙げて説明する。また、メモリカードに含まれる不揮発性メモリとして、NAND型フラッシュメモリを例に挙げて説明する。
【0009】
1.1 構成
1.1.1 メモリシステムの全体構成
まず、本実施形態に係るメモリシステムの全体構成について、図1を用いて説明する。図1は、本実施形態に係るメモリシステムのブロック図である。
【0010】
メモリシステム1は、メモリカード10、及びホスト機器(以下、「ホスト」と表記する)40を含む。メモリカード10とホスト40とは、ホストバスによって接続される。メモリカード10は、ホスト40から受信するホストコマンドCMDに基づく処理を行う。ホスト40は、メモリカード10を制御する。例えば、ホスト40は、メモリカード10との間で信号の送受信を行う。ホスト40は、例えばドライブレコーダー等である。ホストバスは、SDTMインターフェースの規格に従ったバスである。
【0011】
1.1.2 メモリカード10の構成
本実施形態に係るメモリカード10の構成について、図1を用いて説明する。
【0012】
メモリカード10は、メモリコントローラ100、NAND型フラッシュメモリ200、及び複数の信号ピン300(第1~第9信号ピンP1~P9)を含む。メモリコントローラ100とNAND型フラッシュメモリ200とは、メモリバスによって接続される。メモリコントローラ100は、NAND型フラッシュメモリ200を制御する。NAND型フラッシュメモリ200は、データを不揮発に記憶する。メモリバスは、NANDインターフェースの規格に従ったバスである。
【0013】
複数の信号ピン300は、メモリコントローラ100と電気的に接続されている。複数の信号ピン300は、メモリコントローラ100とホストバスとを接続する。第1信号ピンP1は、ホスト40とメモリカード10との間のホストコマンドCMDの送受信に用いられる。第2信号ピンP2は、ホスト40からメモリカード10への接地電圧VSSの印加(供給)に用いられる。第3信号ピンP3は、ホスト40からメモリカード10への電源電圧VDDの印加に用いられる。電源電圧VDDは、例えば2.7V~3.6Vである。第4信号ピンP4は、ホスト40からメモリカード10へのクロック信号CLKの送信に用いられる。第5信号ピンP5は、ホスト40からメモリカード10への接地電圧VSSの印加に用いられる。第6信号ピンP6は、ホスト40とメモリカード10との間のデータ0(DAT0)の送受信に用いられる。第7信号ピンP7は、ホスト40とメモリカード10との間のデータ1(DAT1)の送受信に用いられる。第8信号ピンP8は、ホスト40とメモリカード10との間のデータ2(DAT2)の送受信に用いられる。第9信号ピンP9は、ホスト40とメモリカード10との間のカード検出(CD)、またはデータ3(DAT3)の送受信に用いられる。
【0014】
メモリカード10の動作モードは、SDモードとSPI(Serial Peripheral Interface)モードに大別される。SDモードは、4bit幅単位または1bit幅単位でデータ転送を行う動作モードである。SPIモードは、SPIを介してデータ転送を行うモードである。第1信号ピンP1(以下、「CMDピン」と表記する)、第6信号ピンP6(以下、「DAT0ピン」と表記する)、第7信号ピンP7(以下、「DAT1ピン」と表記する)、第8信号ピンP8(以下、「DAT2ピン」と表記する)、及び第9信号ピンP9(以下、「DAT3ピン」と表記する)は、動作モードによって用途が異なる。
【0015】
SDモードでは、メモリカード10は、ホスト40からのバス幅変更ホストコマンドCMDによって、SD4bitモードまたはSD1bitモードに設定される。4ビット幅単位でデータ転送を行うSD4bitモードでは、DAT0ピン~DAT3ピンがデータ転送に使用される。1ビット幅単位でデータ転送を行うSD1bitモードでは、DAT0ピンがデータ転送に使用される。DAT1ピン及びDAT2ピンは、使用されない。DAT3ピンは、例えばメモリカード10からホスト40への非同期割り込み等のために使用される。
【0016】
以下では、SD1bitモードの場合を例に挙げて説明する。
【0017】
SPIモードでは、CMDピンは、ホスト40からメモリカード10へのデータ信号線(DATA IN)に使用される。DAT0ピンは、メモリカード10からホスト40へのデータ信号線(DATA OUT)に使用される。DAT1ピン及びDAT2ピンは、使用されない。DAT3ピンは、ホスト40からメモリカード10へのチップセレクト信号CSの送信に使用される。
【0018】
メモリコントローラ100は、ホストインターフェース回路(ホストI/F)110、内蔵メモリ(RAM:Random Access Memory)120、プロセッサ(CPU:Central Processing Unit)130、バッファメモリ140、メモリインターフェース回路(メモリI/F)150、及びステータスレジスタ160を含む。
【0019】
ホストインターフェース回路110は、ホストバスを介してホスト40と接続される。ホストインターフェース回路110は、ホスト40との通信を司る。例えば、ホストインターフェース回路110は、ホスト40から受信したホストコマンドCMD及びデータを、それぞれプロセッサ130及びバッファメモリ140に転送する。また、ホストインターフェース回路110は、プロセッサ130の命令に基づいて、バッファメモリ140内のデータをホスト40に転送する。
【0020】
内蔵メモリ120は、プロセッサ130の作業領域として使用される。内蔵メモリ120は、例えばDRAMやSRAM等の半導体メモリである。内蔵メモリ120は、例えばNAND型フラッシュメモリ200を管理するためのファームウェアや各種の管理テーブル等を記憶する。
【0021】
プロセッサ130は、メモリコントローラ100全体の動作を制御する。例えば、プロセッサ130は、ホスト40から読み出しに関するホストコマンドCMDを受信した際には、それに基づいて、メモリインターフェース回路150にNAND型フラッシュメモリ200への読み出しコマンド(メモリコマンド)を発行させる。プロセッサ130は、ホスト40から書き込みに関するホストコマンドCMDを受信した際も、同様の動作を行う。また、プロセッサ130は、NAND型フラッシュメモリ200を管理するための様々な処理(後述するファイル断片化解消動作や、ウェアレベリング等)を実行する。
【0022】
バッファメモリ140は、NAND型フラッシュメモリ200への書き込みデータやNAND型フラッシュメモリ200からの読み出しデータを一時的に記憶する。
【0023】
メモリインターフェース回路150は、メモリバスを介してNAND型フラッシュメモリ200と接続される。メモリインターフェース回路150は、NAND型フラッシュメモリ200との通信を司る。例えば、メモリインターフェース回路150は、プロセッサ130から受信した命令に基づいて、種々の信号をNAND型フラッシュメモリ200へ送信する。また、メモリインターフェース回路150は、NAND型フラッシュメモリ200から種々の信号を受信する。
【0024】
ステータスレジスタ160は、メモリカード10の動作(例えば、データの読み出し動作及び書き込み動作)に関するステータス情報を一時的に記憶する。プロセッサ130は、ステータスレジスタ160が記憶するステータス情報を確認し、ホスト40にメモリカード10の動作が正常に終了したか否かを通知する。
【0025】
NAND型フラッシュメモリ200は、メモリセルアレイ210を含む。メモリセルアレイ210は、データが書き込まれる領域(以下、「データ記憶領域」と表記する)211を含む。データ記憶領域211は、ユーザデータ領域212、保護データ領域213、機密データ領域214、及び管理データ領域215を含む。
【0026】
ユーザデータ領域212は、ユーザデータを格納するための領域である。ユーザデータには、例えばメモリコントローラ100を介してホスト40から受信したホストデータ(例えば、ホスト40内の図示せぬカメラで撮影された画像データ)216が含まれる。ユーザデータ領域212は、メモリカード10を使用するユーザが自由にアクセスできる領域である。保護データ領域213は、重要なデータを格納するための領域である。保護データ領域213は、メモリカード10に接続されたホスト40との相互認証によりホスト40の正当性が証明された場合にアクセス可能となる領域である。機密データ領域214は、暗号化に使用される鍵情報や認証に使用される機密データやセキュリティ情報を格納するための領域である。管理データ領域215は、メモリカード10のメディアIDやシステムデータ等のカード情報を格納するための領域である。システムデータには、例えば後述する論物変換テーブル217が含まれる。
【0027】
1.1.3 ホスト40の構成
本実施形態に係るメモリシステム1に含まれるホスト40の構成について、図1を用いて説明する。
【0028】
ホスト40は、内蔵メモリ(RAM)400、プロセッサ(CPU)410、ホストコントローラ420、及びカードインターフェース回路(カードI/F)430を含む。
【0029】
内蔵メモリ400は、プロセッサ410の作業領域として使用される。内蔵メモリ400は、例えばDRAMやSRAM等の半導体メモリである。内蔵メモリ400は、例えばホスト40を制御するためのファームウェア等を記憶する。
【0030】
また、内蔵メモリ400は、ホスト40がドライブレコーダーである場合を例に挙げると、ホスト40内の図示せぬカメラで録画された録画データを記憶する。内蔵メモリ400に記憶された録画データは、カードインターフェース回路430によってメモリカード10に送信され、メモリカード10に書き込まれる。
【0031】
プロセッサ410は、ホスト40全体の動作を制御する。例えば、プロセッサ410は、ファームウェアに従って、ホストコントローラ420にデータの読み出し、及びデータの書き込みを命令する。
【0032】
ホストコントローラ420は、カードインターフェース回路430の動作を制御する。例えば、ホストコントローラ420は、カードインターフェース回路430にメモリカード10へのホストコマンドCMDを発行させる。ホストコマンドCMDには、例えば読み出しに関するホストコマンド、及び書き込みに関するホストコマンド等が含まれる。ホストコマンドCMDの詳細については、後述する。
【0033】
カードインターフェース回路430は、ホストバスを介してメモリカード10と接続される。カードインターフェース回路430は、メモリカード10との通信を司る。例えば、カードインターフェース回路430は、プロセッサ410から受信した命令に基づいて、種々の信号をメモリカード10へ送信する。また、カードインターフェース回路430は、メモリカード10から種々の信号を受信する。
【0034】
1.1.4 論物変換テーブル217の構成
論物変換テーブル217について、図2を用いて説明する。図2は、本実施形態に係るメモリカード10に含まれる論物変換テーブル217を示す図である。
【0035】
論物変換テーブル217は、論理ブロックアドレス(以下、単に「論理アドレスLBA」と表記する)と物理ブロックアドレス(以下、単に「物理アドレスPBA」と表記する)とをマッピングするテーブルである。論理アドレスLBAは、ホスト40が管理するアドレスである。物理アドレスPBAは、NAND型フラッシュメモリ200のデータ記憶領域211内のメモリアドレスである。論物変換テーブル217は複数のエントリを有する。各エントリは、論理アドレスLBAと、この論理アドレスLBAに対応する物理アドレスPBAとを有する。図2の例では、論理アドレスLBA(A)は、物理アドレスPBA(A)に対応する。論理アドレスLBA(A+1)は、物理アドレスPBA(A+1)に対応する。論理アドレスLBA(A+2)は、物理アドレスPBA(A+2)に対応する。
【0036】
論物変換テーブル217は、前述の通り、メモリセルアレイ210の管理データ領域215に記憶される。論物変換テーブル217は、例えばパワーオン直後に、メモリコントローラ100によって内蔵メモリ120にロードされる。以下では、内蔵メモリ120にロードされた論物変換テーブル217を「論物変換テーブル217’」と称する。
【0037】
ホスト40は、NAND型フラッシュメモリ200の物理アドレスPBAを認識しない。ホスト40は、NAND型フラッシュメモリ200のメモリ容量に基づく論理アドレスLBAを認識する。ホスト40は、論理アドレスLBAを用いてメモリコントローラ100にアクセスする。
【0038】
メモリコントローラ100は、ホスト40から論理アドレスLBAを受信する。例えば、メモリコントローラ100は、ホスト40から書き込み要求を受けると、受信した論理アドレスLBAに対応する物理アドレスPBAを割り当て、論物変換テーブル217’を更新する。また、メモリコントローラ100は、ホスト40から読み出し要求を受けると、受信した論理アドレスLBAに基づいて、内蔵メモリ120にロードされた論物変換テーブル217’内を検索する。メモリコントローラ100は、ホスト40が指定する論理アドレスLBAに対応する物理アドレスPBAにアクセスする。
【0039】
メモリコントローラ100は、内蔵メモリ120にロードされた論物変換テーブル217’を更新した場合、更新された論物変換テーブル217’に基づいて管理データ領域215内の論物変換テーブル217を更新する。
【0040】
1.1.5 ホストコマンドCMDの構成
ホスト40が発行するホストコマンドCMDの構成について、図3を用いて説明する。図3は、本実施形態に係るメモリシステム1において、ホスト40が発行するホストコマンドCMDの構成を示す図である。
【0041】
ホストコマンドCMDは、6バイト(48ビット)で構成される。以下では、ホストコマンドCMDの最上位ビットのビット位置を47、ホストコマンドCMDの最下位ビットの位置を0として説明する。ホストコマンドCMDは、コマンド部CM、引数部AG、及びCRC(Cyclic Redundancy Check)部CRを含む。
【0042】
コマンド部CMは、1バイト(8ビット)で構成される。コマンド部CMは、ビット位置[47]から[40]までの範囲(ビット位置[47:40])を占める。ビット位置[47]は開始ビットを示す。開始ビットには‘0’(固定値)が指定される。ビット位置[46]は送信ビットを示す。送信ビットには‘1’(固定値)が指定される。ビット位置[45:40]には、ホストコマンドCMDのコマンドインデックスが指定される。
【0043】
引数部AGは、4バイト(32ビット)で構成される。引数部AGは、ビット位置[39]から[8]までの範囲(ビット位置[39:8])を占める。ビット位置[39:8]には、ホストコマンドCMDの引数情報が指定される。
【0044】
CRC部CRは、1バイト(8ビット)で構成される。CRC部CRは、ビット位置[7]から[0]までの範囲(ビット位置[7:0])を占める。ビット位置[7:1]には、コマンド部CM及び引数部AGに対するCRC情報が指定される。ビット位置[0]は終了ビットを示す。終了ビットには‘1’(固定値)が指定される。
【0045】
1.1.6 データの構成
ホスト40とメモリカード10との間で送受信されるデータの構成について、図4を用いて説明する。図4は、本実施形態に係るメモリシステム1において、ホスト40とメモリカード10との間で送受信されるデータの構成を示す図である。以下では、SD1bitモードにおいて、DAT0ピンがデータ送受信に使用される場合のデータ0(DAT0)の構成を例に挙げて説明する。
【0046】
データ0(DAT0)は、開始ビット、ペイロード、CRC、及び終了ビットを含む。開始ビットはデータの最上位ビットである。開始ビットには‘0’(固定値)が指定される。終了ビットはデータの最下位ビットである。終了ビットには‘1’(固定値)が指定される。ペイロード及びCRCは、開始ビットと終了ビットとの間に位置する。ペイロードは、開始ビットとCRCとの間に位置する。ペイロードはデータの本体である。ペイロードは512バイトである。CRCは、ペイロードと終了ビットとの間に位置する。CRCはペイロードに対するCRC情報である。CRCは2バイトである。
【0047】
1.2 動作
1.2.1 断片化解消動作の概要
本実施形態に係るメモリシステム1は、ファイル断片化解消動作を行う。以下では、まず、本実施形態に係るメモリシステム1におけるファイル断片化解消動作の概要について、図5を用いて説明する。図5は、本実施形態に係るメモリシステム1におけるファイル断片化解消動作の概要を説明する図である。以下では、ホスト40のファイルシステムがFAT(File Allocation Tables)ファイルシステムである場合を例に挙げて説明する。
【0048】
図5には、ホスト40におけるファイル断片化解消前の論理アドレス空間の様子と、ファイル断片化解消後の論理アドレス空間の様子とが示されている。論理アドレス空間は複数の区画に区切られている。図5における1つの四角枠が、1つの区画、すなわち1つのクラスタを示している。論理アドレス空間において、論理アドレスLBAは、左上のクラスタから右下のクラスタまで順番に割り当てられている。アルファベットが記載されたクラスタは、データの書き込みに使用されているクラスタである。同一のアルファベットが記載されたクラスタは、同一のファイルを構成するクラスタである。例えば、「A」と記載された3つのクラスタは、1つのファイルを3つに分けたデータの書き込みにそれぞれ使用されている。他のアルファベットが記載されたクラスタについても同様である。「空」と記載されたクラスタは、データの書き込みに使用されていない空きクラスタである。
【0049】
ファイル断片化解消前の状態では、1つのファイルを構成する3つのクラスタは、論理アドレス空間内において分散している。また、空きクラスタも論理アドレス空間内において分散している。
【0050】
これに対し、ファイル断片化解消後の状態では、1つのファイルを構成する3つのクラスタは、論理アドレス空間内において連続している。換言すれば、1つのファイルを構成する3つのクラスタの論理アドレスLBAが連続している。すなわち、ファイル断片化解消動作により、論理アドレス空間内においてファイル断片化が解消されている。また、空きクラスタも論理アドレス空間内において連続している。すなわち、論理アドレス空間内において、論理アドレスLBAが連続する空きクラスタが確保されている。
【0051】
このように、論理アドレス空間をファイル断片化解消後の状態にすることがファイル断片化解消動作である。ファイル断片化解消動作は、後述する論理アドレス入れ替え動作を含む。ファイル断片化解消動作では、ホスト40がファイル断片化解消動作に関するホストコマンドCMDを発行することにより、メモリカード10における論理アドレス入れ替え動作が実行される。この結果、ファイルの断片化が解消される。
【0052】
1.2.2 入れ替え動作の概要
上述したファイル断片化解消動作において行われる論理アドレス入れ替え動作の概要について、図6を用いて説明する。図6は、本実施形態に係るメモリシステム1における論理アドレス入れ替え動作の概要を説明する図である。
【0053】
図6には、論理アドレス入れ替え前の論物変換テーブル217の様子と、論理アドレス入れ替え後の論物変換テーブル217の様子とが示されている。図6の例では、論物変換テーブル217の論理アドレスLBA(A+1)と論理アドレスLBA(A+5)とを入れ替える場合が示されている。例えば、論理アドレスLBA(A)と論理アドレスLBA(A+2)と論理アドレスLBA(A+5)とが1つのファイルを構成するクラスタである場合、論理アドレスLBA(A+1)と論理アドレスLBA(A+5)とを入れ替えることにより、1つのファイルに対する3つの論理アドレスLBAが連続する。
【0054】
論理アドレスLBA(A+1)と論理アドレスLBA(A+5)とを入れ替えると、論理アドレスLBA(A+1)にマッピングされる物理アドレスPBAは、物理アドレスPBA(A+3)から物理アドレスPBA(A+2)に変更される。また、論理アドレスLBA(A+5)にマッピングされる物理アドレスPBAは、物理アドレスPBA(A+2)から物理アドレスPBA(A+3)に変更される。この結果、物理アドレスPBA(A+3)と物理アドレスPBA(A+2)とが入れ替えられる。
【0055】
1.2.3 断片化解消動作
次に、ファイル断片化解消動作ついて、図7図9を用いて詳細に説明する。図7及び図8は、本実施形態に係るメモリシステム1におけるファイル断片化解消動作を示すフローチャートである。図9は、本実施形態に係るメモリシステム1におけるファイル断片化解消動作時のコマンドライン(以下、「CMDライン」と表記する)、及びデータライン(以下、「DAT0ライン」と表記する)を示す図である。「コマンドライン」は、ホスト40が発行したホストコマンドCMD、及びメモリカード10によるホストコマンドCMDのレスポンスを送信するための信号線である。「データライン」は、ホスト40及びメモリカード10がデータを送受信するための信号線である。
【0056】
ホスト40は、論理アドレス空間内のファイルの断片化(クラスタの分散化)を解消すべきか否かを判断する。ファイルの断片化を解消すべきと判断した場合、ホスト40はファイル断片化解消動作を行う。なお、ファイル断片化解消動作は、NAND型フラッシュメモリ200へのデータの書き込みが行われているか否かに関係なく行うことができる。他方で、ファイルの断片化を解消しなくてよいと判断した場合、ホスト40はファイル断片化解消動作を行わない。
【0057】
ファイル断片化解消動作では、まず、ホスト40は、CMDラインを介してホストコマンドCMD56ライトをメモリカード10に発行する(S10)。ホストコマンドCMD56は、SDTM規格で定義されているベンダ特有のホストコマンドである。
【0058】
ここで、ホストコマンドCMD56ライトの内容について、図10を用いて説明する。図10は、本実施形態に係るメモリシステム1において、ホスト40が発行するホストコマンドCMD56ライトの内容の一例を示す図である。
【0059】
コマンド部CMのコマンドインデックスには、コマンド番号111000(56)が指定される。引数部AGのビット位置[8]には、‘0’(書き込み)が指定される。引数部AGのビット位置[39:9]には、論理アドレスLBAの入れ替え範囲が指定される。「論理アドレスLBAの入れ替え範囲」は、連続する論理アドレスLBAのアドレス範囲である。本実施形態では、論理アドレスLBAの入れ替え範囲は、引数部AGのビット位置[39:9]に指定された整数mによって指定される。mはセクタの数(論理アドレスLBAの数)を表す。mは1以上32以下の整数である。例えば、後述するデータ0(DAT0)において、入れ替え元の論理アドレスLBAの範囲の先頭の論理アドレスLBA(以下、「スタートアドレス」と表記する)として「論理アドレスLBA(A)」が指定され、入れ替え先の論理アドレスLBAの範囲のスタートアドレスとして「論理アドレスLBA(B)」が指定されているとする。スタートアドレスの指定方法の詳細については、後述する。この場合において、引数部AGのビット位置[39:9]にm=1が指定された場合、論理アドレスLBA(A)と論理アドレスLBA(B)との入れ替えが指定される。引数部AGのビット位置[39:9]にm=32が指定された場合、論理アドレスLBA(A)~LBA(A+31)と、論理アドレスLBA(B)~LBA(B+31)との入れ替えが指定される。コマンド部CMの開始ビット及び送信ビット、並びにCRC部CRの終了ビットには、図3と同じ値が指定される。
【0060】
メモリカード10は、ホスト40からホストコマンドCMD56ライトを受信する(S11)と、CMDラインを介してホストコマンドCMD56ライトのレスポンスを送信する(S12)。
【0061】
ホスト40は、メモリカード10からホストコマンドCMD56ライトのレスポンスを受信する(S13)と、DAT0ラインを介して、ホストコマンドCMD56ライトのデータ0を送信する(S14)。
【0062】
ここで、データ0(DAT0)の内容について、図11を用いて説明する。図11は、本実施形態に係るメモリシステム1において、ホスト40が送信するデータ0(DAT0)の内容の一例を示す図である。
【0063】
ペイロード(512バイト)は、2[TB]まで論理アドレスLBAを指定できるように4バイト単位で指定される。左上が先頭の4バイトである。右下が最後の4バイトである。各4バイトには、入れ替え元または入れ替え先における入れ替え範囲のスタートアドレスが指定される。例えば、入れ替え元の論理アドレスがLBA(A)~LBA(A+31)である場合、入れ替え元のスタートアドレスとして、論理アドレスLBA(A)が指定される。
【0064】
ファイル断片化解消動作では、入れ替え元の論理アドレスLBA(1個以上)と入れ替え先の論理アドレスLBA(1個以上)とからなるセットを、1セットだけ入れ替えてもよいし、複数セットを入れ替えてもよい。すなわち、ファイル断片化解消動作は、1回の論理アドレス入れ替え動作だけでなく、複数回の論理アドレス入れ替え動作を行うことができる。図11の例では、ファイル断片化解消動作において、2セットを入れ替える(2回の論理アドレス入れ替え動作を行う)場合が示されている。この場合、先頭の4バイトには、1セット目の入れ替え元のスタートアドレス(例えば、論理アドレスLBA(A))が指定される。次の4バイトには、1セット目の入れ替え先のスタートアドレス(例えば、論理アドレスLBA(B))が指定される。次の4バイトには、2セット目の入れ替え元のスタートアドレス(例えば、論理アドレスLBA(C))が指定される。次の4バイトには、2セット目の入れ替え先のスタートアドレス(例えば、論理アドレスLBA(D))が指定される。入れ替えの情報が指定されない領域には0が指定される。開始ビット及び終了ビットには、図4と同じ値が指定される。
【0065】
メモリカード10は、ホスト40からデータ0(DAT0)を受信する(S15)と、DAT0ラインを介してデータ0のレスポンスを送信する(S16)。また、メモリカード10は、ホスト40に対して、DAT0ラインを介してファイル断片化解消処理中によりビジーである旨の信号(例えば‘0’)を送信する(S17)。
【0066】
次に、メモリカード10は、S11において受信したホストコマンドCMD56ライトの引数情報、並びにS15において受信したデータ0(DAT0)の入れ替え元のスタートアドレス、及び入れ替え先のスタートアドレスに基づいて、内蔵メモリ120内の論物変換テーブル217’を更新する(S18)。より具体的には、例えば、データ0(DAT0)において、入れ替え元のスタートアドレスとして「論理アドレスLBA(A)」が指定され、入れ替え先のスタートアドレスとして「論理アドレスLBA(B)」が指定されているとする。この場合において、ホストコマンドCMD56ライトの引数部AGのビット位置[39:9]にm=1が指定された場合、メモリカード10のプロセッサ130は、論物変換テーブル217’において、論理アドレスLBA(A)と論理アドレスLBA(B)とを入れ替える。引数部AGのビット位置[39:9]にm=32が指定された場合、メモリカード10のプロセッサ130は、論物変換テーブル217’において、論理アドレスLBA(A)~LBA(A+31)と、論理アドレスLBA(B)~LBA(B+31)とを入れ替える。
【0067】
次に、メモリカード10のプロセッサ130は、S18において更新された内蔵メモリ120内の論物変換テーブル217’に基づいて、管理データ領域215内の論物変換テーブル217を更新する(S19)。
【0068】
次に、メモリカード10は、内蔵メモリ120に実行結果を記憶する(S20)。より具体的には、S18及びS19が正常に終了した場合には、メモリカード10のプロセッサ130は、正常終了した(成功した)ことを示すビットパターン(例えば‘1’)を記憶する。他方で、S18及びS19が正常に終了しなかった場合には、メモリカード10のプロセッサ130は、異常終了した(失敗した)ことを示すビットパターン(例えば‘0’)を記憶する。また、メモリカード10は、ホスト40に対して、DAT0ラインを介してビジー状態が解除された(レディ状態である)旨の信号(例えば‘1’)を送信する(S21)。
【0069】
ホスト40は、メモリカード10からレディ信号を受信する(S22)と、メモリカード10のビジー状態の解除を知得する。
【0070】
1.2.4 実行結果確認動作
上述したファイル断片化解消動作の終了後、本実施形態に係るメモリシステム1は、ファイル断片化解消の実行結果を確認する(以下、単に「実行結果確認動作」と表記する)。以下では、実行結果確認動作について、図12及び図13を用いて説明する。図12は、本実施形態に係るメモリシステム1における実行結果確認動作を示すフローチャートである。図13は、本実施形態に係るメモリシステム1における実行結果確認動作時のCMDライン及びDAT0ラインを示す図である。
【0071】
ホスト40は、図8に示すS22においてレディ信号を受信すると、実行結果確認動作を行う。
【0072】
実行結果確認動作では、まず、ホスト40は、CMDラインを介してホストコマンドCMD56リードをメモリカード10に発行する(S30)。
【0073】
ここで、ホストコマンドCMD56リードの内容について、図14を用いて説明する。図14は、本実施形態に係るメモリシステム1において、ホスト40が発行するホストコマンドCMD56リードの内容の一例を示す図である。
【0074】
引数部AGのビット位置[8]には、‘1’(読み出し)が指定される。引数部AGのビット位置[39:9]には0が指定される。コマンド部CMの開始ビット及び送信ビット、並びにCRC部CRの終了ビットには、図10と同じ値が指定される。
【0075】
メモリカード10は、ホスト40からホストコマンドCMD56リードを受信する(S31)と、CMDラインを介してホストコマンドCMD56リードのレスポンスを送信する(S32)。
【0076】
次に、メモリカード10のプロセッサ130は、図8に示すS20において内蔵メモリ120内に記憶された実行結果をデータ0(DAT0)にセットする(S33)。
【0077】
次に、メモリカード10は、ホスト40に対して、DAT0ラインを介して実行結果(データ0)を送信する(S34)。
【0078】
ここで、データ0(DAT0)について、図15を用いて説明する。図15は、本実施形態に係るメモリシステム1において、メモリカード10が送信するデータ0(DAT0)の内容の一例を示す図である。
【0079】
先頭の1バイトには、論理アドレス入れ替え動作(図8に示すS18及びS19)が正常に終了したか否かを識別できる情報が指定される。例えば、論理アドレス入れ替え動作が正常に終了した場合、0x5Aが指定される。他方で、論理アドレス入れ替え動作が正常に終了しなかった場合、0x3Cが指定される。論理アドレス入れ替え動作が正常に終了したか否かを識別できる情報が指定されない領域には0が指定される。開始ビット及び終了ビットには、図11と同じ値が指定される。
【0080】
ホスト40は、メモリカード10から実行結果(データ0(DAT0))を受信する(S35)と、実行結果を知得する。
【0081】
1.3 効果
本実施形態に係る構成では、ホスト40は、論理アドレスLBAの入れ替え範囲を指定したホストコマンドCMDをメモリカード10に発行する。また、ホスト40は、入れ替え元のスタートアドレスと入れ替え先のスタートアドレスとを指定したデータをメモリカード10に発行する。メモリコントローラ100は、ホスト40から受信したホストコマンドCMD及びデータに基づいて、論物変換テーブル217を更新する。このため、ホスト40は、メモリカード10において物理アドレスPBAとデータとの入れ替えを行わずに、論物変換テーブル217の論理アドレスLBAの入れ替えを行うことができる。これにより、ファイルの断片化解消動作を実行することができる。このため、ファイルの断片化、すなわち、1つのファイルに対応する複数の論理アドレスLBAの分散化、によるホストコマンドCMDの発行回数を抑制できる。
【0082】
ファイルの断片化が発生すると、ホストコマンドCMDの発行回数が多くなり、ある単位時間あたりの録画データのメモリカード10への書き込み速度が低下し、ホスト40の内蔵メモリ400が次の録画データであふれしまい、ホスト40の録画が継続できなくなり書き込みを失敗することがある。この場合、シームレスな動画の撮影ができなくなる可能性がある。本実施形態によれば、ホストコマンドCMDの発行回数を抑制できるため、ホスト40の内蔵メモリ400が次の録画データであふれることによる書き込み失敗(停止)を抑制できる。
【0083】
1.4 変形例
第1実施形態の変形例について説明する。本変形例では、第1実施形態においてホストコマンド56ライトで指定される論理アドレスLBAの入れ替え範囲の指定方法が異なる場合について説明する。以下では、第1実施形態と異なる点を中心に説明する。
【0084】
1.4.1 ホストコマンドCMD56ライトの内容
ホストコマンドCMD56ライトの内容について、図16を用いて説明する。図16は、本変形例に係るメモリシステム1において、ホスト40が発行するホストコマンドCMD56ライトの内容の一例を示す図である。
【0085】
引数部AGのビット位置[39:9]には、論理アドレスLBAの入れ替え範囲が指定される。本変形例では、論理アドレスLBAの入れ替え範囲は、引数部AGのビット位置[39:9]に指定された整数m(mは1,2,4,8,・・・)に基づくセクタ数=1,8,16,32,・・・によって指定される。例えば、データ0(DAT0)において、入れ替え元のスタートアドレスとして「論理アドレスLBA(A)」が指定され、入れ替え先のスタートアドレスとして「論理アドレスLBA(B)」が指定されているとする。この場合において、引数部AGのビット位置[39:9]に1が指定された場合、セクタの数(論理アドレスLBAの数)=1を意味する。この場合、論理アドレスLBA(A)と論理アドレスLBA(B)との入れ替えが指定される。引数部AGのビット位置[39:9]に2が指定された場合、セクタの数=8を意味する。この場合、論理アドレスLBA(A)~LBA(A+7)と、論理アドレスLBA(B)~LBA(B+7)との入れ替えが指定される。引数部AGのビット位置[39:9]に4が指定された場合、セクタの数=16を意味する。この場合、論理アドレスLBA(A)~LBA(A+15)と、論理アドレスLBA(B)~LBA(B+15)との入れ替えが指定される。引数部AGのビット位置[39:9]に8が指定された場合、セクタの数=32を意味する。この場合、論理アドレスLBA(A)~LBA(A+31)と、論理アドレスLBA(B)~LBA(B+31)との入れ替えが指定される。引数部AGのビット位置[39:9]に16,32が指定された場合も、同様である。コマンド部CM、引数部AGのビット位置8、及びCRC部CRの終了ビットには、図10と同じ値が指定される。
【0086】
1.4.2 効果
本変形例に係る構成によれば、第1実施形態と同様にファイルの断片化解消動作を実行することができる。このため、ファイルの断片化によるホストコマンドCMDの発行回数を抑制できる。本変形例によれば、ホストコマンドCMDの発行回数を抑制できるため、第1実施形態と同様にホスト40の内蔵メモリ400が次の録画データであふれることによる書き込み失敗(停止)を抑制できる。
【0087】
2.第2実施形態
第2実施形態について説明する。本実施形態では、第1実施形態と異なる実行結果確認動作について説明する。以下では、第1実施形態と異なる点を中心に説明する。
【0088】
2.1 実行結果確認動作
実行結果確認動作について、図17を用いて説明する。図17は、本実施形態に係るメモリシステム1における実行結果確認動作を示すフローチャートである。
【0089】
ホスト40は、第1実施形態と同様に、断片化解消動作のS23においてレディ信号を受信すると、実行結果確認動作を行う。
【0090】
実行結果確認動作では、まず、ホスト40は、CMDラインを介してホストコマンドCMD13をメモリカード10に発行する(S40)。ホストコマンドCMD13は、SDTM規格で定義されているメモリカード10のステータス情報を取得するホストコマンドである。
【0091】
メモリカード10は、ホスト40からホストコマンドCMD13を受信する(S41)と、ステータス情報を記憶する(S42)。このとき、実行結果もステータスレジスタ160に記憶される。より具体的には、S20において内蔵メモリ120に記憶された実行結果が、断片化解消動作が正常終了したことを示すビットパターン(例えば‘1’)である場合、メモリカード10のプロセッサ130は、成功したことを示すビットパターン‘0’を記憶する。他方で、実行結果が、断片化解消動作が正常終了しなかったことを示すビットパターン(例えば‘0’)である場合、メモリカード10のプロセッサ130は、失敗したことを示すビットパターン(エラービット)‘1’を記憶する。
【0092】
次に、メモリカード10は、CMDラインを介してホストコマンドCMD13のレスポンスを送信する(S43)。ホストコマンドCMD13のレスポンスは、S42においてステータスレジスタ160に記憶されたステータス情報(実行結果)を含む。
【0093】
ホスト40は、メモリカード10からホストコマンドCMD13のレスポンスを受信する(S44)と、実行結果を知得する。
【0094】
2.2 効果
本実施形態に係る構成によれば、第1実施形態と同様にファイルの断片化解消動作を実行することができる。このため、ファイルの断片化によるホストコマンドCMDの発行回数を抑制できる。本実施形態によれば、ホストコマンドCMDの発行回数を抑制できるため、第1実施形態と同様にホスト40の内蔵メモリ400が次の録画データであふれることによる書き込み失敗(停止)を抑制できる。もちろん、本実施形態は、第1実施形態の変形例に適用することもできる。
【0095】
3.変形例等
上記のように、実施形態に係るメモリカードは、データ記憶領域(211)を有し、ホスト機器(40)から受信した論理アドレス(LBA)と、データ記憶領域の物理アドレス(PBA)とをマッピングするテーブル(217)を記憶する不揮発性メモリ(200)と、不揮発性メモリを制御するコントローラ(100)とを備える。コントローラは、ホスト機器から受信した第1コマンド(CMD56ライト)及びデータ(CMD56ライトのデータ0)に基づいて、第1論理アドレス(LBA(A))と、第2論理アドレス(LBA(B))とを入れ替える。
【0096】
なお、実施形態は上記説明した形態に限定されるものではなく、種々の変形が可能である。
【0097】
ファイル断片化解消動作は複数回行われてもよい。この場合、ホスト40は、ホストコマンドCMD56ライトをメモリカード10に複数回発行することができる。
【0098】
また、上記実施形態で説明したフローチャートは、その処理の順番を可能な限り入れ替えることができる。
【0099】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0100】
1…メモリシステム、10…メモリカード、40…ホスト、100…メモリコントローラ、110…ホストI/F、120…RAM、130…CPU、140…バッファメモリ、150…メモリI/F、160…ステータスレジスタ、200…NAND型フラッシュメモリ、210…メモリセルアレイ、211…データ記憶領域、212…ユーザデータ領域、213…保護データ領域、214…機密データ領域、215…管理データ領域、216…ホストデータ、217、217’…論物変換テーブル、400…RAM、410…CPU、420…ホストコントローラ、430…カードI/F
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17