JP3831189B2 - 回転制御方法及び記憶装置 - Google Patents
回転制御方法及び記憶装置 Download PDFInfo
- Publication number
- JP3831189B2 JP3831189B2 JP2000301464A JP2000301464A JP3831189B2 JP 3831189 B2 JP3831189 B2 JP 3831189B2 JP 2000301464 A JP2000301464 A JP 2000301464A JP 2000301464 A JP2000301464 A JP 2000301464A JP 3831189 B2 JP3831189 B2 JP 3831189B2
- Authority
- JP
- Japan
- Prior art keywords
- speed
- read
- dram
- area
- write
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, 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/20—Driving; Starting; Stopping; Control thereof
- G11B19/26—Speed-changing arrangements; Reversing arrangements; Drive-transfer means therefor
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
- Rotational Drive Of Disk (AREA)
- Optical Recording Or Reproduction (AREA)
Description
【発明の属する技術分野】
本発明は、回転制御方法及び記憶装置に関し、特に光ディスク等の記録媒体に信号を記録し、及び/又は、記録媒体から信号を再生する際の回転数を制御する回転制御方法及びこのような回転制御方法を採用する記憶装置に関する。
【0002】
光ディスク等の記録媒体には、ZCAV(Zone Constant Angular Velocity)方式を採用するものと、ZCLV(Zone Constant Linear Velocity)方式を採用するものとがある。ZCAV方式を採用した場合、記録媒体へのランダムアクセス性能が高くなるが、記録/再生クロック周波数が低くなる、例えば光ディスクのインナ側では、データ転送速度が遅くなる。他方、ZCLV方式を採用した場合、データ転送速度は高くなるが、例えば光ディスク等の記録媒体へのアクセス時には光ディスクの回転数変化を伴うため、記録媒体へのランダムアクセス性能が低くなる。
【0003】
【従来の技術】
近年、インターネットの普及に伴い、ユーザは通信回線等を介して音楽や映像等のデータをダウンロードして記録媒体に記録する機会が増加してきた。この場合、記録媒体としては、ハードディスクドライブ(HDD)の磁気ディスクや、DVD(Digital Versatile Disk)−RAM及び光磁気(MO)ディスク等のリムーバブルな光ディスク等が使用される。
【0004】
映像データの場合、1つのファイルサイズが比較的大きい。このため、映像データは、必然的に連続データであり、コマ落ち等の画像乱れを発生させないためには、光ディスクへの記録/再生時には連続的に安定した所定以上のデータ転送速度を保つ必要がある。
【0005】
他方、パーソナルコンピュータ等は、通常は光ディスクの一部にディスク管理エリアを設け、各々のプログラムやファイルを管理している。従って、これらのプログラムやファイルにアクセスする度に、ディスク管理エリアをアクセスする必要が生じる。このため、各ファイルサイズが比較的小さい場合、ファイルへのアクセスとディスク管理エリアへのアクセスとが繰り返され、光ディスクへのランダムアクセスが発生する。
【0006】
このように、扱うデータの種類、ファイルサイズ、記録媒体の用途等の記録媒体の使用状況に応じて、要求されるデータ転送速度及びランダムアクセス性能が異なる。
【0007】
【発明が解決しようとする課題】
上記の如く、従来技術では、扱うデータの種類、ファイルサイズ、記録媒体の要と等の記録媒体の使用状況に応じて、データ転送速度及びランダムアクセス性能を適切に設定することはできないという問題があった。
【0008】
そこで、本発明は、記録媒体の使用状況に応じて、データ転送速度及びランダムアクセス性能を最適に設定可能とすることのできる回転制御方法及び記憶装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
上記課題は、半径方向に分割された複数のゾーンを有するCAV方式の記録媒体の回転を制御する回転制御方法であって、該記録媒体にライトするライトデータを一時的に格納すると共に該記録媒体からリードされたリードデータを一時的に格納するバッファメモリ内の使用状況を検出する検出ステップと、アクセス要求がシーケンシャルアクセス要求であるか或いはランダムアクセス要求であるかと、半径方向にゾーン数以下に分割された複数のエリアのうち、アクセスされたエリアとに応じて、前記検出ステップで検出された前記バッファメモリ内の使用状況に基づいて該記録媒体の回転数を制御する制御ステップとを含み、該制御ステップは、所定のエリアに対するシーケンシャルアクセス要求の場合であって、リード時には該検出ステップにおいて前記バッファメモリ内のリードヒット対象データが占有する容量が第1の容量より大きい場合は回転数を上げる制御と、ライト時には前記バッファメモリ内の空き容量が第2の容量より大きくなると回転数を上げる制御のうち少なくとも一方の制御を行うことを特徴とする回転制御方法によって達成できる。
【0010】
上記の課題は、半径方向に分割された複数のゾーンを有するCAV方式の記録媒体に対して情報の記録及び再生を行う記憶装置であって、該記録媒体にライトするライトデータを一時的に格納すると共に該記録媒体からリードされたリードデータを一時的に格納するバッファメモリと、該バッファメモリ内の使用状況を検出する検出手段と、アクセス要求がシーケンシャルアクセス要求であるか或いはランダムアクセス要求であるかと、半径方向にゾーン数以下に分割された複数のエリアのうち、アクセスされたエリアとに応じて、前記検出手段で検出された該バッファメモリ内の使用状況に基づいて該記録媒体の回転数を制御する制御手段とを備え、該制御手段は、所定のエリアに対するシーケンシャルアクセス要求の場合であって、リード時には該検出手段において該バッファメモリ内のリードヒット対象データが占有する容量が第1の容量より大きい場合は回転数を上げる制御と、ライト時には該バッファメモリ内の空き容量が第2の容量より大きくなると回転数を上げる制御のうち少なくとも一方の制御を行うことを特徴とする記憶装置によっても達成できる。
上記の回転制御方法において、前記複数のエリアは、該記録媒体の回転速度が第1の速度に設定可能なエリアと、該記録媒体の回転速度が第1又は第2の速度に設定可能なエリアと、該記録媒体の回転速度が該第1の速度又は該第2又は第3の速度に設定可能なエリアを少なくとも含み、(第1の速度)<(第2の速度)<(第3の速度)であっても良い。
上記の記憶装置において、前記複数のエリアは、該記録媒体の回転速度が第1の速度に設定可能なエリアと、該記録媒体の回転速度が第1又は第2の速度に設定可能なエリアと、該記録媒体の回転速度が該第1の速度又は該第2又は第3の速度に設定可能なエリアを少なくとも含み、(第1の速度)<(第2の速度)<(第3の速度)であっても良い。
【0011】
従って、本発明によれば、記録媒体の高速回転化に伴うリード/ライトマージンの不足を回避すると共に、フォーカスサーボ及びトラッキングサーボ状態を安定に維持することのできる回転制御方法及び記憶装置を実現できる。
【0012】
【発明の実施の形態】
本発明になる回転制御方法及び記憶装置の各実施例を、以下に図面と共に説明する。
【0013】
【実施例】
先ず、本発明になる記憶装置の第1実施例を図1及び図2と共に説明する。図1は、記録装置の第1実施例の構成を示すブロック図である。記憶装置の第1実施例では、本発明が光ディスク装置に適用されている。又、記憶装置の第1実施例は、本発明になる回転制御方法の第1実施例を採用する。
【0014】
図1に示すように、光ディスク装置は、大略コントロールユニット10とエンクロージャ11とからなる。コントロールユニット10は、光ディスク装置の全体的な制御を行うMPU12、ホスト装置(図示せず)との間でコマンド及びデータのやり取りを行うインタフェース17、光ディスク(図示せず)に対するデータのリード/ライトに必要な処理を行う光ディスクコントローラ(ODC)14、デジタルシグナルプロセッサ(DSP)16及びメモリ18を有する。メモリ18は、MPU12、ODC14及びインタフェース17で共用され、例えばダイナミックランダムアクセスメモリ(DRAM)や、制御プログラムやフラグ情報等を格納する不揮発性メモリ等を含む。水晶振動子101は、MPU12と接続されている。
【0015】
ODC14には、フォーマッタ14−1と、誤り訂正符号(ECC)処理部14−2とが設けられている。ライトアクセス時には、フォーマッタ14−1がNRZライトデータを光ディスクのセクタ単位に分割して記録フォーマットを生成し、ECC処理部14−2がセクタライトデータ単位にECCを生成して付加すると共に、必要に応じて巡回冗長検査(CRC)符号を生成して付加する。更に、ECC処理部14−2はECCの符号化が済んだセクタデータを例えば1−7ランレングスリミテッド(RLL)符号に変換する。
【0016】
リードアクセス時には、セクタデータに対して1−7RLLの逆変換を行い、次にECC処理部14−2でCRCを行った後にECCによる誤り検出及び誤り訂正を行う。更に、フォーマッタ14−1でセクタ単位のNRZデータを連結してNRZリードデータのストリームとしてホスト装置に転送させる。
【0017】
ODC14に対しては、ライト大規模集積回路(LSI)20が設けられ、ライトLSI20は、ライト変調部21とレーザダイオード制御回路22とを有する。レーザダイオード制御回路22の制御出力は、エンクロージャ11側の光学ユニットに設けられたレーザダイオードユニット30に供給される。レーザダイオードユニット30は、レーザダイオード30−1とモニタ用ディテクタ30−2とを一体的に有する。ライト変調部21は、ライトデータをピットポジションモジュレーション(PPM)記録(マーク記録とも言う)又はパルスウィドスモジュレーション(PWM)記録(エッジ記録とも言う)でのデータ形式に変換する。
【0018】
レーザダイオードユニット30を使用してデータの記録再生を行う光ディスク、即ち、書き換え可能な光磁気(MO)カートリッジ媒体として、本実施例では、光ディスク上のマークエッジの有無に対応してデータを記録するPWM記録が採用されている。又、光ディスクの記録フォーマットは、超解像技術(MSR)を使用した1.3GBフォーマットであり、ZCAV方式を採用している。光ディスク装置に光ディスクをロードすると、先ず光ディスクの識別(ID)部をリードしてそのピット間隔からMPU12で光ディスクの種別(記憶容量等)を認識し、種別の認識結果をODC14に通知する。
【0019】
ODC14に対するリード系統としては、リードLSI24が設けられ、リードLSI24にはリード復調部25と周波数シンセサイザ26とが内蔵される。リードLSI24に対しては、エンクロージャ11に設けたID/MO用ディテクタ32によるレーザダイオード30−1からのレーザビームの戻り光の受光信号が、ヘッドアンプ34を介してID信号及びMO信号として入力されている。
リードLSI24のリード復調部25には、自動利得制御(AGC)回路、フィルタ、セクタマーク検出回路等の回路機能が設けられ、リード復調部25は入力されたID信号及びMO信号からリードクロック及びリードデータを生成してPWMデータを元のNRZデータに復調する。又、ゾーンCAVを採用しているため、MPU12からリードLSI24に内蔵された周波数シンセサイザ26に対してゾーン対応のクロック周波数を発生させるための分周比の設定制御が行われる。
【0020】
周波数シンセサイザ26は、プログラマブル分周器を備えたフェーズロックドループ(PLL)回路であり、光ディスク上のゾーン位置に応じて予め定めた固有の周波数を有する再生用基準クロックをリードクロックとして発生する。即ち、周波数シンセサイザ26は、プログラマブル分周器を備えたPLL回路で構成され、通常モードでは、MPU12がゾーン番号に応じて設定した分周比m/nに従った周波数foの記録/再生用基準クロックを、fo=(m/n)・fiに従って発生する。
【0021】
ここで、分周比m/nの分母の分周値nは、光ディスクの種別に応じた固有の値である。又、分周比m/nの分子の分周値mは、光ディスクのゾーン位置に応じて変化する値であり、各光ディスクに対してゾーン番号に対応した値のテーブル情報として予め準備されている。更に、fiは、周波数シンセサイザ26の外部で発生した記録/再生用基準クロックの周波数を示す。
【0022】
リードLSI24で復調されたリードデータは、ODC14のリード系統に供給され、1−7RLLの逆変換を行った後にECC処理部14−2の符号化機能によりCRC及びECC処理を施され、NRZセクタデータに復元される。次に、フォーマッタ14−1でNRZセクタデータを繋げたNRZリードデータのストリームに変換し、メモリ18を経由してインタフェース17からホスト装置に転送される。
【0023】
MPU12に対しては、DSP16を経由してエンクロージャ11側に設けた温度センサ36の検出信号が供給されている。MPU12は、温度センサ36で検出した光ディスク装置内部の環境温度に基づき、レーザダイオード制御回路22におけるリード、ライト及びイレーズの各発光パワーを最適値に制御する。
【0024】
MPU12は、DSP16を経由してドライバ38によりエンクロージャ11側に設けたスピンドルモータ40を制御する。本実施例では、光ディスクの記録フォーマットがZCAV方式であるため、スピンドルモータ40は例えば3637rpmの一定速度で回転される。
【0025】
又、MPU12は、DSP16を経由してドライバ42を介してエンクロージャ11側に設けた電磁石44を制御する。電磁石44は、光ディスク装置内にロードされた光ディスクのビーム照射側と反対側に配置されており、記録時及び消去時に光ディスクに外部磁界を供給する。超解像技術を用いた1.3GBフォーマットの光ディスクでは、MSR再生を行う際にも外部磁界を供給する。
【0026】
DSP16は、光ディスクに対してレーザダイオード30からのビームの位置決めを行うためのサーボ機能を備え、目的トラックにシークしてオントラックするためのシーク制御部及びオントラック制御部として機能する。このシーク制御及びオントラック制御は、MPU12による上位コマンドに対するライトアクセス又はリードアクセスに並行して同時に実行することができる。
【0027】
DSP16のサーボ機能を実現するため、エンクロージャ11側の光学ユニットに光ディスクからのビーム戻り光を受光するフォーカスエラー信号(FES)用ディテクタ45を設けている。FES検出回路46は、FES用ディテクタ45の受光出力からFESE1を生成してDSP16に入力する。
【0028】
エンクロージャ11側の光学ユニットには、光ディスクからのビーム戻り光を受光するトラッキングエラー信号(TES)用ディテクタ47も設けられている。TES検出回路48は、TES用ディテクタ47の受光出力からTESE2を生成してDSP16に入力する。TESE2は、トラックゼロクロス(TZC)検出回路50にも入力され、TZCパルスE3が生成されてDSP16に入力される。
【0029】
エンクロージャ11側には、光ディスクに対してレーザビームを照射する対物レンズの位置を検出するレンズ位置センサ54が設けられており、レンズ位置センサ54からのレンズ位置検出信号(LPOS)E4はDSP16に入力される。DSP16は、光ディスク上のビームスポットの位置を制御するため、ドライバ58,62,66を介してフォーカスアクチュエータ60、レンズアクチュエータ64及びボイスコイルモータ(VCM)68を制御して駆動する。
【0030】
図2は、エンクロージャ11の概略構成を示す断面図である。図2に示すように、ハウジング67内にはスピンドルモータ40が設けられ、インレットドア69側からMOカートリッジ70を挿入することで、MOカートリッジ70に収納された光ディスク(MOディスク)72がスピンドルモータ40の回転軸のハブに装着されて光ディスク72が光ディスク装置にロードされる。
【0031】
ロードされたMOカートリッジ70内の光ディスク72の下側には、VCM64により光ディスク72のトラックを横切る方向に移動自在なキャリッジ76が設けられている。キャリッジ76上には対物レンズ80が搭載され、固定光学系78に設けられているレーザダイオード30−1からのビームを立ち上げミラー82を介して入射して光ディスク72の記録面にビームスポットを結像する。
【0032】
対物レンズ80は、図1に示すエンクロージャ11のフォーカスアクチュエータ60により光軸方向に移動制御され、又、レンズアクチュエータ64により光ディスク72のトラックを横切る半径方向に例えば数十トラックの範囲内で移動可能である。このキャリッジ76に搭載されている対物レンズ80の位置が、図1のレンズ位置センサ54により検出される。レンズ位置センサ54は、対物レンズ80の光軸が直上に向かう中立位置でレンズ位置検出信号をゼロとし、光ディスク72のアウタ側への移動とインナ側への移動に対して夫々異なる曲性の移動量に応じたレンズ位置検出信号E4を出力する。
【0033】
光ディスク72は、ZCAV方式を採用しているので、半径方向に複数のゾーンに分割されている。通常モードでは、光ディスク72はスピンドルモータ40により一定回転速度で回転され、各ゾーン内の記録/再生用基準クロックは、同じ周波数を有する。又、記録/再生用基準クロックの周波数は、光ディスク72の外周(アウタ)側のゾーンの方が、内周(インナ)側のゾーンより高く設定されている。本実施例では、このような光ディスク72を、アウタ側からインナ側にかけてゾーン数以下のエリアに分割し、高速モードでは、各エリア毎にインナ側に向かうにつれて光ディスク72の回転速度が高くなるようにスピンドルモータ40が制御される。つまり、高速モードでは、光ディスク72の回転数を、各エリア毎にランダムアクセス性能への悪影響を抑えられる程度の回数だけ切り替えると共に、記録/再生用基準クロック及びレーザダイオード制御回路22における記録/再生パワーを切り替える。従って、通常モードでは、ZCAV方式の光ディスク72をZCAV方式を採用して使用するのでランダムアクセス性能が高く、高速モードでは、ZCAV方式の光ディスク72を一種のZCLV方式を採用して使用するので記録/再生時の光ディスク72のデータ転送速度が高くなる。
【0034】
通常モードでは、光ディスク72の回転数を一定に制御する。他方、高速モードでは、光ディスク72の回転数を多段階で切り替え制御する。
【0035】
図3は、本実施例における光ディスク72上のゾーンと、データ転送レートと、光ディスク72の回転数との関係を示す図である。図3では、説明の便宜上、1つのエリアがゾーン単位毎からなる場合を示すが、上記の如く、エリアとゾーンとの関係はこれに限定されるものではない。又、図4は、光ディスク72上のゾーンに対するデータ転送レート及び光ディスク72の回転数の関係を示す図である。図4中、四角印はデータ転送速度、三角印は光ディスク72の回転数を示す。図3及び図4は、光ディスク72の記憶容量が1.3GBであり、高速モードにおいて切り替えられる回転数が3通りある場合を示す。又、説明の便宜上、ゾーン0が光ディスク72のアウタ側に位置し、ゾーン17がインナ側に位置するものとする。
【0036】
高速モードにおいて、例えば光ディスク72の最インナ側のゾーン17では、光ディスク72の回転数が5001rpmに切り替えられ、データ転送速度は4097Kbyte/sである。通常モードでは、ゾーン17における回転数は3637rpmであり、データ転送速度は2979Kbyte/sであるので、高速モードではデータ転送速度が改善されることがわかる。従って、3700〜3800Kbyte/sの所望の転送速度以上を得ることができる。尚、本実施例では、回路の限界周波数の関係で、上限のデータ転送速度は5121Kbyte/s以下に制限されるので、ゾーン11よりアウタ側のゾーン0〜10では、5001rpmの回転数での動作は行えないが、切り替えられる回転数及びデータ転送速度は夫々図3及び図4に示すものに限定されず、又、切り替えられる回転数は複数であれば良く、3通りに限定されない。
【0037】
映像や音楽等の大容量連続データの場合、ある基準以上の転送速度を保たないと、記録/再生の途中で映像や音楽が止まってしまい、画像乱れやコマ落ちが生じてしまう。ディジタルビデオ(DV)フォーマットの記録/再生時の転送速度は、3700〜3800KByte/sであり、この転送速度を下回ると画像や音声の途切れが生じてしまう。図3の場合、回転数が3637rpmの場合には、ゾーン12〜17のインナ側では、転送速度が3700KByte/sを下回っており、映像や音楽等の大容量連続データの記録/再生には適していないことがわかる。そこで、回転数を5001rpmとすることで、光ディスク72のインナ側からアウタ側まで3700〜3800KByte/s以上の転送速度を保証することができる。尚、回路の限界周波数の関係で、光ディスク72の全てのエリアで回転数を5001rpm以上とすることはできないので、回転数が4138rpmに設定されるエリアも設けている。このようにして、光ディスク72のインナ側からアウタ側までの全エリアで転送速度が3700〜3800KByte/s以上となるように、エリアによって回転数を変えている。
【0038】
図5及び図6は、本実施例におけるMPU12の動作を説明するフローチャートである。
【0039】
図5において、ステップS1は、ホスト装置から記録/再生指示が発行されたか否かを判定し、判定結果がYESになると、ステップS2は、通常モード、即ち、ZCAV方式の低速回転固定モードが指定されているか否かを判定する。ステップS2の判定結果がYESであると、ステップS3は、低速回転要求をセットし、処理は図6と共に後述するステップS21へ進む。
【0040】
他方、ステップS2の判定結果がNOであると、一種のZCLV方式のモードが指定されているので、ステップS4は、光ディスク72上の現在記録/再生位置が、高速モードで記録/再生可能な位置、即ち、高速回転可能位置よりインナ側であるか否かを判定する。ステップS4の判定結果がNOであると、ステップS5は、現在記録/再生位置が光ディスク72の最アウタ側、即ち、先頭領域付近であるか否かを判定する。ステップS5の判定結果がNOであると、ステップS6はMPU12内のインナアクセスカウンタを初期化し、ステップS7はMPU12内で管理されるインナアクセス時間を初期化し、処理はステップS3へ進む。又、ステップS5の判定結果がYESであると、ステップS8はインナアクセスカウンタの値をαだけ減算し、ステップS9はインナアクセス時間の値をβだけ加算し、処理はステップS3へ進む。
【0041】
このように、光ディスク72の先頭領域については、アクセスの連続性判断の条件を緩和しておき、より簡単に回転数が上昇するようにしている。先頭領域には、FAT領域やディレクトリ領域等の、ファイルの使用状況を管理するための領域が存在する。ホスト装置は、光ディスク72のインナ側の領域に対してシーケンシャルな処理を行っていても、ファイル情報の更新や追加のために、時々ディレクトリ領域を更新するため、先頭領域へのアクセスが発生する。従って、アクセスの連続性判断の条件を緩和することで、シーケンシャルな処理中のディレクトリ情報だけの更新で回転数が低下しても、ランダムアクセスよりも先に回転数が上昇してランダムアクセス性能の低下を防止している。
【0042】
ステップS4の判定結果がYESであると、ステップS11は、アクセスの連続性の判断が必要であるか否かを判定し、判定結果がNOであると、処理は後述するステップS15へ進む。他方、ステップS11の判定結果がYESであると、ステップS12はインナアクセスカウンタを「1」だけ加算し、ステップS13は、インナアクセスカウンタが規定値以上であるか否かを判定する。ステップS13の判定結果がNOであると処理はステップS3へ進み、判定結果がYESであると、処理はステップS14へ進む。ステップS14は、低速モードで行った最後のアウタアクセスから規定時間が経過しているか否かを判定し、判定結果がNOであると、処理はステップS3へ進む。ステップS14の判定結果がYES、又は、ステップS11の判定結果がNOであると、ステップS15は、高速モードで記録/再生するための高速回転要求をセットし、処理は図6に示すステップS21へ進む。
【0043】
上記規定時間は、一度低下した光ディスク72の回転数を再度上昇しにくくして、回転数の切り替えが頻発することによるランダムアクセス性能の低下及びデータ転送速度の低下を防止している。
【0044】
図6において、ステップS21は、高速回転要求があるか否かを判定し、判定結果がNOであると、処理はステップS22へ進む。ステップS22は、現在通常モード、即ち、低速回転中であるか否かを判定し、判定結果がYESであると、ステップS23は光ディスク72上の目的トラックへシークし、記録/再生を実行する。ステップS22の判定結果がNOであると、ステップS24は、低速回転切り替え要求をセットし、処理は後述するステップS27へ進む。
【0045】
ステップS21の判定結果がYESであると、ステップS25は、現在高速モード、即ち、高速回転中であるか否かを判定し、判定結果がYESであると、処理はステップS23へ進む。ステップS25の判定結果がNOの場合、又は、ステップS24の後、ステップS27は、TESE2に基くトラッキングサーボをオフとする。ステップS28は、高速回転要求があるか否かを判定し、判定結果がNOであると、ステップS29は、光ディスク72上のデータの破壊を防止するために、FESE1に基くフォーカスサーボをオフとすると共に、レーザダイオード30−1をオフとする。ステップS28の判定結果がYESの場合、又は、ステップS29の後、ステップS30は、回転数の切り替えを開始する。回転数の切り替えは、例えば図3に示す関係を示すテーブルを例えばメモリ18に格納しておき、このテーブルに基いて切り替えれば良い。
【0046】
ステップS31は、切り替え後の光ディスク72の新たな回転数に応じて、例えばメモリ18内の偏心加速度テーブルの内容(偏心加速度情報)を入れ替えるか、或いは、計算し直す。偏心加速度情報は、光ディスク72の偏心によって発生する加速度に関する情報であり、後述する。ステップS32は、新たな回転数に応じて、記録/再生時に用いる各種記録/再生パラメータを変更する。ステップS33は、光ディスク72の回転の安定化を確認する。ステップS34は、レーザダイオード30−1がオフになっていれば、オンにする。ステップS35は、フォーカスサーボがオフになっていれば、オンにする。又、ステップS36は、トラッキングサーボがオフになっていれば、オンにして、処理はステップS23へ進む。
【0047】
上記の動作により、(1)低速回転固定モードと回転数切り替えモードの切り替え設定、及び、(2)回転数切り替えモードにおけるアクセスの連続性判断の有無の切り替え設定に対する処理が行われる。前者(1)の低速回転固定モードと回転数切り替えモードの切り替え設定は、ステップS2の判断で使用されるフラグをセットすることで可能となる。又、後者(2)の回転数切り替えモードにおけるアクセスの連続性判断の有無の切り替え設定は、前者(1)の低速回転固定モードと回転数切り替えモードの切り替え設定において回転数切り替えモードに設定した状態で、ステップS11の判断で使用されるフラグをセットすることで可能となる。これらのフラグのセット方法は特に限定しないが、例えばホスト装置からのモードを設定する方法、メモリ18内の不揮発性メモリにモードを設定する方法、ホスト装置により光ディスク72上にモード設定情報を書き込んでおきその書き込まれたモード設定情報に基いてモードを設定する方法等が採用可能である。
【0048】
尚、ステップS32において変更される記録/再生パラメータには、記録/再生用クロックの周波数やレーザダイオード30−1の記録/再生パワー等が含まれる。図7及び図8は、変更される記録/再生パラメータを説明する図である。
【0049】
図7は、光ディスク72上のゾーンと、記録/再生クロック周波数と、光ディスク72の回転数との関係を示す図である。同図中、記録/再生クロック周波数の単位は、MHzである。
【0050】
図8は、光ディスク72上のゾーンと、記録/再生パワーと、光ディスク72の回転数との関係を示す図である。同図中、四角印は回転数が3637rpmの場合、三角印は回転数が4138rpmの場合、丸印は回転数が5001rpmの場合を示す。
【0051】
例えば、特開平11−73669号公報にて提案されているように、テストライトでは、パワーデフォルトテーブルのデフォルト記録/再生パワーに対する最適記録/再生パワーのずれ量を求め、記録/再生パワーの最適化が図られる。このため、本実施例では、回転数の切り替えの度にテストライトを行う必要はない。つまり、回転数の切り替え時には、各回転数に対応するパワーデフォルトテーブルのみを切り替えれば良く、各回転数での最適記録/再生パワーは、該当するパワーデフォルトテーブルのデフォルト記録/再生パワーを同じずれ量で補正することで最適化することができる。
【0052】
更に、本実施例では、偏心加速度情報や記録/再生パラメータ等の、光ディスク72の回転数に依存するパラメータを変更する処理を、回転数の切り替え処理と並行して行うので、処理時間の短縮を図ることが可能である。
【0053】
図9は、図6に示すステップS31の偏心加速度情報切り替え処理を説明するフローチャートである。本実施例では、説明の便宜上、偏心加速度情報切り替え処理が、MPU12の制御下でDSP16により行われるものとする。図9において、ステップS41は、光ディスク72の新たな回転数での偏心加速度情報が過去に測定済みであるか否かを判定し、判定結果がNOであると、ステップS42は、偏心加速度情報再測定要求をセットし、処理は終了する。これにより、新たな回転数での偏心加速度情報を周知の方法で測定して偏心加速度テーブルに格納する。偏心加速度情報の測定や学習に関しては、先に本出願人が特願平10−366326号公報、特願平11−75043号公報や特願平11−308244号等でも提案されている。
【0054】
他方、ステップS41の判定結果がYESであると、ステップS43は、DSP16内のメモリ又はメモリ18内の旧回転数に対応する偏心加速度情報をバックアップする。ステップS44は、新たな回転数に対応する偏心加速度情報を、DSP16内のメモリ又はメモリ18内に展開する。ステップS45は、旧回転数に対応する偏心加速度情報に対するフラグをセットし、処理は終了する。
【0055】
このように、偏心加速度情報は、光ディスク72の回転数が変化すると変化するので、回転数に応じて求める必要がある。偏心加速度情報の測定及び格納には、時間を要するため、可能な限り回転数の切り替え時に再測定処理を行わないことが望ましい。そこで、本実施例では、新たな回転数に対する偏心加速度情報が測定済みであるか否かを判定し、測定済みであれば、偏心加速度テーブルの内容の入れ替えのみを行うことで、再測定処理を省略して処理時間の短縮を図る。
【0056】
図10は、図6に示すステップS31の偏心加速度情報切り替え処理を説明する図である。具体的には、図10は、計算によって偏心加速度情報を切り替える場合を説明する図である。図10において、縦軸は偏心加速度を任意単位で示し、横軸はDSP16内のメモリ又はメモリ18内のメモリセル番号を示す。又、四角印は回転数が5001rpmの場合に対応する偏心加速度を示し、菱形印は回転数が3637rpmの場合に対応する偏心加速度を示す。
【0057】
DSP16内では、リードLSI回路24及びODC14を介して得られる信号に基いて、光ディスク72の1回転を表す基準信号を生成される。この基準信号は、光ディスク72の回転数が変化しても、光ディスク72の円周方向上の位置との関係は保たれる。従って、DSP16は、基準信号に基いて、DSP16内のメモリ又はメモリ18内のメモリセル番号に、1回転分の偏心加速度情報(偏心加速度遷移)を計算して順次格納する。図10では、説明の便宜上、3637rpmの回転数に対応する偏心加速度テーブルの偏心加速度情報から、5001rpmの回転数に対応する偏心加速度テーブルの偏心加速度情報を計算する場合を示す。従って、光ディスク72の回転数の変化に伴い、偏心加速度はこの場合(5001/3637)2倍となり、メモリセル番号に格納された偏心加速度情報が(5001/3637)2倍された偏心加速度テーブルが計算される。更に、1つのメモリセルに対応する経過時間は、(3637/5001)倍になっているため、3637rpmの回転数の場合のメモリセルの更新時間を1とすると、5001rpmの回転数の場合は1×(3637/5001)ずつメモリセルを更新するように、DSP16に対してパラメータの設定を行う。
【0058】
このように、本実施例では、記録/再生クロック周波数、記録/再生パワー、偏心加速度情報等の記録/再生パラメータのテーブルを、光ディスク72の回転数の切り替えの際に切り替えることで、用途に応じた、最適なランダムアクセス性能又はデータ転送速度を実現できる。
【0059】
図11は、光ディスク72上に設けられたバッファ領域を説明する図である。同図に囲み線で示すように、光ディスク72上の通常モードでアクセス可能な領域と、高速モードでアクセス可能な領域との境界部分に、バッファ領域を設けても良い。この場合、通常モードにおいて、高速モードでアクセス可能な領域へのアクセス要求が発生すると、バッファ領域よりインナ側の領域にアクセスが発生したことが検出され、光ディスク72が高速回転されてモードが高速モードに切り替えられる。つまり、この場合におけるMPU12の動作は、バッファ領域を認識する点を除けば、実質的に第1実施例の場合の動作と同様である。
【0060】
尚、高速モードにおいて、光ディスク72のアウタ側の領域へのアクセス要求が発生した場合、その領域がバッファ領域であれば、直ちに通常モードへは切り替えず、バッファ領域よりアウタ側の領域へのアクセスが発生した時点で通常モードへ切り替えるようにすることもできる。又、光ディスク72上の高速モードでアクセス可能な領域へのアクセス要求が発生した場合、光ディスク72の回転数を直ちに高速回転に切り替えずに、アクセス状況を測定して連続的にバッファ領域よりインナ側へアクセスが発生した時点で初めて高速回転に切り替えるようにしても良い。更に、光ディスク72上のインナ側の領域を高速モードでアクセス中に、アウタ側の領域へのアクセス要求が発生した場合、回転数を直ちにアウタ側の領域の回転数に切り替えることも可能である。
【0061】
このように、バッファ領域を設けて、光ディスク72の回転数の切り替えをヒステリシス的に行わせることで、アクセスの連続性に加えて、回転数の切り替えが頻発しないようにして、ランダムアクセス性能及びデータ転送速度の低下を防止することができる。
【0062】
上記第1実施例において、モードの切り替えを不動作として、モードを通常モード及び高速モードの一方に固定する構成としても良い。この場合、ホスト装置からのモード固定要求に応答して、MPU12がモードの切り替えを不動作とするようにすれば良い。このようなモード固定要求は、ホスト装置を使用するユーザからの指示に基いて発生したり、ホスト装置のアプリケーションソフトウェアと連動して発生したりすることができる。
【0063】
ところで、光ディスク72の回転数を切り替えている期間は、転送が停止してしまい、転送速度が低下してしまう。そこで、以下に説明するように、読み込み(リード)コマンドによるシーケンシャルアクセスの場合は先読みでメモリ18内のDRAMに所定量のリードデータを確保しておき、書き込み(ライト)コマンドによるシーケンシャルアクセスの場合はDRAMにライトデータ用に所定量の空き領域を確保しておき、転送速度が回転数切り替えの影響を受けにくくすることが望ましい。これにより、アクセスパターンとDRAM内のデータ占有容量又は空き容量に基いて、ランダムアクセスの場合は回転数を一定に保ち、シーケンシャルアクセスの場合は回転数を上げてアクセスの処理を行うことができる。
【0064】
図12は、各ゾーン毎の物理ブロック(トラック)アドレス(LBA:Logical Block Address)と回転数の関係を示す。尚、以下の説明では、16進数には「h」を付加して表す。ゾーン0はLBA0〜FFFh,ゾーン1はLBA1000h〜1FFFhとし、ゾーンnはn×1000h〜(n×1000+FFFh)とする。又、通常はZCAV方式を採用して、光ディスク72は、全ゾーン一定の回転数で回転されるものとする。
【0065】
図13は、第1実施例におけるDRAM内の状態に基づく回転数の制御を説明するフローチャートである。同図に示す処理は、MPU12により行われ、図5に示すアクセスの連続性判断の要否を判定するステップS11と関連している。
【0066】
図13において、ステップS51は、ホスト装置から発行されたコマンドが、ゾーン1に対しての読み込みコマンド#A1であるか否かを判定する。ステップS51の判定結果がYESであると、ステップS52は、DRAM上にリードデータが在るか否かを判定する。最初は、読み込みコマンド#A1に対するデータはDRAM上にないので、光ディスク72から読み込みコマンド#A1のデータを読み込み、続いて、光ディスク装置側は先読み動作にて、読み込みコマンド#A1に続くデータをDRAM上に読み込む。つまり、ステップS52の判定結果がNOであると、ステップS56は、先読み中であるか否かを判定し、判定結果がYESであると、ステップS57は、先読みを停止する。ステップS56の判定結果がNO、又は、ステップS57の後、ステップS58は回転数の変動(切り替え)はなしとして、リード処理へ進む。
【0067】
次に、ホストから読み込みコマンド#A2が発行されたとする。ステップS52は、前回同様DRAM上にリードデータが在るか否かを判定する。この時、先読み処理にて読み込みコマンド#A2のリードデータがDRAM上に読み込まれているため、読み込みコマンド#A2のリードデータを光ディスク72から読み出さずに、DRAM上から転送することが可能である。ステップS53は、このように、DRAM上から読み込みコマンド#A2のリードデータをホスト装置へ転送し、ステップS54は、転送の正常終了をホスト装置へ報告する。この場合に、光ディスク72上とホスト装置に対する動作が一致している必要がないため、光ディスク72上の動作はホスト装置動作から見えなくなる。ステップS55は、このタイミングで回転数を上げ、リード処理へと進む。
【0068】
図14は、第1実施例における回転数アップ処理とリードデータの流れを説明する図である。同図中、RDはリード、CMDはコマンド、網掛け部は先読みデータを示す。又、▲1▼がDRAMの最初の状態、▲2▼がDRAMの次の状態を示す。
【0069】
このように、リード処理において、ゾーン毎に回転数を即座に切り替えるのでなく、DRAM上のリードヒット対象データを監視して、ヒット対象である場合のみ回転数を上げ、ヒット対象でなければ回転数を上げない。これにより、回転数変動中に読み込みコマンドを受け取っても、DRAM上のリードデータを転送することで、回転数変動がホスト装置に影響を及ぼさない。
【0070】
尚、ホスト装置からの読み込みコマンドは、例えば次のようなものである。
#A1.読み込みコマンド: LBA=1100h/ブロック数=10h
#A2.読み込みコマンド: LBA=1110h/ブロック数=10h
#A3.読み込みコマンド: LBA=1120h/ブロック数=10h
…
#An.読み込みコマンド: LBA=(1100h+10h×n)/ブロック数=10h
次に、ホスト装置からゾーン1に対しての書き込みコマンド#B1が来ると、ステップS51の判定結果はNOとなる。ステップS59は、ライトデータをホスト装置からDRAMに転送し、ステップS60は、転送残りがないか否かを判定する。ステップS60の判定結果がNOであると、ステップS63は回転数の変動(切り替え)はなしとして、ライト処理へ進む。他方、ステップS60の判定結果がYESであると、ステップS61は転送の正常終了をホスト装置へ報告し、ステップS62は、回転数を上げ、ライト処理へと進む。
【0071】
つまり、この場合、DRAM上にライトデータが在るか確認するが、最初はライト中でないので、DRAM上にライトデータがない。そこで、書き込みコマンド#B1のライトデータをDRAMに転送すると共に光ディスク72に書き込む。続いて、転送終了と同時にホスト装置に正常終了を報告する。この時、光ディスク72上とホスト装置に対する動作が一致している必要がないため、光ディスク72上の動作はホスト装置動作から見えなくなる。そこで、このタイミングで回転数を変動させる。
【0072】
図15は、第1実施例における回転数アップ処理とライトデータの流れを説明する図である。同図中、WRTはライト、CMDはコマンド、網掛け部はDRAM内の空き領域を示す。又、▲1▼がDRAMの最初の状態、▲2▼がDRAMの次の状態を示す。
【0073】
このように、ライト処理において、ゾーン毎に回転数を即座に切り替えるのでなく、DRAM上の空き容量を監視して、DRAMの空き容量がある場合のみ回転数を上げ、空き容量がなければ回転数を上げない。これにより、回転数変動中に書き込みコマンドを受け取っても、DRAMの空き領域にライトデータを転送することで、回転数変動がホスト装置に影響を及ぼさない。
【0074】
尚、ホスト装置からの書き込みコマンドは、例えば次のようなものである。
#B1.書き込みコマンド: LBA=1100h/ブロック数=10h
#B2.書き込みコマンド: LBA=1110h/ブロック数=10h
#B3.書き込みコマンド: LBA=1120h/ブロック数=10h
…
#Bn.書き込みコマンド: LBA=(1100h+10h×n)/ブロック数=10h
次に、本発明になる記憶装置の第2〜第7実施例を説明する。記録装置の第2〜第7実施例の構成は、図1及び図2に示す記憶装置の第1実施例の構成と同じであり、その図示は省略する。記憶装置の第2〜第7実施例では、本発明が光ディスク装置に適用されている。又、記憶装置の第2〜第7実施例は、本発明になる回転制御方法の第2〜第7実施例を採用する。
【0075】
図16は、第2実施例におけるDRAM内の状態に基づく回転数の制御を説明するフローチャートである。同図に示す処理は、MPU12により行われ、図5に示すアクセスの連続性判断の要否を判定するステップS11と関連している。図16中、図13と同一ステップには同一符号を付し、その説明は省略する。又、コマンドが書き込みコマンドの場合に行われるステップの図示は省略する。
【0076】
本実施例では、図20と共に後述するように、DRAM領域を一区画として、一区画=200hブロック数とする。又、ホスト装置から求められる転送速度は0.4Mbyte/sであるものとする。尚、以下の説明中、BCはブロックを示す。
【0077】
図16において、ステップS54の後、ステップS60は、DRAM上にリードヒット対象データが例えば80%以上あるか否かを判定する。ステップS60の判定結果がNOであると、処理はステップS58へ進み、YESであると、処理はステップS55へ進む。
【0078】
つまり、先ずホスト装置からゾーン1に対しての読み込みコマンド#C1が発行されると、DRAM上にリードデータが在るかを確認する。最初は、読み込みコマンド#C1に対するデータがDRAM上にないので、光ディスク72から読み込みコマンド#C1のデータを読み込む。続いて、光ディスク装置側では、先読み動作にて、読み込みコマンド#C1に続くデータをDRAM上に読み込む。
【0079】
次に、ホスト装置から読み込みコマンド#C2が発行されたとする。この場合、前回と同様に、DRAM上にリードデータが在るか確認する。この時、先読み動作にて30hブロック数のデータがDRAM上に読み込まれているため、読み込みコマンド#C2のデータを光ディスク72から読み出さずに、DRAM上からホスト装置に転送することが可能である。上記第1実施例では、このタイミングで回転数を変動させたが、DRAM上にLBA=1100h〜LBA=113Fhまでのデータしかなく、回転数変動中にDRAM上に読み込まれていない場所に対しての読み込みコマンドが来る可能性がある。そうすると、回転数変動後、光ディスク72からの読み込みを行うことになるため、ホスト装置に対する転送が遅れてしまう。
【0080】
DRAM領域にリードデータを多く保持していれば、DRAM上からホスト装置への転送を行うことができるため、本実施例ではDRAM領域にW%以上の読み込みコマンドが読み込まれている場合に対して回転数変動を行う。例えば、Wを80%とし、DRAM領域が200hなので、190h以上のリードデータがDRAM上にある場合に回転数を変動する。
【0081】
図17は、リードヒット対象データとDRAMの空き領域を示す図である。図17中、#1,…は、読み込みコマンドを示し、「空き」はDRAMの空き領域は又、図18は、リードヒット対象データを管理するテーブルを示す図である。図18中、#1,…は、読み込みコマンドを示し、BC数はブロック数を示し、「先頭LBAのADR」は先頭LBAが格納されるDRAM上のアドレスを示す。図18に示すテーブルは、MPU12の内部メモリに格納されていても、メモリ18内のSRAM等に格納されていても良い。
【0082】
尚、後述する第3実施例以降の各実施例においても、図17及び図18と同様の符号を使用して説明をする。
【0083】
図19は、ステップS60において、DRAM上のリードヒット対象データの量を調べる処理を説明するフローチャートである。同図中、ステップS61は、リードヒット対象ブロック(BC)数(E0h)を、例えば読み込みコマンド#1のBC数と、読み込みコマンド#2のBC数と、読み込みコマンド#3のBC数と、読み込みコマンド#4のBC数の和に設定する。ステップS62は、リードヒット対象BC数(E0h)が、例えばDRAMの総容量の80%(190h)以上であるか否かを判定し、判定結果がYESであると回転数変動可能と判断されて処理はステップS55へ進み、NOであると回転数変動不可と判断されて処理はステップS58へ進む。
【0084】
読み込みコマンド#C15までの読み込みコマンドに対して同様に処理すると、図20に示すようにDRAM上にリードヒット対象データが190h以上になる。このタイミングで、回転数を変動する。図20は、第2実施例における回転数アップ処理とDRAM上のリードヒット対象データを説明する図である。同図中、RDはリード、CMDはコマンド、網掛け部は先読みデータを示す。
【0085】
このように、リード処理において、DRAM上にリードヒット対象データがあっても、ゾーン毎に即座に切り替えるのでなく、DRAM上にリードヒット対象データがDRAMのW%以上なければ回転数を上げない。これにより、回転数変動中に読み込みコマンドを受け取っても、DRAM上のリードデータをホスト装置へ転送することで、回転数変動がホスト装置に影響を及ぼすことがない。
【0086】
尚、ホスト装置からの読み込みコマンドは、例えば次のようなものである。
#C1. 読み込みコマンド: LBA=1100h/ブロック数=10h
#C2. 読み込みコマンド: LBA=1110h/ブロック数=10h
#C3. 読み込みコマンド: LBA=1180h/ブロック数=10h
#C4. 読み込みコマンド: LBA=1190h/ブロック数=10h
#C5. 読み込みコマンド: LBA=1200h/ブロック数=10h
#C6. 読み込みコマンド: LBA=1210h/ブロック数=10h
#C7. 読み込みコマンド: LBA=1280h/ブロック数=10h
#C8. 読み込みコマンド: LBA=1290h/ブロック数=10h
#C9. 読み込みコマンド: LBA=1300h/ブロック数=10h
#C10.読み込みコマンド: LBA=1310h/ブロック数=10h
#C11.読み込みコマンド: LBA=1380h/ブロック数=10h
#C12.読み込みコマンド: LBA=1390h/ブロック数=10h
#C13.読み込みコマンド: LBA=1400h/ブロック数=10h
#C14.読み込みコマンド: LBA=1410h/ブロック数=10h
#C15.読み込みコマンド: LBA=1480h/ブロック数=10h
#C16.読み込みコマンド: LBA=1490h/ブロック数=10h
…
#Cn-1.読み込みコマンド: LBA=1130h/ブロック数=10h
#Cn. 読み込みコマンド: LBA=1190h/ブロック数=10h
…
図21は、第3実施例におけるDRAM内の状態に基づく回転数の制御を説明するフローチャートである。同図に示す処理は、MPU12により行われ、図5に示すアクセスの連続性判断の要否を判定するステップS11と関連している。図21中、図13と同一ステップには同一符号を付し、その説明は省略する。又、コマンドが書き込みコマンドの場合に行われるステップの図示は省略する。
【0087】
本実施例では、図26と共に後述するように、DRAM領域を一区画として、一区画=200hブロック数とする。又、ホスト装置から求められる転送速度は0.4Mbyte/sであるものとする。又、光ディスク72の回転数変動に要する時間、即ち、回転数を切り替えてから回転数が安定するまでに要する時間は、例えば0.5秒(s)であるものとする。更に、DRAM上のリードヒット対象データをシーケンシャルデータに限定して、上記第2実施例と同様にDRAM上に一定以上データが溜まった場合に回転数の変動を実行する。
【0088】
図21において、ホスト装置から発行されたコマンドが読み込みコマンドの場合、ステップS69は、リード用統計情報更新処理を行って後述するシーケンシャルブロック数の総数Tを更新し、処理はステップS52へ進む。又、ステップS54の後、ステップS70は、Tが統計情報基準値k以上であるか否かを判定する。ステップS70の判定結果がNOであると、処理はステップS58へ進み、YESであると、処理はステップS71へ進む。ステップS71は、DRAM上にリードヒット対象データが例えば80%以上あるか否かを判定する。ステップS71の判定結果がNOであると、処理はステップS58へ進み、YESであると、処理はステップS55へ進む。
【0089】
つまり、先ずホスト装置からゾーン1に対しての読み込みコマンド#D1が発行されると、アクセスパターンとしてLBAとブロック数の情報を、リード用の統計情報としてにメモリ18内のSRAM又はDRAMに記憶しておく。最初は、読み込みコマンド#D1に対するデータはDRAM上にないので、光ディスク72から読み込みコマンド#D1のデータを読み込む。続いて、光ディスク装置側は先読み動作にて、読み込みコマンド#D1に続くデータをDRAM上に読み込む。次に、ホスト装置から読み込みコマンド#D2が発行されると、前回と同様に、アクセスパターンとしてLBAとブロック数の情報を、リード用の統計情報として記憶し、DRAM上にリードデータが在るかを確認する。この時、先読み動作にて40hブロック数のデータがDRAM上に読み込まれているため、読み込みコマンド#D2のデータを光ディスク72から読み出さずに、DRAM上からホスト装置へ転送する。
【0090】
次に、ホスト装置から読み込みコマンド#D3が発行されると、前回と同様に処理を行う。以後、読み込みコマンド#D10までの読み込みコマンドに対して同様に処理を行うと、統計情報は基準値kに達する。基準値kは、いくつか考えられるが、ここでは読み込みコマンドがシーケンシャルでその処理ブロック数の合計が100h以上になるとシーケンシャルリードアクセスと決定する。この状態で、DRAM上にリードヒット対象データがDRAM領域のX%以上溜まると、回転数変動を行う。本実施例では、Xを80%とするとDRAM上にリードヒット対象データが190h以上になった場合となり、リードヒット対象データが120hなので、ここでは回転数変動を行わない。読み込みコマンド#D23を受け取ると、図26に示すようにDRAM領域に190h以上のシーケンシャルリードヒット対象データがあるので、このタイミングで回転数を変動させる。図26は、第3実施例における回転数アップ処理とリードデータの流れを説明する図である。同図中、RDはリード、CMDはコマンド、網掛け部は先読みデータを示す。又、▲1▼〜▲5▼は、夫々DRAMの最初の状態から読み込み済みのデータを転送する状態までを示す。
【0091】
図22は、ステップS69のリード用統計情報更新処理を説明するフローチャートである。同図中、Rは読み込みコマンドの最終LBA、Sは前回の読み込みコマンドの最終LBA、Rはシーケンシャルブロック数の総数を示す。
【0092】
図22において、ステップS72は、Pを読み込みコマンドの先頭LBAに設定し、ステップS73は、Qを読み込みコマンドのブロック数に設定する。ステップS74は、P+QをRとして設定する。ステップS75は、1個目の読み込みコマンドであるか否かを判定し、判定結果がNOであると、処理はステップS76へ進む。ステップS76は、PがSと連続しているか否かを判定する。ステップS76の判定結果がYESであると、ステップS77は、T+QをTに設定することでT値を増加させる。他方、ステップS75の判定結果がYES、又は、ステップS76の判定結果がNOの場合には、ステップS78は、0をTに設定することでT値をクリアする。ステップS77又はステップS78の後、ステップS79は、RをSに設定することでS値を更新し、処理は終了する。
【0093】
図23は、リードヒット対象データとDRAMの空き領域を示す図である。又、図24は、リードヒット対象データを管理するテーブルを示す図である。
【0094】
図25は、ステップS71において、DRAM上のリードヒット対象データの量を調べる処理を説明するフローチャートである。同図中、ステップS81は、リードヒット対象ブロック(BC)数(70h)を、例えば読み込みコマンド#4のBC数に設定する。ステップS82は、リードヒット対象BC数(70h)が、例えばDRAMの総容量の80%(190h)以上であるか否かを判定し、判定結果がYESであると回転数変動可能と判断されて処理はステップS55へ進み、NOであると回転数変動不可と判断されて処理はステップS58へ進む。
【0095】
このように、リード処理において、シーケンシャルリードアクセスを検出することで、回転数変動中にホスト装置からくるコマンドを特定する。特定したリードデータがDRAM領域のX%以上の場合に回転数を上げることで、回転数変動がホスト装置に影響を及ぼすことがない。
【0096】
尚、ホスト装置からの読み込みコマンドは、例えば次のようなものである。
#D1. 読み込みコマンド: LBA=1100h/ブロック数=20h
#D2. 読み込みコマンド: LBA=1120h/ブロック数=20h
#D3. 読み込みコマンド: LBA=1140h/ブロック数=20h
#D4. 読み込みコマンド: LBA=1160h/ブロック数=20h
#D5. 読み込みコマンド: LBA=1180h/ブロック数=20h
#D6. 読み込みコマンド: LBA=11A0h/ブロック数=20h
#D7. 読み込みコマンド: LBA=11C0h/ブロック数=20h
#D8. 読み込みコマンド: LBA=11E0h/ブロック数=20h
#D9. 読み込みコマンド: LBA=1200h/ブロック数=20h
#D10.読み込みコマンド: LBA=1220h/ブロック数=20h
#D11.読み込みコマンド: LBA=1240h/ブロック数=20h
#D12.読み込みコマンド: LBA=1260h/ブロック数=20h
#D13.読み込みコマンド: LBA=1280h/ブロック数=20h
…
#Dn. 読み込みコマンド: LBA=(1100h+20h×n)/ブロック数=20h
図27は、第4実施例におけるDRAM内の状態に基づく回転数の制御を説明するフローチャートである。同図に示す処理は、MPU12により行われ、図5に示すアクセスの連続性判断の要否を判定するステップS11と関連している。図27中、図13と同一ステップには同一符号を付し、その説明は省略する。又、コマンドが読み込みコマンドの場合に行われるステップの図示は省略する。
【0097】
本実施例では、図32と共に後述するように、DRAM領域を一区画として、一区画=200hブロック数とする。又、ホスト装置から求められる転送速度は0.4Mbyte/sであるものとする。又、光ディスク72の回転数変動に要する時間、即ち、回転数を切り替えてから回転数が安定するまでに要する時間は、例えば0.5秒(s)であるものとする。更に、DRAM上のリードヒット対象データをシーケンシャルデータに限定して、上記第1実施例と同様にDRAM上に一定以上空きがある場合に回転数の変動を実行する。
【0098】
図27において、ホスト装置から発行されるコマンドが書き込みコマンドであると、ステップS85は、ライト用統計情報更新処理を行って後述するシーケンシャルブロック数の総数Yを更新し、処理はステップS59へ進む。又、ステップS61の後、ステップS86は、Yが統計情報基準値l以上であるか否かを判定する。ステップS86の判定結果がNOであると、処理はステップS63へ進み、YESであると、処理はステップS87へ進む。ステップS87は、DRAM上に例えば80%以上の空き領域あるか否かを判定する。ステップS87の判定結果がNOであると、処理はステップS63へ進み、YESであると、処理はステップS62へ進む。
【0099】
つまり、先ずホスト装置からゾーン1に対しての書き込みコマンド#E1が発行されると、アクセスパターンとしてLBAとブロック数の情報を、ライト用の統計情報としてメモリ18内のDRAM又はSRAMに記憶しておく。最初は、DRAM上にライトデータがないため、書き込みコマンド#E1のライトデータをDRAMに転送してからホスト装置に正常終了を報告する。シーケンシャルアクセスを意識しない第1実施例においては、このタイミングで回転数変動を行っていたが、本実施例では、シーケンシャルライトアクセスの場合に限って回転数変動を行うため、ここでは回転数変動を行わない。
【0100】
次に、ホスト装置から書き込みコマンド#E2が発行されると、前回と同様にアクセスパターンとしてLBAとブロック数を統計情報として記憶する。又、DRAM上には1F0h分の空き領域があるため、書き込みコマンド#E2のライトデータを空きDRAM域に転送し、ホスト装置に正常終了を報告する。以後、書き込みコマンド#E10までの書き込みコマンドに対して同様の処理すると、統計情報は基準値lに達する。基準値lは、いくつか考えられるが、ここでは書き込みコマンドがシーケンシャルで、その処理ブロック数の合計が100h以上になるとシーケンシャルライトアクセスと決定する。この状態で、DRAM領域のX%以上が空き領域であると、回転数変動行う。本実施例では、例えばXを80%とすると、DRAM領域の空き領域が190h以上の場合とり、ここではE0hしかないので回転数変動を行わない。書き込みコマンド#D23を受け取ると、図32に示すようにDRAM上に190h以上の空き領域があるので、このタイミングで回転数を変動させる。図32は、第4実施例における回転数アップ処理とライトデータの流れを説明する図である。同図中、WRTはライト、CMDはコマンド、網掛け部はDRAM上の空き領域を示す。又、▲1▼〜▲5▼は、夫々DRAMの最初の状態からDRAM上に1E0hの空き領域が得られる状態までを示す。
【0101】
図28は、ステップS85のライト用統計情報更新処理を説明するフローチャートである。同図中、Wは書き込みコマンドの最終LBA、Xは前回の書き込みコマンドの最終LBA、Yはシーケンシャルブロック数の総数を示す。
【0102】
図28において、ステップS91は、Uを書き込みコマンドの先頭LBAに設定し、ステップS92は、Vを書き込みコマンドのブロック数に設定する。ステップS93は、U+VをWとして設定する。ステップS94は、1個目の書き込みコマンドであるか否かを判定し、判定結果がNOであると、処理はステップS95へ進む。ステップS95は、WがUと連続しているか否かを判定する。ステップS95の判定結果がYESであると、ステップS96は、Y+VをYに設定することでY値を増加させる。他方、ステップS94の判定結果がYES、又は、ステップS95の判定結果がNOの場合には、ステップS97は、0をYに設定することでY値をクリアする。ステップS96又はステップS97の後、ステップS98は、WをXに設定することでX値を更新し、処理は終了する。
【0103】
図29は、ライトデータとDRAMの空き領域を示す図である。又、図30は、ライトデータを管理するテーブルを示す図である。
【0104】
図31は、ステップS87において、DRAM上の空き容量を調べる処理を説明するフローチャートである。同図中、ステップS101は、ライトデータ総ブロック(BC)数(E0h)を、例えば書き込みコマンド#1のBC数と、書き込みコマンド#2のBC数と、書き込みコマンド#3のBC数と、書き込みコマンド#4のBC数との和に設定する。ステップS102は、DRAM上の空き容量(120h)を、例えばDRAMの総容量(200h)からライトデータBC数(E0h)を減算した値に設定する。ステップS103は、DRAM上の空き領域が、例えばDRAMの総容量の80%(190h)以上であるか否かを判定し、判定結果がYESであると回転数変動可能と判断されて処理はステップS62へ進み、NOであると回転数変動不可と判断されて処理はステップS63へ進む。
【0105】
このように、ライト処理において、シーケンシャルライトアクセスを検出することで、回転数変動による効果を得ることができる。又、DRAMにX%以上の空き領域があれば回転数変動を行うので、回転数変動がホスト装置に影響を及ぼすことはない。
【0106】
尚、ホスト装置からの書き込みコマンドは、例えば次のようなものである。
#E1. 書き込みコマンド: LBA=1100h/ブロック数=20h
#E2. 書き込みコマンド: LBA=1120h/ブロック数=20h
#E3. 書き込みコマンド: LBA=1140h/ブロック数=20h
#E4. 書き込みコマンド: LBA=1160h/ブロック数=20h
#E5. 書き込みコマンド: LBA=1180h/ブロック数=20h
#E6. 書き込みコマンド: LBA=11A0h/ブロック数=20h
#E7. 書き込みコマンド: LBA=11C0h/ブロック数=20h
#E8. 書き込みコマンド: LBA=11E0h/ブロック数=20h
#E9. 書き込みコマンド: LBA=1200h/ブロック数=20h
#E10.書き込みコマンド: LBA=1220h/ブロック数=20h
#E11.書き込みコマンド: LBA=1240h/ブロック数=20h
#E12.書き込みコマンド: LBA=1260h/ブロック数=20h
#E13.書き込みコマンド: LBA=1280h/ブロック数=20h
…
#En. 書き込みコマンド: LBA=(1100h+20h×n)/ブロック数=20h
ところで、光ディスク72の回転数を変動させた場合、回転数が安定するまでに一定の時間がかかる。そこで、以下に説明する実施例では、回転数の切り替えを最小限に抑えることで、データ転送効率を更に向上させる。
【0107】
図33は、第5実施例におけるDRAM内の状態に基づく回転数の制御を説明するフローチャートである。同図に示す処理は、MPU12により行われ、図5に示すアクセスの連続性判断の要否を判定するステップS11と関連している。図33中、図13及び図21と同一ステップには同一符号を付し、その説明は省略する。
【0108】
本実施例では、図34及び図35に示すように、DRAM領域400hを二区画に分け、一区画=200hブロック数とする。本実施例は、上記第1〜第3実施例によって回転数を上昇させた後に、高回転状態を継続させるものである。第1〜第3実施例では、使用するDRAMは1つであるが、本実施例では、1つのDRAMの領域を2つの領域DRAM#1,DRAM#2として用いるか、或いは,2つのDRAMの夫々の領域DRAM#1,DRAM#2を使用する。
【0109】
又、図34及び図35は、夫々第5実施例における回転数アップ処理後の高回転継続の流れを説明する図である。これらの図中、RDはリード、WRTはライト、CMDはコマンド、網掛け部はDRAM上の空き読みデータ、ハッチング部はDRAM上の空き領域を示す。又、▲1▼〜▲5▼は、夫々DRAMの空き領域へライトデータを転送した最初の状態からDRAM上に先読みデータが190h以上読み込まれた状態までを示す。
【0110】
図33において、ステップS57の後、ステップS111は、回転数を下げ、リード処理へ進む。他方、ステップS51の判定結果がNOであると、ステップS112は、DRAM上に空き領域があるか否かを判定する。ステップS112の判定結果がYESであると、ステップS113は、DRAM上の空き領域にホスト装置からのライトデータを転送する。又、ステップS114は、ホスト装置へ正常終了報告を行い、ライト処理は待機状態となる。
【0111】
ステップS112の判定結果がNOであると、ステップS115は先読みを停止し、ステップS116は、DRAM上の空き領域にホスト装置からのライトデータを転送する。又、ステップS117は、ホスト装置に正常終了報告を行い、ステップS118は、回転数を下げ、ライト処理へ進む。
【0112】
先読みが停止されると、ステップS120は、未書き込みデータがあるか否かを判定し、判定結果がNOであると、ホスト装置からのコマンド待ち状態となる。他方、ステップS120の判定結果がYESであると、ライト処理は待機状態となる。
【0113】
ライト処理が待機状態となって、ステップS119で例えば2秒の待機時間が経過すると、ライト処理へ進む。
【0114】
つまり、先ず例えば上記第3実施例によって回転数が上げられた後、ホスト装置からゾーン0に対しての書き込みコマンド#F1が発行されると、空いているDRAM領域を確認する。領域DRAM#1は、ゾーン1に対して高回転数で先読みを行っているため、領域DRAM#2にライトデータを転送する。転送終了後、正常終了をホスト装置に報告するが、書き込み処理を直ちには行わず、領域DRAM#1の先読み動作を継続する。
【0115】
次に、ホスト装置から読み込みコマンド#F2が発行されると、リード用統計情報を更新した後、DRAM上にリードデータが在るか確認する。ここでは、先読み動作にて40hブロック数のデータが領域DRAM#1上に読み込まれているため、領域DRAM#1上からホスト装置へリードデータを転送する。
【0116】
以後、書き込みコマンド#F61までのコマンドに対して同様の処理をすると、DRAM上に空いている領域がなくなる。ここで、先読み動作を停止させ、ゾーン0の回転数に切り替えてから、領域DRAM#2のライトデータを光ディスク72に書き込む。
【0117】
領域DRAM#2の書き込みが終了すると、領域DRAM#2に空きができるため、書き込みコマンド#F61のライトデータを転送する。このライトデータの転送終了後、ホスト装置へ正常終了を報告するが、直ちには書き込み処理を行わず、ホスト装置からのコマンドをm秒間待つ。本実施例では、m=2とする。従って、2秒以内にホスト装置から読み込みコマンド#F62が発行されると、領域DRAM#1上にリードデータが在るため、リード用統計情報を更新した後、リードデータを領域DRAM#1からホスト装置へ転送する。
【0118】
以後、読み込みコマンド#F65までのコマンドに対して同様の処理を行い、読み込みコマンド#F66に対しては、DRAM上に読み込みコマンド#F66のリードデータがないため、光ディスク72から読み込む。続いて、読み込みコマンド#F66に続くデータの先読み動作を行う。読み込みコマンド#F66以降のコマンドに対して同様の処理を行うと、領域DRAM#1上のリードヒット対象データが120h以上になり、シーケンシャルアクセスであるため、上記第3実施例の場合と同様に再び回転数変動を行う。
【0119】
以後、前回と同様の処理を行い、ホスト装置から2秒以内にコマンドが来なければ、DRAM上のライトデータを光ディスク72に書き込む。このように、読み込みコマンドによって回転数を上げた場合、現在のゾーン以外の、特に回転数をダウンするゾーンに対してのコマンドが来ると、そのコマンドに対する実動作をできるだけ後回しに処理することで、上昇した回転数を継続させ、回転数変動によるランダムアクセス性能及び転送速度の低下を防ぎ、転送効率を更に向上することができる。
【0120】
尚、ホスト装置からのコマンドは、例えば次のようなものである。
#F1. 書き込みコマンド: LBA= 100h/BC数=20h
#F2. 読み込みコマンド: LBA=1120h/BC数=20h
#F3. 読み込みコマンド: LBA=1140h/BC数=20h
#F4. 書き込みコマンド: LBA= 120h/BC数=20h
#F5. 読み込みコマンド: LBA=1160h/BC数=20h
#F6. 読み込みコマンド: LBA=1180h/BC数=20h
#F7. 書き込みコマンド: LBA= 140h/BC数=20h
#F8. 読み込みコマンド: LBA=11A0h/BC数=20h
#F9. 読み込みコマンド: LBA=11C0h/BC数=20h
…
#Fn .書き込みコマンド: LBA=100h+20×nh /BC数=20h
…
#Fm .読み込みコマンド: LBA=1120h+20×mh/BC数=20h
#Fm+1.読み込みコマンド: LBA=1120h+40×nh/BC数=20h
図36は、第6実施例におけるDRAM内の状態に基づく回転数の制御を説明するフローチャートである。同図に示す処理は、MPU12により行われ、図5に示すアクセスの連続性判断の要否を判定するステップS11と関連している。図36中、図27及び図33と同一ステップには同一符号を付し、その説明は省略する。
【0121】
本実施例では、図37及び図38に示すように、DRAM領域400hを二区画に分け、一区画=200hブロック数とする。本実施例は、上記第1又は第4実施例によって回転数を上昇させた後に、高回転状態を継続させるものである。第1又は第4実施例では、使用するDRAMは1つであるが、本実施例では、1つのDRAMの領域を2つの領域DRAM#1,DRAM#2として用いるか、或いは,2つのDRAMの夫々の領域DRAM#1,DRAM#2を使用する。
【0122】
又、図37及び図38は、夫々第6実施例における回転数アップ処理後の高回転継続の流れを説明する図である。これらの図中、WRTはライト、CMDはコマンド、ハッチング部はDRAM上の空き領域を示す。又、▲1▼〜▲5▼は、夫々DRAMの空き領域へライトデータを転送した最初の状態からゾーン0への書き込みが行われる状態までを示す。
【0123】
図36において、ホスト装置から書き込みコマンドが発行されると、ステップS85はライト用統計情報更新処理を行い、処理はステップS112へ進む。他方、ライト処理が終了すると、未書き込みデータがあるか否かを判定し、判定結果がNOであると、ホスト装置からのコマンド待ち状態となる。ステップS120の判定結果がYESであると、ステップS122は、前回と同じゾーンのライトデータがあるか否かを判定し、判定結果がYESであると、ライト処理は終了する。ステップS122の判定結果がNOであると、ホスト装置からのコマンド待ち状態となる。ライト処理が待ち状態となって、ステップS119で例えば2秒の書き込み待機時間が経過すると、ライト処理は終了する。
【0124】
つまり、先ず例えば第4実施例によって回転数が上げられた後、ホスト装置からゾーン0に対しての書き込みコマンド#G1が発行されると、ライト用統計情報を更新した後、空いているDRAM領域を確認する。ここで、領域DRAM#1は、ゾーン1に対して高回転数で書き込み(LBA=13C0h〜161Fh)を行っているため、領域DRAM#2にライトデータを転送する。この転送終了後、正常終了をホスト装置へ報告する。続いて、ホスト装置からゾーン1に対しての書き込みコマンド#G2が発行されると、前回と同様にライト用統計情報を更新した後、空いている領域DRAM#2にライトデータを転送し、正常終了をホスト装置へ報告する。以後、書き込みコマンド#G7までの書き込みコマンドに対しても同様の処理を行う。
【0125】
領域DRAM#1の書き込みが終了すると、引き続き高回転で書き込み処理可能なゾーン1に対してのライトデータ#G2を優先的に書き込む。続いて、ホスト装置からゾーン0に対しての書き込みコマンド#G8が発行されると、前回と同様にライト用統計情報を更新した後、書き込みを終了した領域DRAM#1にライトデータを転送し、正常終了をホスト装置へ報告する。以後、書き込みコマンド#G13までの書き込みコマンドに対しても同様の処理を行う。
【0126】
書き込みコマンド#G2に対する書き込み終了後、引き続きゾーン1に対してのライトデータ(#G4/#G6/#G8/#G10/#G12)を優先して書き込み、高回転を維持する。ゾーン1に対する書き込みが全て終了すると、ゾーン0に対する書き込み処理を直ちには行わず、ホスト装置からのコマンドをm秒間待つ。本実施例では、例えばm=2とする。従って、2秒以内に、ホスト装置からゾーン1に対する書き込みコマンドが発行されれば、引き続きゾーン1に対する書き込み処理を優先して行う。逆に、ゾーン1以外の書き込みコマンドが発行されると、DRAMの空いている領域にライトデータを転送し、前回と同様に2秒間待ってから回転数を変動し、ゾーン0の書き込みを行う。又、ホスト装置からゾーン1、或いは、他のゾーンに対しての書き込みコマンドが発行され、回転数変動可能な場合には、上記第4実施例のようにライト用統計情報とDRAM領域の空き状態に応じて回転数を上げる。
【0127】
このように、書き込みコマンドによって回転数を上げた場合、現在のゾーン以外の、特に回転数をダウンするゾーンに対してのコマンドが来ると、そのコマンドに対する実動作をできるだけ後回しに処理することで、上昇した回転数を継続させ、回転数変動によるランダムアクセス性能及び転送速度の低下を防ぎ、転送効率を更に向上することができる。
【0128】
尚、ホスト装置からの書き込みコマンドは、例えば次のようなものである。
#G1. 書き込みコマンド: LBA= 100h/BC数=20h
#G2. 書き込みコマンド: LBA=1700h/BC数=20h
#G3. 書き込みコマンド: LBA= 120h/BC数=20h
#G4. 書き込みコマンド: LBA=1720h/BC数=20h
#G5. 書き込みコマンド: LBA= 140h/BC数=20h
#G6. 書き込みコマンド: LBA=1740h/BC数=20h
#G7. 書き込みコマンド: LBA= 160h/BC数=20h
#G8. 書き込みコマンド: LBA=1760h/BC数=20h
#G9. 書き込みコマンド: LBA= 180h/BC数=20h
#G10. 書き込みコマンド: LBA=1780h/BC数=20h
#G11. 書き込みコマンド: LBA= 1A0h/BC数=20h
#G12. 書き込みコマンド: LBA=17A0h/BC数=20h
#G13. 書き込みコマンド: LBA= 1C0h/BC数=20h
…
図39及び図40は、第7実施例におけるDRAM内の状態に基づく回転数の制御を説明するフローチャートである。これらの図に示す処理は、MPU12により行われ、図5に示すアクセスの連続性判断の要否を判定するステップS11と関連している。図39及び図40中、図27及び図36と同一ステップには同一符号を付し、その説明は省略する。
【0129】
本実施例では、図41及び図42に示すように、DRAM領域400hを二区画に分け、一区画=200hブロック数とする。本実施例は、上記第1又は第4実施例によって回転数を上昇させた後に、高回転状態を継続させるものである。第1又は第4実施例では、使用するDRAMは1つであるが、本実施例では、1つのDRAMの領域を2つの領域DRAM#1,DRAM#2として用いるか、或いは,2つのDRAMの夫々の領域DRAM#1,DRAM#2を使用する。
【0130】
又、図41及び図42は、夫々第7実施例における既存回転数での優先ライト処理と回転数アップ処理の流れを説明する図である。これらの図中、WRTはライト、CMDはコマンドを示す。又、▲1▼〜▲4▼は、夫々DRAMが書き込みコマンド#I1〜#I3のライトデータを保持中に書き込みコマンド#H1〜のライトデータを上位装置から受領する最初の状態から、回転数を上げて書き込みコマンド#H1〜のライトデータを光ディスク72に書き込む状態までを示す。尚、501は、今回ホスト装置から受領してDRAMに転送された書き込みコマンド#H1〜のライトデータを示し、502は、既にDRAMに転送されて保持されている書き込みコマンド#I1〜#I3のライトデータを示す。説明の便宜上、書き込みコマンド#I1,#I2のライトデータはゾーン0に書き込まれ、書き込みコマンド#I3のライトデータはゾーン2に書き込まれ、書き込みコマンド#H1〜のライトデータはゾーン5に書き込まれるものとする。
【0131】
図39に示す処理は、ホスト装置から書き込みコマンドが発行され、ステップS85がライト用統計情報更新処理を実行する際の光ディスク72の回転数が、通常モードの、上げられていない回転数である点を除けば、処理は図36の場合と同じである。
【0132】
又、図40に示す処理は、ライト処理が終了してステップS86が実行される際の光ディスク72の回転数が、通常モードの、上げられてない回転数である点を除けば、処理は図27の場合と実質的に同じである。ただし、図40の処理の場合、ステップS87の判定結果がNOであると、ステップS131が回転数変動不可と判断してからステップS63へ進み、ステップS87の判定結果がYESであると、ステップS132で回転数変動可能と判断してからステップS122へ進む。又、ステップS122の判定結果がNOであると、処理はステップS63へ進み、YESであると、処理はステップS62へ進む。
【0133】
つまり、ホスト装置からの書き込みコマンドは、例えば次のようなものであるものとする。
…
#I1. 書き込みコマンド: LBA= 0h/BC数=20h・・・ゾーン0
#I2. 書き込みコマンド: LBA= 20h/BC数=20h・・・ゾーン0
#I3. 書き込みコマンド: LBA=2000h/BC数=20h・・・ゾーン2
…
#H1. 書き込みコマンド: LBA=1100h/BC数=20h・・・ゾーン5
#H2. 書き込みコマンド: LBA=1120h/BC数=20h・・・ゾーン5
#H3. 書き込みコマンド: LBA=1140h/BC数=20h・・・ゾーン5
#H4. 書き込みコマンド: LBA=1160h/BC数=20h・・・ゾーン5
#H5. 書き込みコマンド: LBA=1180h/BC数=20h・・・ゾーン5
#H6. 書き込みコマンド: LBA=11A0h/BC数=20h・・・ゾーン5
#H7. 書き込みコマンド: LBA=11C0h/BC数=20h・・・ゾーン5
#H8. 書き込みコマンド: LBA=11E0h/BC数=20h・・・ゾーン5
#H9. 書き込みコマンド: LBA=1200h/BC数=20h・・・ゾーン5
#H10. 書き込みコマンド: LBA=1220h/BC数=20h・・・ゾーン5
#H11. 書き込みコマンド: LBA=1240h/BC数=20h・・・ゾーン5
#H12. 書き込みコマンド: LBA=1260h/BC数=20h・・・ゾーン5
#H13. 書き込みコマンド: LBA=1280h/BC数=20h・・・ゾーン5
…
#Hn. 書き込みコマンド: LBA=(1100h+20h×n)/BC数=20h・・・ゾーン5
…
この場合、書き込みコマンド#H1〜により回転数変動条件を満たす場合、DRAMが回転数変動対象ゾーン以外のライトデータを保持していると、回転数変動を行わずに、回転数変動対象ゾーン以外のライトデータを既存の回転数で優先して光ディスク72に書き込む。つまり、書き込みコマンド#I1,#I2のライトデータがゾーン0に書き込まれ、書き込みコマンド#I3のライトデータがゾーン2に書き込まれる。回転数変動対象ゾーン以外のライトデータを全て光ディスク72に書き込んでから、回転数変動対象ゾーンのライトデータを、回転数をアップしてから光ディスク72に書き込む。これにより、書き込みコマンド#H1〜のライトデータが、回転数を上げてからゾーン5に書き込まれる。
【0134】
これにより、例えば上記第4実施例において、ホスト装置から連続する書き込みコマンドを受領した際、他のゾーンに対する書き込みコマンドのライトデータをDRAMに保持している状態であり、且つ、連続する書き込みコマンドによる回転数変動条件を満足する場合には、他のゾーンに対する書き込みを既存の(現状の)回転数で優先して書き込むことで、回転数変動回数を少なくして、回転数変動による性能低下を防止する。
【0135】
又、上記各実施例では、本発明が光磁気ディスクを用いる光ディスク装置に適用されているが、他の相変化型の光ディスクや磁気ディスク等のディスク状記録媒体を用いる装置にも同様に適用可能であることは、言うまでもない。又、記録媒体の形状は、ディスク形状に限定されず、上記実施例におけるディスクと同様な螺旋状又は略同心円状のトラックを有するカード形状等であっても良い。
【0136】
尚、本発明は、以下に付記する発明をも包含するものである。
【0137】
(付記1) 半径方向に分割された複数のゾーンを有するCAV方式の記録媒体の回転を制御する回転制御方法であって、
該記録媒体にライトするライトデータを一時的に格納及び/又は該記録媒体からリードされたリードデータを一時的に格納するバッファメモリ内の状態を検出する検出ステップと、
半径方向に分割された複数のエリアのうち、アクセスされたエリアに応じて、前記検出ステップで検出された状態に基いたタイミングで該記録媒体の回転数を切り替え制御する制御ステップとを含むことを特徴とする、回転制御方法。
【0138】
(付記2) 前記制御ステップは、リードアクセス時には前記バッファメモリ内で前記リードデータが占有する容量が第1の容量以上となると回転数を切り替えると共に、ライトアクセス時には前記バッファメモリ内の空き容量が第2の容量以上となると回転数を切り替えることを特徴とする、(付記1)記載の回転制御方法。
【0139】
(付記3) 前記制御ステップは、同じ回転数を用いるアクセスを優先してから回転数を切り替えることを特徴とする、(付記1)又は(付記2)記載の回転制御方法。
【0140】
(付記4) 前記制御ステップは、回転数を切り替える条件が満足された一定遅延時間後に初めて回転数の切り替えを行うことを特徴とする、(付記1)〜(付記3)のいずれか1項記載の回転制御方法。
【0141】
(付記5) 半径方向に分割された複数のゾーンを有するCAV方式の記録媒体に対して情報の記録及び/又は再生を行う記憶装置であって、
該記録媒体にライトするライトデータを一時的に格納及び/又は該記録媒体からリードされたリードデータを一時的に格納するバッファメモリと、
該バッファメモリ内の状態を検出する検出手段と、
半径方向に分割された複数のエリアのうち、アクセスされたエリアに応じて、前記検出手段で検出された状態に基いたタイミングで該記録媒体の回転数を切り替え制御する制御手段とを備えたことを特徴とする、記憶装置。
【0142】
(付記6) 前記制御手段は、リードアクセス時には前記バッファメモリ内で前記リードデータが占有する容量が第1の容量以上となると回転数を切り替え、及び/又は、ライトアクセス時には前記バッファメモリ内の空き容量が第2の容量以上となると回転数を切り替えることを特徴とする、(付記5)記載の記憶装置。
【0143】
(付記7) 前記制御手段は、同じ回転数を用いるアクセスを優先してから回転数を切り替えることを特徴とする、(付記5)又は(付記6)記載の記憶装置。
【0144】
(付記8) 前記制御手段は、回転数を切り替える条件が満足された一定遅延時間後に初めて回転数の切り替えを行うことを特徴とする、(付記5)〜(付記7)のいずれか1項記載の記憶装置。
【0145】
(付記9) 前記記録媒体を第1の回転数で回転する通常モードと、該記録媒体の任意のエリアよりインナ側のエリアへのアクセスの際には該記録媒体を前記第1の回転数より高い1又は複数の第2の回転数で回転する高速モードとを有し、
前記制御手段は、回転数を前記第1の回転数と前記第2の回転数との間で切り替えることを特徴とする、(付記5)〜(付記8)のいずれか1項記載の記憶装置。
【0146】
以上、本発明を実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは、言うまでもない。
【0147】
【発明の効果】
本発明によれば、記録媒体の使用状況に応じて、データ転送速度及びランダムアクセス性能を最適に設定可能とすることのできる回転制御方法及び記憶装置を実現できる。又、バッファメモリの使用状況を検出することにより、回転数切り替え(変動)時間がホスト装置から見えなくなるため、ホスト装置に対する転送レートを落とすことなく、所望の転送レートを確保することができる。
【図面の簡単な説明】
【図1】本発明になる記録装置の第1実施例の構成を示すブロック図である。
【図2】エンクロージャの概略構成を示す断面図である。
【図3】光記録媒体上のゾーンと、データ転送レートと、光記録媒体の回転数との関係を示す図である。
【図4】光記録媒体上のゾーンに対するデータ転送レート及び光記録媒体の回転数の関係を示す図である。
【図5】第1実施例におけるMPUの動作を説明するフローチャートである。
【図6】第1実施例におけるMPUの動作を説明するフローチャートである。
【図7】光記録媒体上のゾーンと、記録/再生クロック周波数と、光記録媒体の回転数との関係を示す図である。
【図8】光記録媒体上のゾーンと、記録/再生パワーと、光記録媒体の回転数との関係を示す図である。
【図9】偏心加速度情報切り替え処理を説明するフローチャートである。
【図10】偏心加速度情報切り替え処理を説明する図である。
【図11】光記録媒体上に設けられたバッファ領域を説明する図である。
【図12】各ゾーン毎の物理ブロックアドレスと回転数の関係を示す図である。
【図13】第1実施例における回転数制御を説明するフローチャートである。
【図14】第1実施例における回転数アップ処理とリードデータの流れを説明する図である。
【図15】第1実施例における回転数アップ処理とライトデータの流れを説明する図である。
【図16】第2実施例における回転数の制御を説明するフローチャートである。
【図17】リードヒット対象データとDRAMの空き領域を示す図である。
【図18】リードヒット対象データを管理するテーブルを示す図である。
【図19】DRAM上のリードヒット対象データの量を調べる処理を説明するフローチャートである。
【図20】第2実施例における回転数アップ処理とDRAM上のリードヒット対象データを説明する図である。
【図21】第3実施例における回転数の制御を説明するフローチャートである。
【図22】リード用統計情報更新処理を説明するフローチャートである。
【図23】リードヒット対象データとDRAMの空き領域を示す図である。
【図24】リードヒット対象データを管理するテーブルを示す図である。
【図25】DRAM上のリードヒット対象データの量を調べる処理を説明するフローチャートである。
【図26】第3実施例における回転数アップ処理とリードデータの流れを説明する図である。
【図27】第4実施例における回転数の制御を説明するフローチャートである。
【図28】ライト用統計情報更新処理を説明するフローチャートである。
【図29】ライトデータとDRAMの空き領域を示す図である。
【図30】ライトデータを管理するテーブルを示す図である。
【図31】DRAM上の空き容量を調べる処理を説明するフローチャートである。
【図32】第4実施例における回転数アップ処理とライトデータの流れを説明する図である。
【図33】第5実施例における回転数の制御を説明するフローチャートである。
【図34】第5実施例における回転数アップ処理後の高回転継続の流れを説明する図である。
【図35】第5実施例における回転数アップ処理後の高回転継続の流れを説明する図である。
【図36】第6実施例における回転数の制御を説明するフローチャートである。
【図37】第6実施例における回転数アップ処理後の高回転継続の流れを説明する図である。
【図38】第6実施例における回転数アップ処理後の高回転継続の流れを説明する図である。
【図39】第7実施例における回転数の制御を説明するフローチャートである。
【図40】第7実施例における回転数の制御を説明するフローチャートである。
【図41】第7実施例における既存回転数での優先ライト処理と回転数アップ処理の流れを説明する図である。
【図42】第7実施例における既存回転数での優先ライト処理と回転数アップ処理の流れを説明する図である。
【符号の説明】
10 コントロールユニット
11 エンクロージャ
12 MPU
14 ODC
16 DSP
18 メモリ
20 ライトLSI回路
24 リードLSI回路
Claims (6)
- 半径方向に分割された複数のゾーンを有するCAV方式の記録媒体の回転を制御する回転制御方法であって、
該記録媒体にライトするライトデータを一時的に格納すると共に該記録媒体からリードされたリードデータを一時的に格納するバッファメモリ内の使用状況を検出する検出ステップと、
アクセス要求がシーケンシャルアクセス要求であるか或いはランダムアクセス要求であるかと、半径方向にゾーン数以下に分割された複数のエリアのうち、アクセスされたエリアとに応じて、前記検出ステップで検出された前記バッファメモリ内の使用状況に基づいて該記録媒体の回転数を制御する制御ステップとを含み、
該制御ステップは、所定のエリアに対するシーケンシャルアクセス要求の場合であって、リード時には該検出ステップにおいて前記バッファメモリ内のリードヒット対象データが占有する容量が第1の容量より大きい場合は回転数を上げる制御と、ライト時には前記バッファメモリ内の空き容量が第2の容量より大きくなると回転数を上げる制御のうち少なくとも一方の制御を行うことを特徴とする、回転制御方法。 - 半径方向に分割された複数のゾーンを有するCAV方式の記録媒体に対して情報の記録及び再生を行う記憶装置であって、
該記録媒体にライトするライトデータを一時的に格納すると共に該記録媒体からリードされたリードデータを一時的に格納するバッファメモリと、
該バッファメモリ内の使用状況を検出する検出手段と、
アクセス要求がシーケンシャルアクセス要求であるか或いはランダムアクセス要求であるかと、半径方向にゾーン数以下に分割された複数のエリアのうち、アクセスされたエリアとに応じて、前記検出手段で検出された該バッファメモリ内の使用状況に基づいて該記録媒体の回転数を制御する制御手段とを備え、
該制御手段は、所定のエリアに対するシーケンシャルアクセス要求の場合であって、リード時には該検出手段において該バッファメモリ内のリードヒット対象データが占有する容量が第1の容量より大きい場合は回転数を上げる制御と、ライト時には該バッファメモリ内の空き容量が第2の容量より大きくなると回転数を上げる制御のうち少なくとも一方の制御を行うことを特徴とする、記憶装置。 - 前記複数のエリアは、該記録媒体の回転速度が第1の速度に設定可能なエリアと、該記録媒体の回転速度が第1又は第2の速度に設定可能なエリアと、該記録媒体の回転速度が該第1又は該第2又は第3の速度に設定可能なエリアを少なくとも含み、(第1の速度)<(第2の速度)<(第3の速度)であることを特徴とする、請求項1記載の回転制御方法。
- 前記複数のエリアは、該記録媒体の回転速度が第1の速度に設定可能なエリアと、該記録媒体の回転速度が第1又は第2の速度に設定可能なエリアと、該記録媒体の回転速度が該第1又は該第2又は第3の速度に設定可能なエリアを少なくとも含み、(第1の速度)<(第2の速度)<(第3の速度)であることを特徴とする、請求項2記載の記憶装置。
- 前記制御手段は、同じ回転数を用いるアクセスを優先してから回転数を切り替えることを特徴とする、請求項2又は4記載の記憶装置。
- 前記制御手段は、回転数を切り替える条件が満足された一定遅延時間後に初めて回転数の切り替えを行うことを特徴とする、請求項2又は4項記載の記憶装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000301464A JP3831189B2 (ja) | 2000-09-29 | 2000-09-29 | 回転制御方法及び記憶装置 |
US09/813,244 US7012866B2 (en) | 2000-09-29 | 2001-03-20 | Rotation control method for CAV system based on sequential or random access request and on zone access based on access request of recording medium |
EP01302898A EP1193705A3 (en) | 2000-09-29 | 2001-03-28 | Rotation control method and storage apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000301464A JP3831189B2 (ja) | 2000-09-29 | 2000-09-29 | 回転制御方法及び記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002109823A JP2002109823A (ja) | 2002-04-12 |
JP3831189B2 true JP3831189B2 (ja) | 2006-10-11 |
Family
ID=18783000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000301464A Expired - Fee Related JP3831189B2 (ja) | 2000-09-29 | 2000-09-29 | 回転制御方法及び記憶装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7012866B2 (ja) |
EP (1) | EP1193705A3 (ja) |
JP (1) | JP3831189B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4197524B2 (ja) * | 2006-01-27 | 2008-12-17 | 富士通テン株式会社 | 録音再生装置、録音再生方法及び車載用録音再生装置 |
RU2472978C2 (ru) * | 2009-04-15 | 2013-01-20 | Открытое акционерное общество "Тушинский машиностроительный завод" | Способ управления вращением приводного вала следящего пневмо- или гидропривода |
RU2473822C2 (ru) * | 2009-04-15 | 2013-01-27 | Открытое акционерное общество "Тушинский машиностроительный завод" | Следящий пневмо- или гидропривод вращательного движения |
SG11201601785RA (en) | 2013-09-09 | 2016-04-28 | Seagate Technology Llc | Mobile data storage device with temperature management |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2736092B2 (ja) * | 1989-01-10 | 1998-04-02 | 株式会社東芝 | バッファ装置 |
JPH03104056A (ja) | 1989-09-19 | 1991-05-01 | Hitachi Ltd | 回転型情報記録再生装置の情報記録再生方法 |
JPH03161826A (ja) | 1989-11-20 | 1991-07-11 | Sharp Corp | ディスク型記録再生装置 |
JPH0541046A (ja) * | 1991-08-02 | 1993-02-19 | Canon Inc | 情報記録再生装置 |
JP3187519B2 (ja) | 1992-03-19 | 2001-07-11 | 株式会社大和化成研究所 | ナフトアルデヒド類の製造方法 |
JPH05303826A (ja) * | 1992-04-24 | 1993-11-16 | Matsushita Electric Ind Co Ltd | 情報記録再生方法 |
JPH0824522B2 (ja) | 1992-11-26 | 1996-03-13 | 株式会社ケスジャン | 殺虫剤カートリッジ及び殺虫装置 |
JP2939962B2 (ja) * | 1993-11-19 | 1999-08-25 | 日本ビクター株式会社 | 情報符号化装置及び円盤状記録媒体及びその再生装置 |
JP3112625B2 (ja) | 1994-10-14 | 2000-11-27 | 株式会社日立製作所 | ディスク記録方法および再生装置 |
JP3380626B2 (ja) | 1994-10-14 | 2003-02-24 | パイオニア株式会社 | 情報再生方法及び装置 |
JP2809206B2 (ja) | 1995-06-26 | 1998-10-08 | 松下電器産業株式会社 | 光ディスク記録再生方法及び光ディスク装置 |
US5983278A (en) * | 1996-04-19 | 1999-11-09 | Lucent Technologies Inc. | Low-loss, fair bandwidth allocation flow control in a packet switch |
JPH1092101A (ja) | 1996-09-18 | 1998-04-10 | Nec Corp | 磁気ディスク装置及びその駆動方法 |
KR100235326B1 (ko) | 1996-10-19 | 2000-01-15 | 구자홍 | 멀티-레이트 광디스크 기록 방법 및 그 장치 |
US6028539A (en) * | 1997-02-07 | 2000-02-22 | Matsushita Electric Industrial Co., Ltd. | Buffer control method, and decoding apparatus performing buffer control |
JP3559836B2 (ja) | 1998-04-22 | 2004-09-02 | 株式会社ケンウッド | 光ディスク用データ読み出し装置 |
-
2000
- 2000-09-29 JP JP2000301464A patent/JP3831189B2/ja not_active Expired - Fee Related
-
2001
- 2001-03-20 US US09/813,244 patent/US7012866B2/en not_active Expired - Fee Related
- 2001-03-28 EP EP01302898A patent/EP1193705A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
JP2002109823A (ja) | 2002-04-12 |
EP1193705A2 (en) | 2002-04-03 |
EP1193705A3 (en) | 2003-01-29 |
US20020039334A1 (en) | 2002-04-04 |
US7012866B2 (en) | 2006-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI224328B (en) | Optical recording medium | |
US5684774A (en) | Optical disk apparatus | |
US7345972B2 (en) | Rotation control method and storage apparatus | |
US6661758B2 (en) | High speed data recording and/or reproducing method and apparatus with increased sector access speed | |
US7623426B2 (en) | Optical disk apparatus | |
US7848182B2 (en) | Recording medium, access apparatus, access method, and program | |
JP3831189B2 (ja) | 回転制御方法及び記憶装置 | |
JP3795738B2 (ja) | 記録媒体の回転制御方法及び記憶装置 | |
JP3762629B2 (ja) | トラックジャンプ方法及び記憶装置 | |
JP2001176204A (ja) | 光学的情報記録再生装置 | |
JPH0684174A (ja) | 光ディスク媒体とそれを用いた情報処理装置 | |
US20050068869A1 (en) | Information record apparatus and method, information record and reproduction apparatus and method, and computer program product | |
JP2005050515A (ja) | 光学的記憶装置 | |
EP1525581A1 (en) | Rotation speed control for recording information | |
JPH09190680A (ja) | 情報記録媒体 | |
JP3871866B2 (ja) | 光ディスク装置、情報処理装置、光ディスク記録方法および定数推定方法 | |
JP4031915B2 (ja) | 再生方法及び記憶装置 | |
JP2002216426A (ja) | 情報記録システム | |
KR20050072105A (ko) | 정보 기록 및/또는 재생 방법 및 장치 | |
JP2001067805A (ja) | 記録装置 | |
JPH11143644A (ja) | 再生装置、及びキャッシュ処理方法 | |
JP2001176186A (ja) | データ記録再生装置 | |
JP2003330796A (ja) | 記憶装置、記録及び/又は再生装置、情報記憶システム、記憶方法、プログラム、記録媒体 | |
KR20050119702A (ko) | 광학 디스크 상에 리드아웃을 기록하는 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060124 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060327 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060418 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060615 |
|
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: 20060711 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060713 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090721 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090721 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |