JP2008181381A - 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム - Google Patents
半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム Download PDFInfo
- Publication number
- JP2008181381A JP2008181381A JP2007014865A JP2007014865A JP2008181381A JP 2008181381 A JP2008181381 A JP 2008181381A JP 2007014865 A JP2007014865 A JP 2007014865A JP 2007014865 A JP2007014865 A JP 2007014865A JP 2008181381 A JP2008181381 A JP 2008181381A
- Authority
- JP
- Japan
- Prior art keywords
- semiconductor memory
- host device
- database
- data
- memory card
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 95
- 238000013523 data management Methods 0.000 title claims abstract description 37
- 238000000034 method Methods 0.000 title claims abstract description 18
- 230000006870 function Effects 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 10
- 239000004973 liquid crystal related substance Substances 0.000 description 8
- 238000012545 processing Methods 0.000 description 5
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】 不揮発性半導体メモリの効率の良い制御を行うことが可能な半導体メモリカード、半導体メモリカードのデータ管理方法、及びデータベースエンジンを提供する。
【解決手段】 半導体メモリカード1は、データベースエンジン100を具備する。データベースエンジン100は、アプリケーションインタフェース部101、データ管理システム部102、ファイルシステム部103を有する。アプリケーションインタフェース部101は、ホスト装置2のアプリケーションプログラム21から受信したデータベース問い合わせ操作文を、データベースエンジン100内で実行解釈可能な内部形式へと変換する。データ管理システム部102は、データベース104内部のテーブル105に対して、画像ファイルの各種情報の追加、更新、削除等の操作を行う。ファイルシステム部103は、NAND型フラッシュメモリ12に記憶されるデータの読み書きを制御する。
【選択図】 図3
【解決手段】 半導体メモリカード1は、データベースエンジン100を具備する。データベースエンジン100は、アプリケーションインタフェース部101、データ管理システム部102、ファイルシステム部103を有する。アプリケーションインタフェース部101は、ホスト装置2のアプリケーションプログラム21から受信したデータベース問い合わせ操作文を、データベースエンジン100内で実行解釈可能な内部形式へと変換する。データ管理システム部102は、データベース104内部のテーブル105に対して、画像ファイルの各種情報の追加、更新、削除等の操作を行う。ファイルシステム部103は、NAND型フラッシュメモリ12に記憶されるデータの読み書きを制御する。
【選択図】 図3
Description
本発明は、各種電子機器に取り付けて使用可能な半導体メモリカード、半導体メモリカードのデータ管理方法、半導体メモリカードのデータ管理を行うデータベースエンジン、及び半導体メモリシステムに関する。
現在、音楽データや映像データの記録メディアとして、NAND型フラッシュメモリを用いた半導体メモリカードが使用されている。NAND型フラッシュメモリは、1)データの書き込みはページ単位で行われる、2)データの消去は複数ページをまとめたブロック単位で行われる、という特徴を有する。このため、書き込み済みのページを有するブロック内に含まれるページ内のデータがランダムに更新される場合、以下に述べる「引越し書き込み」という処理が行われる。引越し書き込みでは、書き込まれるデータ(新データ)がデータの書き込まれていない新ブロックに書き込まれ、旧データ(新データに書き換えられるデータ)を含む旧ブロックから、書き換えられない残りのデータが新ブロックにコピーされる。
一方、半導体メモリカードのデータ管理を行うファイルシステムとして、ハードディスク等と同様のFAT(File Allocation Table)ファイルシステムが採用されている(例えば、特許文献1参照。)。
半導体メモリカードが挿入されるホスト装置中のFATファイルシステムは、書き込みファイルをクラスタと呼ばれる論理単位の大きさのデータに分割し、空きクラスタを順方向に検索して、分割された各データに論理アドレスを割り当てることでファイルを構成する。ファイルを構成するクラスタがどの順番で連なっているかという連鎖情報は、NAND型フラッシュメモリ内部の特定のブロックにFATと呼ばれるテーブルとして書き込まれ管理される。半導体メモリカードは、各データの論理アドレスとNAND型フラッシュメモリ内部の物理的位置情報を示す物理アドレスとの対応を、NAND型フラッシュメモリ内部の特定のブロックに設定された論理−物理アドレス対応表で管理しながらデータを書き込む。
上記のようなFATファイルファイルシステムを使用した場合、ファイルの削除、作成を繰り返すことにより、1つのファイルを構成するクラスタの割り当てが不連続になり、通常NAND型フラッシュメモリ内部において1つのブロックに収まるデータサイズのファイルが、2つ以上のブロックに跨って格納される場合がある。
従って、FATファイルファイルシステムとNAND型フラッシュメモリを併用した半導体メモリカードでは、通常、引越し書き込みが発生する頻度が高く、ファイルの書き込み、書き換え速度が低下する場合があるという問題点があった。
特開2001−188701号公報
本発明では、不揮発性半導体メモリの効率の良い制御を行うことが可能な半導体メモリカード、半導体メモリカードのデータ管理方法、及びデータベースエンジンを提供する。
本発明の一態様に係る半導体メモリカードは、ホスト装置に着脱自在に取り付け可能な半導体メモリカードにおいて、前記ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリと、前記半導体メモリカードの動作を制御するカードコントローラとを具備し、前記ホスト装置から受信したデータ及び前記不揮発性半導体メモリに記憶されるファイルの情報は、前記カードコントローラに組み込まれたデータベースエンジンにより管理され、当該データベースエンジンは前記ホスト装置から受信したデータベース問い合わせ操作文を解釈することにより動作することを特徴とする。
また、本発明の別態様に係る半導体メモリカードのデータ管理方法は、ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリと、当該ホスト装置から受信したデータ及び当該不揮発性半導体メモリに記憶されるファイルの情報をデータベースエンジンにより管理するカードコントローラとを具備する半導体メモリカードのデータ管理方法であって、前記データベースエンジンが有するアプリケーションインタフェース部が、前記ホスト装置から受信したデータベース問い合わせ操作文を解釈し、前記アプリケーションインタフェース部により解釈されたデータベース問い合わせ操作文に従って、前記データベースエンジンが有するデータ管理システム部が、前記不揮発性半導体メモリに記憶されるファイルの情報をデータベースを使用して管理し、前記データ管理システム部の指示に従って、前記データベースエンジンが有するファイルシステム部が、前記ホスト装置から受信したデータの前記不揮発性半導体メモリへの書き込み及び前記不揮発性半導体メモリに記憶されるデータの前記ホスト装置への読み出しを制御することを特徴とする。
また、本発明の更に別態様に係るデータベースエンジンは、ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリを有する半導体メモリカードに、前記ホスト装置から受信したデータベース問い合わせ操作文を解釈するアプリケーションインタフェース機能と、前記アプリケーションインタフェース機能により解釈されたデータベース問い合わせ操作文に従って、前記不揮発性半導体メモリに記憶されるファイルの情報をデータベースを使用して管理するデータ管理システム機能と、前記データ管理システム機能からの指示に従って、前記ホスト装置から受信したデータの前記不揮発性半導体メモリへの書き込み及び前記不揮発性半導体メモリに記憶されるデータの前記ホスト装置への読み出しを制御するファイルシステム機能とを実現させることを特徴とする。
また、本発明の更に別態様に係る半導体メモリシステムは、ホスト装置に取り付け可能な半導体メモリシステムにおいて、前記ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリと、前記半導体メモリカードの動作を制御するカードコントローラとを具備し、前記ホスト装置から受信したデータ及び前記不揮発性半導体メモリに記憶されるファイルの情報は、前記カードコントローラに組み込まれたデータベースエンジンにより管理され、当該データベースエンジンは前記ホスト装置から受信したデータベース問い合わせ操作文を解釈することにより動作することを特徴とする。
本発明では、不揮発性半導体メモリの効率の良い制御を行うことが可能な半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステムを提供できる。
以下、本発明の実施形態について図面を参照して説明する。
図1は、本実施形態に係る半導体メモリカード(以下、メモリカードと称す)1とホスト装置2との関係を示すブロック図である。本実施形態では、ホスト装置2としてデジタルスチルカメラを想定し、メモリカード1として画像ファイルの名前、撮影日時等の情報をデータベースで管理するデジタルスチルカメラ専用メモリカードを想定する。
メモリカード1は、メモリカード1の動作を制御するカードコントローラ11、及びホスト装置2から送信されるデータ(画像ファイル等)を記憶する不揮発性半導体メモリ、例えばNAND型フラッシュメモリ12を有する。ホスト装置2から受信したデータ及びNAND型フラッシュメモリ12に記憶されるファイルの情報は、カードコントローラ11に組み込まれたデータベースエンジン100により管理される。
ホスト装置2は、メモリカード1をデータベース問い合わせ操作文により制御するアプリケーションプログラム21、及び撮影した画像等を表示する液晶ディスプレイ22を有する。また、アプリケーションプログラム21は、メモリカード1から受信した情報をユーザーが認識し易い形に処理して液晶ディスプレイ22上に表示する機能を有する。
図1に示すように、ホスト装置2はアプリケーションプログラム21によりメモリカード1に対する問い合わせを行い、メモリカード1は、回答が必要な問い合わせについて、データベースエンジン100によりホスト装置2に対する回答を行う。
次に、メモリカード1内部のハード構成に関して説明する。図2は、メモリカード1内部のハード構成を示すブロック図である。
図2に示すように、カードコントローラ11はホストインタフェース部13、MPU(Micro Processing Unit)14、メモリインタフェース部15、ROM16(Read Only Memory)、RAM17(Random Access Memory)、及びバッファ18を有する。
ホストインタフェース部13は、カードコントローラ11とホスト装置2との間のインタフェース処理を行い、メモリインタフェース部15は、カードコントローラ11とNAND型フラッシュメモリ12との間のインタフェース処理を行う。
MPU14は、カードコントローラ11の動作を制御し、例えばメモリカード1が電源供給を受けた際に、ROM16に格納される制御プログラムをRAM17上に読み出して所定の処理を実行する。
ROM16は、MPU14により制御される制御プログラム等を格納し、RAM17は、MPU14の作業エリアとして使用される。
バッファ18は、ホスト装置2から送信されるデータをNAND型フラッシュメモリ12へ書き込む際に、一定量のデータを一時的に記憶したり、NAND型フラッシュメモリ12から読み出されるデータをホスト装置2へ送り出す際に一定量のデータを一時的に記憶したりする。
NAND型フラッシュメモリ12は、消去時のブロックが例えば128ページからなり、256kBのデータサイズを有している(ここでは冗長部の容量は無視している)。尚、これに限らず、ブロックサイズが16kB等のNAND型フラッシュメモリを使用することも可能である。
また、NAND型フラッシュメモリ12は、1つのメモリセルに1ビットの情報を記憶する2値メモリであっても良いし、1つのメモリセルに2ビット以上の情報を記憶する多値メモリであっても良い。また、NAND型フラッシュメモリ12及びカードコントローラ11は、基板上に個別に設けられていても良いし、同一のLSI基板上に配置されていても良い。
本実施形態においては、MPU14が、ROM16にプログラムとして格納されるデータベースエンジン100をRAM17上に読み出し、ホスト装置2から受信したデータ及びNAND型フラッシュメモリ12に記憶されるファイルの情報を管理する。
尚、メモリカード1内部のハード構成は上記の構成に限るものではない。従って、データベースエンジン100が格納される記録媒体も当然上記ROM16に限定されるものではない。
次に、メモリカード1内部で動作するデータベースエンジン100の構成について説明する。図3は、データベースエンジン100と、ホスト装置2から受信したデータ及びNAND型フラッシュメモリ12に記憶されるファイルの情報との関係を示す。データベースエンジン100は、アプリケーションインタフェース部101、データ管理システム部102、ファイルシステム部103を有する。また、NAND型フラッシュメモリ12内部には後述するデータベース104を構成するデータベースファイル、及び画像ファイル等が記憶されている。
アプリケーションインタフェース部101は、ホスト装置2のアプリケーションプログラム21から受信したデータベース問い合わせ操作文を、データベースエンジン100内で実行解釈可能な内部形式へと変換する。データベース問い合わせ操作文は、任意の文字列等で適宜定義された言語を使用すれば良く、例えばSQL言語等により記述しても良い。SQL言語は、リレーショナルデータベースの管理を行うデータベースエンジンに対して一般的に使用される言語であり、データ定義言語、データ操作言語、及びデータ制御言語に分類される。
データ管理システム部102は、アプリケーションインタフェース部101で内部形式へ変換されたデータベース問い合わせ操作文に従って、図4に示すデータベース104内部のテーブル105に対して、NAND型フラッシュメモリ12内部に記憶される画像ファイルの各種情報の追加、更新、削除等の操作を行う。データベース104は、図4に示すように、例えばファイル名、撮影日時、及び後述するNAND型フラッシュメモリ12内部での画像ファイルの格納位置を示すアドレスを項目に設定したテーブル105を含む。尚、テーブル105の項目はファイル名、撮影日時、アドレスに限る必要は無く、ファイルサイズやファイル属性等の各種情報を必要に応じて項目に設定すれば良い。
更に、データ管理システム部102は、NAND型フラッシュメモリ12に記憶されるデータベース104内の情報の更新、及びNAND型フラッシュメモリ12に対する画像ファイルの書き込み、読み出し等を行うようファイルシステム部103に指示する。
また、データベース104には任意の項目を設定した複数のテーブル105が存在し、これらが互いに関連付けられることでリレーショナルデータベースを構成している。
ファイルシステム部103は、データ管理システム部102の指示に従って、ホスト装置2から受信したデータのNAND型フラッシュメモリ12への書き込み及びNAND型フラッシュメモリ12に記憶されるデータのホスト装置2への読み出しを制御する。また、ファイルシステム部103は、ファイルの入出力の単位となるデータ管理サイズを決め、データベース104を構成するファイルや画像ファイルのNAND型フラッシュメモリ12内部における格納位置の管理を行う。
次に、メモリカード1の動作に関して説明する。
図5は、NAND型フラッシュメモリ12に記憶されている画像ファイルのリスト読出し動作を示す。ホスト装置2のアプリケーションプログラム21からメモリカード1の図示せぬデータベースエンジン100に送信されるデータベース問い合わせ操作文には、全ファイルリスト読出し要求が含まれる。図5において、“RA”は全ファイルリスト読出し要求を示す。
データベースエンジン100内のアプリケーションインタフェース部101は、受信したデータベース問い合わせ操作文を、データベースエンジン100で実行解釈可能な内部形式へと変換する。データ管理システム部102は、アプリケーションインタフェース部101で内部形式に変換された指示に従い、データベース104内部のテーブル105からファイル名、撮影日時の項目を検索し、ファイルシステム部103に対しデータベース104からのデータ読み出しを指示する。ファイルシステム部103は、データ管理システム部102の指示に従い、NAND型フラッシュメモリ12内のデータベース104からデータの読み出しを行う。読み出されたデータは、全ファイルリストを含む回答としてホスト装置2のアプリケーションプログラム21に送信される。
ホスト装置2のアプリケーションプログラム21は、受信した全ファイルリストをユーザーが認識し易い形に加工し、液晶ディスプレイ22に表示する。以上の動作により、ユーザーはメモリカード1に記憶された画像ファイルの情報を確認することができる。
次に、図6を用いてメモリカード1への画像ファイル追加動作を説明する。ユーザーが撮影を終えると、アプリケーションプログラム21は撮影した画像の保存の要否の選択を要求する。ユーザーが保存を選択した場合は、画像ファイルをメモリカード1に追加する動作を実行する。この時、アプリケーションプログラム21から図示せぬデータベースエンジン100に送信されるデータベース問い合わせ操作文には、データ追加要求であること、ファイル名、撮影日時、及び追加画像データに関する情報が含まれる。
図6において、“W”はデータ追加要求、“00010.jpg”はファイル名、“20060720151230”は撮影日時、及び“画像データA”は追加画像データを示す。データベースエンジン100内のアプリケーションインタフェース部101は、このデータベース問い合わせ操作文をデータベースエンジン100内部で実行解釈可能な内部形式に変換する。データ管理システム部102は、アプリケーションインタフェース部101で変換された情報に従い、データベース104内のテーブル105にファイル情報を追加し、NAND型フラッシュメモリ12内のデータベース104の更新、及びNAND型フラッシュメモリ12への画像ファイルの書き込みをファイルシステム部103に対し指示する。
ファイルシステム部103はデータ管理システム部102の指示に従い、NAND型フラッシュメモリ12内のデータベース104の更新、及びNAND型フラッシュメモリ12への画像ファイルの書き込みを行う。ファイルシステム部103がNAND型フラッシュメモリ12に記憶されるデータの格納位置を管理する方法に関しては後述する。
次に、図7を用いてメモリカード1からの画像ファイル読出し動作を説明する。ユーザーは、全ファイルリスト読み出し操作文により液晶ディスプレイ22に表示されたファイルリストから、表示したい画像ファイルを選択する。この時、アプリケーションプログラム21から図示せぬデータベースエンジン100に送信されるデータベース問い合わせ操作文には、読出し要求であること、読み出したい画像データのファイル名が含まれる。
図7において、“R”は読出し要求、“00009.jpg”は読み出したいファイル名を示す。アプリケーションインタフェース部101はこのデータベース問い合わせ操作文をデータベースエンジン100内部で実行解釈可能な内部形式に変換する。データ管理システム部102は、アプリケーションインタフェース部101で変換された情報に従い、データベース104内のテーブル105の検索を行う。
データ管理システム部102は、テーブル105からファイル名の合致する行を探し出し、対応するアドレスを参照してNAND型フラッシュメモリ12からの画像ファイルの読み出しをファイルシステム部103に対し指示する。ファイルシステム部103はデータ管理システム部102の指示に従い、画像ファイルの読み出しを行う。読み出された画像ファイルは回答としてアプリケーションプログラム21に送信される。アプリケーションプログラム21は、受け取った情報をユーザーの認識しやすい形に加工し、液晶ディスプレイ22に表示する。
次に、図8を用いてメモリカード1からの画像ファイル削除動作を説明する。ユーザーは全ファイルリスト読み出し操作文により液晶ディスプレイ22に表示されたファイルリストの中から、削除したい画像ファイルを選択する。この時、アプリケーションプログラム21から図示せぬデータベースエンジン100に送信されるデータベース問い合わせ操作文には、削除要求であること、削除したい画像データのファイル名が含まれる。
図8において、“D”は削除要求、“00008.jpg”は削除したいファイル名を示す。アプリケーションインタフェース部101はこのデータベース問い合わせ操作文を内部形式に変換する。データ管理システム部102は、アプリケーションインタフェース部101で変換された情報に従い、データベース104内のテーブル105の検索を行う。データ管理システム部102は、テーブル105からファイル名の合致する行を探し出し、対応するアドレスを参照してNAND型フラッシュメモリ12からの画像ファイルの削除をファイルシステム部103に対し指示する。ファイルシステム部103はデータ管理システム部102の指示に従い、画像ファイルの削除を行う。
次に、ファイルシステム部103がNAND型フラッシュメモリ12に記憶されるデータの格納位置を管理する方法について説明する。ファイルシステム部103は、NAND型フラッシュメモリ12の記憶領域を消去可能単位であるブロックBKのサイズの1/4倍、即ち64kBのサイズを有する記録ユニットRUで管理する。即ち、ファイルシステム部103はファイルを記録ユニットRUの大きさのデータに分割して書き込みを行う。尚、記録ユニットRUのサイズはブロックBKのサイズの1/4倍に限るものではなく、ブロックBKのサイズの1/n(nは偶数)倍であれば良い。
以下、画像ファイルのデータ格納位置の管理に関して説明する。データベース104を構成する各種ファイルは同様に管理されるため省略する。まず、画像ファイルA、画像ファイルB、画像ファイルC、及び画像ファイルDをNAND型フラッシュメモリ12に書き込む場合を考える。画像ファイルAは記録ユニットRU3個分、画像ファイルBは記録ユニットRU2個分、画像ファイルCは記録ユニットRU2個分、及び画像ファイルDは記録ユニットRU1個分であり、これらはそれぞれ1個のブロックBKに収まるとする。
図9に示すように、これらのファイルをNAND型フラッシュメモリ12に書き込む場合、ファイルシステム部103は各ファイルを記録ユニットRUのサイズに分割し、分割された各データを空いているブロックBKの先頭に配置していく。このように、ブロックBKのサイズ以下のファイルが、複数のブロックBKに跨って配置されないようにデータの書き込みが行われる。
次に、1個のブロックBKに収まらないサイズであるファイルEの書き込みが発生した場合を考える。ファイルEは、記録ユニットRU9個分のサイズである。まず、NAND型フラッシュメモリ12の記憶領域に記録ユニットRU9個分の連続した空き領域を確保できる場合は、その領域に対し分割した各データを配置する。
一方、NAND型フラッシュメモリ12の記憶領域に記録ユニットRU9個分の連続した領域を確保できない場合、画像ファイルA乃至画像ファイルDを構成するデータを、各ファイルサイズを考慮して再配置し、空きとなったブロックに連続してファイルEを構成するデータを書き込む。
このように、ファイルシステム部103は、1個のファイルを構成する記録ユニットRUのサイズに分割されたデータが、複数の連続しないブロックBKに跨って配置されないように書き込みを制御しているため、従来に比べファイル書き換え時にアクセスしなければならないブロックBKの数が減少し、書き換え時の効率が良くなる。
以上のように、本実施形態に係るメモリカード1では、カードコントローラ11にデータベースエンジン100を組み込んだことにより、ホスト装置2がファイルシステムを実装する必要が無く、データベース問い合わせ操作文により簡単な定義文や操作文を与えるだけでメモリカード1にアクセスすることが可能となり、また、NAND型フラッシュメモリ12に記憶された画像ファイルを効率良く検索できる。
また、データベースエンジン100は独自のファイルシステム部103を有するので、従来ホスト装置が半導体メモリカードを制御する為に使用していたFATファイルシステムを用いる必要は無く、上述したようなNAND型フラッシュメモリ12の特性に適した制御を行うことが可能であり、高速なデータ書き換えを実現できる。
また、データベースエンジン100は独自のファイルシステム部103を有するので、例えば半導体メモリカードに内蔵されるNAND型フラッシュメモリの仕様が変わった場合でも、ホスト装置に影響を及ぼすこと無く、NAND型フラッシュメモリに適した制御方法を採用することができる。
また、従来半導体メモリカードで使用されていたFATファイルシステムの利用に適するための複雑な機能は不要となる。
また、NAND型フラッシュメモリ12に対するデータ書き込み方法は、本実施形態において説明した方法に限らず、同じブロックBK内で先頭ページから連続したページに順次シーケンシャルにデータが書き込まれるような方法等であっても良く、適宜ファイルシステムを設計することが可能である。
また、本実施形態に係るメモリカード1では、データベースエンジン100がファイルシステム部103を有していたが、これに限らず、データベースエンジン100がNAND型フラッシュメモリ12をRawデバイスとして直接制御しても良い。
また、本実施形態に係るメモリカード1では、データベース104はリレーショナルデータベースであるとしたが、これに限らず、階層型、ネットワーク型等、他の種類のデータベースを使用しても良い。
また、本実施形態に係るメモリカード1では、画像データをデータベース104に含まない場合について説明したが、これに限らず、画像データをデータベース104内部で管理するようにデータベースエンジン100を設計しても良い。
また、全ファイルリスト読み出し操作時に、同時に対応する画像データのサムネイル画像を読み出し、液晶ディスプレイ22上に表示する等の改良を加えても良い。
また、データベース104に対するアクセス権の設定、データベースエンジン100内部への暗号化エンジンの実装等によりセキュリティ機能を高める等の改良を加えても良い。
また、ファイル名を指定した検索以外にも、撮影日時の範囲を指定した検索、日付を指定した検索等の機能を適宜加えても良い。
また、本実施形態に係るメモリカード1では、NAND型フラッシュメモリを有する半導体メモリカードについて説明したが、これに限らず、AND型フラッシュメモリ、NOR型フラッシュメモリ等の不揮発性半導体メモリを有する半導体メモリカードに対しても本発明は適用可能である。この場合、それぞれのメモリの特性に適したデータベースエンジンを半導体メモリカード内部に組み込めば良い。
また、本実施形態に係るメモリカード1では、デジタルスチルカメラで使用した際の動作について説明を行ったが、他にも音楽プレイヤー、小型ノートパソコン、PDA、携帯電話等の各種電子機器に対しても用いることができる。この場合、それぞれの用途に応じたデータベースエンジンを半導体メモリカード内部に組み込めば良い。
また、データベースエンジン100を組み込んだカードコントローラ11及びカードコントローラ11により制御されるNAND型フラッシュメモリ12を有するメモリカード1を各種電子機器に取り付けて使用する場合に限らず、今後NAND型フラッシュメモリ12の更なる大容量化が進んだ場合には、カードコントローラ11及びNAND型フラッシュメモリ12を有する半導体メモリシステムを各種電子機器に直接組み込んで使用することも可能である。
1 半導体メモリカード
2 ホスト装置
11 カードコントローラ
12 NAND型フラッシュメモリ
13 ホストインタフェース部
14 MPU
15 メモリインタフェース部
16 ROM
17 RAM
18 バッファ
21 アプリケーションプログラム
22 液晶ディスプレイ
100 データベースエンジン
101 アプリケーションインタフェース部
102 データ管理システム部
103 ファイルシステム部
104 データベース
105 テーブル
BK ブロック
RU 記録ユニット
2 ホスト装置
11 カードコントローラ
12 NAND型フラッシュメモリ
13 ホストインタフェース部
14 MPU
15 メモリインタフェース部
16 ROM
17 RAM
18 バッファ
21 アプリケーションプログラム
22 液晶ディスプレイ
100 データベースエンジン
101 アプリケーションインタフェース部
102 データ管理システム部
103 ファイルシステム部
104 データベース
105 テーブル
BK ブロック
RU 記録ユニット
Claims (7)
- ホスト装置に着脱自在に取り付け可能な半導体メモリカードにおいて、
前記ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリと、
前記半導体メモリカードの動作を制御するカードコントローラとを具備し、
前記ホスト装置から受信したデータ及び前記不揮発性半導体メモリに記憶されるファイルの情報は、前記カードコントローラに組み込まれたデータベースエンジンにより管理され、当該データベースエンジンは前記ホスト装置から受信したデータベース問い合わせ操作文を解釈することにより動作することを特徴とする半導体メモリカード。 - 前記データベースエンジンは、
前記ホスト装置から受信したデータベース問い合わせ操作文を解釈するアプリケーションインタフェース部と、
前記不揮発性半導体メモリに記憶されるファイルの情報を、データベースを使用して管理するデータ管理システム部と、
前記ホスト装置から受信したデータの前記不揮発性半導体メモリへの書き込み及び前記不揮発性半導体メモリに記憶されるデータの前記ホスト装置への読み出しを制御するファイルシステム部とを具備することを特徴とする請求項1に記載の半導体メモリカード。 - 前記不揮発性半導体メモリはNAND型フラッシュメモリであることを特徴とする請求項1または請求項2に記載の半導体メモリカード。
- 前記データベース問い合わせ操作文はSQL言語により記述されることを特徴とする請求項1乃至請求項3のいずれか1項に記載の半導体メモリカード。
- ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリと、当該ホスト装置から受信したデータ及び当該不揮発性半導体メモリに記憶されるファイルの情報をデータベースエンジンにより管理するカードコントローラとを具備する半導体メモリカードのデータ管理方法であって、
前記データベースエンジンが有するアプリケーションインタフェース部が、前記ホスト装置から受信したデータベース問い合わせ操作文を解釈し、
前記アプリケーションインタフェース部により解釈されたデータベース問い合わせ操作文に従って、前記データベースエンジンが有するデータ管理システム部が、前記不揮発性半導体メモリに記憶されるファイルの情報をデータベースを使用して管理し、
前記データ管理システム部の指示に従って、前記データベースエンジンが有するファイルシステム部が、前記ホスト装置から受信したデータの前記不揮発性半導体メモリへの書き込み及び前記不揮発性半導体メモリに記憶されるデータの前記ホスト装置への読み出しを制御することを特徴とする半導体メモリカードのデータ管理方法。 - ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリを有する半導体メモリカードに、
前記ホスト装置から受信したデータベース問い合わせ操作文を解釈するアプリケーションインタフェース機能と、
前記アプリケーションインタフェース機能により解釈されたデータベース問い合わせ操作文に従って、前記不揮発性半導体メモリに記憶されるファイルの情報をデータベースを使用して管理するデータ管理システム機能と、
前記データ管理システム機能からの指示に従って、前記ホスト装置から受信したデータの前記不揮発性半導体メモリへの書き込み及び前記不揮発性半導体メモリに記憶されるデータの前記ホスト装置への読み出しを制御するファイルシステム機能とを実現させることを特徴とするデータベースエンジン。 - ホスト装置に取り付け可能な半導体メモリシステムにおいて、
前記ホスト装置から受信したデータを記憶可能な不揮発性半導体メモリと、
前記半導体メモリカードの動作を制御するカードコントローラとを具備し、
前記ホスト装置から受信したデータ及び前記不揮発性半導体メモリに記憶されるファイルの情報は、前記カードコントローラに組み込まれたデータベースエンジンにより管理され、当該データベースエンジンは前記ホスト装置から受信したデータベース問い合わせ操作文を解釈することにより動作することを特徴とする半導体メモリシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007014865A JP2008181381A (ja) | 2007-01-25 | 2007-01-25 | 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007014865A JP2008181381A (ja) | 2007-01-25 | 2007-01-25 | 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008181381A true JP2008181381A (ja) | 2008-08-07 |
Family
ID=39725233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007014865A Pending JP2008181381A (ja) | 2007-01-25 | 2007-01-25 | 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008181381A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4881469B1 (ja) * | 2010-09-22 | 2012-02-22 | 株式会社東芝 | 情報処理装置、及び情報処理方法 |
WO2015162752A1 (ja) * | 2014-04-24 | 2015-10-29 | 株式会社日立製作所 | データベース演算部を備えるフラッシュモジュール、及びストレージ装置 |
TWI622044B (zh) * | 2016-09-06 | 2018-04-21 | 合肥兆芯電子有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
-
2007
- 2007-01-25 JP JP2007014865A patent/JP2008181381A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4881469B1 (ja) * | 2010-09-22 | 2012-02-22 | 株式会社東芝 | 情報処理装置、及び情報処理方法 |
WO2015162752A1 (ja) * | 2014-04-24 | 2015-10-29 | 株式会社日立製作所 | データベース演算部を備えるフラッシュモジュール、及びストレージ装置 |
TWI622044B (zh) * | 2016-09-06 | 2018-04-21 | 合肥兆芯電子有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100484147B1 (ko) | 플래시 메모리 관리 방법 | |
CN1821977B (zh) | 对于缓存器使用无效指示符的装置和方法 | |
US7069393B2 (en) | Storage system providing file aware caching and file aware remote copy | |
EP1729218A1 (en) | Nonvolatile storage system | |
US20120084529A1 (en) | Arrangements for managing metadata of an integrated logical unit including differing types of storage media | |
JP2008016003A (ja) | メモリー格納装置及びその読み書き方法 | |
JP2008070975A (ja) | データ保存装置及びデータ保存方法 | |
JP2013030254A (ja) | 半導体記憶装置、情報処理装置 | |
JP2006277737A (ja) | アドレス予測機能をもつ不揮発性記憶装置 | |
US8433871B2 (en) | Data copy management for faster reads | |
KR20160105624A (ko) | 데이터 처리 시스템 및 그것의 동작 방법 | |
JP5874525B2 (ja) | 制御装置、記憶装置、記憶制御方法 | |
JP2008181381A (ja) | 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム | |
US6532513B1 (en) | Information recording and reproduction apparatus | |
US11132134B2 (en) | Flexible over-provisioning of storage space within solid-state storage devices (SSDs) | |
US11461225B2 (en) | Storage device, control method of storage device, and storage medium | |
JP2008217208A (ja) | 記憶装置およびコンピュータシステム、並びに記憶装置の管理方法 | |
CN109213692B (zh) | 存储装置管理系统以及存储装置管理方法 | |
JP2013109404A (ja) | 情報処理装置 | |
JP2006251990A (ja) | データベース再編成プログラムおよびデータベース再編成方法 | |
JP2008134777A (ja) | ファイル割当テーブルのキャッシュ方法 | |
JP2006344177A (ja) | データ消去装置及びデータ消去プログラム | |
KR100801072B1 (ko) | 플래시 메모리, 이를 위한 맵핑 장치 및 방법 | |
US11256618B2 (en) | Storage apparatus managing system comprising local and global registering regions for registering data and associated method | |
TWI707235B (zh) | 儲存裝置管理系統以及儲存裝置管理方法 |