JP2007257061A - データ記憶装置及びデータアクセス方法 - Google Patents

データ記憶装置及びデータアクセス方法 Download PDF

Info

Publication number
JP2007257061A
JP2007257061A JP2006077278A JP2006077278A JP2007257061A JP 2007257061 A JP2007257061 A JP 2007257061A JP 2006077278 A JP2006077278 A JP 2006077278A JP 2006077278 A JP2006077278 A JP 2006077278A JP 2007257061 A JP2007257061 A JP 2007257061A
Authority
JP
Japan
Prior art keywords
management table
host device
data
free space
memory
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.)
Granted
Application number
JP2006077278A
Other languages
English (en)
Other versions
JP4802791B2 (ja
Inventor
Tetsuya Tamura
哲也 田村
Akira Nishimura
章 西村
Takeshi Sasa
剛 佐々
Kazuya Suzuki
一也 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2006077278A priority Critical patent/JP4802791B2/ja
Priority to US11/687,969 priority patent/US7716412B2/en
Priority to CN2007101292346A priority patent/CN101078972B/zh
Publication of JP2007257061A publication Critical patent/JP2007257061A/ja
Application granted granted Critical
Publication of JP4802791B2 publication Critical patent/JP4802791B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0608Saving storage space on storage systems
    • 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)

Abstract

【課題】 ホスト装置側の変更を可能な限り減らし、民生機器の分野において要求される機能を実現する。
【解決手段】 論理ブロックアドレスにより管理されている記憶部20の空き領域の情報が記されている空き領域管理テーブルがホスト装置1から転送されてきたとき、当該空き領域管理テーブルを記憶部20に記憶し、記憶部20に記憶されている空き領域管理テーブルを読み出し、メモリ27に展開し、ホスト装置1から転送される所定のコマンドに応じて、メモリ27に展開されている空き領域管理テーブルを参照し、ホスト装置1から転送されるデータを記憶部20の空き領域に記録し、記録動作終了後、メモリ27に展開されている空き領域管理テーブルを更新し、更新された空き領域管理テーブルの情報をホスト装置1に転送する。
【選択図】 図1

Description

不揮発性固体メモリと回転記録媒体とを双方或いは一方を用いるデータ記憶装置に関し、詳細には、データの書き込みに必要なアドレス情報の制御を空き領域管理テーブルを用いて行い、ブロックアクセスを行うファイルシステムからアクセス可能な機構を持ったデータ記憶装置及びデータアクセス方法に関する。
現在、データの保存をするために不揮発性固体メモリを搭載したフラッシュメモリ等の様々な記録メディアが利用されている。これらの記録メディアは、ホスト機器(例えば、PC(Personal Computer))に接続されて利用される(例えば、特許文献1参照。)。
また、記録メディアの中には、データの書き込み及び読み出しが行われる際、当該データの書き込み位置又は読み出し位置を定めるのにアドレス管理情報、すなわちデータの配置情報を用いているものがある。
特開2006−48227号公報
このような構成によると、ホスト装置側のCPUの負荷を軽減し、複数のストリームの扱い等に大きな利点があるものの、既存のファイルシステムに大きな変更が必要となるため、実際の採用にあたり、その変更に係る負担が問題となる。
また、記録メディアを開発する側においても、ファイルシステムによりデータの配置情報の管理方法が異なるために、ファイルシステムごとに記録メディア内部のファームウェアを別途に開発しなければならず、コーディングや動作検証等の負担が大きく、開発期間も長期に渡るという問題がある。
また、民生機器の分野では、商品の特性に応じた特定の機能(例えば、Video CameraではDisk Schedulingの機能)が強く要求される。
そこで、本発明では、上述の問題点に鑑み、ホスト装置側の変更を可能な限り減らし、民生機器の分野において要求される機能を実現するデータ記憶装置及びデータアクセス方法を提供することを目的とする。
本発明に係るデータ記憶装置は、上述の課題を解決するために、ホスト装置が接続され、上記ホスト装置の制御にしたがってデータへのアクセスが行われるデータ記録装置において、論理ブロックアドレスにより管理されている記憶部と、メモリと、上記記憶部の空き領域の情報が記されている空き領域管理テーブルが上記ホスト装置から転送されてきたとき、当該空き領域管理テーブルを上記記憶部に記憶する記憶制御部と、上記記憶部に記憶されている上記空き領域管理テーブルを読み出し、上記メモリに展開するメモリ展開部と、上記ホスト装置から転送される所定のコマンドに応じて、上記メモリに展開されている上記空き領域管理テーブルを参照し、上記ホスト装置から転送されるデータを上記記憶部の空き領域に記録するデータ記録部と、上記データ記録部による記録動作終了後、上記メモリに展開されている上記空き領域管理テーブルを更新するテーブル更新部と、上記テーブル更新部により更新された上記空き領域管理テーブルの情報を上記ホスト装置に転送する転送部とを備える。
また、本発明に係るデータアクセス方法は、上述の課題を解決するために、ホスト装置が接続され、上記ホスト装置の制御にしたがってデータへのアクセスが行われるデータ記録装置のデータアクセス方法において、論理ブロックアドレスにより管理されている記憶部の空き領域の情報が記されている空き領域管理テーブルが上記ホスト装置から転送されてきたとき、当該空き領域管理テーブルを上記記憶部に記憶し、上記記憶部に記憶されている上記空き領域管理テーブルを読み出し、メモリに展開し、上記ホスト装置から転送される所定のコマンドに応じて、上記メモリに展開されている上記空き領域管理テーブルを参照し、上記ホスト装置から転送されるデータを上記記憶部の空き領域に記録し、記録動作終了後、上記メモリに展開されている上記空き領域管理テーブルを更新し、上記更新された上記空き領域管理テーブルの情報を上記ホスト装置に転送する。
本発明によれば、本発明に係るデータ記録装置が接続されることにより生ずるホスト装置の変更を極小にすることができ、当該ホスト装置が要求する機能の実現を図ることができる。
本発明は、ホスト装置に接続され、当該ホスト装置から転送されたデータを格納し、また、格納されているデータを読み出し、読み出したデータをホスト装置に転送するデータ記録装置にかかるものである。以下に、ホスト装置側の変更を可能な限り減らし、民生機器の分野において要求される機能を実現するためのデータ記録装置の構成と動作について説明を行う。
また、以下では、データ記録装置は、ハードディスク(HD、Hard Disk)と不揮発性固体メモリとを組み合わせたもの(ハイブリッド記憶装置)として説明を行うが、ハードディスク又は不揮発性固体メモリのいずれか一方を有する構成であっても良い。また、不揮発性固体メモリは、メモリカードなどに使用されるものであり、ブロック単位でデータを送受信するNAND Flash Memoryを想定している。
また、ファイルシステムは、MS−DOS互換FATファイルシステムを使用するものとして説明するが、データをファイルとして管理するシステムであればMS−DOS互換FATファイルシステムに限らずどのようなシステムでも適用することができる。
<データ記憶再生装置の構成>
PC又はAV機器等のホスト装置1と、データ記憶装置2とが、IDE(Integrated Drive Electronics)、SCSI(Small Computer System Interface)、FC(Fibre Channel)又はUSB(Universal Serial Bus)等のインターフェースケーブル3を介して接続されて構成されたときの状態を図1に示す。
データ記憶装置2は、図1に示すように、記録媒体20にデータを書き込み、書き込まれているデータを読み出すヘッド部21と、記録媒体20にアクセスする際にヘッド部21を駆動するヘッド駆動部22と、記録媒体20を所定方向に所定の回転数で駆動する記録媒体駆動部23と、ヘッド駆動部22と記録媒体駆動部23を制御するサーボ制御部24と、ヘッド部21に接続されており、供給されるデータに対して所定の処理を行うリードライトチャンネル部25と、サーボ制御部24とリードライトチャンネル部25とを制御する制御部26と、一時的にデータがバッファリングされるバッファメモリ27と、所定の容量を有する不揮発性固体メモリ28と、所定の容量を有するページバッファ29と、データの書き込み及び読み出しを行うために不揮発性固体メモリ28にアクセスする際にバッファメモリ29と不揮発性固体メモリ28とページバッファ29とを制御するメモリ制御部30と、所定の演算を行い、データ記憶装置2の各部に必要なコマンド及びパラメータを設定して動作させる演算処理部(CPU)31と、CPU31による演算等に用いられるメモリ32と、ホスト装置1とデータ及び制御情報等の送受信を行うインターフェース制御部33とを備える。
<ファイルシステムについて>
ここで、本発明に係るデータ記憶装置2で採用するファイルシステムについて図2を参照して説明する。なお、記録媒体20は、HD(Hard Disk)であるとして説明を行う。
記録媒体20において、データを記録する最小の単位は、セクタ(通常、512byte)である。ホスト装置1は、論理ブロックアドレス(LBA)を用いて記録媒体20にアクセスを行う。また、既述したように、不揮発性固体メモリ28の最小単位はページであり、このページのサイズは、セクタのサイズとは必ずしも一致するわけではないが、セクタの整数倍で構成されている。したがって、論理ページ番号と論理アドレスを容易に関係付けることが可能である。したがって、ホスト装置1は、データ記憶装置2に対して記録媒体20と同様に不揮発性固体メモリ28に対しても論理ブロックアドレス(LBA)を用いてアクセスを行うことが可能である。
また、ファイルを管理するファイルシステムでは、複数のセクタ(N個)を1クラスタとし、このクラスタをデータの読み書き込み時の最小単位としている。また、FAT(File Allocation Table)は、一つのファイルがクラスタにどのように格納されているかを記録してあるテーブルである。このFATを用いて管理を行うファイルシステムのことをFATファイルシステムと呼ぶ。以後、クラスタアドレスは、LBAを単純にNで割ったものとし、本実施例における説明では、N=16とする(1クラスタ=8KByte)。
また、FATファイルシステムボリュームは、3つの領域(予約領域A、FAT領域B及びディレクトリデータ領域C)から構成されている。また、ディレクトリ領域Cには、ディレクトリ項目Dが含まれている。なお、本実施例では、パーティションは、1つの場合しか想定しないのでボリュームとパーティションは同一のものとなっている。
また、図2に示すように、ディレクトリ項目Dには、ファイル名やその開始クラスタ番号が格納されている。ホスト装置1は、ディレクトリ項目Dの中身を読み出して、開始クラスタ番号を知り(図2に示す例では、開始クラスタ番号は、「12340h」である。)、それに対応するFAT項目(FAT Entry)を参照して、ファイルの次のクラスタがクラスタ番号「12341h」にあることを知る。ホスト装置1は、順次、続くクラスタ番号を求め、最後に「1237Fh」の中身が「EOF(End of File)」であるところまで配置情報を読み出す。そして、ホスト装置1は、読み出した配置情報に基づいてファイルにアクセスを行う。
記録媒体20は、前述したFAT(File Allocation Table)ファイルシステムによって管理されており、少なくとも所定のデータサイズ(クラスタ)ごとにアドレス(以下、物理アドレスという。)が付されてなるユーザデータエリアからなるHD(ハードディスク)等のディスク状記録媒体により構成されている。
ヘッド部21は、記録媒体20がHD等の磁気記録媒体である場合には、外部磁界の大きさや向きにより抵抗値が変化する、いわゆる磁気抵抗効果を利用し、記録媒体20からの信号磁界を検出するための感磁素子を有する磁気ヘッドにより構成される。
ヘッド駆動部22は、サーボ制御部24の制御に応じて、ヘッド部21の動作を制御する。
記録媒体制御部23は、サーボ制御部24の制御に応じて、記録媒体20を所定の回転数で回転するように制御する。
サーボ制御部24は、記録媒体20を所定方向に所定速度で回転駆動させるように記録媒体駆動部23を制御し、また、記録媒体20上の所定の場所にアクセスするためにヘッド部21の駆動を制御する。
リードライトチャンネル部25は、データの書き込み動作時に、供給されたデータを符号化(変調)し、記録再生系の特性に適したデジタルビット系列に変換した後、変換後のデータをヘッド部21に供給する。また、リードライトチャンネル部25は、データの読み出し動作時に、ヘッド部21から供給された再生信号から高域ノイズを除去した後でアナログデジタル変換器(ADC、Analog Digital Converter)によりデジタル化し、最尤復号法等を用いて所定の処理を行った後、復調を行う。
制御部26は、バッファメモリ27、不揮発性固体メモリ28、リードライトチャンネル部25及びインターフェース制御部33それぞれの間におけるデータのやり取り(送受信)を管理し、データのフォーマットにかかわる処理を行う。また、制御部26は、当該処理を行う際に、誤り訂正符号による符号化と、誤り検出及び誤り訂正にかかわる処理も併せて行う。
また、ホスト装置1から書き込まれたデータは、記録媒体20、あるいは不揮発性固体メモリ28に格納される。バッファメモリ27は、その際、あるいはデータの読み出し時に、一時的にデータの格納(バッファリング)が行われ、転送速度の違いや起動に伴う遅延などによる性能の低下を抑えるために用いられる。また、通常、バッファメモリ27は、コストのことを考慮してDRAMあるいはSRAMで構成される。
不揮発性固体メモリ28は、例えば、FATファイルシステムが採用されるNAND型FLASHメモリカード(Memory Stick、Compact Flash又はSD Card等)であり、所定のデータサイズ(ページ)ごとに、所定のアドレス(以下、論理ページ番号という。)が付されてなるデータエリアを有する。また、不揮発性固体メモリ28は、データを書き込む際に、対象となるページに書き込まれているデータの消去動作が必要なメモリである。
また、ページバッファ29は、不揮発性固体メモリ28と、メモリ制御部30の間に配置され、バッファメモリ27と不揮発性固体メモリ28との間で行われるページ単位での転送を効率的に処理するために用いられる。また、ページバッファ29は、バッファメモリ29を経由しないで、不揮発性固体メモリ28内のデータを不揮発性固体メモリ28の他の場所にコピーする際にも使用される。なお、データ記憶装置2は、ページバッファ29を具有していない構成であっても良いが、具有している方が好ましい。
メモリ制御部30は、ホスト装置1から供給されるデータを記録媒体20又は不揮発性固体メモリ28に書き込む場合、又は記録媒体20や不揮発性固体メモリ28に書き込まれているデータを読み出し、ホスト装置1へ送信する際における所定のメモリ制御を行う。
<ホスト装置の構成>
また、ホスト装置1は、インターフェース3を介してデータ記憶装置2とデータの送受信を行うインターフェース制御部40と、所定の演算処理を行うCPU41と、CPU41による演算等に用いられるメモリ42とを備える。ホスト装置1は、例えば、データ記憶装置2の長所を生かして効率良く記録再生処理を行うビデオカメラ、デジタルカメラ、音楽プレイヤー等のアプリケーション機器である。
CPU42は、電源起動時、所定の処理手順の実行により、ディスク20のシステム領域に記録されてなる管理用データであるブート領域、FAT領域、ディレクトリ領域に格納されている各データをメモリ42にアップロードし、このアップロードしたデータを基準にしたパラメータの設定により種々のコマンドをデータ記憶装置2に対して送信する。
また、本発明に係るデータ記憶装置2は、ホスト装置1のメモリ24に格納されている記録媒体20又は不揮発性固体メモリ28の空き領域を管理するためのテーブル(以下、空き領域管理テーブルという。)と同一内容のテーブルを有している(図3)。なお、制御部26と、インターフェース制御部33とは、統合されても良い。
ここで、図4に空き領域管理テーブルの一例を示す。空き領域管理テーブルは、クラスタ番号とクラスタの状態を示しており、クラスタが使用されていないクラスタ番号には「空き」を示す「1」が書き込まれ、クラスタが使用されているクラスタ番号には「使用」を示す「0」が書き込まれている。図4では、例えば、File1のみが存在する場合(クラスタ番号「12340h」からクラスタ番号「12347h」まで使用している)を示している。
また、ホスト装置1は、データ記憶装置2が空き領域管理テーブルのみに基づいてデータの配置を決定し、データの書き込みを行う専用のコマンド(AV Write Sector(s))(図5(a))をデータ記憶装置2に送信する。図5(a)に示すコマンド(AV Write Sector(s))は、標準ATAコマンドのレジスタを用いて示したものである。
また、ホスト装置1は、当該コマンドが最初に実行されるときに「STR」に「1」を書き込んでデータ記憶装置2に送信し、当該コマンドが最後に実行されるときに「END」に「1」を書き込んでデータ記憶装置2に送信する。
なお、コマンドに含まれている他の内容(「LBA」,「DEV」及び「Sector Count」等)は、標準ATAコマンドWrite Sector(s)と同様に用いられる。
また、コマンド(AV Write Sector(s))の実行が完了した時に、データ記憶装置2は、Task File Registerにその結果を出力して(図5(b))、完了を知らせ、一方、ホスト装置1は、その結果を読み出す。
また、Task File Registerの「LBA」には、実際にデータ記憶装置2がデータを書き込む際に用いたLBAの情報が書き込まれている。また、当該コマンドに含まれている他の内容(「DEV」,「BSY」,「DRDY」,「DF」,「DRQ」及び「ERR」等)は、標準ATAコマンドWrite Sector(s)と同様に用いられる。
ここで、ホスト装置1のメモリ42に格納されている空き領域管理テーブル1の情報をデータ記録装置2に転送し、その後、データを転送する手順について図6を用いて説明する。なお、以下では、データ記録装置2は、記録媒体20のみ有するものとして説明を行う。また、ホスト装置1のメモリ42に格納されている空き領域管理テーブルを空き領域管理テーブル1とし、記録媒体20に格納されている空き領域管理テーブルを空き領域管理テーブル2とし、また、バッファメモリ27に格納されている空き領域管理テーブルを空き領域管理テーブル3として説明を行う。
ステップS1において、ホスト装置1は、メモリ42に格納されている空き領域管理テーブル1を、データ記憶装置2内の記録媒体20にコピーする。ステップS1の工程により、記録媒体20には、空き領域管理テーブル2が格納されることになる。
ステップS2において、ホスト装置1は、AV Write Sector(s)コマンドをデータ記憶装置2に送信する。このときのAV Write Sector(s)コマンドは、「STR」ビットに「1」が書き込まれている。なお、ホスト装置1は、データの書き込み場所を指定することはできない(例え指定しても、データ記憶装置2には無視されることになる)。
ステップS3において、データ記憶装置2は、記録媒体20から空き領域管理テーブル2を読み出してバッファメモリ27に展開する。ステップS3の工程により、バッファメモリ27には、空き領域管理テーブル3が展開されることになる。データ記憶装置2は、バッファメモリ27に展開されている空き領域管理テーブル3を参照し、データの書き込み場所を決定する。データ記憶装置2は、データの書き込み準備ができた場合には、その旨をホスト装置1に通知する。
ステップS4において、ホスト装置1は、AV Write Sector(s)コマンドの「Sector Count」において指定した量(分)のデータをデータ記憶装置2に転送する。
ステップS5において、データ記憶装置2は、ホスト装置1から転送されてきたデータをバッファメモリ27に展開されている空き領域管理テーブル3を参照して記録媒体20に書き込み、データの書き込みが完了した後に、今回更新された情報(更新後のLBA)をTask File Registerに書き込み、ホスト装置1に完了を知らせ、一方、ホスト装置1は、当該Task File Registerから結果を読み出す。また、データ記憶装置2は、同時にバッファメモリ27に展開されている空き領域管理テーブル3を更新する。なお、最後のAV Write Sector(s)コマンドの場合には、内部を初期化する。
ステップS6において、ホスト装置1は、読み込んだ情報を用いて、空き領域管理テーブル1とファイルの配置情報を更新する。なお、最後のAV Write Sector(s)コマンドの場合には、ここで終了する。
ステップS7において、データ記憶装置2は、AV Write Sector(s)以外の書き込みコマンド(例えば、Write Sector(s))で書き込み指示があるかどうかを確認し、指示がある場合には、ステップS8に進み、指示がない場合には、ステップS9に進む。
ステップS8において、データ記憶装置2は、与えられたWrite Sector(s)コマンドに含まれている「LBA」に対してデータの書き込みを実行する。データ記憶装置2は、データの書き込み完了後に、ホスト装置1にその旨を通知する。また、データ記憶装置2は、同時に空き領域管理テーブル3を更新する。
ステップS9において、ホスト装置1は、次のAV Write Sector(s)コマンドを実行する。なお、最後のデータ転送ならば「END」ビットに「1」を書き込む。
ステップS10において、データ記憶装置2は、バッファメモリ27に展開されている空き領域管理テーブル3を用いて、データの書き込み位置を決定し、データの書き込み準備ができたことをホスト装置1に知らせる。その後、ステップS4の工程に戻る。
また、上述の説明では、空き領域管理テーブルをホスト装置1が有していることを前提としている。例えば、UDF(Universal Disk Format)ファイルシステムにおいては、規格として「Space Bit Map Descriptor」が定義されており、論理ブロックごとに使用済みかどうかが記述されている。しかし、上述したFATファイルシステムの規格の場合には、同様のものは存在しない。そこで、FATファイルシステムを採用する場合には、空き領域管理テーブルを配置情報から作成する必要がある(図3)。また、ホスト装置1は、ステップS1の工程において、記録媒体20の配置情報を最新のものに更新する必要がある。したがって、制御部26は、配置情報を読み出し、当該配置情報に基づいて空き領域管理テーブルをバッファメモリ27に作成する。
また、本発明においては、規格上において、空き領域管理テーブルが存在したとしても、当該空き領域仮テーブルのフォーマットと、バッファメモリ27に展開されている空き領域管理テーブル3のフォーマットとが一致する必要は必ずしもない。複数のファイルシステムをサポートする場合には、管理するブロック単位や空き領域の検索を行う手法の違いなどの理由により、フォーマットが異なり得る。本発明では、その違いを吸収するために、記録媒体20に書き込まれている空き領域管理テーブル2のフォーマットを変換し、バッファメモリ27に展開されている空き領域管理テーブル3のフォーマットを固定してしまう方が合理的であると考えられる。
また、制御部26は、ホスト装置1のメモリ42に格納されている空き領域管理テーブル1と、バッファメモリ27に展開されている空き領域管理テーブル3が一致するかどうかを確認する機構を有する。制御部26は、空き領域管理テーブル1と空き領域管理テーブル3とが不一致の場合には、バッファメモリ27に展開されている空き領域管理テーブル3の更新情報をホスト装置1に転送する。ホスト装置1は、転送された更新情報に基づき、空き領域管理テーブル1を更新する。
また、図6では、AV Write Sector(s)コマンドにより、一のファイルをホスト装置1からデータ記録装置2に転送し、書き込む例について説明を行ったが、本発明に係るデータ記憶装置2では、複数のファイルを書き込むことも可能である。
また、本実施例においては、データの書き込み時の動作について説明を行ったが、本発明に係るデータ記録装置2は、記録媒体20に書き込まれているデータの読み出しも行うことができる。このデータの読み出し動作には、通常の読み出し方法(方法1)と、特別な読み出し方法(方法2)とがある。
方法1:ホスト装置1は、メモリ42に格納されている配置情報から所望のファイルが格納されている場所を検索し、検索結果に基づいて標準ATAコマンドRead Sectorsを生成し、当該標準ATAコマンドRead Sectorsによりデータ記録装置2から所望のファイルを読み出す方法である。
方法2:データ記録装置2は、ホスト装置1からファイルの読み出しコマンドが転送され、当該コマンドに基づいて記録媒体20に格納されている配置情報を読み出し、当該配置情報を解析し、解析結果に基づいて自ら記録媒体20からホスト装置1により指示されたファイルを読み出し、読み出したファイルをホスト装置1に転送する方法、又は、読み出したファイルをバッファメモリ27に格納しておき、ホスト装置1の要求に応じてバッファメモリ27から読み出してホスト装置1に転送する方法(先読み(Look Ahead Reading)方法)である。
このように構成されるデータ記録装置2によれば、ディレクトリ項目等のファイルのメタデータや連結情報等については、全てホスト装置1が主体的に管理することができる。本発明に係るデータ記録装置2を使用する場合には、必要な変更点としては、データの書き込み/読み出し処理に使用するアドレスを、ホスト装置1が採用するファイルシステムによって決定されるアドレスから、データ記憶装置2により通知されるアドレスに変更する点のみである。また、メタデータや連結情報の管理を行うファームウェアそのものには何の変更も要しない。
また、本発明によれば、空き領域管理テーブルを、記録媒体20が採用するファイルシステムに固有のテーブルや配置情報に依存しない形態で定義するので、データ記憶装置2の制御部26が採用するファームウェアの開発を大幅に効率化することが可能となる。
また、本実施例では、記憶装置としてHDDを具体例にして説明を行ったが、ランダムアクセス可能な記憶装置であれば、例えば、CD,DVD等の光ディスクであっても同様の処理が可能である。また、説明ではFATファイルシステムを用いたがデータをファイルとして管理するシステムであればどのようなものでも適用できる。
本発明の実施の形態におけるデータ記憶装置の構成を示すブロック図である。 ファイルシステムの説明に供するLBA空間を示す模式図である。 ホスト装置及びデータ記憶装置に空き領域管理テーブルが格納されることについての説明に供する図である。 空き領域管理テーブルの一例を示す模式図である。 (a)は、データの書き込み動作の際に、ホスト装置からデータ記憶装置に送信されるAV Write Sector(s)コマンドの模式図を示し、(b)は、AV Write Sector(s)コマンドの実行が完了した時に、データ記憶装置からホスト装置に転送されるTask File Registerコマンドの模式図を示す。 AV Write Sector(s)コマンドを用いてファイルを書き込む手順についての説明に供するフローチャートである。
符号の説明
1 ホスト装置、2 データ記憶装置、20 記録媒体、21 ヘッド部、22 ヘッド駆動部、23 記録媒体駆動部、24 サーボ制御部、25 リードライトチャンネル部、26 制御部、27 バッファメモリ、28 不揮発性固体メモリ、29 ページバッファ、30 メモリ制御部、31 演算処理部(CPU)、32 メモリ、33 インターフェース制御部

Claims (4)

  1. ホスト装置が接続され、上記ホスト装置の制御にしたがってデータへのアクセスが行われるデータ記録装置において、
    論理ブロックアドレスにより管理されている記憶部と、
    メモリと、
    上記記憶部の空き領域の情報が記されている空き領域管理テーブルが上記ホスト装置から転送されてきたとき、当該空き領域管理テーブルを上記記憶部に記憶する記憶制御部と、
    上記記憶部に記憶されている上記空き領域管理テーブルを読み出し、上記メモリに展開するメモリ展開部と、
    上記ホスト装置から転送される所定のコマンドに応じて、上記メモリに展開されている上記空き領域管理テーブルを参照し、上記ホスト装置から転送されるデータを上記記憶部の空き領域に記録するデータ記録部と、
    上記データ記録部による記録動作終了後、上記メモリに展開されている上記空き領域管理テーブルを更新するテーブル更新部と、
    上記テーブル更新部により更新された上記空き領域管理テーブルの情報を上記ホスト装置に転送する転送部とを備えることを特徴とするデータ記憶装置。
  2. 上記ホスト装置が保有する上記空き領域管理テーブルと、上記メモリに展開されている上記空き領域管理テーブルが一致するかどうかを判断する判断部を備え、
    上記転送部は、上記判断部により空き領域管理テーブルが相互に一致いないと判断された場合、上記メモリに展開されている上記空き領域管理テーブルの情報を上記ホスト装置に転送することを特徴とする請求項1記載のデータ記憶装置。
  3. 上記記憶部は、ファイルの配置情報が記されている配置テーブルを有することを特徴とする請求項1記載のデータ記憶装置。
  4. ホスト装置が接続され、上記ホスト装置の制御にしたがってデータへのアクセスが行われるデータ記録装置のデータアクセス方法において、
    論理ブロックアドレスにより管理されている記憶部の空き領域の情報が記されている空き領域管理テーブルが上記ホスト装置から転送されてきたとき、当該空き領域管理テーブルを上記記憶部に記憶し、
    上記記憶部に記憶されている上記空き領域管理テーブルを読み出し、メモリに展開し、
    上記ホスト装置から転送される所定のコマンドに応じて、上記メモリに展開されている上記空き領域管理テーブルを参照し、上記ホスト装置から転送されるデータを上記記憶部の空き領域に記録し、
    記録動作終了後、上記メモリに展開されている上記空き領域管理テーブルを更新し、
    上記更新された上記空き領域管理テーブルの情報を上記ホスト装置に転送することを特徴とするデータアクセス方法。
JP2006077278A 2006-03-20 2006-03-20 データ記憶装置及びデータアクセス方法 Expired - Fee Related JP4802791B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006077278A JP4802791B2 (ja) 2006-03-20 2006-03-20 データ記憶装置及びデータアクセス方法
US11/687,969 US7716412B2 (en) 2006-03-20 2007-03-19 Data storage apparatus and data access method for controlling address information for data writing using a free area control table
CN2007101292346A CN101078972B (zh) 2006-03-20 2007-03-20 数据存储装置和数据存取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006077278A JP4802791B2 (ja) 2006-03-20 2006-03-20 データ記憶装置及びデータアクセス方法

Publications (2)

Publication Number Publication Date
JP2007257061A true JP2007257061A (ja) 2007-10-04
JP4802791B2 JP4802791B2 (ja) 2011-10-26

Family

ID=38631287

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006077278A Expired - Fee Related JP4802791B2 (ja) 2006-03-20 2006-03-20 データ記憶装置及びデータアクセス方法

Country Status (3)

Country Link
US (1) US7716412B2 (ja)
JP (1) JP4802791B2 (ja)
CN (1) CN101078972B (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008250719A (ja) * 2007-03-30 2008-10-16 Toshiba Corp 情報処理装置
JP4816740B2 (ja) * 2009-02-09 2011-11-16 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
KR101139187B1 (ko) * 2009-12-28 2012-04-26 (주)인디링스 버퍼 없이 에러를 검출하고 정정하는 컨트롤러 및 그 컨트롤러의 동작 방법
JP4945663B2 (ja) * 2010-06-30 2012-06-06 株式会社東芝 情報処理装置およびデータの復旧方法
US8473708B1 (en) 2010-12-23 2013-06-25 Netapp, Inc. Method and system for managing storage units

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000020365A (ja) * 1998-07-07 2000-01-21 Matsushita Electric Ind Co Ltd データ処理装置、及びそのファイル管理方法
WO2005015406A1 (ja) * 2003-08-06 2005-02-17 Matsushita Electric Industrial Co., Ltd. 半導体メモリカード、アクセス装置及びアクセス方法
JP2005216119A (ja) * 2004-01-30 2005-08-11 Matsushita Electric Ind Co Ltd 記録媒体
JP2006048227A (ja) * 2004-08-02 2006-02-16 Sony Corp メモリ装置、メモリ装置の制御方法およびデータ処理システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100359592C (zh) * 2002-12-13 2008-01-02 康佳集团股份有限公司 摄录设备硬盘的数据存储方法
JP2004318940A (ja) * 2003-04-14 2004-11-11 Renesas Technology Corp 記憶装置
CN1890645B (zh) * 2003-12-03 2010-09-08 松下电器产业株式会社 信息记录介质的数据处理装置以及数据记录方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000020365A (ja) * 1998-07-07 2000-01-21 Matsushita Electric Ind Co Ltd データ処理装置、及びそのファイル管理方法
WO2005015406A1 (ja) * 2003-08-06 2005-02-17 Matsushita Electric Industrial Co., Ltd. 半導体メモリカード、アクセス装置及びアクセス方法
JP2005216119A (ja) * 2004-01-30 2005-08-11 Matsushita Electric Ind Co Ltd 記録媒体
JP2006048227A (ja) * 2004-08-02 2006-02-16 Sony Corp メモリ装置、メモリ装置の制御方法およびデータ処理システム

Also Published As

Publication number Publication date
CN101078972A (zh) 2007-11-28
JP4802791B2 (ja) 2011-10-26
CN101078972B (zh) 2010-06-02
US20080046646A1 (en) 2008-02-21
US7716412B2 (en) 2010-05-11

Similar Documents

Publication Publication Date Title
US7472219B2 (en) Data-storage apparatus, data-storage method and recording/reproducing system
JP2007193883A (ja) データ記録装置及び方法、及びデータ再生装置及び方法、並びにデータ記録再生装置及び方法
JP4604806B2 (ja) 記録装置
WO2005101211A1 (ja) 複合型記憶装置、データ書込方法及びプログラム
JP2006523882A (ja) ユニバーサルなドライブ装置のためのフォーマットマッピング方式
JP2006085892A (ja) 統合型dvd/hddシステムのための統一された制御および記憶
JP4802791B2 (ja) データ記憶装置及びデータアクセス方法
JP2007034537A (ja) 複合型記憶装置、データ書込方法及びプログラム
JP2006085891A (ja) 統合型dvd/hddシステムのための統一された制御および記憶
JP4269870B2 (ja) 記録再生装置及び記録方法
JP2006323462A (ja) ファイルコピー装置およびファイルコピー方法
JP4470471B2 (ja) 記録再生装置及び方法、並びに記録再生システム
JP2007108853A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4211563B2 (ja) 再生記録装置
JP4496790B2 (ja) データ記憶装置及び方法、並びに記録再生システム
JP4301026B2 (ja) データ記録装置及びデータ記録方法、並びに記録再生システム
JP4480592B2 (ja) ファイルシステム
JP4269915B2 (ja) 記録再生装置及び方法、並びに記録再生システム
JP2006313514A (ja) 複合型記憶装置、アクセス方法及びプログラム
JP2008117491A (ja) 記録装置、記録方法、およびプログラム
JP2006039756A (ja) 媒体記憶装置、媒体記憶装置のキャッシュセグメント切り替え方法、及び媒体記憶システム
JP2008158572A (ja) データ記憶装置
JP2007058671A (ja) 情報処理装置および方法、プログラム、並びに記録媒体
JP2006178778A (ja) データ記録装置及びデータ記録システム
JP2006011882A (ja) ファイルアクセス装置及びコントローラ制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110512

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110712

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110725

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees