JP2009158011A - 情報記録装置および情報記録方法 - Google Patents
情報記録装置および情報記録方法 Download PDFInfo
- Publication number
- JP2009158011A JP2009158011A JP2007335131A JP2007335131A JP2009158011A JP 2009158011 A JP2009158011 A JP 2009158011A JP 2007335131 A JP2007335131 A JP 2007335131A JP 2007335131 A JP2007335131 A JP 2007335131A JP 2009158011 A JP2009158011 A JP 2009158011A
- Authority
- JP
- Japan
- Prior art keywords
- disk
- data
- information recording
- cache memory
- recording medium
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
【課題】同期処理によるバッテリの消耗を抑制可能な情報記録装置および情報記録方法を提供する。
【解決手段】情報記録装置が,ディスク状記録媒体およびキャッシュメモリにデータを書き込む情報記録装置であって,外部電源の接続の有無を表す接続情報を記憶する記憶部と,前記接続情報に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定する決定部と,前記決定の結果に対応して,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込む書込部と,を具備する。
【選択図】図1
【解決手段】情報記録装置が,ディスク状記録媒体およびキャッシュメモリにデータを書き込む情報記録装置であって,外部電源の接続の有無を表す接続情報を記憶する記憶部と,前記接続情報に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定する決定部と,前記決定の結果に対応して,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込む書込部と,を具備する。
【選択図】図1
Description
本発明は,ディスク状記録媒体およびキャッシュメモリにデータを書き込む情報記録装置および情報記録方法に関する。
近年,ディスク状記録媒体であるハードディスクとキャッシュメモリである半導体記憶媒体とを用いた情報記録装置が開発されている。ここで,キャッシュメモリにのみ記憶されたデータが存在する場合,このデータをディスク状記録媒体にも記憶させることで(データの同期処理),データの安全性を高めることができる。
なお,キャッシュメモリから磁気ディスク装置への書き込み前に電源が切断された場合,電源の再投入後に磁気ディスク装置に書き込む技術が公開されている。データを保証し,信頼性を高めることができる(特許文献1参照)。
特開平6−348600号公報,請求項4,段落番号0056
なお,キャッシュメモリから磁気ディスク装置への書き込み前に電源が切断された場合,電源の再投入後に磁気ディスク装置に書き込む技術が公開されている。データを保証し,信頼性を高めることができる(特許文献1参照)。
ところで,機器のモバイル化が進み,バッテリを用いて,動作する機器が多くなってきている。磁気ディスク装置への書き込みは,比較的電力を要するので,機器がバッテリで動作中のとき,磁気ディスク装置への書き込み,即ち,同期処理が抑制されることが機器の長時間使用に繋がる。前記特許文献1記載の技術では,バッテリ駆動に対応して同期処理を抑制することはできない。
上記に鑑み,本発明は,同期処理によるバッテリの消耗を抑制可能な情報記録装置および情報記録方法を提供することを目的とする。
上記に鑑み,本発明は,同期処理によるバッテリの消耗を抑制可能な情報記録装置および情報記録方法を提供することを目的とする。
本発明の一態様に係る情報記録装置は,ディスク状記録媒体およびキャッシュメモリにデータを書き込む情報記録装置であって,外部電源の接続の有無を表す接続情報を記憶する記憶部と,前記接続情報に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定する決定部と,前記決定の結果に対応して,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込む書込部と,を具備する。
本発明の一態様に係る情報記録方法は,ディスク状記録媒体およびキャッシュメモリにデータを書き込む情報記録装置での情報記録方法であって,前記ディスク状記録媒体へのアクセスの許可または禁止を表すアクセス可否情報に対応して,前記ディスク状記録媒体および前記キャッシュメモリの双方または前記キャッシュメモリのみのいずれかにデータを書き込むステップと,所定の検出の有無に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定するステップと,前記決定の結果に対応して,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むステップと,を具備する。
本発明によれば,同期処理によるバッテリの消耗を抑制可能な情報記録装置および情報記録方法を提供できる。
以下,図面を参照して,本発明の実施の形態を詳細に説明する。
(第1の実施の形態)
図1は本発明の第1実施形態に係る情報記録システム10を表すブロック図である。情報記録システム10は,ホスト装置100,情報記録装置200から構成される。
(第1の実施の形態)
図1は本発明の第1実施形態に係る情報記録システム10を表すブロック図である。情報記録システム10は,ホスト装置100,情報記録装置200から構成される。
情報記録装置200は,ハードディスク(HD)201,フラッシュメモリ202,SDRAM203,主コントローラ210,電源220,電源コントローラ231,操作スイッチ232,状態センサ240,ホストインターフェース(I/F)251,ディスクインターフェース(I/F)252,フラッシュメモリインターフェース(I/F)253,SDRAMインターフェース(I/F)254,電源インターフェース(I/F)255,センサインターフェース(I/F)256,スイッチインターフェース(I/F)257を有する。
ホスト装置100は,情報記録装置200に情報を書き込み,読み出す装置,例えば,パーソナルコンピュータに於けるコントロール部である。ホスト装置100は,ホストインターフェース251を介して,主コントローラ210にコマンドを送ることができる。またホスト装置100は,ホストインターフェース251を介して,主コントローラ210からのデータを受け取ることもできる。
ホストインターフェース251は,ATA(Advanced Technology Attachment)規格,例えば,パラレルATA(PATA),シリアルATA(SATA),CE−ATAに準拠するインタフェースを利用できる。また,ホスト装置100とホストインターフェース251の接続にATA規格以外の規格,例えば,USB(Universal Serial Bus)規格を採用しても良い。また,ホスト装置100とホストインターフェース251がLAN(Local Area Network)を経由して接続されても良い。なお,必要に応じて,ホストインターフェース251が規格の異なる信号間でプロトコルを変換するプロトコル変換部を備えることができる。
主コントローラ210は,HD201,フラッシュメモリ202,SDRAM203それぞれと,ディスクインターフェース252,フラッシュメモリインターフェース253,SDRAMインターフェース254を介して,データをやり取りできる。
HD201は,磁気ディスク,スピンドルモータ,磁気ヘッド,アームを有する。磁気ディスクは,情報を記録するディスク状記録媒体である。スピンドルモータは,磁気ディスクを回転する。磁気ヘッドは,磁気ディスクにデータを書き込み,読み出す。アームは,磁気ヘッドを保持し,磁気ディスク上を移動させる。
フラッシュメモリ202は,HD201に記録する際のキャッシュとして使用される。このため,フラッシュメモリ202は,データを書き込む書き込み領域とは別に,キャッシュテーブルを備える。キャッシュテーブルには,キャッシュ情報(アドレス1,アドレス2,および同期情報)が表される。アドレス1,アドレス2はそれぞれ,フラッシュメモリ202上,およびHD201上でのアドレス(例えば,物理アドレス)である。同期情報は,フラッシュメモリ202のアドレス1に対応するデータが,HD201上に実際に書き込まれているか否か(同期の有無)を表す。後述のように,データが,フラッシュメモリ202にのみ書き込まれ,HD201に書き込まれない可能性がある。
SDRAM203は,HD201に記録する際のバッファとして使用される。
HD201,フラッシュメモリ202に記録されるデータには,エラー訂正コードが付加される。フラッシュメモリへの記録データ,ハードディスクへの記録データに対しては,再生時のエラー訂正が可能なようにECC処理が施される。
HD201,フラッシュメモリ202に記録されるデータには,エラー訂正コードが付加される。フラッシュメモリへの記録データ,ハードディスクへの記録データに対しては,再生時のエラー訂正が可能なようにECC処理が施される。
ホスト装置100からHD201にデータが書き込まれるときには,フラッシュメモリ202,SDRAM203を経由して,データが書き込まれる。例えば,次のような順序でデータが書き込まれる。(1)SDRAM203,HD201の系路。(2)フラッシュメモリ202,HD201の系路。(3)フラッシュメモリ202,SDRAM203,HD201の系路。(4)SDRAM203,フラッシュメモリ202,HD201の系路。(5)SDRAM203,フラッシュメモリ202,SDRAM203,HD201の系路。なお,(2)〜(5)の場合,キャッシュテーブルにキャッシュ情報が追加される(エントリの追加)。
また,HD201からホスト装置100側へデータが読み出されるときは,フラッシュメモリ202,SDRAM203を経由して,データが読み出される。例えば,次のような順序でデータが読み出される。(1)HD201,SDRAM203,ホスト装置100の系路。(2)HD201,フラッシュメモリ202,ホスト装置100の系路。(3)HD201,フラッシュメモリ202,SDRAM203,ホスト装置100の系路。(4)HD201,SDRAM203,フラッシュメモリ202,ホスト装置100の系路。(5)HD201,SDRAM203,フラッシュメモリ202,SDRAM203,ホスト装置100の系路。
フラッシュメモリ202は,不揮発性メモリでありながら,データの電気的消去および再書き込み,即ち,データの書き換えが可能である。このフラッシュメモリ202は,書き換え回数が多くなると素子が劣化し,エラー(例えば,リードディスターブ(Read disturb)やデータリテンション)が発生し,書き込み内容が壊れる可能性が有る。そこで,フラッシュメモリ202の性能を保証する情報として,書き換え回数を,例えば,10万回程度に規定している。
フラッシュメモリ202の書き込み領域は,Pinned(ピンド)領域,UnPinned(アンピンド)領域に区分できる。
Pinned領域は,ホスト装置100が送ってきたコマンドが,データ書き込み先としてフラッシュメモリ202を指定した場合に形成される領域である。このコマンド(Pinnedコマンド)に付随して,論理ブロックアドレス(LBA)が指定される。ホスト装置100がPinnedコマンドを発行し,Pinned領域をアドレスとして指定することで(Pinned LBA),データがPinned領域に書き込まれる。
一方,UnPinned(アンピンド)領域は,ホスト装置100によるデータ書き込み先がコマンドにより指定されていない場合で,かつ,主コントローラ210が独自に判断して,データを転送し,格納した領域である。フラッシュメモリ202がキャッシュメモリとして利用される場合,データはUnPinned領域に書き込まれる。この場合,ホスト装置100側は,キャッシュメモリ202のアドレスを意識する必要はなく,HD201側のアドレスを指定すればよい。
なお,フラッシュメモリ202には,規格「Non Volatile Cache Command Proposal for ATA8-ACS」に準拠したものを利用できる。
電源220は,外部電源からの電力を蓄積し,供給するバッテリを有する。
電源コントローラ231は電源220への外部電源の接続を検出する。例えば,電源220の外部電源用コネクタへの外部電源端子の挿抜を認識する。即ち,電源コントローラ231は電源220への外部電源の接続を検出する検出部として機能する。
電源コントローラ231は電源220への外部電源の接続を検出する。例えば,電源220の外部電源用コネクタへの外部電源端子の挿抜を認識する。即ち,電源コントローラ231は電源220への外部電源の接続を検出する検出部として機能する。
電源コントローラ231での検出結果(外部電源の接続)は,電源インターフェース255を介して,主コントローラ210に通知される。この通知には,制御信号,コマンドを用いることができる。コマンドとしては,専用のコマンドの利用,既存のコマンドの未使用部(アーギュメント部)の利用のいずれでも可能である。また,制御信号,コマンドに替えて,物理的なスイッチを用いて,主コントローラ210に検出結果を通知しても良い。
操作スイッチ232は,電源220への外部電源の接続の検出と対応する情報を入力するための入力手段である。即ち,操作スイッチ232を操作することで,電源220への外部電源の接続が検出されたときの処理と対応する処理(例えば,フラッシュメモリ202とHD201でのデータの同期)がなされる。
状態センサ240は,情報記録装置200の状態(例えば,振動,加速度,温度,気圧)を検出するセンサである。この検出結果は,アクセス可否決定部212でのHD201へのアクセスの禁止,許可の決定に用いられる。情報記録装置200の状態がHD201の動作に適しないとき(例えば,加速度が所定値以上に大きいとき)に,HD201へのアクセスを禁止できる。状態センサ240に操作スイッチ等を用いて,人的に状態の良否を入力することも可能である。
主コントローラ210は,コマンド解析部211,アクセス可否決定部212,アクセス可否記憶部213,接続情報記憶部214,操作情報記憶部215,同期決定部216,書込・読出部217を有する。
コマンド解析部211は,ホスト装置100から送られるコマンドを解析する。このコマンドには,データの書き込み命令,データの読出し命令,データのサイズ指定,データの転送,メモリ,情報の読み取り命令などがある。コマンド解析部211は,ホスト装置100からの書き込みコマンドを検出する書込検出部として機能する。
アクセス可否決定部212は,状態センサ240の検出結果に基づいて,HD201へのアクセスの禁止,許可を決定し,アクセス可否記憶部213の記憶内容を書き換える。アクセス可否記憶部213は,アクセス可否決定部212の決定結果を記憶する。
接続情報記憶部214は,電源コントローラ231から通知された外部電源の接続の検出結果を記憶する。接続情報記憶部214は,外部電源の接続の有無を表す接続情報を記憶する記憶部として機能する。
操作情報記憶部215は,操作スイッチ232の操作結果を記憶する。即ち,操作情報記憶部215は,ディスク状記録媒体へのアクセスの許可または禁止を表すアクセス可否情報を記憶する第2の記憶部として機能する。
操作情報記憶部215は,操作スイッチ232の操作結果を記憶する。即ち,操作情報記憶部215は,ディスク状記録媒体へのアクセスの許可または禁止を表すアクセス可否情報を記憶する第2の記憶部として機能する。
同期決定部216は,フラッシュメモリ202のみに記録されたデータをHD201に書き込むか否か(フラッシュメモリ202とHD201間でデータを同期するか否か)を決定する。同期決定部216は,接続情報に基づいて,キャッシュメモリのみに記録されたデータをディスク状記録媒体に書き込むか否かを決定する決定部として機能する。
書込・読出部217は,HD201,フラッシュメモリ202,SDRAM203にデータの書き込み,読み出す。書込・読出部217は,キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込む書込部として機能する。書込・読出部217は,ディスク状記録媒体およびキャッシュメモリの双方またはキャッシュメモリのみのいずれかにデータを書き込む第2の書込部としても機能する。
書込・読出部217は,HD201,フラッシュメモリ202,SDRAM203からのデータの消去も行う。即ち,書込・読出部217は,ディスク状記録媒体に書き込まれたデータをキャッシュメモリから削除する削除部としても機能する。
(情報記録装置200の動作)
以下,情報記録装置200の動作手順を説明する。
図2は,情報記録装置200の動作手順の一例を表すフロー図である。
(1)書き込みコマンドの検出(ステップS11)
コマンド解析部211がホスト装置100から送られる書き込みコマンドを検出する。即ち,ホスト装置100から主コントローラ210にデータの書き込みを指示する書き込みコマンドが送られ,コマンド解析部211によって検知される。
以下,情報記録装置200の動作手順を説明する。
図2は,情報記録装置200の動作手順の一例を表すフロー図である。
(1)書き込みコマンドの検出(ステップS11)
コマンド解析部211がホスト装置100から送られる書き込みコマンドを検出する。即ち,ホスト装置100から主コントローラ210にデータの書き込みを指示する書き込みコマンドが送られ,コマンド解析部211によって検知される。
(2)HD201へのアクセスの禁止の有無の確認(ステップS12)
HD201へのアクセスの禁止の有無が確認される。即ち,アクセス可否記憶部213に記憶された決定結果が参照され,この決定結果がHD201へのアクセスの禁止,許可の何れを表すかが確認される。
HD201へのアクセスの禁止の有無が確認される。即ち,アクセス可否記憶部213に記憶された決定結果が参照され,この決定結果がHD201へのアクセスの禁止,許可の何れを表すかが確認される。
(3)フラッシュメモリ202へのデータの書き込み(ステップS13)
HD201へのアクセスが禁止されていると確認された場合,HD201にデータは書き込まれず,フラッシュメモリ202のみ(またはSDRAM203にも)にデータが書き込まれる。
HD201へのアクセスが禁止されていると確認された場合,HD201にデータは書き込まれず,フラッシュメモリ202のみ(またはSDRAM203にも)にデータが書き込まれる。
(4)HD201,フラッシュメモリ202へのデータの書き込み(ステップS14)
HD201へのアクセスが許可されていると確認された場合,HD201およびフラッシュメモリ202にデータが書き込まれる。この詳細は,図3,図4で後述する。
HD201へのアクセスが許可されていると確認された場合,HD201およびフラッシュメモリ202にデータが書き込まれる。この詳細は,図3,図4で後述する。
なお,アクセス対象(例えば,データの書き込み先)は,必ずしもアクセス可否記憶部213に記憶された決定結果のみで定まる訳ではない。例えば,ステップS14での書き込みの際に,HD201,フラッシュメモリ202の双方に書き込むか,一方に書き込むかが選択される。コントローラ210は,ホスト装置100への応答が速く,耐衝撃性が高く,消費電力が少なくなるように,アクセス対象を選択する。例えば,HD201で磁気ディスクの回転が停止している場合(回転待ち状態),書き込み先としてフラッシュメモリ202が選択される。この事情は,後述のステップS33,S47でも同様である。
フラッシュメモリ202は,駆動系要素がないため,一般的に,アクセス中の衝撃に強く消費電流が少ない。一方,HD201等の磁気記憶装置は,回転させたメディア(磁気ディスク)上のデータに磁気ヘッドが物理的にアクセスするため,一般的に,アクセス中の衝撃に弱く,消費電流が多い。
このため,アクセス可否記憶部213に記憶された決定結果に基づいてHD201へのアクセスを禁止することで,HD201を用いつつ,耐衝撃の増加,および消費電力の低減が可能となる。
しかし,この制御を継続し,HD201へのアクセスが禁じられた状態での書き込み動作が続けられると,HD201には存在せず,フラッシュメモリ202のみに存在するデータ(非同期データ)のデータ量が増加する。フラッシュメモリ202の書き換え回数制限等を考慮すると,フラッシュメモリ202にしかデータがないという状態は,データが完全に保存されているとは必ずしも言えない。
以下に示すように,本実施形態では,外部電源の接続の有無に対応して,フラッシュメモリ202のみに存在するデータをHD201に書き込む(データの同期(データフラッシュ))。この結果,データがより確実に保持される。即ち,フラッシュメモリ202内のデータが壊れたとしても,ホスト装置100からの読み出し要求に対し,HD201内のデータにより対応できる。
A.外部電源の接続の有無に対応する同期処理(1)
図3は,ステップS14での書き込み処理の詳細の一例を表すフロー図である。
(1)書き込み対象データがフラッシュメモリ202に存在するか否かの判定(ステップS21)
書き込み対象のデータがフラッシュメモリ202に存在するか否かが判定される。既存のデータを書き換える場合,書換対象データのアドレスがフラッシュメモリ202に存在する可能性がある。
図3は,ステップS14での書き込み処理の詳細の一例を表すフロー図である。
(1)書き込み対象データがフラッシュメモリ202に存在するか否かの判定(ステップS21)
書き込み対象のデータがフラッシュメモリ202に存在するか否かが判定される。既存のデータを書き換える場合,書換対象データのアドレスがフラッシュメモリ202に存在する可能性がある。
(2)フラッシュメモリ202での空き領域の確認(ステップS22)
書き込み対象のデータがフラッシュメモリ202に存在しない場合(既存のデータを書き換えるのでない場合),フラッシュメモリ202に書き込むデータに対応する空き領域が存在するか否かが確認される。
書き込み対象のデータがフラッシュメモリ202に存在しない場合(既存のデータを書き換えるのでない場合),フラッシュメモリ202に書き込むデータに対応する空き領域が存在するか否かが確認される。
(3)フラッシュメモリ202での空き領域の確保(ステップS23〜S26)
フラッシュメモリ202に書き込むデータに対応する空き領域が存在しない場合,次のようにして,空き領域を増加し,フラッシュメモリ202へのデータの書き込みを可能とする。
フラッシュメモリ202に書き込むデータに対応する空き領域が存在しない場合,次のようにして,空き領域を増加し,フラッシュメモリ202へのデータの書き込みを可能とする。
即ち,フラッシュメモリ202のデータを検索し,検索されたデータがHD201にも存在すれば,そのデータをフラッシュメモリ202から消去する。検索されたデータがHD201に存在しなければ,そのデータをHD201に書き込んで,フラッシュメモリ202から消去する。
これらの処理には,フラッシュメモリ202上のキャッシュテーブルを利用できる。即ち,フラッシュメモリ202上でのデータの検索,HD201での存在確認,データの消去の全てが,キャッシュテーブル上で実行できる。HD201での存在確認には同期情報を利用できる。また,フラッシュメモリ202からのデータの消去は,キャッシュテーブルからのキャッシュ情報(エントリ)の削除でなされる。即ち,キャッシュテーブル上のエントリを削除すれば,書き込み領域上の実データを削除しなくても良い。
(4)外部電源の接続の有無の確認(ステップS31)
外部電源の接続の有無が確認される。即ち,接続情報記憶部214に記憶された検知結果が参照され,この検知結果が外部電源の接続の有無の何れを表すかが確認される。
外部電源の接続の有無が確認される。即ち,接続情報記憶部214に記憶された検知結果が参照され,この検知結果が外部電源の接続の有無の何れを表すかが確認される。
(5)非同期データのHD201への書き込み(ステップS32)
外部電源が接続されている場合,フラッシュメモリ202にのみ存在し,HD201に存在しないデータ(非同期データ)がHD201に書き込まれる(ステップS31)。即ち,フラッシュメモリ202と,HD201とで,データが同期される(整合性の確保)。なお,このステップS32は,既述のステップS23〜S25により実行できる。
外部電源が接続されている場合,フラッシュメモリ202にのみ存在し,HD201に存在しないデータ(非同期データ)がHD201に書き込まれる(ステップS31)。即ち,フラッシュメモリ202と,HD201とで,データが同期される(整合性の確保)。なお,このステップS32は,既述のステップS23〜S25により実行できる。
このとき,フラッシュメモリ202の全データをHD201に存在するようにすることができる(100%同期)。これに替えて,所定の割合で同期を停止させても良い。なお,データの同期に伴い,キャッシュテーブルが更新される。
ここで,HD201に書き込まれたデータ(同期されたデータ)をフラッシュメモリ202から削除しても良い。この場合,フラッシュメモリ202からのデータの削除に対応して,フラッシュメモリ202に多くの空き領域が作成される。このデータの削除の実行はキャッシュミスの発生として検知できる。例えば,「Query NV Cache Misses」コマンドを用いると,本実施形態での空き領域の作成に対応するキャッシュミスの発生を検知できる。即ち,外部電源の接続の有無で,キャッシュミスの発生の頻度が変化する。
(6)書き込み対象データの書き込み(ステップS33)
書き込み対象データが,フラッシュメモリ202,HD201に書き込まれる。
ここで,外部電源の接続の有無に対応して,フラッシュメモリ202,HD201の双方,またはフラッシュメモリ202のみを書込先として選択しても良い。即ち,外部電源が接続されている場合,フラッシュメモリ202,HD201の双方にデータを書き込む。外部電源が接続されていない場合,フラッシュメモリ202のみにデータを書き込む。外部電源の接続の有無,即ち,バッテリ駆動の有無に対応して,HD201への書込を省略し,バッテリ駆動時での消費電力を低減できる。
書き込み対象データが,フラッシュメモリ202,HD201に書き込まれる。
ここで,外部電源の接続の有無に対応して,フラッシュメモリ202,HD201の双方,またはフラッシュメモリ202のみを書込先として選択しても良い。即ち,外部電源が接続されている場合,フラッシュメモリ202,HD201の双方にデータを書き込む。外部電源が接続されていない場合,フラッシュメモリ202のみにデータを書き込む。外部電源の接続の有無,即ち,バッテリ駆動の有無に対応して,HD201への書込を省略し,バッテリ駆動時での消費電力を低減できる。
以上のように,フラッシュメモリ202,HD201でデータを同期させることで(フラッシュメモリ202にキャッシュされたデータをHD201に書きこむ),フラッシュメモリ202,HD201でデータを2重に保存することが可能である。この結果,フラッシュメモリ202内のデータが壊れたとしてもHD201内のデータを参照することにより,データを復旧できる。
外部電源の接続の有無に対応して,データを同期する理由は以下の通りである。本実施形態において,HD201は電源220のバッテリで動作している。このため,電源220に外部電源が接続されていないときには,HD201へのアクセスを制限することで,消費電力を低減する。この結果,バッテリによる駆動時間を確保できる。一方,電源220に外部電源が接続されているときには,消費電力をさほど気にする必要がなく,HD201へのアクセスを制限する必要性が低減する。つまり,外部電源の接続に対応する同期処理により,バッテリ動作時での低消費電力動作,および外部電源接続時でのデータの安全性の保持の双方が可能になる。
B.外部電源の接続の有無に対応する同期処理(2)
図4は,ステップS14での書き込み処理の詳細の他の一例を表すフロー図である。ステップS21〜S26までは図3と同様なので説明を省略する。
図4は,ステップS14での書き込み処理の詳細の他の一例を表すフロー図である。ステップS21〜S26までは図3と同様なので説明を省略する。
(1)同期開始パラメータの設定(ステップS41〜S43)
外部電源の接続の有無に対応して,同期開始パラメータを設定する。この例では,フラッシュメモリ202上での非同期データの割合Aの基準値Xを同期開始パラメータとし,外部電源の接続の有無に応じてその値を変更している。ここでは,外部電源の接続時に割合Aの基準値Xを5%,外部電源の非接続時に割合Aの基準値Xを50%としている。フラッシュメモリ202上での非同期データの割合Aは,キャッシュテーブル上での同期情報中での同期無しの割合から算出できる。
外部電源の接続の有無に対応して,同期開始パラメータを設定する。この例では,フラッシュメモリ202上での非同期データの割合Aの基準値Xを同期開始パラメータとし,外部電源の接続の有無に応じてその値を変更している。ここでは,外部電源の接続時に割合Aの基準値Xを5%,外部電源の非接続時に割合Aの基準値Xを50%としている。フラッシュメモリ202上での非同期データの割合Aは,キャッシュテーブル上での同期情報中での同期無しの割合から算出できる。
外部電源の接続時に割合の基準値Xを小さくすることで,データフラッシュ開始の可能性を増大させている。図3の例では,外部電源の接続の有無のみで,データフラッシュの開始の有無が決定されていたのに対して,対応の柔軟性を向上し,低消費電力とデータの安全性のバランスの確保をより容易としている。
なお,非同期データの割合に替えて,非同期データのデータ量を同期開始パラメータとしても良い。
(2)非同期データのHD201への書き込み(ステップS44〜S46)
フラッシュメモリ202上での非同期データの割合Aが基準値X以上の場合(ステップS44),非同期データ)がHD201に書き込まれる(ステップS45)。即ち,フラッシュメモリ202と,HD201とで,データが同期される(整合性の確保)。なお,このステップS45は,既述のステップS23〜S25により実行できる。
フラッシュメモリ202上での非同期データの割合Aが基準値X以上の場合(ステップS44),非同期データ)がHD201に書き込まれる(ステップS45)。即ち,フラッシュメモリ202と,HD201とで,データが同期される(整合性の確保)。なお,このステップS45は,既述のステップS23〜S25により実行できる。
この書き込みは,非同期データの割合Aが基準値Xより小さくなるまで,続行される。即ち,図3の例では,データの同期が開始されると,100%の同期が完了するまでデータが同期されたのと比べて,より処理が柔軟となっている。なお,これに替えて,データの同期処理が開始されると,100%同期されるまで,データの同期を続行させることも可能である。
ここで,図4の例では,HD201に書き込まれたデータ(同期されているデータ)は,フラッシュメモリ202から削除される。既述のように,同期されたデータの削除は,キャッシュテーブルからのキャッシュ情報(エントリ)の削除でなされる。データの削除に替えて,同期されているデータをフラッシュメモリ202にそのまま保持することも可能である(ステップS46の省略)。このようにすることで,データが2重に保持され,データ保持がより確実となる。
データの削除の実行は,例えば,「Query NV Cache Misses」コマンドを用いることで,キャッシュミスの発生として検知できる。外部電源の接続の有無で,キャッシュミスの発生の頻度が変化する。
(3)書き込み対象データの書き込み(ステップS47)
書き込み対象データが,フラッシュメモリ202,HD201に書き込まれる。ここで,図3のステップS33で説明したように,外部電源の接続の有無に対応して,フラッシュメモリ202,HD201の双方,またはフラッシュメモリ202のみを書込先として選択しても良い。
書き込み対象データが,フラッシュメモリ202,HD201に書き込まれる。ここで,図3のステップS33で説明したように,外部電源の接続の有無に対応して,フラッシュメモリ202,HD201の双方,またはフラッシュメモリ202のみを書込先として選択しても良い。
C.外部電源の接続の有無に対応する同期処理(3)
以上のA.B.では,書き込みコマンドの検出および操作スイッチ232がOFF状態であることを前提としている。即ち,書き込みコマンドの検出の時点で,同期の開始の有無が決定される。これに対して,書き込みコマンドの検出の有無とは無関係に,外部電源が接続された時点で,同期の開始の有無を決定しても良い。
以上のA.B.では,書き込みコマンドの検出および操作スイッチ232がOFF状態であることを前提としている。即ち,書き込みコマンドの検出の時点で,同期の開始の有無が決定される。これに対して,書き込みコマンドの検出の有無とは無関係に,外部電源が接続された時点で,同期の開始の有無を決定しても良い。
D.操作スイッチ232に対応する同期処理
操作スイッチ232をON状態とすることで,外部電源の接続が検出されたと同様の処理を実行できる。例えば,書き込みコマンドの検出および外部電源の接続の有無とは無関係にフラッシュメモリ202,HD201間でのデータの同期を開始させることができる。具体的には,操作スイッチ232をON状態とすることで,図3のステップS32に示す同期処理を実行させる。ここで,必要に応じて,HD201に書き込まれたデータ(同期されたデータ)をフラッシュメモリ202から削除しても良い。さらに,外部電源の接続が検出されたと同様に,図4のステップS42〜S46を実行することもできる。
操作スイッチ232をON状態とすることで,外部電源の接続が検出されたと同様の処理を実行できる。例えば,書き込みコマンドの検出および外部電源の接続の有無とは無関係にフラッシュメモリ202,HD201間でのデータの同期を開始させることができる。具体的には,操作スイッチ232をON状態とすることで,図3のステップS32に示す同期処理を実行させる。ここで,必要に応じて,HD201に書き込まれたデータ(同期されたデータ)をフラッシュメモリ202から削除しても良い。さらに,外部電源の接続が検出されたと同様に,図4のステップS42〜S46を実行することもできる。
(第2の実施の形態)
本発明の第2の実施形態を説明する。
図5は,本発明の第2の実施形態に係る電子機器300を表すブロック図である。電子機器300は,主処理部310,ハードディスク(HD)201,フラッシュメモリ202,SDRAM203,主コントローラ210,電源220,電源コントローラ331,操作スイッチ232,状態センサ240,ホストインターフェース251,ディスクインターフェース252,フラッシュメモリインターフェース253,SDRAMインターフェース254,センサインターフェース256,スイッチインターフェース257を有する。
本発明の第2の実施形態を説明する。
図5は,本発明の第2の実施形態に係る電子機器300を表すブロック図である。電子機器300は,主処理部310,ハードディスク(HD)201,フラッシュメモリ202,SDRAM203,主コントローラ210,電源220,電源コントローラ331,操作スイッチ232,状態センサ240,ホストインターフェース251,ディスクインターフェース252,フラッシュメモリインターフェース253,SDRAMインターフェース254,センサインターフェース256,スイッチインターフェース257を有する。
電子機器300は,例えば,音声再生装置(オーディオプレーヤ),映像再生装置,ゲーム機,パーソナルコンピュータ,電子手帳等の種々の機器に対応できる。情報記録システム10では,ホスト装置100,情報記録装置200の2つの装置から構成されていたのに対して,電子機器300は一体的な装置として構成されている。
電子機器300は,情報記録システム10でのホスト装置100に替えて,主処理部310が配置される。この主処理部310は,電子機器300の基本的な機能(例えば,音声再生機能,映像再生機能,ゲーム機能)を発揮する。
電子機器300は,電源インターフェース255が存在せず,電源コントローラ331が主処理部310に接続される。即ち,電源コントローラ331での外部電源の接続の検出結果は主処理部310を介して,主コントローラ210に通知される。この通知は,主処理部310からの制御信号,コマンドを用いることができる。コマンドとしては,専用のコマンドの利用,既存のコマンドの未使用部(アーギュメント部)の利用のいずれでも可能である。また,制御信号,コマンドに替えて,物理的なスイッチを用いて,検出結果を主コントローラ210に通知しても良い。
なお,第1の実施形態と同様に,主処理部310を介さず,電源インターフェースを介して,主コントローラ210に検出結果を通知しても良い。
なお,第1の実施形態と同様に,主処理部310を介さず,電源インターフェースを介して,主コントローラ210に検出結果を通知しても良い。
電子機器300の動作手順は,情報記録装置200と本質的に相違するものではないので,説明を省略する。
(その他の実施形態)
本発明の実施形態は上記の実施形態に限られず拡張,変更可能であり,拡張,変更した実施形態も本発明の技術的範囲に含まれる。
本発明の実施形態は上記の実施形態に限られず拡張,変更可能であり,拡張,変更した実施形態も本発明の技術的範囲に含まれる。
10…情報記録システム,100…ホスト装置,200…情報記録装置,201…ハードディスク,202…フラッシュメモリ,203…SDRAM,210…主コントローラ,211…コマンド解析部,212…アクセス可否決定部,213…アクセス可否記憶部,214…接続情報記憶部,215…操作情報記憶部,216…同期決定部,217…書込・読出部,220…電源,231…電源コントローラ,232…操作スイッチ,240…状態センサ,251…ホストインターフェース,252…ディスクインターフェース,253…フラッシュメモリインターフェース,254…SDRAMインターフェース,255…電源インターフェース,256…センサインターフェース,257…スイッチインターフェース,300…電子機器,310…主処理部,331…電源コントローラ
Claims (9)
- ディスク状記録媒体およびキャッシュメモリにデータを書き込む情報記録装置であって,
外部電源の接続の有無を表す接続情報を記憶する記憶部と,
前記接続情報に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定する決定部と,
前記決定の結果に対応して,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込む書込部と,
を具備することを特徴とする情報記録装置。 - 外部電源からの電力を蓄積して供給する電源と,
前記電源への外部電源の接続を検出する検出部と,をさらに具備し,
前記接続情報が,前記検出部による検出結果を表す
ことを特徴とする請求項1記載の情報記録装置。 - 前記接続情報が,前記情報記録装置に接続されるホスト装置での外部電源の接続の有無を表す
ことを特徴とする請求項1記載の情報記録装置。 - 操作スイッチ,をさらに具備し,
前記決定部が,前記操作スイッチの操作に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定する
ことを特徴とする請求項1乃至3のいずれか1項に記載の情報記録装置。 - 前記ディスク状記録媒体へのアクセスの許可または禁止を表すアクセス可否情報を記憶する第2の記憶部と,
前記アクセス可否情報に対応して,前記ディスク状記録媒体および前記キャッシュメモリの双方または前記キャッシュメモリのみのいずれかにデータを書き込む第2の書込部と,
をさらに具備することを特徴とする請求項1乃至4のいずれか1項に記載の情報記録装置。 - 前記書込部により前記ディスク状記録媒体に書き込まれたデータを前記キャッシュメモリから削除する削除部,をさらに具備する
ことを特徴とする請求項1乃至5のいずれか1項に記載の情報記録装置。 - 前記決定部が,
前記接続情報に基づいて,値を決定する第1の決定部と,
前記キャッシュメモリのみに記録されたデータの量または割合と,前記決定された値との比較結果に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定する第2の決定部と,を有する,
ことを特徴とする請求項1乃至6のいずれか1項に記載の情報記録装置。 - 前記情報記録装置に接続されるホスト装置からの書き込みコマンドを検出する書込検出部をさらに具備し,
前記書き込みコマンドの検出に対応して,前記決定部が書き込むか否かを決定する
ことを特徴とする請求項1乃至7のいずれか1項に記載の情報記録装置。 - ディスク状記録媒体およびキャッシュメモリにデータを書き込む情報記録装置での情報記録方法であって,
前記ディスク状記録媒体へのアクセスの許可または禁止を表すアクセス可否情報に対応して,前記ディスク状記録媒体および前記キャッシュメモリの双方または前記キャッシュメモリのみのいずれかにデータを書き込むステップと,
所定の検出の有無に基づいて,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むか否かを決定するステップと,
前記決定の結果に対応して,前記キャッシュメモリのみに記録されたデータを前記ディスク状記録媒体に書き込むステップと,
を具備することを特徴とする情報記録方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007335131A JP2009158011A (ja) | 2007-12-26 | 2007-12-26 | 情報記録装置および情報記録方法 |
CNA2008102146638A CN101470588A (zh) | 2007-12-26 | 2008-09-01 | 信息记录装置和信息记录方法 |
US12/206,270 US20090172454A1 (en) | 2007-12-26 | 2008-09-08 | Information recording device and information recording method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007335131A JP2009158011A (ja) | 2007-12-26 | 2007-12-26 | 情報記録装置および情報記録方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009158011A true JP2009158011A (ja) | 2009-07-16 |
Family
ID=40800129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007335131A Pending JP2009158011A (ja) | 2007-12-26 | 2007-12-26 | 情報記録装置および情報記録方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090172454A1 (ja) |
JP (1) | JP2009158011A (ja) |
CN (1) | CN101470588A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014146142A (ja) * | 2013-01-29 | 2014-08-14 | Lenovo Singapore Pte Ltd | 回転式のディスクを備える記憶装置のパワー・ステートを制御する方法および携帯式コンピュータ |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10552053B2 (en) * | 2016-09-28 | 2020-02-04 | Seagate Technology Llc | Hybrid data storage device with performance mode data path |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3756708B2 (ja) * | 1999-09-30 | 2006-03-15 | 株式会社東芝 | 情報処理端末装置およびそのファイル管理方法 |
US6725342B1 (en) * | 2000-09-26 | 2004-04-20 | Intel Corporation | Non-volatile mass storage cache coherency apparatus |
KR100759427B1 (ko) * | 2005-03-17 | 2007-09-20 | 삼성전자주식회사 | 전력 소모가 적은 하드디스크 드라이버 및 이를 구비한 정보처리 시스템, 그리고 그들의 데이터 입출력 방법 |
JP2007193448A (ja) * | 2006-01-17 | 2007-08-02 | Toshiba Corp | 情報記録装置及びその制御方法 |
US7411757B2 (en) * | 2006-07-27 | 2008-08-12 | Hitachi Global Storage Technologies Netherlands B.V. | Disk drive with nonvolatile memory having multiple modes of operation |
-
2007
- 2007-12-26 JP JP2007335131A patent/JP2009158011A/ja active Pending
-
2008
- 2008-09-01 CN CNA2008102146638A patent/CN101470588A/zh active Pending
- 2008-09-08 US US12/206,270 patent/US20090172454A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014146142A (ja) * | 2013-01-29 | 2014-08-14 | Lenovo Singapore Pte Ltd | 回転式のディスクを備える記憶装置のパワー・ステートを制御する方法および携帯式コンピュータ |
Also Published As
Publication number | Publication date |
---|---|
CN101470588A (zh) | 2009-07-01 |
US20090172454A1 (en) | 2009-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10776153B2 (en) | Information processing device and system capable of preventing loss of user data | |
JP4768504B2 (ja) | 不揮発性フラッシュメモリを用いる記憶装置 | |
EP3633517B1 (en) | Storage device and method of operating storage device | |
JP5983019B2 (ja) | 制御装置、記憶装置、記憶制御方法 | |
JP2009020986A (ja) | ディスク・ドライブ装置及びディスク・ドライブ装置において不揮発性半導体メモリ領域上のデータを管理するテーブルを保存する方法 | |
JP2007193440A (ja) | 不揮発性キャッシュメモリを用いる記憶装置とその制御方法 | |
JPWO2004031966A1 (ja) | 不揮発性記憶装置の制御方法 | |
WO2009118917A1 (ja) | フラッシュメモリを用いた記憶装置 | |
US20080025706A1 (en) | Information recording apparatus and control method thereof | |
JP2007193441A (ja) | 不揮発性キャッシュメモリを用いる記憶装置とその制御方法 | |
US7913029B2 (en) | Information recording apparatus and control method thereof | |
US20070168602A1 (en) | Information storage device and its control method | |
US8626985B2 (en) | Hybrid optical disk drive, method of operating the same, and electronic system adopting the hybrid optical disk drive | |
US20150113208A1 (en) | Storage apparatus, cache controller, and method for writing data to nonvolatile storage medium | |
US20110167203A1 (en) | Method and apparatus for cache control in a data storage device | |
US20170090768A1 (en) | Storage device that performs error-rate-based data backup | |
US20080244173A1 (en) | Storage device using nonvolatile cache memory and control method thereof | |
US8776232B2 (en) | Controller capable of preventing spread of computer viruses and storage system and method thereof | |
JP2008310664A (ja) | アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体 | |
US9389803B2 (en) | Method for controlling interface operation and interface device applying the same | |
JP4731325B2 (ja) | 記録媒体、データ処理装置及びデータ処理方法 | |
JP2009158011A (ja) | 情報記録装置および情報記録方法 | |
JP4919983B2 (ja) | データ記憶装置及びデータ記憶装置におけるデータ管理方法 | |
US20070174739A1 (en) | Disk device, method of writing data in disk device, and computer product | |
JP2008059007A (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090714 |