WO2007132931A1 - データ記憶装置およびこの初期化方法 - Google Patents

データ記憶装置およびこの初期化方法 Download PDF

Info

Publication number
WO2007132931A1
WO2007132931A1 PCT/JP2007/060181 JP2007060181W WO2007132931A1 WO 2007132931 A1 WO2007132931 A1 WO 2007132931A1 JP 2007060181 W JP2007060181 W JP 2007060181W WO 2007132931 A1 WO2007132931 A1 WO 2007132931A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage device
data
data storage
host device
fat
Prior art date
Application number
PCT/JP2007/060181
Other languages
English (en)
French (fr)
Inventor
Tadashi Arakawa
Original Assignee
Buffalo Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Buffalo Inc. filed Critical Buffalo Inc.
Priority to EP07743616A priority Critical patent/EP2031515A4/en
Priority to US12/300,634 priority patent/US20090164538A1/en
Priority to CN2007800175733A priority patent/CN101443739B/zh
Publication of WO2007132931A1 publication Critical patent/WO2007132931A1/ja

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

 データ記憶装置は、USBコネクタとUSB制御回路とフラッシュコントローラとフラッシュメモリとを備えている。フラッシュコントローラは、ホスト装置によってフォーマットされると、電源の再投入時に、バイオスパラメータブロック領域に記録されたFAT数データを「2」から「1」に強制的に書き換える。こうすることで、ホスト装置からは、FAT領域が一つのみ存在すると認識されることになるので、ホスト装置からのフォーマット処理により複数の管理テーブルが生成されるデータ記憶装置において、データの書き込み効率を向上させることができる。

Description

W
1
明細書 データ記憶装置およびこの初期化方法 技術分野
本発明は、 ホスト装置から転送されたデータを記憶するデータ記憶装置の初期 化技術に関する。 背景技術
コンピュータ等のホス卜装置から転送されたデータを記憶するデータ記憶装置 として、 ハードディスクドライブやメモリカード、 U S Bフラッシュメモリ等の 種々の装置がある。 これらのデータ記憶装置に適用されるファイルシステムとし ては、 F A Tと呼ばれるファイルシステムが一般的である。 この F A Tファイル システムによる初期化 (フォーマット) 処理では、 ファイルアロケーションテー ブルと呼ばれる管理テーブルがデータ記憶装置内に記憶される。 このファイルァ ロケーションテーブルには、 管理対象のファイル毎に、 そのファイルのクラスタ 構造や記録位置を示す管理情報が記録される。 上述のように、 ファイルアロケーションテーブルには非常に重要な情報が記録 される。 そのため、 通常、 ホスト装置は、 データ記憶装置を初期化するに際し、 同一内容の 2つのファイルアロケーションテーブルをデータ記憶装置に記憶させ る。 これにより、 一方のファイルアロケーションテーブルが損傷したとしても、 もう一方のファイルアロケーションテーブルを用いることによリ、 正常にデータ の読み書きを行うことが可能になる (特開平 1 1一 2 4 9 9 6 8号公報参照)。 しかし、 近年のデータ記憶装置は、 その装置単体で E C Cデータ等に基づくェ ラー訂正が可能となつているものが多く、 データ保存の信頼性が高くなつている 。 そのため、 ホスト装置からのフォーマット処理によって、 同一内容のファイル アロケーションテーブルが 2つ用意されたとしても、 2つ目のファイルァロケ一 シヨンテーブルが使用されることは極めてまれなことであった。 このような場合 において、 2つ用意されたファイルアロケーションテーブルに対してそれぞれフ ァィルの管理情報を記録することは、 フアイルの書き込み効率の低下の要因とな つていた。 このような問題は、 F A Tファイルシステムに限らず、 同一内容の 2 以上の管理テーブルを記録する必要のある他のファイルシステムを採用するデー タ記憶装置においても同様の問題であった。 発明の開示
このような問題を考慮し、 本発明が解決しょうとする課題は、 ホスト装置から のフォーマツト処理により複数の管理テーブルが生成されるデータ記憶装置にお いて、 データの書き込み効率を向上させることにある。 上記課題を踏まえ、 本発明の一態様であるデータ記憶装置は、
ホスト装置から転送されたデータを記憶するデータ記憶装置であって、 前記ホスト装置によるフォーマツト処理によって、 前記データを記憶するため のデータ記憶領域が確保されるとともに、 該データ記憶領域内に記憶された個々 のデータの記録位置を管理するための同一内容の複数の管理テーブルと、 該管理 テーブルの数を示すテーブル数データとが記憶される記憶デバイスと、
前記ホス卜装置による前記フォーマツト処理後に、 前記記憶デバイスに記憶さ れた前記テーブル数データを、 該フォーマツト処理によって記憶された値よりも 少ない値に書き換える書換手段と、 前記ホスト装置からの前記データの転送に先立ち、 該ホスト装置からの求めに 応じて、 前記書き換えたテーブル数データを該ホスト装置に出力する出力手段と を備える。 上記構成のデータ記憶装置によれば、 ホスト装置によるフォーマツト処理によ つて同一内容の複数の管理テーブルが記憶されたとしても、 テーブル数データを 書き換えることで、 実質的に、 その管理テーブルの数を強制的に減ずることがで きる。 そのため、 ホスト装置は、 管理テーブルに対するデータの書き込み位置の 記録を通常よりも少ない回数で済ますことが可能となり、 データ記憶装置の書き 込み効率を向上させ、 動作の高速化を図ることが可能になる。 特に、 フラッシュ メモリやハードディスクといった近年の記憶デバイスは、 ホスト装置とは独立し て E C Cデータ等に基づくエラー訂正が可能となっていることが多い。 従って、 上記構成により、 管理テーブルの数を減じたとしても、 データ保存の信頼性が損 なわれる可能性は低い。 上記構成のデータ記憶装置において、 前記ホスト装置は、 F A Tファイルシス テムに基づき前記フォーマット処理を行うものとしてもよい。 この場合、 前記記 憶デバイスは、 前記管理テーブルとして、 前記 F A Tファイルシステムに基づく ファイルアロケーションテーブルを記憶するものとすることができる。 また、 前 記記憶デバイスは、 前記テーブル数データとして、 前記ファイルアロケーション テーブルの数を、 前記 F A Tフアイルシステムに基づき前記記憶デバイスに確保 されたバイオスパラメータブロック領域に記憶するものとすることができる。 このような構成によれば、 汎用的な F A Tファイルシステムによってフォーマ ッ卜されたデータ記憶装置の高速化を図ることが可能になり、 ユーザの利便性を 向上させることができる 上記構成のデータ記憶装置において、 前記記憶デバイスは、 不揮発性の半導体 メモリとすることができる。 このような構成によれば、 携帯性に優れた小型のデータ記憶装置を提供するこ とができる。 不揮発性の半導体メモリとしては、 例えば、 NAN D型や NOR型 の各種フラッシュメモリ、 E EP ROM、 ノ ッテリバックアップされた D RAM 等を利用することができる。 なお、 記憶デバイスとしては、 半導体メモリ以外に も、 例えば、 ハードディスクドライブや、 書き換え可能な光ディスクなどを採用 することができる。 上記構成のデータ記憶装置において、 前記ホスト装置と当該データ記憶装置と は、 US Bインタフェースによって接続されるものとしてもよい。 このような構成であれば、 ホスト装置に用意された U S Bインタフェースに本 発明のデータ記憶装置を接続するだけで、 容易に本発明のデータ記憶装置を利用 することができる。 そのため、 ユーザの利便性を向上させることができる。 なお 、 USBインタフェース以外にも、 例えば、 P CMC I Aインタフェースゃシリ アル AT Aインタフェース、 I E E E 1 394インタフェースなどによって接続 されるものとしてもよい。 なお、 本発明は、 上述したデータ記憶装置としての構成のほか、 データ記憶装 置の初期化方法としても構成することができる。 図面の簡単な説明
図 1は、 データ記憶装置とホスト装置の概略構成を示す説明図である。
図 2は、 データ記憶装置のデータ構造を示す説明図である。
図 3は、 メイン処理のフローチャートである。
図 4は、 FAT数書換処理のフローチャートである。
図 5は、 ライト処理のフローチャートである。
図 6は、 リード処理のフローチャートである。 発明を実施するための最良の形態
以下、 上述した本発明の作用 '効果を明らかにするため、 本発明の実施の形態 を実施例に基づき次の順序で説明する。
A. データ記憶装置の概略構成:
B. メイン処理:
C. FAT数書換処理:
D. ライト処理:
E. リード処理:
F. 効果:
G. 変形例: データ記憶装置の概略構成:
図 1は、 実施例としてのデータ記憶装置 1 0とホスト装置 20の概略構成を示 す説明図である。 ホスト装置 20は、 いわゆるパーソナルコンピュータであり、 図示するように、 CPU 200と、 RAM21 0と、 オペレーティングシステム およびデータ記憶装置 1 0との通信を制御するためのドライバがインストールさ れたハードディスクドライブ 220と、 U SBインタフェース 230とを備えて いる。 一方、 データ記憶装置 1 0は、 U SBコネクタ 1 1 0と USB制御回路 1 20とフラッシュコントローラ 1 30とフラッシュメモリ F Lとによって構成さ れている。 U SBコネクタ 1 1 0は、 データ記憶装置 1 0の筐体から露出して設けられて おり、 ホスト装置 20の US Bインタフ: E—ス 230に接続される。 本実施例で は、 データ記憶装置 1 0を駆動するため電力は、 この USBコネクタ 1 1 0を通 じてホスト装置 20から供給されるものとする。 もちろん、 電力は、 データ記憶 装置 1 0に接続された図示していない ACアダプタ等から供給されるものとして もよい。
U SB制御回路 1 20は、 US Bコネクタ 1 1 0とフラッシュコントローラ 1 30とに接続されている。 USB制御回路 1 20は、 当該データ記憶装置 1 0を U SBマスストレージクラスのデバイスとして動作させる回路であり、 USBプ ロトコルに基づきホスト装置 20との通信を制御する回路である。 この US B制 御回路 1 20は、 更に、 ホスト装置 20から受信した US Bコマンドを ATAコ マンドゃ SCS Iコマンドに変換したり、 フラッシュコン卜ローラ 1 30から受 信したデータやステータス信号を US Bコマンドに変換する機能を備える。 AT Aコマンドや S CS I コマンドは、 AN S I (American National Standard Institute) によって標準化されたコマンドであり、 本実施例のデータ記憶装置 1 0の他、 ハードディスクや PCカード型メモリ等の種々のデータ記憶装置に対し てデータの読み書きを制御するための汎用性を有するコマンドである。 フラッシュコントローラ 1 30は、 US B制御回路 1 20から転送された AT Aコマンドを解釈し、 フラッシュメモリ F Lに対するデータの読み書きを制御す る集積回路である。 フラッシュコントローラ 1 30は、 かかる制御を行うために 、 内部に CPUや ROM、 RAM等を備えている。 この ROMには、 データ記憶 装置 1 0の動作を制御するためのプログラムが記録されている。 CPUは、 RA Mをワークエリアとして用いつつ、 このプログラムを実行することで、 データ記 憶装置 1 0の全般的な動作を制御する。 フラッシュコントローラ 1 30は、 E E P ROM 1 37を備えている。 EEP ROM 1 37には、 フラッシュメモリ F Lに確保される FAT領域の数を制御す るための FATコントロールフラグが記憶される。 この FATコントロールフラ グの働きについては後で詳細に説明する。 図 2は、 データ記憶装置 1 0のデータ構造を示す説明図である。 データ記憶装 置 1 0は、 ホスト装置 20からの FATファイルシステムに基づくフォーマツト 処理により、 図の左側に示すような各領域が生成される。 具体的には、 フラッシ ュメモリ F Lの先頭アドレスから順に、マスタブートレコード領域(以下、 ΓΜΒ R領域」 という)、 バイオスパラメータブロック領域 (以下、 ΓΒΡΒ領域」 とい う)、 FAT 1領域、 FAT 2領域、ルートディレクトリ領域、ユーザデータ領域 、 が生成される。 MBR領域は、 ホスト装置 20が接続された際に、 最初に読み込まれる領域で ある。 この領域には、 ブートストラップコードやパーティションテーブルなどの 情報 (以下、 「MBR情報」 という) が記録される。パーティションテーブルには 、 生成されるパーティションの数や、 各パーティションの開始セクタおよび終了 セクタ、 オフセット、 総セクタ数などの情報が記録される。 本実施例では、 パー テイシヨンは 1つだけ生成されているものとする。 BPB領域は、 各パーティションの先頭セクタに記録され、 そのパーティショ ンのフォーマツト形式やセクタ数、 後述するファイルアロケーションテーブルの 数を示す FAT数データ等が記録される(以下、 これらの情報をまとめて、 ΓΒΡ 情報」 という)。 FATファイルシステムでは、通常、 ファイルアロケーション テーブルは 2つ用意されるため、 ホス卜装置 20によるフォーマツト処理後には 、 FAT数データとして 「2」 が設定される。 ホスト装置 20は、 データ記憶装 置 1 0が US Bインタフェース 230に接続されると、 この BP B領域内の F A T数データを参照することで、 データ記憶装置 1 0が有するファイルァロケーシ ヨンテーブルの数を認識する。 そして、 認識された数に応じてファイルァロケ一 シヨンテーブルに管理情報の書き込みを行う。
FAT 1領域および FAT 2領域には、 ユーザデータ領域に書き込まれた各フ アイルの所在およびそのクラスタ構造を示すファイルアロケーションテ一ブルが 記録される。 FATファイルシステムに基づく通常のフォーマット処理では、 F AT 1領域と FAT 2領域とには、 同一内容のファイルアロケーションテーブル が用意される。 ルートディレクトリ領域は、 ユーザデータ領域に記録されたファイルのフアイ ル名ゃ拡張子、 属性、 そのファイルを構成する最初のクラスタ番号等が記録され る領域である。 ユーザデータ領域は、 ホスト装置 20から転送されたファイルの実体が記録さ れる領域である。 W
9
データ記憶装置 1 0は、 ホスト装置 20によるフォーマット処理後、 電源の再 投入時等に、 BPB領域に 「2」 と設定した FAT数データを、 図 2の右側に示 すよう 「1」 に書き換える機能を有する。 ホスト装置 20は、 US Bインタフエ ース 230からの抜き差し等によってデータ記憶装置 1 0の電源が再投入される と、 ファイル転送など実際のファイルアクセスに先立って、 この FAT数データ を含む BP B情報や MB R情報の読み込みをデータ記憶装置 1 0に要求する。 そ して、 読み込んだこれらの情報に基づき、 以降のアクセス態様を決定する。 つま り、 データ記憶装置 1 0の電源再投入によって FAT数データが 「2」 から 「1 J に書き換えられると、 その値がホスト装置 20によって読み込まれ、 以降のフ アイルアクセスは、 ファイルアロケーションテーブルは 1つであるものとしてな されることになる。 従って、 FAT数データが 「1」 に書き換えられれば、 FA T領域が実際には 2つ存在していたとしても、 そのうち、 一の FAT領域に対し てのみアクセスがなされることになる。 なお、 図 2の右側には、 説明の便宜上、 FAT 2領域を消去したように表して いるが、 実際には、 FAT数データのみを書き換え、 FAT 2領域については特 に削除などは行わず、 そのままの状態で放置する。 そのまま放置した場合でも、 FAT数データが 「1」 であれば、 上述したように、 ホスト装置 20からは原則 として FAT 1領域にのみアクセスが行われ、 FAT 2領域にはアクセスされな いためである。 本実施例では、 このように FAT 2領域については放置するもの としたが、 もちろん、 FAT 2領域自体も FAT数データの書き換えとともに削 除するものとしてもよい。 この場合、 ルー卜ディレクトリ領域以降の領域を F A T 1領域に結合するものとすれば、 FAT 2領域分の容量をユーザデータ領域等 として有効に利用することが可能になる。 W
10
B. メイン処理:
図 3は、 データ記憶装置 1 0が実行するメイン処理のフローチャートである。 この処理は、 データ記憶装置 1 0がホスト装置 20に接続されて電源が供給され たと同時にフラッシュコントローラ 1 30が実行を開始する処理である。 この処理が開始されると、 まず、 フラッシュコントローラ 1 30は、 FAT数 データを必要に応じて 「2」 から 「1」 に書き換えるための FAT数書換処理を 行う (ステップ S 1 00)。 この FAT数書換処理の詳細については後述する。 続いて、 フラッシュコントローラ 1 30は、 U S B制御回路 1 20を介して、 ホスト装置 20から何らかのコマンドを受信したか否かを判断する (ステップ S 1 1 0)。 コマンドを受信していない場合には (ステップ S 1 1 0 : N o)、 この 処理をループすることでコマンドを受信するまで待機する。 一方、 コマンドを受 信した場合には (ステップ S 1 1 0 : Y e s), そのコマンドの種類を判別する ( ステップ S 1 20)。 上記ステップ S 1 20において、 受信したコマンドが、 データの書き込みを行 うライ卜コマンドであると判断されれば(ステップ S 1 20 :「ライ卜」)、 フラッ シュコントローラ 1 30は、後述するライ ト処理を行う (ステップ S 1 30)。一 方、 受信したコマンドが、 データの読み込みを行うリードコマンドであると判断 されれば (ステップ S 1 20 :「リード」)、 後述するリード処理を行う (ステップ S 1 40)。 そして、 これらの処理が完了すれば、処理を上記ステップ S 1 1 0に 戻す。 以上で説明したメイン処理によれば、 電源供給がストップされるまで、 ホ スト装置 20から受信したコマンドに応じた処理がなされることになる。 C. FAT数書換処理:
図 4は、 上述したメイン処理のステップ S 1 00で実行される FAT数書換処 理のフローチャートである。 この処理は、 FAT数データを 「2」 から 「1」 に 書き換えるための処理である。 この処理は、 例えば、 データ記憶装置 1 0がホス ト装置 20に接続されたままホス卜装置 20の電源が切断され、 その後、 電源が 再投入された場合や、 データ記憶装置 1 0が、 ホスト装置 20の US Bインタフ エース 230から抜き差しされたりするなどして、 データ記憶装置 1 0の電源が 再投入された場合に実行される。 データ記憶装置 1 0の電源が投入されて、 この FAT数書換処理が実行される と、 まず、 フラッシュコントローラ 1 30は、 フラッシュメモリ F Lの MB R領 域と BPB領域とを読み込む(ステップ S 200)。そして、 これらの領域に既に MB R情報と BP B情報とが書き込まれているかを判断する (ステップ S 21 0
)o 上記ステップ S 21 0において、 MBR情報と BP B情報とが書き込まれてい ないと判断した場合には (ステップ S 21 0: No)、データ記憶装置 1 0は、未 だ FATファイルシステムによってフォーマットされていない状態であるため、 フラッシュコントローラ 1 30は、 FATコントロールフラグを 「0」 にセット して、その値を E E P ROM 1 37に記録する (ステップ S 220)。 FATコン トロールフラグは、 「1」 であれば、 FAT数データが「2」 から 「1」 に書き換 えられたことを表し、 「0」 であれば、 書き換えられていないことを表す。 上記ステップ S 21 0において、 MB R情報と BP B情報とが既に書き込まれ ていると判断した場合には(ステップ S 21 0: Y e s)、データ記憶装置 1 0は 、 ホス卜装置 20から FATファイルシステムによってフォーマツ卜された状態 であると判断できる。 そのため、 フラッシュコントローラ 1 30は、 BPB情報 に記録された FAT数データを参照して、 その FAT数データが 「2」 であるか 否かを判断する (ステップ S 230)。 この判断の結果、 FAT数データが 「2」 であれば(ステップ S 230 : Y e s)、 フラッシュコン卜ローラ 1 30は、 BP B領域の FAT数データを「1」 に書き換える (ステップ S 240)。 これに対し て、 FAT数データが既に 「1」 であれば (ステップ S 230 : N o)、 かかる書 き換えを行わない。 上記ステップ S 230において、 FAT数データが既に 「1」 であると判断さ れた場合 (ステップ S 230 : N o) や、 上記ステップ S 240によって、 FA T数データを 「1」 に書き換えた後には、 フラッシュコントローラ 1 30は、 F A Tコントロールフラグを Γ 1」 にセッ卜して、 その値を E E P ROM 1 37に 記録する (ステップ S 250)。 以上で説明した FAT数書換処理によれば、 ホス卜装置 20によってフォーマ ッ卜された後、 最初に電源が投入された際に、 上記ステップ S 240によって、 FAT数データが 「2」 から 「1」 に書き換えられる。 従って、 ファイルァロケ ーシヨンテーブルが実際には 2つ存在していたとしても、 この書き換えが行われ た後には、 ホスト装置 20に対して、 ファイルアロケーションテーブルを 1つの み有すると認識させることが可能になる。 なお、 本実施例では、 上述したステップ S 230において、 BPB領域に記録 された FAT数データの値に応じて FAT数データを 「2」 から 「1 j に書き換 えるか否かを判断するものとした。 しかし、 かかる判断を行なうことなく、 上記 ステップ S 21 0で 「Y e s j と判定されれば、 常時、 FAT数データとして Γ 1」 と E E P ROM "! 37に書き込むものとしてもよい。 上述した説明では、 F AT数データが 「2」 の場合には、 「1 j に書き換えられ、 「1」 の場合には、 か かる書き換えはおこなわれず、 そのまま 「1」 が維持されることになる。 つまり 、 FAT数データの数は、 結局、 常に 「1」 となるからである。 このように、 毎 回 「1」 と書き込むものとすれば、 条件分岐処理が省略されるので、 処理を簡略 化することが可能となる。
D. ライト処理:
図 5は、 上述したメイン処理のステップ S 1 30で実行されるライト処理のフ ローチャー卜である。 このライト処理は、 ホスト装置 20から受信したデータを フラッシュメモリ F Lに書き込むための処理である。 この処理が実行されると、 まず、 フラッシュコントローラ 1 30は、 ホスト装 置 20から USB制御回路 1 20を介して受信したデータを、 フラッシュメモリ F L内の指定されたァドレスに書き込む (ステップ S 300)。 続いて、 フラッシュコントローラ 1 30は、 E E P ROM 1 37を参照して、 FATコントロールフラグ FCが 「1 j であるか否かを判断する (ステップ S 3 1 0)。 この判断の結果、 FATコントロールフラグ F Cが Γθ」 であれば(ステ ップ S 31 0: N o)、 現時点では、 FAT数データが「2」 から 「1」 に未だ書 き換えられていないか、 もしくは、 FATファイルシステムによってフォーマツ 卜がなされていないことになる。 従って、 上記ステップ S 300による書き込み 処理に伴って、 FAT数データの書き換えが必要になる場合があるため、 図 4に 示した FAT数書換処理と同一の処理を実行し (ステップ S 320)、その後、当 該ライト処理を終了する 一方、 上記ステップ S 3 0において、 FATコントロールフラグ FCが 「1 」 であると判断されれば(ステップ S 3 1 0 : Y e s), 既に、 FAT数データが 「1」 に設定されており、 高速なデータ書き込みが実現されていることになる。 そのため、 この場合には、 F A丁数書換処理を実行することなく、 当該ライ卜処 理を終了する。 以上で説明したライト処理では、 上記ステップ S 300においてフラッシュメ モリ F Lの MB R領域や BP B領域に MB R情報や BP B情報が書き込まれた場 合には、 ホスト装置 20によって FATファイルシステムに基づくフォーマツト がなされたことになる。 従って、 この場合に、 図 4に示した FAT数書換処理と 同一の処理を実行することにより、 フォーマット処理後、 即座に、 FAT数デー タを 「2」 から 「1」 に書き換えることができる。 つまり、 当該ライト処理によ れぱ、 電源の再投入を待つまでもなく、 ホスト装置 20によってフォーマットさ れた直後に、 FAT数データを 「2J から 「1」 に書き換えることが可能になる
E. リード処理:
図 6は、 上述したメイン処理のステップ S 1 40で実行されるリード処理のフ ローチャートである。 このリード処理は、 ホスト装置 20からの要求に応じてフ ラッシュメモリ F Lからデータを読み出すための処理である。 この処理が実行されると、 フラッシュコントローラ 1 30は、 ホスト装置 20 から US B制御回路 1 20を介して受信したリードコマンドを解析して、 フラッ W 200
15
シュメモリ F L内の指定されたァドレスからデータを読み込む (ステップ S 40 0)。 そして、 読み込んだデータをホスト装置に転送する (ステップ S 41 0)。 以上の処理によって、 本実施例のリ一ド処理は完了する。 ホスト装置 20は、 データ記憶装置 1 0の電源が投入された場合等には、 デー タ記憶装置 1 0の記憶領域に対するファイルアクセスを適切に行うため、 ユーザ データの読み込みや書き込みに先立ち、 F A T数データを含む B P B情報や MB R情報の読み込みを要求する。 かかる読み込み要求が行われると、 データ記憶装 置 1 0は、 当該リード処理によって、 FAT数データ等をホスト装置 20に出力 する。 ホスト装置は、 こうして FAT数データ等をデータ記憶装置 1 0から受信 することで、 データ記憶装置 1 0が有する FATの数やデータ容量等を適切に認 識することが可能になる。 このとき、 データ記憶装置 1 0から出力された FAT 数データが 「1」 であれば、 ホスト装置 20は、 データ記憶装置 1 0が有する F ATの数は 「1」 であるとして、 以降のデータの読み書き処理を 1つの FATを 用いて行う。 こうすることで、 高速なファイルアクセスを実現することが可能に なる。
F. 効果:
以上で説明した本実施例のデータ記憶装置 1 0によれば、 ホスト装置 20のフ ォーマット処理によってファイルアロケーションテーブル (FAT領域) が 2つ 生成されたとしても、 FAT数データを 「2」 から 「1」 に書き換えることで、 実質的にファイルアロケーションテーブルの数を 1つに減ずることができる。 そ のため、 ホスト装置 20は、 ファイルアロケーションテーブルに対する管理情報 の書き込みを通常の 2回から 1回に削減することができるため、 データの書き込 み効率を飛躍的に向上させることができる。 この結果、 データ記憶装置 1 0の動 作を高速化することが可能になる。
G . 変形例:
以上、 本発明の種々の実施例について説明したが、 本発明はこのような実施例 に限定されず、 その趣旨を逸脱しない範囲で種々の構成を採ることができること はいうまでもない。 例えば、 以下のような変形が可能である。
(G 1 ) 変形例 1 :
上記実施例では、 データ記憶装置 1 0は、 記憶デバイスとしてフラッシュメモ リを備えるものとした。 これに対して、 例えば、 ハードディスクドライブや書き 換え可能な光ディスクなどの他の記憶デバイスを備えるものとしてもよい。
(G 2) 変形例 2 :
上記実施例では、 データ記憶装置 1 0は FAT形式によってフォーマツ卜され るものとした。 しかし、 フォーマットの形式はこれに限られず、 同一内容の管理 テーブルが複数書き込まれる他の形式によってフォーマツ卜されるものとしても よい。
(G3) 変形例 3 :
上記実施例では、 ホスト装置 20とデータ記憶装置 1 0とは、 U SBインタフ エースによって接続されるものとした。 しかし、 インタフェースの種別はこれに 限られない。 例えば、 P CMC I Aインタフェースによって接続されるものとし てもよいし、 シリアル AT Aインタフェースや I EEE 1 394インタフェース 等によって接続されるものとしてもよい。 (G4) 変形例 4 :
上記実施例では、 データ記憶装置 1 0は、 ホスト装置 20によってフォーマツ 卜されると、 無条件で、 FAT数データを 「2」 から 「1」 に書き換えるものと した。 これに対して、 書き換えを行うか否かを設定するための機械的なスィッチ をデータ記憶装置 1 0に設けるものとしてもよい。 このような構成では、 データ 記憶装置 1 0は、 電源の投入時にこのスィッチの状態を検出し、 その状態に応じ て FAT数データを 「2」力、ら 「1」 に書き換えたり、 「2」 のまま維持したりす る。 このような構成であれば、 ユーザは、 ファイルアロケーションテーブルを 2 つ使用する通常のモードと、 1つに削減して高速なファイルアクセスを実現する モードとを容易に使い分けることが可能になる。 ただし、 一度、 FAT数を 1つにすると、 上記実施例で説明した各種処理では 、 これを 2つに戻すことはできない。 そのため、 スィッチを切り換えて、 FAT 数を 「1」 から 「2」 にする際には、 データ記憶装置 1 0は、 その電源投入時に 、 FAT数データを 「2」 に再設定するとともに、 FAT 1領域に記録されたデ ータを FAT 2領域にコピーする処理を行うものとする。 こうすることで、 一度 、 FAT数を 「1」 に設定したとしても、 適切にファイルアロケーションテープ ルを 2つ用意することができる。 (G5) 変形例 5 :
上記実施例では、 メイン処理とライト処理の両処理において、 FAT数書換処 理を実行するものとした。 これに対して、 ライト処理時における FAT数書換処 理のみを実行し、 メイン処理の FAT数書換処理は省略するものとしてもよい。 また、 逆に、 ライト処理時における FAT数書換処理を省略して、 メイン処理時 の FAT数書換処理のみを実行するものとしてもよい。 前者によれば、 フォーマ ット処理の後、 即座に F A T数データを書き換えることができ、 後者によれば、 電源の再投入を待って F A T数データを書き換えるので、 安定したホス卜装置 2 0の動作を期待することができる。 もちろん、 実施例に記載したように、 両者を 実行するものとしてもよく、 この場合には、 確実に、 F A T数データを 「2」 か ら 「1」 に書き換えることが可能になる。
( G 6 ) 変形例 6 :
上記実施例では、フラッシュメモリ内のデータの記憶場所のことを、 「アドレス 」 という用語を用いて説明したが、 かかる用語は、 適用されるファイルシステム やオペレーティングシステム、記憶デバイスの種類に応じて、 「セクタ」や「クラ スタ」、 「ブロック」 などと適宜読み替えることができる。 本発明は、 上記の実施例、 変形例、 他の態様によって何ら制限的に解釈される べきものではなく、 本発明の保護範囲は、 クレームと本発明の精神に則って解釈 されることは勿論である。

Claims

請求の範囲
1 . ホスト装置から転送されたデータを記憶するデータ記憶装置であって、 前記ホスト装置によるフォーマツト処理によって、 前記データを記憶するため のデータ記憶領域が確保されるとともに、 該データ記憶領域内に記憶された個々 のデータの記録位置を管理するための同一内容の複数の管理テ一ブルと、 該管理 テーブルの数を示すテーブル数データとが記憶される記憶デバイスと、
前記ホスト装置による前記フォーマツト処理後に、 前記記憶デバイスに記憶さ れた前記テーブル数データを、 該フォーマツ卜処理によって記憶された値よりも 少ない値に書き換える書換手段と、
前記ホスト装置からの前記データの転送に先立ち、 該ホスト装置からの求めに 応じて、 前記書き換えたテーブル数データを該ホス卜装置に出力する出力手段と を備えるデータ記憶装置。
2 . 請求項 1に記載のデータ記憶装置であって、
前記ホス卜装置は、 F A Tファイルシステムに基づき前記フォーマツト処理を 行うものである
データ記憶装置。
3 . 請求項 2に記載のデータ記憶装置であって、
前記記憶デバイスは、 前記管理テーブルとして、 前記 F A Tファイルシステム に基づくファイルアロケーションテーブルを記憶するものである
データ記憶装置。
4 . 請求項 3に記載のデータ記憶装置であって、 前記記憶デバイスは、 前記テーブル数データとして、 前記ファイルァロケーシ ヨンテーブルの数を、 前記 F A Tファイルシステムに基づき前記記憶デバイスに 確保されたバイオスパラメータブロック領域に記憶するものである
データ記憶装置。
5 . 請求項 1ないし請求項 4のいずれかに記載のデータ記憶装置であって、 前記記憶デバイスは、 不揮発性の半導体メモリである
データ記憶装置。
6 . 請求項 5に記載のデータ記憶装置であって、
前記不揮発性の半導体メモリとは、 フラッシュメモリである
データ記憶装置。
7 . 請求項 1ないし請求項 6のいずれかに記載のデータ記憶装置であって、 前記ホスト装置と当該データ記憶装置とは、 U S Bインタフェースによって接 続される
データ記憶装置。
8 . ホス卜装置から転送されたデータを記憶デバイスに記憶するデータ記憶装 置の初期化方法であって、
前記ホスト装置によるフォーマット処理を受けて、 前記記憶デバイス内に、 前 記データを記憶するためのデータ記憶領域を確保するとともに、 該データ記憶領 域内に記憶された個々のデータの記録位置を管理するための同一内容の複数の管 理テーブルと、 該管理テーブルの数を示すテーブル数データとを記憶し、 前記ホスト装置による前記フォーマツト処理後に、 前記記憶デバイスに記憶さ れた前記テーブル数データを、 該フォーマツト処理によって記憶された値よりも 少ない値に書き換え、
前記ホス卜装置からの前記データの転送に先立ち、 該ホスト装置からの求めに 応じて、 前記書き換えたテーブル数データを該ホスト装置に出力する
初期化方法。
PCT/JP2007/060181 2006-05-16 2007-05-11 データ記憶装置およびこの初期化方法 WO2007132931A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP07743616A EP2031515A4 (en) 2006-05-16 2007-05-11 DATA STORAGE ARRANGEMENT AND METHOD FOR INITIALIZING IT
US12/300,634 US20090164538A1 (en) 2006-05-16 2007-05-11 Data storage apparatus and initialization method thereof
CN2007800175733A CN101443739B (zh) 2006-05-16 2007-05-11 数据存储装置及其初始化方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006-136237 2006-05-16
JP2006136237A JP4663577B2 (ja) 2006-05-16 2006-05-16 データ記憶装置およびこの初期化方法

Publications (1)

Publication Number Publication Date
WO2007132931A1 true WO2007132931A1 (ja) 2007-11-22

Family

ID=38694016

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/060181 WO2007132931A1 (ja) 2006-05-16 2007-05-11 データ記憶装置およびこの初期化方法

Country Status (6)

Country Link
US (1) US20090164538A1 (ja)
EP (1) EP2031515A4 (ja)
JP (1) JP4663577B2 (ja)
CN (1) CN101443739B (ja)
TW (1) TW200819975A (ja)
WO (1) WO2007132931A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100161952A1 (en) * 2008-12-18 2010-06-24 Texas Instruments Incorporated Performance optimizations by dynamic reduction of file allocation tables
JP2011118623A (ja) * 2009-12-02 2011-06-16 Canon Inc データ同期装置
ITRM20130728A1 (it) * 2013-12-31 2015-07-01 Prb S R L Metodo di scambio comandi tramite disco usb e relativi dispositivi che ne permettono l¿implementazione.
JP6415633B2 (ja) * 2017-05-02 2018-10-31 キヤノン株式会社 情報処理装置及びその制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04106643A (ja) * 1990-08-27 1992-04-08 Nec Ibaraki Ltd フロッピィディスクのファイル領域管理方式
JPH08110868A (ja) * 1994-08-15 1996-04-30 Ricoh Co Ltd 情報記録再生装置
JP2005216119A (ja) * 2004-01-30 2005-08-11 Matsushita Electric Ind Co Ltd 記録媒体

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02309416A (ja) * 1989-05-25 1990-12-25 Chinou Kagaku Kenkyusho:Kk メモリカードシステム
JP3588231B2 (ja) * 1997-08-04 2004-11-10 東京エレクトロンデバイス株式会社 データ処理システム及びブロック消去型記憶媒体
JPH11249968A (ja) * 1998-03-05 1999-09-17 Sanyo Electric Co Ltd ファイル記録方法及びファイルシステム
US7021971B2 (en) * 2003-09-11 2006-04-04 Super Talent Electronics, Inc. Dual-personality extended-USB plug and receptacle with PCI-Express or Serial-At-Attachment extensions
JP4238514B2 (ja) * 2002-04-15 2009-03-18 ソニー株式会社 データ記憶装置
US7363540B2 (en) * 2002-10-22 2008-04-22 Microsoft Corporation Transaction-safe FAT file system improvements
US7174420B2 (en) * 2002-10-22 2007-02-06 Microsoft Corporation Transaction-safe FAT file system
JP2004295405A (ja) * 2003-03-26 2004-10-21 Mitsubishi Electric Corp データアクセス装置
JP2006085380A (ja) * 2004-09-15 2006-03-30 Toshiba Corp ファイルストレージデバイス、プログラム、及び不揮発性半導体メモリの書込方法
US8606830B2 (en) * 2004-12-17 2013-12-10 Microsoft Corporation Contiguous file allocation in an extensible file system
US20060277333A1 (en) * 2005-06-01 2006-12-07 Creative Technology Ltd. Portable data storage device
US8452744B2 (en) * 2005-06-06 2013-05-28 Webroot Inc. System and method for analyzing locked files
EP2031491A1 (en) * 2007-08-28 2009-03-04 Deutsche Thomson OHG Method for storing files on a storage medium, storage medium, and video recording apparatus using the method
JP2009064263A (ja) * 2007-09-06 2009-03-26 Toshiba Corp メモリ装置
GB2456001A (en) * 2007-12-28 2009-07-01 Symbian Software Ltd Storage device having a single file allocation table

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04106643A (ja) * 1990-08-27 1992-04-08 Nec Ibaraki Ltd フロッピィディスクのファイル領域管理方式
JPH08110868A (ja) * 1994-08-15 1996-04-30 Ricoh Co Ltd 情報記録再生装置
JP2005216119A (ja) * 2004-01-30 2005-08-11 Matsushita Electric Ind Co Ltd 記録媒体

Also Published As

Publication number Publication date
EP2031515A1 (en) 2009-03-04
JP4663577B2 (ja) 2011-04-06
US20090164538A1 (en) 2009-06-25
TWI344084B (ja) 2011-06-21
TW200819975A (en) 2008-05-01
CN101443739A (zh) 2009-05-27
JP2007310447A (ja) 2007-11-29
CN101443739B (zh) 2011-07-06
EP2031515A4 (en) 2010-11-10

Similar Documents

Publication Publication Date Title
JP4676378B2 (ja) データ記憶装置およびデータ記憶方法
US7472251B2 (en) Data storage apparatus detachably mounted to a host apparatus
US7039754B2 (en) Detachably mounted removable data storage device
US7293166B2 (en) Method of indicating a format of accessing an operating system contained on a USB memory device
JP4777263B2 (ja) マスストレージアクセラレータ
US6754765B1 (en) Flash memory controller with updateable microcode
KR101395778B1 (ko) 메모리 카드 및 그것을 포함하는 메모리 시스템 그리고그것의 동작 방법
US20030009607A1 (en) Method and system for programming a peripheral flash memory via an ide bus
TW200931412A (en) Flash memory storage apparatus, flash memory controller and switching method thereof
JP2006031396A (ja) 半導体記憶デバイス
JP2003242470A (ja) 外部接続機器及びホスト機器
JP2004295865A (ja) 自動ブーティングシステム及び自動ブーティング方法
US8255656B2 (en) Storage device, memory controller, and data protection method
WO2006040758A2 (en) Adaptive booting from mass storage device
JP3544476B2 (ja) メモリ管理テーブル作成方法
JP2003241908A (ja) 外部接続機器及びホスト機器
WO2007132931A1 (ja) データ記憶装置およびこの初期化方法
WO2015085414A1 (en) System and method of operation for high capacity solid-state drive
JP4714291B2 (ja) 情報記録装置、情報記録方法及び情報記録用プログラム
TWI390399B (zh) 具有虛擬儲存裝置之外接裝置
JP5161989B2 (ja) 情報記録装置、情報記録方法及び情報記録用プログラム
JP4881469B1 (ja) 情報処理装置、及び情報処理方法
TW201120890A (en) Dual-scope directory for a non-volatile memory storage system
WO2006051583A1 (ja) インタフェースカード
JP2011113129A (ja) 情報記録装置及び情報記録方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07743616

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12300634

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 200780017573.3

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2007743616

Country of ref document: EP