JPWO2009050765A1 - 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置 - Google Patents

媒体記憶装置のリード/ライト処理方法及び媒体記憶装置 Download PDF

Info

Publication number
JPWO2009050765A1
JPWO2009050765A1 JP2009537772A JP2009537772A JPWO2009050765A1 JP WO2009050765 A1 JPWO2009050765 A1 JP WO2009050765A1 JP 2009537772 A JP2009537772 A JP 2009537772A JP 2009537772 A JP2009537772 A JP 2009537772A JP WO2009050765 A1 JPWO2009050765 A1 JP WO2009050765A1
Authority
JP
Japan
Prior art keywords
write
read
data
host
storage device
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
Application number
JP2009537772A
Other languages
English (en)
Inventor
佐藤 賀之
賀之 佐藤
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.)
Toshiba Storage Device Corp
Original Assignee
Toshiba Storage Device 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 Toshiba Storage Device Corp filed Critical Toshiba Storage Device Corp
Publication of JPWO2009050765A1 publication Critical patent/JPWO2009050765A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/04Arrangements for preventing, inhibiting, or warning against double recording on the same blank or against other recording or reproducing malfunctions
    • G11B19/041Detection or prevention of read or write errors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/1075Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data
    • G11B2020/10759Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B2020/10935Digital recording or reproducing wherein a time constraint must be met
    • G11B2020/10944Real-time recording or reproducing, e.g. for ensuring seamless playback of AV data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • G11B2020/183Testing wherein at least one additional attempt is made to read or write the data when a first attempt is unsuccessful
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

ホスト(100)からのリードコマンドに応じて、リード処理し、且つライトコマンドに応じて、ライト処理する媒体記憶装置において、受領したリードコマンドにより、ホスト(100)が、連続データの再生処理のため、一定間隔で発行されるリードコマンドであることを認識し、再生処理中に受信したライトコマンドに対し、ライト処理で、前記ライト失敗の可能性があるかを判定し、ライト失敗の可能性がある場合に、一定間隔で発行されるリードコマンドの受信を許可する制御回路(28)を設けた。音楽や映像の再生処理中に、リードコマンドの間に送信されるライトコマンドの処理遅延により、リードコマンドの受け付け及び処理が遅延することを防止でき、音楽や映像再生の途切れを防止できる。

Description

本発明は、ヘッドにより媒体のデータをリード及びライトする媒体記憶装置及び媒体記憶装置のリード/ライト処理方法に関し、特に、外部ユニットから定期的に音楽又は映像データのリード要求を発行される媒体記憶装置及び媒体記憶装置のリード/ライト処理方法に関する。
磁気ディスク装置や光ディスク装置等の媒体記憶装置は、ヘッドにより、媒体にデータをライトして、データを記憶し、リードして、記憶データを再生する。近年、媒体記憶装置が、音楽や映像データの記憶に利用されている。このような媒体記憶装置は、パーソナルコンピュータ等のホストに接続され、ホストの記憶装置としても使用される。図9に示すように、パーソナルコンピュータやモバイルコンピュータ等のホスト100に、内蔵又は外付けで、媒体記憶装置110が接続される。
このようなホスト100では、音楽再生をクリックすると、ホスト100は、媒体記憶装置110の音楽データをリードする。この場合、図10に示すように、ホスト100は、一定間隔で、媒体記憶装置110にリード要求を発し、リード要求毎に、媒体記憶装置110から音楽データとステータスSTSとを受け、音楽再生する。
即ち、音楽や映像は、時間とともに変化するため、ホスト100は、一度に、所望の音楽データ全部をリードすると、その分、メモリ容量が必要となるため、音楽データの一部を、順次要求する。
又、ホスト100は、媒体記憶装置110をホストの処理のための記憶装置としても利用する。例えば、ホスト100が、あるアプリケーションを立ち上げ、処理しながら、音楽再生を行うケースがある。この場合に、ホスト100が、アプリケーションの処理におけるデータコピー等の指示により、媒体記憶装置110に、ライト要求を発行する場合がある。
一方、媒体記憶装置のライト処理においては、受信したライトデータを一旦、キャッシュメモリ(又はバッファメモリ)に格納し、その後、媒体にヘッドでライトする。そして、ライト失敗時には、キャッシュメモリのライトデータを読み出し、再度、ヘッドで媒体にライトする(これをライトリトライという)。このライト失敗の原因としては、外部から装置が振動を受けた場合や、温度等の環境変化が生じた場合が挙げられる。
このような振動等を受けた場合、その振動を受けない状態に変化するまでは、何度もライトリトライを実行しても、ライト動作が成功しないおそれがある。このため、従来は、振動等のライト失敗の可能性のある環境状態では、ライトリトライを実行せずに、キャッシュメモリのライトデータを、他の半導体メモリにセーブし、振動等のライト失敗の可能性がなくなると、セーブしたライトデータを、媒体にヘッドで、ライトすることが、提案されている(例えば、特許文献1,2)。
特開2006−269006号公報 特開2004−173244号公報
ところが、このライトリトライは、ホストの要求を待たせることになる。図11に示すように、ホスト100が、リード要求R1を媒体記憶装置110に発行すると、媒体記憶装置110は、媒体から要求されたセクタ数分の音楽データを読み出し、キャッシュメモリに格納した後、ホスト100に転送する。次に、ホスト100が、ライト要求W1,W2を媒体記憶装置110に発行すると、媒体記憶装置110は、ホスト100からのライトデータを、キャッシュメモリに格納した後、ヘッドにより媒体に対して、ライトデータを書き込むことになる。
この時、振動等により、ライトが失敗すると、ライトリトライが実行される。一方、音楽や映像再生アプリケーションが起動している場合には、このライト処理と関係なく、図10で説明したように、一定間隔で、音楽データ等のリード要求を発行する。
しかしながら、振動が頻繁に発生する状態で、ライトコマンドが発行されると、バッファがフルの状態となったり、ステータスをホストに報告できないため、ホスト100からの一定間隔のリードコマンドの受け付けが不可能となる。
このため、図11に示すように、ホスト100は、ライト処理が完了するまで、リードコマンドを発行できないため、音楽再生では、音飛びという現象が、映像再生では、動画像が途切れるという現象が生じることになる。
従って、本発明の目的は、ライトリトライが生じても、一定時間間隔で発行されるリードコマンドに対する応答の遅延を防止するための媒体記憶装置のリード/ライト処理方法及び媒体記憶装置を提供することにある。
又、本発明の他の目的は、一定時間間隔で発行されるリード処理のモードを認識し、ライトリトライが生じても、リードコマンドに対する応答遅延を防止するための媒体記憶装置のリード/ライト処理方法及び媒体記憶装置を提供することにある。
更に、本発明の他の目的は、ライトコマンドを受け付けても、リードコマンドによる音楽や映像再生の途切れを防止するための媒体記憶装置のリード/ライト処理方法及び媒体記憶装置を提供することにある。
この目的の達成のため、本発明の媒体記憶装置は、記録媒体からデータを読み出し、且つデータを記録するリード/ライト機構と、前記読み出したリードデータと、ホストからのライトデータを一時格納するバッファメモリと、ホストからのリード要求に応じて、前記バッファメモリ又は前記記憶媒体からリードデータを読み出し、前記ホストに送信し、且つ前記ホストからのライト要求に応じて、前記ホストからライトデータを前記バッファメモリに格納後、前記記憶媒体にライトし、前記ライト失敗時に、ライトリトライを行う制御回路とを有する。そして、前記制御回路は、受領した前記リードコマンドにより、前記ホストが、連続データの再生処理のため、一定間隔で発行されるリードコマンドであることを認識し、前記再生処理中に受信したライトコマンドに対し、ライト処理で、前記ライト失敗の可能性があるかを判定し、前記ライト失敗の可能性がある場合に、前記一定間隔で発行されるリードコマンドの受信を許可する。
又、本発明のリード/ライト処理方法は、ホストからのリード要求に応じて、バッファメモリ又は媒体リード/ライト機構により記憶媒体からリードデータを読み出し、前記ホストに送信するリード処理ステップと、前記ホストからのライト要求に応じて、前記ホストからライトデータを前記バッファメモリに格納後、前記媒体リード/ライト機構により、前記記憶媒体にライトし、前記ライト失敗時に、ライトリトライを行うライト処理ステップと、前記受領した前記リードコマンドにより、前記ホストが、連続データの再生処理のため、一定間隔で発行されるリードコマンドであることを認識するステップと、前記再生処理中に受信したライトコマンドに対し、前記ライト処理で、前記ライト失敗の可能性があるかを判定するステップと、前記ライト失敗の可能性がある場合に、前記一定間隔で発行されるリードコマンドの受信を許可するステップとを有する。
更に、本発明では、好ましくは、前記制御回路は、前記ライト失敗の可能性がある場合に、前記バッファメモリに、前記ライトコマンドで指定されたライトデータを格納できる空き容量があるかを判定し、前記空き容量がある場合に、前記ホストにライトデータを要求し、前記バッファメモリに格納した後、前記一定間隔で発行されるリードコマンドの受信を許可する。
更に、本発明では、好ましくは、前記制御回路は、前記ライト失敗の可能性がある場合に、前記バッファメモリに、前記ライトコマンドで指定されたライトデータを格納できる空き容量があるかを判定し、前記空き容量がない場合に、前記ホストへのライトデータの要求を禁止し、前記一定間隔で発行されるリードコマンドの受信を許可する。
更に、本発明では、好ましくは、前記制御回路は、前記バッファメモリに前記ライトデータを格納後、ライト処理を実行するとともに、前記一定間隔でのリードコマンドの到来を待つ。
更に、本発明では、好ましくは、前記制御回路は、前記リードコマンドで要求されたデータサイズにより、前記再生処理であることを認識する。
更に、本発明では、好ましくは、前記制御回路は、前記リードコマンドの発行パターンを解析して、前記再生処理であることを認識する。
更に、本発明では、好ましくは、前記制御回路は、前記ライト失敗可能性を、前記ライト失敗の過去の履歴から、判定する。
更に、本発明では、好ましくは、前記制御回路は、前記ライト失敗可能性を、前記ライト処理のリトライ及び前記装置が受ける振動発生の履歴の少なくとも一方により、判定する。
更に、本発明では、好ましくは、前記制御回路は、前記ライト失敗可能性を、前記装置の環境温度により、判定する。
更に、本発明では、好ましくは、前記制御回路は、前記ライト失敗可能性を、前記装置が振動を受けたか否かにより、判定する。
受領した前記リードコマンドにより、ホストが、連続データの再生処理のため、一定間隔で発行されるリードコマンドであることを認識し、再生処理中に受信したライトコマンドに対し、ライト処理で、前記ライト失敗の可能性があるかを判定し、ライト失敗の可能性がある場合に、一定間隔で発行されるリードコマンドの受信を許可するため、音楽や映像の再生処理中に、リードコマンドの間に送信されるライトコマンドの処理遅延により、リードコマンドの受け付け及び処理が遅延することを防止でき、音楽や映像再生の途切れを防止できる。
本発明の一実施形態を示す媒体記憶装置の構成図である。 図1の音楽再生認識処理の第1の実施の形態の処理フロー図である。 図1の音楽再生認識処理の第2の実施の形態の処理フロー図である。 図1の音楽再生認識処理の第3の実施の形態の処理フロー図である。 図1のリード/ライト処理の第1の実施の形態の処理フロー図である。 図5のリード/ライト処理の説明図である。 図1のリード/ライト処理の第2の実施の形態の処理フロー図である。 図7のリード/ライト処理の説明図である。 従来のシステムの構成図である。 図9の構成の音楽再生時のリードコマンドの発行タイミングの説明図である。 図9のシステムでの音楽再生中に、ライト処理を実行した場合の問題点の説明図である。
符号の説明
10 記憶媒体(ディスク)
12 ヘッド
14 アクチュエータ
18 スピンドルモータ
19 スピンドルモータの回転軸
20 リードチャネル
22 プリアンプ
26 サーボ・コンボ回路
28 MCU
30 DSP
32 ドライブインタフェース回路
34 フラッシュROM
36 ハードディスクコントローラ
38 データバッファ
52〜53 MCUのRAM
40,42,44,46,48 バス
以下、本発明の実施の形態を、媒体記憶装置、音楽再生認識処理、リード/ライト処理の第1の実施の形態、リード/ライト処理の第2の実施の形態、他の実施の形態の順で説明するが、本発明は、この実施の形態に限られない。
(媒体記憶装置)
図1は、本発明の一実施の形態の媒体記憶装置の構成図であり、媒体記憶装置として、磁気ディスク装置を示す。図1に示すように、磁気記憶媒体である磁気ディスク10が、スピンドルモータ18の回転軸19に設けられている。スピンドルモータ18は、磁気ディスク10を回転する。アクチュエータ(VCM)14は、先端に磁気ヘッド12を備え、磁気ヘッド12を磁気ディスク10の半径方向に移動させる。
アクチュエータ14は、回転軸を中心に回転するボイスコイルモータ(VCM)で構成される。図では、磁気ディスク装置に、2枚の磁気ディスク10が搭載され、4つの磁気ヘッド12が、同一のアクチュエータ14により同時に駆動される。
磁気ヘッド12は、リード素子と、ライト素子とからなる。磁気ヘッド12は、スライダに、磁気抵抗(MR)素子を含むリード素子を積層し、その上にライトコイルを含むライト素子を積層して、構成される。
プリアンプ22は、磁気ヘッド12に書込み信号を送出し、磁気ヘッド12の読み取り信号を増幅する。サーボ・コンボ回路26は、スピンドルモータ18を駆動し、且つボイスコイルモータ(VCM)14に駆動電流を供給し、VCM14を駆動する。
リードチャネル回路20は、プリアンプ22からの読み取り信号の内、サーボ信号から、磁気ヘッド12の位置を復調する。コントローラは、マイクロコントローラ(MCU)28と、DSP(デジタルシグナルプロセッサ)30と、ドライブインタフェース回路32とからなる。
DSP30は、リードチャネル回路20からの復調位置から現在位置を検出し、検出した現在位置と目標位置との誤差に従い、VCM駆動指令値を演算する。即ち、シーク、トラックフォローイングを含むサーボ制御を行う。
MCU28は、MPUと、ROMと,RAMとからなる。リードオンリーメモリ(ROM)は、MPUの制御プログラム等を格納する。ランダムアクセスメモリ(RAM)は、MPUの処理のためのデータ等を格納する。このMCU28が、後述する音楽再生認識処理及びリード/ライト処理、リトライ処理等を行う。
ドライブインタフェース回路32は、ドライブ側回路(リードチャネル20、プリアンプ22、サーボ・コンボ回路26)と、MCU28,DSP30とのブリッジを形成し、MCU28と、第1の内部バス44で接続され、DSP30と、第2の内部バス46で接続される。
フラッシュROM(Read Only Memory)34は、マイクロコード等のブートプログラムを格納する。ハードディスクコントローラ(HDC)36は、サーボ信号のセクタ番号を基準にして,1周内の位置を判断し,リードチャネル20に、データの記録・再生を指示する。
バッファ用ランダムアクセスメモリ(RAM)38は、HDC36にメモリバス48で接続され、リードデータやライトデータを一時格納する。HDC36は、SATA(Serial AT Attached)やSCSI(Small Computer System Interface) 等のインターフェイスIFで、ホスト100(図9参照)と通信する。バス40は、MCU28,フラッシュROM34、HDC36を接続する。又、HDC36は、リード及びライトデータのやりとりのため、データバス42で、リードチャネル20に接続される。
図1の構成では、HDC36が、ホスト100やドライブとのデータのやりとりを行い、DSP30が、磁気ヘッド12のシーク、トラックフォローイング制御を行い、MCU28が、HDC36が受領したコマンドに従い、各部を制御する処理を行う。
このMCU28に、振動を検出するショックセンサ50が接続され、MCU28が、ショックセンサ50の出力から、装置に振動が印加されたことを検出する。又、MCU28は、音楽再生モードを検出した時に、セットされる音楽再生フラグ52と、振動やリトライを受けた履歴を格納するリトライ履歴格納域53を有する。
通常のリード動作では、ホスト100からHDC36が、コマンドを受けると、HDC36又はMCU28が、コマンドを解析する。解析により、リードコマンドと判定されると、HDC36は、データバッファ38にリードコマンドの対象データがキャッシュされているかを判定し、キャッシュされていれば、データバッファ38の対象データを、ホスト110へ転送する。
一方、対象データが、データバッファ38にキャッシュされていない場合には、HDC36は、MCU28に、媒体リードを要求する。これに応じて、MCU28は、DSP30にリード対象データのセクタへのヘッドのシークを要求する。DSP30は、サーボ・コンボ回路26を介し、VCM14をサーボ制御し、磁気ヘッド12を、磁気ディスク10の目標トラックに位置付ける。
そして、位置付け完了により、RDC20は、磁気ヘッド12(リード素子)からのリード出力を復調し、リードデータを、HDC36へ転送する。HDC36は、転送されたリードデータを、バッファメモリ38に格納する。リードキャッシュ機能を持つ場合には、バッファメモリ38に格納されるリードデータは、リードコマンドで要求されたセクタのデータのみならず、その後のセクタのデータを含む。HDC36は、バッファメモリ38に格納されたリードデータから対象データを取り出し、ホスト100へ転送する。
又、コマンドが、ライトコマンドと解析されると、HDC36は、ホスト100からコマンドに続くライトデータを受信し、データバッファ38に格納する。そして、MCU28の指示により、ディスク10へのライト処理が実行される。即ち、MCU28は、DSP30にライト対象のセクタへのヘッドのシークを要求する。DSP30は、サーボ・コンボ回路26を介し、VCM14をサーボ制御し、磁気ヘッド12を、磁気ディスク10の目標トラックに位置付ける。
そして、位置付け完了により、HDC36は、データバッファ38のライトデータを、RDC20に転送する。RDC20は、リードデータに、ECC符号等を付し、プリアンプ22を介し、磁気ヘッド12(ライト素子)にライトデータに従うライト電流を与える。これにより、磁気ディスク10の対象セクタにライトデータが書き込まれる。
このライト処理中に、MCU28は、ショックセンサ50からの振動検出信号をモニターし、DSP30は、磁気ヘッド12の位置誤差を監視する。そして、MCU28が、所定値以上の振動を検出した場合、DSP30が、所定値以上の位置誤差を検出した場合に、ライト失敗と判定し、ライト動作を停止する。
ライト動作の停止後、MCU28は、ライトリトライ処理を行う。このライトリトライ処理は、前述のライト処理を再度行うものである。このライトリトライを所定回数実行しても、ライト処理が成功しなかった場合には、ホスト100へエラーを通知する。
この実施例では、MCU28が、後述するように、ホスト100からのリード要求が、音楽再生のリード要求であるかを認識し、音楽再生フラグ52をセットする。又、MCU28は、過去の振動検出やリトライの履歴を、履歴領域53に記憶しておき、ライトに時間がかかるか否かを判定する。そして、音楽再生モードで、ライトに時間がかかると判定すると、後述する音楽再生モードのリード/ライト処理を実行する。
(音楽再生認識処理)
次に、媒体記憶装置で、音楽再生モードの認識を行う処理を説明する。この処理は、ホスト100側の音楽再生アプリケーションに特別の処理を必要とせずに、媒体記憶装置側で認識できる。図2は、本発明の音楽再生認識処理の第1の実施の形態の処理フロー図である。
(S10)MCU28は、リードコマンドを受領したと判断すると、コマンドブロックのタスクファイルを解析する。タスクファイルには、前述のコマンド、開始LBA(論理ブロックアドレス)、要求セクタ数等が記載されている。
(S12)MCU28は、タスクファイルの要求セクタ数が、音楽再生データ用のセクタ数かを判定する。通常、音楽再生では、一定時間毎に、一定セクタ数のデータを要求する。MCU28は、タスクファイルの要求セクタ数が、音楽再生データ用のセクタ数でないと判定すると、音楽再生中フラグ52をセットすることなく、通常のリード処理に移行する。
(S14)一方、MCU28は、タスクファイルの要求セクタ数が、音楽再生データ用のセクタ数であると判定すると、音楽再生モードであるため、音楽再生中フラグ52をセットして、通常のリード処理に移行する。
このように、ホスト100が音楽再生する場合に、要求セクタ数が、通常のセクタ数より異なり、一定であることから、媒体記憶装置側で、この要求セクタ数からホスト100が、音楽再生モードであることを認識できる。
図3は、本発明の音楽再生認識処理の第2の実施の形態の処理フロー図である。
(S20)MCU28は、リードコマンドを受領したと判断すると、コマンドブロックのタスクファイルを解析する。タスクファイルには、前述のコマンド、開始LBA(論理ブロックアドレス)、要求セクタ数等が記載されている。
(S22)MCU28は、シーケンシャルアクセスであるかを判定する。即ち、MCU28は、リードコマンドが一定時間内で継続しているか否か、及びリードコマンドが一定時間間隔で発行されているか否かを、先に受けたリードコマンドと今回受けたリードコマンドの時間関係から判定する。前述のように、通常、音楽再生では、一定時間毎に、一定セクタ数のデータを要求する。MCU28は、シーケンシャルアクセスでないと判定すると、音楽再生中フラグ52をセットすることなく、通常のリード処理に移行する。
(S24)一方、MCU28は、シーケンシャルアクセスであると判定すると、音楽再生モードであるため、音楽再生中フラグ52をセットして、通常のリード処理に移行する。
このように、ホスト100が音楽再生する場合に、一定時間間隔で、リードコマンドを発行することから、媒体記憶装置側で、このリードコマンドの時間間隔(コマンド発行パターン)からホスト100が、音楽再生モードであることを認識できる。
図4は、本発明の音楽再生認識処理の第3の実施の形態の処理フロー図である。
(S30)MCU28は、リードコマンドを受領したと判断すると、データパターンを解析する。即ち、読み出し対象データのヘッダが、音楽データ特有のパターンかを解析する。
(S32)MCU28は、要求データパターンが音楽データ特有のパターンであるかを判定する。即ち、音楽データは、先頭に、フレーム番号や時間等の特有のパターンを有している。MCU28は、要求データパターンが、音楽特有のパターンでないと判定すると、音楽再生中フラグ52をセットすることなく、通常のリード処理に移行する。
(S34)一方、MCU28は、要求データパターンが、音楽特有のパターンであると判定すると、音楽再生モードであるため、音楽再生中フラグ52をセットして、通常のリード処理に移行する。
このように、ホスト100が音楽再生する場合に、音楽データが、先頭に特有のパターン(フレーム番号、時間等)を有することから、媒体記憶装置側で、この音楽データのパターンからホスト100が、音楽再生モードであることを認識できる。
(リード/ライト処理の第1の実施の形態)
図5は、本発明のリード/ライト処理の第1の実施の形態の処理フロー図、図6は、図5の処理のタイムチャート図である。
(S40)MCU28は、ライトコマンドをホスト100から受領すると、ライトデータ受領処理を開始する。MCU28は、音楽再生中フラグ52がセットされているか否かを判定する。
(S42)MCU28は、音楽再生中フラグ52がセットされていない場合には、ホスト100が音楽再生中でないため、ホスト100にライトデータを、要求し、ホスト100からのライトデータを、受信し、バッファメモリ(キャッシュメモリ)38に保存する。これにより、ライトデータ受領処理を終了する。
(S44)MCU28は、音楽再生中フラグ52がセットされている場合には、ホスト100が音楽再生中であるため、履歴領域53を参照して、以前のライト処理で、時間がかかったかを判定する。即ち、履歴領域53には、前述のように、以前の振動やリトライの発生の履歴を格納しているため、履歴領域53の参照により、以前のライト処理に時間がかかったか否かを判定できる。MCU28は、履歴領域53の参照により、以前のライト処理に時間がかからなかったと判定すると、図示しない温度センサから温度を検出する。MCU28は、検出温度と、低温検出のための基準閾値と比較して、低温であるかを判定する。低温であると、記憶媒体10の保持力が、温度依存性を持つため、増大し、ライト処理に失敗し、リトライが発生する可能性が高いため、このチエックを行う。MCU28は、低温でない場合には、ステップS42に進む。
(S46)逆に、ステップS44で、以前のライト処理に時間がかかった、又は低温であると判定された場合には、ライト処理に失敗して、リトライする可能性がある。このため、MCU28は、バッファメモリ38に、ライトコマンドで要求されたデータ分の空きがあるかを判定する。MCU28は、ライトコマンドで要求されたデータ分の空きがあると判定すると、ホスト100にライトデータを、要求し、ホスト100からのライトデータを、受信し、バッファメモリ(キャッシュメモリ)38に保存する。これにより、ライトデータ受領処理を終了する。
逆に、MCU28は、ライトコマンドで要求されたデータ分の空きがないと判定すると、ホスト100にライトデータを、要求せずに、ステータスを通知する。そして、ライトデータ受領処理を終了する。
図6で、具体的に説明すると、音楽再生中に、MCU28は、ホスト100からライトコマンドW1を受け、バッファメモリ38に空きがあるため、ホスト100にライトデータを要求し、ホスト100は、ライトデータW1Dataを送信する。このライトデータは、バッファメモリ38に格納された後、媒体10に、ヘッド12で、書込みを行う。
続いて、MCU28は、ホスト100からライトコマンドW2を受ける。この場合に、前のライトデータW1Dataの書込みが失敗し、リトライする場合には、バッファメモリ38に空きがない。従って、MCU28は、ホスト100にライトデータを要求しない。これにより、ホスト100は、音楽再生のリードコマンドR2を発行でき、キャッシュメモリ38から、リードデータR2をホスト100に送信できる。
このように、音楽再生中に、ライトコマンドを受領すると、先ず、ライト失敗する可能性があるかを調べ、ライト失敗する可能性がある場合には、バッファメモリ38に格納できる分のデータを要求し、ライト処理を行い、それ以上のライトデータは、要求しない。
このため、一定間隔で発行されるリードコマンドを受付、リードデータをホストへ送信できる。この場合、リードデータは、キャッシュメモリから得ても良く、又、ライトデータをこれ以上受信しないため、ライトリトライは、遅らせても良いから、媒体10をヘッド12でリードして、リードデータを得ても良い。
このため、音楽再生中に、ライトコマンドを受領しても、リードコマンドの応答時間の遅延を防止でき、ホストの再生処理の遅延を防止できる。このコマンドとしては、SATA(Serial AT Attached)のNCQ(Native Command Queing)コマンドを利用すると良い。
(リード/ライト処理の第2の実施の形態)
図7は、本発明のリード/ライト処理の第1の実施の形態の処理フロー図、図8は、図7の処理のタイムチャート図である。
(S50)MCU28は、ライトコマンドをホスト100から受領すると、ライトデータ受領処理を開始する。MCU28は、音楽再生中フラグ52がセットされているか否かを判定する。
(S52)MCU28は、音楽再生中フラグ52がセットされていない場合には、ホスト100が音楽再生中でないため、ホスト100にライトデータを、要求し、ホスト100からのライトデータを、受信し、バッファメモリ(キャッシュメモリ)38に保存する。そして、ステップS60に進む。
(S54)MCU28は、音楽再生中フラグ52がセットされている場合には、ホスト100が音楽再生中であるため、履歴領域53を参照して、以前のライト処理で、時間がかかったかを判定する。即ち、履歴領域53には、前述のように、以前の振動やリトライの発生の履歴を格納しているため、履歴領域53の参照により、以前のライト処理に時間がかかったか否かを判定できる。MCU28は、履歴領域53の参照により、以前のライト処理に時間がかからなかったと判定すると、図示しない温度センサから温度を検出する。MCU28は、検出温度と、低温検出のための基準閾値と比較して、低温であるかを判定する。低温であると、記憶媒体10の保持力が温度依存性を持つため、保持力が増大し、ライト処理に失敗し、リトライが発生する可能性が高いため、このチエックを行う。MCU28は、低温でない場合には、ステップS52に進む。
(S56)逆に、ステップS54で、以前のライト処理に時間がかかった、又は低温であると判定された場合には、ライト処理に失敗して、リトライする可能性がある。このため、MCU28は、バッファメモリ38に、ライトコマンドで要求されたデータ分の空きがあるかを判定する。MCU28は、ライトコマンドで要求されたデータ分の空きがあると判定すると、ホスト100にライトデータを、要求し、ホスト100からのライトデータを、受信し、バッファメモリ(キャッシュメモリ)38に保存する。そして、ライトデータ受領処理を終了する。逆に、MCU28は、ライトコマンドで要求されたデータ分の空きがないと判定すると、ホスト100にライトデータを、要求しない。
(S58)MCU28は、前回の音楽データからの経過時間が、一定時間を越えたかを判定する。即ち、ライトコマンドのステータス報告(STS)を、音楽再生用リードコマンドの発行タイミングまで待つ。発行タイミングの時間は、音楽再生中フラグをセットする時に、保持しておく。
(S60)MCU28は、経過時間が一定時間を越えると、ホスト100に、ステータスを通知する。そして、ライトデータ受領処理を終了する。
図8で、具体的に説明すると、音楽再生中に、MCU28は、ホスト100からライトコマンドW1を受け、バッファメモリ38に空きがあるため、ホスト100にライトデータを要求し、ホスト100は、ライトデータW1Dataを送信する。このライトデータは、バッファメモリ38に格納された後、媒体10に、ヘッド12で、書込みを行う。
そして、この媒体へのライト処理に係らず、MCU28は、経過時間が、一定時間を越えると、ホスト100にステータスを報告する。これにより、ホスト100は、音楽再生のリードコマンドR2を発行でき、キャッシュメモリ38又は媒体10から、リードデータR2をホスト100に送信できる。
この場合に、ライトデータW1Dataの書込みが失敗し、リトライしても、ホスト100は、音楽再生のリードコマンドR2を発行でき、キャッシュメモリ38から、リードデータR2をホスト100に送信できる。
このように、音楽再生中に、ライトコマンドを受領すると、先ず、ライト失敗する可能性があるかを調べ、ライト失敗する可能性がある場合には、バッファメモリ38に格納できる分のデータを要求し、ライト処理を行い、それ以上のライトデータは、要求せずに、リードコマンドの繰り返し時点で、ステータスを報告する。
このため、一定間隔で発行されるリードコマンドを受付、リードデータをホストへ送信できる。この場合、リードデータは、キャッシュメモリから得ても良く、又、ライトデータをこれ以上受信しないため、ライトリトライは、遅らせても良いから、媒体10をヘッド12でリードして、リードデータを得ても良い。
(他の実施の形態)
前述の実施の形態では、媒体記憶装置を、磁気ディスク装置の適用の例で説明したが、光ディスク装置等の他のディスク装置や、回転する記憶媒体を使用する装置にも適用できる。又、コントローラの構成も、図1のもので説明したが、他の構成のものを適用できる。更に、ライト失敗可能性を、過去の履歴で判断したが、現在の振動センサの出力から、判定しても良い。又、音楽再生の例で説明したが、映像等の動画再生等の他の連続性を持ったデータの再生に適用できる。
以上、本発明を、実施の形態で説明したが、本発明は、その趣旨の範囲内で種々の変形が可能であり、これを本発明の範囲から排除するものではない。
受領した前記リードコマンドにより、ホストが、連続データの再生処理のため、一定間隔で発行されるリードコマンドであることを認識し、再生処理中に受信したライトコマンドに対し、ライト処理で、前記ライト失敗の可能性があるかを判定し、ライト失敗の可能性がある場合に、一定間隔で発行されるリードコマンドの受信を許可するため、音楽や映像の再生処理中に、リードコマンドの間に送信されるライトコマンドの処理遅延により、リードコマンドの受け付け及び処理が遅延することを防止でき、音楽や映像再生の途切れを防止できる。

Claims (20)

  1. 記録媒体からデータを読み出し、且つデータを記録するリード/ライト機構と、
    前記読み出したリードデータと、ホストからのライトデータを一時格納するバッファメモリと、
    ホストからのリード要求に応じて、前記バッファメモリ又は前記記憶媒体からリードデータを読み出し、前記ホストに送信し、且つ前記ホストからのライト要求に応じて、前記ホストからライトデータを前記バッファメモリに格納後、前記記憶媒体にライトし、前記ライト失敗時に、ライトリトライを行う制御回路とを有し、
    前記制御回路は、受領した前記リードコマンドにより、前記ホストが、連続データの再生処理のため、一定間隔で発行されるリードコマンドであることを認識し、前記再生処理中に受信したライトコマンドに対し、ライト処理で、前記ライト失敗の可能性があるかを判定し、前記ライト失敗の可能性がある場合に、前記一定間隔で発行されるリードコマンドの受信を許可する
    ことを特徴とする媒体記憶装置。
  2. 前記制御回路は、前記ライト失敗の可能性がある場合に、前記バッファメモリに、前記ライトコマンドで指定されたライトデータを格納できる空き容量があるかを判定し、前記空き容量がある場合に、前記ホストにライトデータを要求し、前記バッファメモリに格納した後、前記一定間隔で発行されるリードコマンドの受信を許可する
    ことを特徴とする請求項1の媒体記憶装置。
  3. 前記制御回路は、前記ライト失敗の可能性がある場合に、前記バッファメモリに、前記ライトコマンドで指定されたライトデータを格納できる空き容量があるかを判定し、前記空き容量がない場合に、前記ホストへのライトデータの要求を禁止し、前記一定間隔で発行されるリードコマンドの受信を許可する
    ことを特徴とする請求項2の媒体記憶装置。
  4. 前記制御回路は、前記バッファメモリに前記ライトデータを格納後、ライト処理を実行するとともに、前記一定間隔でのリードコマンドの到来を待つ
    ことを特徴とする請求項2の媒体記憶装置。
  5. 前記制御回路は、前記リードコマンドで要求されたデータサイズにより、前記再生処理であることを認識する
    ことを特徴とする請求項1の媒体記憶装置。
  6. 前記制御回路は、前記リードコマンドの発行パターンを解析して、前記再生処理であることを認識する
    ことを特徴とする請求項1の媒体記憶装置。
  7. 前記制御回路は、前記ライト失敗可能性を、前記ライト失敗の過去の履歴から、判定する
    ことを特徴とする請求項1の媒体記憶装置。
  8. 前記制御回路は、前記ライト失敗可能性を、前記ライト処理のリトライ及び前記装置が受ける振動発生の履歴の少なくとも一方により、判定する
    ことを特徴とする請求項7の媒体記憶装置。
  9. 前記制御回路は、前記ライト失敗可能性を、前記装置の環境温度により、判定する
    ことを特徴とする請求項1の媒体記憶装置。
  10. 前記制御回路は、前記ライト失敗可能性を、前記装置が振動を受けたか否かにより、判定する
    ことを特徴とする請求項1の媒体記憶装置。
  11. ホストからのリード要求に応じて、バッファメモリ又は媒体リード/ライト機構により記憶媒体からリードデータを読み出し、前記ホストに送信するリード処理ステップと、
    前記ホストからのライト要求に応じて、前記ホストからライトデータを前記バッファメモリに格納後、前記媒体リード/ライト機構により、前記記憶媒体にライトし、前記ライト失敗時に、ライトリトライを行うライト処理ステップと、
    前記受領した前記リードコマンドにより、前記ホストが、連続データの再生処理のため、一定間隔で発行されるリードコマンドであることを認識するステップと、
    前記再生処理中に受信したライトコマンドに対し、前記ライト処理で、前記ライト失敗の可能性があるかを判定するステップと、
    前記ライト失敗の可能性がある場合に、前記一定間隔で発行されるリードコマンドの受信を許可するステップとを有する
    ことを特徴とする媒体記憶装置のリード/ライト処理方法。
  12. 前記ライト失敗の可能性がある場合に、前記バッファメモリに、前記ライトコマンドで指定されたライトデータを格納できる空き容量があるかを判定するステップと、
    前記空き容量がある場合に、前記ホストにライトデータを要求し、前記バッファメモリに格納した後、前記一定間隔で発行されるリードコマンドの受信を許可するステップとを更に有する
    ことを特徴とする請求項11の媒体記憶装置のリード/ライト処理方法。
  13. 前記判定により、前記空き容量がない場合に、前記ホストへのライトデータの要求を禁止し、前記一定間隔で発行されるリードコマンドの受信を許可するステップを更に有する
    ことを特徴とする請求項12の媒体記憶装置のリード/ライト処理方法。
  14. 前記許可ステップは、前記バッファメモリに前記ライトデータを格納後、ライト処理を実行するとともに、前記一定間隔でのリードコマンドの到来を待つステップからなる
    ことを特徴とする請求項12の媒体記憶装置のリード/ライト処理方法。
  15. 前記認識ステップは、前記リードコマンドで要求されたデータサイズにより、前記再生処理であることを認識するステップからなる
    ことを特徴とする請求項11の媒体記憶装置のリード/ライト処理方法。
  16. 前記認識ステップは、前記リードコマンドの発行パターンを解析して、前記再生処理であることを認識するステップからなる
    ことを特徴とする請求項11の媒体記憶装置のリード/ライト処理方法。
  17. 前記判定ステップは、前記ライト失敗可能性を、前記ライト失敗の過去の履歴から、判定するステップからなる
    ことを特徴とする請求項11の媒体記憶装置のリード/ライト処理方法。
  18. 前記判定ステップは、前記ライト失敗可能性を、前記ライト処理のリトライ及び前記装置が受ける振動発生の履歴の少なくとも一方により、判定するステップからなる
    ことを特徴とする請求項17の媒体記憶装置のリード/ライト処理方法。
  19. 前記判定ステップは、前記ライト失敗可能性を、前記装置の環境温度により、判定するステップからなる
    ことを特徴とする請求項11の媒体記憶装置のリード/ライト処理方法。
  20. 前記判定ステップは、前記ライト失敗可能性を、前記装置が振動を受けたか否かにより、判定するステップからなる
    ことを特徴とする請求項11の媒体記憶装置のリード/ライト処理方法。
JP2009537772A 2007-10-17 2007-10-17 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置 Pending JPWO2009050765A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2007/001130 WO2009050765A1 (ja) 2007-10-17 2007-10-17 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置

Publications (1)

Publication Number Publication Date
JPWO2009050765A1 true JPWO2009050765A1 (ja) 2011-02-24

Family

ID=40567061

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009537772A Pending JPWO2009050765A1 (ja) 2007-10-17 2007-10-17 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置

Country Status (3)

Country Link
US (1) US20100202078A1 (ja)
JP (1) JPWO2009050765A1 (ja)
WO (1) WO2009050765A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009060500A1 (ja) * 2007-11-07 2009-05-14 Fujitsu Limited 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置
JP4922434B2 (ja) 2010-05-31 2012-04-25 株式会社東芝 データライト制御装置及びデータライト制御方法
US8743491B2 (en) 2012-04-05 2014-06-03 International Business Machines Corporation Variable stopwrite threshold
US8743492B2 (en) 2012-07-20 2014-06-03 International Business Machines Corporation Variable stopwrite threshold with variable smoothing factor
US8810939B2 (en) 2012-08-28 2014-08-19 International Business Machines Corporation Variable stopwrite threshold using kurtosis
US8902531B2 (en) 2012-08-28 2014-12-02 International Business Machines Corporation Dynamically controlling tape velocity
US9087545B2 (en) * 2013-07-16 2015-07-21 Saegate Technology Llc Request management for rotating data storage media
US20170212711A1 (en) * 2016-01-21 2017-07-27 Kabushiki Kaisha Toshiba Disk apparatus and control method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001307413A (ja) * 2000-04-24 2001-11-02 Hitachi Ltd 回転型記憶装置の制御方法および回転型記憶装置
JP2003297025A (ja) * 2002-03-29 2003-10-17 Hitachi Ltd ディスク装置
JP2006269006A (ja) * 2005-03-25 2006-10-05 Fujitsu Ltd 記憶装置、制御方法及びプログラム
JP2007011661A (ja) * 2005-06-30 2007-01-18 Hitachi Global Storage Technologies Netherlands Bv ディスク装置及びディスク装置のキャッシュメモリ制御方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5654841A (en) * 1995-07-07 1997-08-05 Seagate Technology, Inc. Detection of mechanical defects in a disc drive using injected test signals
US6674589B2 (en) * 2000-02-25 2004-01-06 Seagate Technology Llc Method for harmonic frequency identification in a disc drive
JP3535800B2 (ja) * 2000-03-31 2004-06-07 松下電器産業株式会社 ディスクメモリ装置、データ先読み方法、及び記録媒体
JP2001331377A (ja) * 2000-05-22 2001-11-30 Hitachi Ltd 再生エラーの処理方法及びこれを用いたディスク装置
US6928461B2 (en) * 2001-01-24 2005-08-09 Raja Singh Tuli Portable high speed internet access device with encryption
IL159537A0 (en) * 2001-06-28 2004-06-01 Omnivee Inc Method and apparatus for control and processing of video images
US7274639B1 (en) * 2004-05-21 2007-09-25 Western Digital Technologies, Inc. Disk drive performing multi-level prioritization of entries in a suspect sector list to identify and relocate defective data sectors

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001307413A (ja) * 2000-04-24 2001-11-02 Hitachi Ltd 回転型記憶装置の制御方法および回転型記憶装置
JP2003297025A (ja) * 2002-03-29 2003-10-17 Hitachi Ltd ディスク装置
JP2006269006A (ja) * 2005-03-25 2006-10-05 Fujitsu Ltd 記憶装置、制御方法及びプログラム
JP2007011661A (ja) * 2005-06-30 2007-01-18 Hitachi Global Storage Technologies Netherlands Bv ディスク装置及びディスク装置のキャッシュメモリ制御方法

Also Published As

Publication number Publication date
US20100202078A1 (en) 2010-08-12
WO2009050765A1 (ja) 2009-04-23

Similar Documents

Publication Publication Date Title
US7907364B2 (en) Disk drive including a delay circuit to provide a delayed reset signal
JP5058060B2 (ja) データ記憶装置及び隣接トラック書き直し処理方法。
JPWO2009050765A1 (ja) 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置
JP2009110287A (ja) アクセス制御装置およびアクセス制御方法
US7490259B2 (en) Error recovery method for data storage device, data storage device, and magnetic disk storage device
US8447927B2 (en) Storage system, control device and storage device
US6523142B1 (en) Apparatus and method of performing in a disk drive commands issued from a host system
JP4858926B2 (ja) 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置
US8117491B2 (en) Disk-drive device and method for error recovery thereof
US20060212777A1 (en) Medium storage device and write path diagnosis method
US7197593B2 (en) Bad-sector search method, data recording device, and program
JP2005327462A (ja) 光記録媒体のデータコピー/移動方法及び装置
US20050015648A1 (en) Disk storage apparatus capable of concurrently processing data streams
US20080151411A1 (en) Startup processing method for medium storage device, controller for medium storage device, and medium storage device
JP2001216746A (ja) ディスク記憶装置及びリトライ制御方法
JP2006269027A (ja) データ記憶装置
US20070143536A1 (en) Storage device that pre-fetches data responsive to host access stream awareness
JP2006079810A (ja) 読取られたデータ内のエラーを補正するための方法及び装置
US6710963B2 (en) Disk controller for detecting hang-up of disk storage system
JP4281680B2 (ja) 光ディスク装置
JP3983962B2 (ja) データ読み出し装置、磁気記録再生装置、データ再生システム、及びデータ出力方法
JP2008299978A (ja) ディスク・ドライブ装置及びディスクからのデータ再生方法
KR100674949B1 (ko) 디스크 드라이브의 데이터 백업 방법 및 그 방법을사용하는 디스크 드라이브
JP2003331523A (ja) 電子機器および書き込み動作制御方法
JP3977611B2 (ja) ディスク記憶装置及び同装置におけるセクタ代替処理方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111004

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120214