(57)【要約】  ホストシステム（２）とデータ転送通信状態（７）にあるディスクドライブ装置（３）内の、ディスク速度を設定する方法であって、担体とドライブ装置との間のデータ転送が、担体／ドライブ転送レート（ＤＤＴＲ）で生じ、ドライブ装置とホストシステムとの間のデータ転送が、ドライブ／ホスト転送レート（ＤＨＴＲ）で生じる方法を開示する。現在の速度とは異なる目標速度が計算され、その目標速度における予測担体／ドライブ転送レート（ＤＨＴＲｅｘ）が計算され、ドライブ／ホスト転送レート（ＤＨＴＲ）が、予測担体／ドライブ転送レート（ＤＨＴＲｅｘ）と比較される。そのドライブ／ホスト転送レート（ＤＨＴＲ）と予測担体／ドライブ転送レート（ＤＨＴＲｅｘ）との間の比較が、目標速度への速度変更が行われると、次の速度変更としてその目標速度から現在の速度へと戻る速度変更が予測されることを示す場合、現在の速度が維持される。
2007503080.tif 000002
【特許請求の範囲】
【請求項１】
ホストシステムとデータ転送通信状態にあるデータ担体ドライブ装置内の、データ担体速度を設定する方法であって、
担体と前記ドライブ装置との間のデータ転送が、担体／ドライブ転送レートで生じ、前記ドライブ装置と前記ホストシステムとの間のデータ転送が、ドライブ／ホスト転送レートで生じ、
前記データ担体速度を設定する際に、前記担体／ドライブ転送レートおよび前記ドライブ／ホスト転送レートが考慮に入れられることを特徴とする方法。
【請求項２】
現在の速度とは異なる目標速度が計算され、
前記目標速度における予測担体／ドライブ転送レートが計算され、
前記ドライブ／ホスト転送レートが、前記予測担体／ドライブ転送レートと比較され、
該ドライブ／ホスト転送レートと該予測担体／ドライブ転送レートとの間の該比較が、前記目標速度への速度変更が行われると、次の速度変更として該目標速度から前記現在の速度へと戻る速度変更が予測されることを示す場合、前記現在の速度が維持されることを特徴とする請求項１記載の方法。
【請求項３】
読出モードでの動作の際には、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
書込モードでの動作の際には、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートを測定し、
−  ドライブ／ホスト平均転送レートを測定し、
−  バッファ充足レベルをチェックし、
−  前記担体／ドライブ転送レートを前記ドライブ／ホスト平均転送レートと比較し、
−  前記バッファ充足レベルが比較的低く、かつ前記バッファへの入力転送レートが該バッファからの出力転送レートに比べて比較的高い場合、現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項４】
読出モードでの動作の際、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートＤＤＴＲを測定し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記担体／ドライブ転送レートＤＤＴＲを前記ドライブ／ホスト平均転送レートＤＨＴＲと比較し、
−  前記バッファ充足レベルが比較的低く、かつ、αを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＜α・ＤＤＴＲに該当する場合、現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項５】
読出モードでの動作の際、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートを測定し、
−  現在の速度よりも速い目標速度を計算し、
−  前記目標速度における予測担体／ドライブ転送レートＤＤＴＲｅｘを計算し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記予測担体／ドライブ転送レートＤＤＴＲｅｘを前記ドライブ／ホスト平均転送レートＤＨＴＲと比較し、
−  前記バッファ充足レベルが比較的低く、かつ、αを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＜α・ＤＤＴＲｅｘに該当する場合、前記現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項６】
書込モードでの動作の際、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートＤＤＴＲを測定し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記担体／ドライブ転送レートＤＤＴＲを前記ドライブ／ホスト平均転送レートＤＨＴＲと比較し、
−  前記バッファ充足レベルが比較的低く、かつ、δを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＞δ・ＤＤＴＲに該当する場合、現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項７】
書込モードでの動作の際、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートを測定し、
−  現在の速度よりも遅い目標速度を計算し、
−  前記目標速度における予測担体／ドライブ転送レートＤＤＴＲｅｘを計算し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記ドライブ／ホスト平均転送レートＤＨＴＲを前記予測担体／ドライブ転送レートＤＤＴＲｅｘと比較し、
−  前記バッファ充足レベルが比較的低く、かつ、δを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＞δ・ＤＤＴＲｅｘに該当する場合、前記現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項８】
読出モードでの動作の際には、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
書込モードでの動作の際には、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートを測定し、
−  ドライブ／ホスト平均転送レートを測定し、
−  バッファ充足レベルをチェックし、
−  前記担体／ドライブ転送レートを前記ドライブ／ホスト平均転送レートと比較し、
−  前記バッファ充足レベルが比較的高く、かつ前記バッファへの入力転送レートが該バッファからの出力転送レートに比べて比較的低い場合、現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項９】
書込モードでの動作の際、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートＤＤＴＲを測定し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記担体／ドライブ転送レートＤＤＴＲを前記ドライブ／ホスト平均転送レートＤＨＴＲと比較し、
−  前記バッファ充足レベルが比較的高く、かつ、
2007503080.tif 000005
を０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、
2007503080.tif 000006
に該当する場合、現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項１０】
書込モードでの動作の際、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートを測定し、
−  現在の速度よりも速い目標速度を計算し、
−  前記目標速度における予測担体／ドライブ転送レートＤＤＴＲｅｘを計算し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記予測担体／ドライブ転送レートＤＤＴＲｅｘを前記ドライブ／ホスト平均転送レートＤＨＴＲと比較し、
−  前記バッファ充足レベルが比較的高く、かつ、
2007503080.tif 000007
を０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、
2007503080.tif 000008
に該当する場合、前記現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項１１】
読出モードでの動作の際、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートＤＤＴＲを測定し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記担体／ドライブ転送レートＤＤＴＲを前記ドライブ／ホスト平均転送レートＤＨＴＲと比較し、
−  前記バッファ充足レベルが比較的高く、かつ、βを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＞β・ＤＤＴＲに該当する場合、現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項１２】
読出モードでの動作の際、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートを測定し、
−  現在の速度よりも遅い目標速度を計算し、
−  前記目標速度における予測担体／ドライブ転送レートＤＤＴＲｅｘを計算し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  バッファ充足レベルをチェックし、
−  前記ドライブ／ホスト平均転送レートＤＨＴＲを前記予測担体／ドライブ転送レートＤＤＴＲｅｘと比較し、
−  前記バッファ充足レベルが比較的高く、かつ、βを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＞β・ＤＤＴＲｅｘに該当する場合、前記現在の速度を維持する各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項１３】
読出モードでの動作の際、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
当該方法において、
前記ホストシステムがストリーミング読出モードで動作しており、かつ、
バッファ充足レベルが、比較的低い第１の閾値未満であり、
かつ、αを０と１との間の係数、好ましくは０．８と０．９５との間の係数として、前記担体／ドライブ転送レートＤＤＴＲと前記ドライブ／ホスト転送レートＤＨＴＲとの関係が、ＤＨＴＲ＞α・ＤＤＴＲであり、
かつ、現在の速度が、最大担体速度よりも遅く、
かつ、エラーを伴わずに以前に読み出されたブロックの個数が、特定の最小量よりも多く、
かつ、前回の加速工程からの経過時間が、特定の第１の最小待機時間よりも長く、
かつ、前回の減速工程からの経過時間が、好ましくは前記第１の最小待機時間の持続時間よりも長い持続時間を有する、特定の第２の最小待機時間よりも長いとき、
前記データ担体速度が増やされることを特徴とする請求項１記載の方法。
【請求項１４】
読出モードでの動作の際、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
当該方法において、
前記ホストシステムがストリーミング読出モードで動作しており、かつ、
バッファ充足レベルが、比較的高い第２の閾値を超えており、
かつ、βを０と１との間の係数、好ましくは０．８と０．９５との間の係数とし、ＤＤＴＲｅｘを減速工程により実現されるデータ担体速度における予測担体／ドライブ転送レートとして、該予測担体／ドライブ転送レートＤＤＴＲｅｘと前記ドライブ／ホスト転送レートＤＨＴＲとの関係が、ＤＨＴＲ＜β・ＤＤＴＲｅｘであり、
かつ、現在の速度が、最小担体速度よりも速く、
かつ、前回の減速工程からの経過時間が、特定の第１の最小待機時間よりも長く、
かつ、前回の加速工程からの経過時間が、好ましくは前記第１の最小待機時間の持続時間よりも長い持続時間を有する、特定の第２の最小待機時間よりも長いとき、
前記データ担体速度が減らされることを特徴とする請求項１記載の方法。
【請求項１５】
書込モードでの動作の際、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法において、
前記ホストシステムがストリーミング書込モードで動作しており、かつ、
バッファ充足レベルが、比較的高い第１の閾値を超えており、
かつ、
2007503080.tif 000009
を０と１との間の係数、好ましくは０．８と０．９５との間の係数として、前記担体／ドライブ転送レートＤＤＴＲと前記ドライブ／ホスト転送レートＤＨＴＲとの関係が、
2007503080.tif 000010
であり、
かつ、現在の速度が、最大担体速度よりも遅く、
かつ、前回の加速工程からの経過時間が、特定の第１の最小待機時間よりも長く、
かつ、前回の減速工程からの経過時間が、好ましくは前記第１の最小待機時間の持続時間よりも長い持続時間を有する、特定の第２の最小待機時間よりも長いとき、
前記データ担体速度が増やされることを特徴とする請求項１記載の方法。
【請求項１６】
書込モードでの動作の際、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法において、
前記ホストシステムがストリーミング書込モードで動作しており、かつ、
バッファ充足レベルが、比較的低い第２の閾値未満であり、
かつ、δを０と１との間の係数、好ましくは０．８と０．９５との間の係数とし、ＤＤＴＲｅｘを減速工程により実現されるデータ担体速度における予測担体／ドライブ転送レートとして、該予測担体／ドライブ転送レートＤＤＴＲｅｘと前記ドライブ／ホスト転送レートＤＨＴＲとの関係が、ＤＨＴＲ＜δ・ＤＤＴＲｅｘであり、
かつ、現在の速度が、最小担体速度よりも速く、
かつ、前回の減速工程からの経過時間が、特定の第１の最小待機時間よりも長く、
かつ、前回の加速工程からの経過時間が、好ましくは前記第１の最小待機時間の持続時間よりも長い持続時間を有する、特定の第２の最小待機時間よりも長いとき、
前記データ担体速度が減らされることを特徴とする請求項１記載の方法。
【請求項１７】
読出モードでの動作の際、前記担体から読み出されたデータがバッファ内に一時的に記憶され、前記ホストシステムに転送されるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートＤＤＴＲを測定し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  現在の速度よりも遅い目標速度を計算し、
−  前記目標速度における予測担体／ドライブ転送レートＤＤＴＲｅｘを計算し、
−  バッファ充足レベルをチェックし、
＊  前記バッファ充足レベルが比較的低い場合には、前記ドライブ／ホスト平均転送レートＤＨＴＲを現在の前記担体／ドライブ転送レートＤＤＴＲと比較し、αを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＜α・ＤＤＴＲに該当するとき、前記現在の速度を維持する決定をし、
＊  前記バッファ充足レベルが比較的高い場合には、前記ドライブ／ホスト平均転送レートＤＨＴＲを前記予測担体／ドライブ転送レートＤＤＴＲｅｘと比較し、βを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＞β・ＤＤＴＲｅｘに該当するとき、前記現在の速度を維持する決定をする各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項１８】
書込モードでの動作の際、前記ホストシステムから受け取られたデータがバッファ内に一時的に記憶され、前記担体に書き込まれるデータが該バッファから取り出され、
当該方法が、
−  前記担体／ドライブ転送レートＤＤＴＲを測定し、
−  ドライブ／ホスト平均転送レートＤＨＴＲを測定し、
−  現在の速度よりも遅い目標速度を計算し、
−  前記目標速度における予測担体／ドライブ転送レートＤＤＴＲｅｘを計算し、
−  バッファ充足レベルをチェックし、
＊  前記バッファ充足レベルが比較的高い場合には、前記ドライブ／ホスト平均転送レートＤＨＴＲを現在の前記担体／ドライブ転送レートＤＤＴＲと比較し、
2007503080.tif 000011
を０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、
2007503080.tif 000012
に該当するとき、前記現在の速度を維持する決定をし、
＊  前記バッファ充足レベルが比較的低い場合には、前記ドライブ／ホスト平均転送レートＤＨＴＲを前記予測担体／ドライブ転送レートＤＤＴＲｅｘと比較し、δを０と１との間の予め決められた係数、好ましくは０．８と０．９５との間の範囲の係数として、ＤＨＴＲ＞δ・ＤＤＴＲｅｘに該当するとき、前記現在の速度を維持する決定をする各工程を含んでいることを特徴とする請求項１記載の方法。
【請求項１９】
前記担体がディスクであり、たとえば光ディスクまたはハードディスクであることを特徴とする請求項１から１８いずれか１項記載の方法。
【請求項２０】
データ担体への情報の書込みおよび／またはデータ担体からの情報の読出しを行う担体ドライブ装置であって、請求項１から１９いずれか１項記載の方法を実行するように適合化されていることを特徴とする担体ドライブ装置。
【請求項２１】
ホストシステムと、請求項２０記載の担体ドライブ装置とを含み、該ホストシステムと該担体ドライブ装置とが、互いにデータ転送通信状態にあることを特徴とするデータ転送システム。
【請求項２２】
データ担体への情報の書込みおよび／またはデータ担体からの情報の読出しを行う担体ドライブ装置であって、担体速度を増やすまたは減らすための速度設定命令に応答できるタイプの担体ドライブ装置と、通信する機能を有するホストシステムであって、
前記担体ドライブ装置に速度設定命令を送る機能を有し、
請求項１から１９いずれか１項記載の方法を実行するように適合化されていることを特徴とすることを特徴とするホストシステム。
【請求項２３】
請求項２２記載のホストシステムと、
データ担体への情報の書込みおよび／またはデータ担体からの情報の読出しを行う担体ドライブ装置であって、担体速度を増やすまたは減らすための速度設定命令に応答できるタイプの担体ドライブ装置とを含み、
前記ホストシステムと前記担体ドライブ装置とが、互いにデータ転送通信状態にあることを特徴とするデータ転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、広くは、光記憶ディスク等の記憶装置の分野に関するものである。より詳細には、本発明は、全体として、光記憶ディスクへの情報の書込みおよび／または光記憶ディスクからの情報の読出しを行う、ディスクドライブ装置に関するものである。以下、そのようなディスクドライブ装置を、「光ディスクドライブ」とも呼ぶものとする。
【背景技術】
【０００２】
よく知られているように、光記憶ディスクは、情報をデータパターンの形式で記憶することができる記憶スペースの、少なくとも１つのトラックを備えており、このトラックは、一続きの螺旋の形態または多数の同心円の形態を有する。光ディスクは、製造時において情報が記録され、ユーザーによってはその情報の読出しのみが可能であるような、読出専用型であってもよい。光記憶ディスクはまた、ユーザーによる情報の記憶が可能な、書込可能型であってもよい。光記憶ディスクの記憶スペースから情報を読み出すためおよび／またはかかる記憶スペースに情報を書き込むため、光ディスクドライブは、一方では、光ディスクを受けて回転させるための回転手段を含み、他方では、典型的にはレーザービームである光ビームを発生させ、そのレーザービームで記憶トラックを走査するための光学手段を含む。光ディスクの技術は一般的なものであり、情報を光ディスクに記憶する方法や、光ディスクから光データを読み出す方法はよく知られているので、ここでこの技術をごく詳細に説明する必要はない。
【０００３】
光ディスクおよびディスクドライブは、たとえばＣＤ規格やＤＶＤ規格等といったような、種々の規格またはフォーマットに従って開発されてきた。これらの規格では、幾つかの重要なパラメータが定義されている。かかる重要なパラメータの１つは公称線速度であり、レーザービームはこの公称線速度でトラックを走査することを想定されている。以下、この公称線速度を、ＶｌＸと示すこととする。たとえば、ＣＤの場合にはＶｌＸ，ＣＤは約１．３ｍ／秒であり、ＤＶＤの場合にはＶｌＸ，ＤＶＤは約３．５ｍ／秒である。
【０００４】
ディスクドライブの１つの進歩は、公称線速度よりも速い速度でディスクを再生（すなわち読出しまたは書込み）する能力である。この点に関し、ディスクドライブは、線速度一定（ＣＬＶ）モードで動作してもよく、その場合、速度はＮＸと表すことができる（たとえば、４Ｘ、８Ｘ、１０Ｘ等）。ここで、Ｎは現在のトラック線速度と公称線速度との間の比を表す。一方、ディスクドライブは、角速度一定（ＣＡＶ）モードで動作してもよく、その場合、ディスの回転速度ｆＤＩＳＣが一定に保たれる。ディスクコントローラにとっては、ＣＬＶモードよりもＣＡＶモードの方が制御が容易である。明らかなことであるが、ＣＡＶモードでは、内側のトラックから外側のトラックへと進むにつれて、トラック線速度が約２．５倍変化し得る。
【０００５】
速度（回転速度または線速度）の増加は、データレート（すなわち、ディスクへのデータビットの書込みまたはディスクからのデータビットの読出しのレート）の増加をもたらす。通常、かかる増加は有利だと考えられ、可能な最大のデータレートでの動作は最高の性能を与えるので、通常は、ユーザーは常にそのような可能な最大のデータレートでの動作に関心を有するものと考えられる。したがって、ディスクドライブは、典型的には、起動段階後において可能な限り速やかに可能な最大の回転速度まで加速する動作を含む、動作特性を有する。
【０００６】
しかしながら、高速のディスク速度は、いくつかの欠点も伴う。たとえば、高速のディスク速度は、より多くの損耗およびより高いノイズレベルを伴う。また、より高速のディスク速度での動作は、より高い電力消費と、それに付随するより高い電力損失とを伴い、さらにおそらくはそれに付随する温度上昇も伴う。
【０００７】
そのため、本発明の１つの全体的な目的は、ディスクを最適な速度で駆動することである。この最適な速度は、必ずしもそのディスクドライブが達成することのできる最大の速度ではない。本発明では、最適な速度は、必要なデータレートを提供し続ける最低のすなわち最小の速度として規定される。
【０００８】
このような状況では、ディスクとディスクドライブとの間のデータ転送レートが、考慮すべき唯一の要素ではない。典型的には、ディスクドライブは、ホスト装置（たとえば、コンピュータプログラムまたはアプリケーションを実行することのできるホストコンピュータ）を含むデータ処理システムの、一部である。そのため、考慮すべき２つ目の重要な要素は、ディスクドライブとホストとの間のデータ転送レートである。ここで、ホストにより要求されるデータレート（読出動作の場合）またはホストにより提供されるデータレート（書込動作の場合）よりも、高いデータレートを与える速度でディスクを回転させることは、必ずしも必要ではない。一方、ホストにより要求されるデータレート（読出動作の場合）またはホストにより提供されるデータレート（書込動作の場合）が、ディスクドライブにより適切に処理されないほど、ディスク速度が低くなってはならない。
【０００９】
米国特許第５６５９７９９号には、システム性能パラメータと関連させて、ＣＤ−ＲＯＭの速度を設定する方法が記載されている。この文献のＣＤ−ＲＯＭディスクドライブは、ディスクから読み出されたデータを一時的に記憶するデータバッファを有する。ホストへと転送されるデータは、このバッファから取り出される。したがって、ディスクからホストへの直接のデータ転送は存在せず、代わりに、ディスクからバッファへのデータ転送およびバッファからホストへのデータ転送が存在する。バッファからホストへのデータ転送レートが、ディスクからバッファへのデータ転送レートよりも低い場合、バッファ内のデータ量が増大し、そのバッファ内のデータ量が第１の閾値を超えると、ディスクの回転速度が減らされる。一方、バッファからホストへのデータ転送レートが、ディスクからバッファへのデータ転送レートよりも高い場合、バッファ内のデータ量が減少し、そのバッファ内のデータ量が第２の閾値を下回ると、ディスクの回転速度が増やされる。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
この既知の方法における１つの問題点は、あらゆる状況下において満足には機能しない点（すなわちロバストでない点）である。バッファ内のコンテンツレベルは、瞬間的な情報でしかなく、次の瞬間には変わってしまうかもしれない。かかる変化にシステムが直接反応するとすれば、システムの挙動は極めて落ち着かない挙動となり、ユーザーを苛立たせるものとなる。さらに、ディスク速度を頻繁に変えることは、追加の電力消費を伴う。したがって、上記の特許文献のシステムは、第２の閾値は第１の閾値よりも実質的に低くなくてはならないという事実により実装される、ヒステリシスを有する必要がある。
【００１１】
さらに、上記の特許文献のシステムは、実装された減衰係数を有しており、これにより、ディスク速度の増大が比較的遅れて行われる一方、ディスク速度の低減が比較的早く行われるという結果が事実上達成される。したがって、このシステムは、高い速度に比べて低い速度に傾倒するという特性を有する。このことは、振動挙動を結果としてもたらすかもしれず、特に、ストリーミング読出しの場合において、バッファからホストへの転送レートが、ディスクからバッファへの転送レートの２つの標準値の間の値を有する際には、振動挙動を結果としてもたらすかもしれない。
【００１２】
さらに、上記の特許文献において提案されている減衰係数は、多数のホスト要求（すなわち読出コマンド）に基づいている。したがって、実際の遅延は、アプリケーションとホストとの組合せに依存する。たとえば、多数の読出コマンドが出され、各コマンドが数ブロックのみを転送するものである場合には、数個の読出しコマンドが出され、各コマンドが多くのブロックを転送するものである場合と比べて、異なる遅延が結果としてもたらされる。
【００１３】
本発明の１つの全体的な目的は、改善された加速および減速の挙動を有するディスクドライブを提供することである。
【００１４】
特に、本発明は、一方ではディスクが実質的に最適な速度で回転し、他方では速度変更の回数が可能な限り減らされるように、ディスク速度を制御することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の１つの重要な側面によれば、ディスク速度は、少なくとも１つの動作モードパラメータに基づいて設定される。
【００１６】
本発明のさらなる１つの重要な側面によれば、ディスク速度は、少なくとも１つのシステム性能パラメータに基づいて設定される。このシステム性能パラメータは、好ましくは、ディスク速度により左右されるパラメータである。性能が低い場合、関連のシステム性能パラメータの減少へと繋がる速度は、禁制される。
【００１７】
本発明のさらなる１つの重要な側面によれば、ディスク速度は、前回の速度変更からの経過時間に基づいて設定される。好ましくは、逆方向への２回の速度変更間の最小の遅延時間は、同一方向への２回の連続する速度変更間の最小の遅延時間よりも大きい。同一方向への２回の連続する速度変更間の最小の遅延時間が比較的短い（たとえば１秒のオーダー）ことにより、ディスク速度は、ある必要な速度に比較的早く到達させられる。また、逆方向への２回の速度変更間の最小の遅延時間が比較的長い（たとえば３０秒のオーダー）ことにより、速度変更工程の全体の回数が減らされ、望ましくない振動挙動が効果的に防止される。
【００１８】
本発明のさらなる１つの重要な側面によれば、ディスク速度を変更する決定は、ホスト／ドライブ平均転送レートの現在値と、ディスク／ドライブ転送レートとの間の比較に基づいたものとされる。速度を増やそうとする場合、ディスク／ドライブ転送レートの現在の状況が加速を保証するものであるか否かを知るため、ホスト／ドライブ平均転送レートの現在値が、ディスク／ドライブ転送レートの現在値と比較され、加速を保証するものである場合には、加速工程が実行される。一方、現在の速度からより低い速度値への下降を行おうとする場合、ホスト／ドライブ平均転送レートの現在値が、上記のより低い速度における予測ディスク／ドライブ転送レートと比較される。すなわち、事実上、次の状況が加速を保証する状況であるか否かが予測され、そのような状況であると予測される場合には、現在の速度からより低い速度への減速は適当でないとみなされ、減速工程は実行されない。したがって、速度変更工程の全体の回数が減らされ、望ましくない振動挙動が効果的に防止される。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の上記およびその他の側面、特徴、および利点を、図面を参照しながらの本発明に係る方法の好ましい実施形態の説明によって、さらに説明する。図面中において、同一の参照番号は、同一または類似の部分を示している。
【００２０】
図１は、ホストシステム２とディスクドライブ装置３とを含む、データ転送システム１を模式的に示した図である。ホストシステム２は、あるアプリケーションが走っている、プログラミング可能なコンピュータであってもよい。ディスクドライブ３は、ディスク４からデータを読み出すことができる。このディスク４は、たとえば光ディスクであり、光ディスクの例としては、たとえばＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の読出専用型ディスク、またはたとえば書き込まれたデータを有する書込可能型のディスク（記録可能型（Ｒ）、書換可能型（ＲＷ））が挙げられる。ディスク４から受け取られたデータは、バッファ５内に記憶される。ディスク４からドライブ３へのデータ転送は、ディスク通信リンク６として示されている。このディスク通信リンク６を介したデータ転送レートを、ディスク／ドライブ転送レートＤＤＴＲと呼ぶこととする。ディスクドライブ３はさらに、ホスト通信リンク７を介して、自己のバッファ５からホストシステム２へとデータを転送することができる。このホスト通信リンク７を介したデータ転送レートを、ドライブ／ホスト転送レートＤＨＴＲと呼ぶこととする。
【００２１】
図１に示したデータ転送システム１中では、種々のデータ転送レートを伴う多くの典型的な状況において、ディスクからホストへのデータ転送が起こり得る。１つの典型的な状況は、ユーザーがオーディオディスクを再生している状況である。かかる状況では、ドライブ／ホスト転送レートＤＨＴＲは１Ｘのディスク速度に対応し、ドライブ３がより高いデータ転送レートを維持しようとすることは無駄である。別の１つの典型的な例は、コンピュータプログラムがデータファイルを読み出す状況である。かかる状況では、ドライブ／ホスト転送レートＤＨＴＲは、１Ｘよりも高いかもしれない。別の１つの典型的な例は、ホストがＣＤ−ＲＯＭ型のゲームを実行しており、ユーザーとのインタラクションに応じて、ディスクから情報が読み出されなくてはならない状況である。ユーザーのアクションを予め知ることはできないので、どのアドレスにおいて読出動作が生じるかは前もって分からず、したがって、アクセス時間をなるべく短く保つため、最高のドライブ／ホスト転送レートＤＨＴＲが望まれる。ある特別なケースでは、ホストシステム２から受け取られる読出コマンドは、ディスク上の連続して連なるアドレスに関するものとされる。そのようなケースは、「ストリーミング読出し」と呼ばれる。
【００２２】
同様に、ディスクドライブ３は、ホストシステム２からデータを受け取ることができ、ディスク４が書込可能型のディスク（記録可能型（Ｒ）、書換可能型（ＲＷ））であれば、ディスク４にデータを書き込むことができる。ホスト２からホスト通信リンク７を介してドライブ／ホスト転送レートＤＨＴＲで受け取られたデータは、バッファ５内に記憶され、そのバッファ５から、ディスク通信リンク６を介してディスク４へと、ディスク／ドライブ転送レートＤＤＴＲでデータが転送される。
【００２３】
書込みの場合にも、多くの典型的な状況が生じ得る。たとえば、ディスクの複製を作成する際には、ホストシステム２から受け取られる書込コマンドは、ディスク上の連続して連なるアドレスに関するものである。このようなケースは、「ストリーミング書込み」と呼ばれる。
【００２４】
図２は、ディスクドライブ３の１つの好ましい読出手順を示したフローチャートである。ステップ１００において第１の読出コマンドを受け取った後、ディスクドライブ３の制御回路１０は、ステップ１０１において、現在のディスク速度（たとえば、１Ｘまたは４０ＨｚＣＡＶといった比較的低い速度）でのディスク読出動作で、その動作を開始する。ステップ１０２では、前回の速度変更からの経過時間を測定するため、速度変更タイマがセットされる。
【００２５】
制御回路１０は、ディスク／ドライブ転送レートＤＤＴＲを測定し（ステップ１１０）、ドライブ／ホスト転送レートＤＨＴＲを測定し（ステップ１１１）、良好なブロックの個数ＮＧＢ、すなわちエラーを伴わずにディスクから読み出されたブロックの個数を計数する（ステップ１１２）。ここで、測定されるドライブ／ホスト転送レートＤＨＴＲは、過去の予め決められた期間に亘る平均レートである点に留意されたい。
【００２６】
ステップ１２０において、制御回路１０は、減速強制条件があるか否かをチェックする。すなわち、制御回路１０は、ディスク速度の即時の低減を必要とする何らかの条件が存在するか否かをチェックする。かかる条件が見出された場合には、制御回路１０は、ステップ１５６において、減速動作（すなわち、ディスクが既に最小速度で回転している場合を除き、ディスク速度を減らす動作）を実行する。
【００２７】
当てはまる減速強制条件がない場合には、制御回路１０は、ホスト２がストリーミング読出モードで動作しているか否か、すなわち連続する読出要求が連続するアドレスに関するものであるか否かをチェックする（ステップ１３０）。ホスト２がストリーミング読出モードで動作している場合には、制御回路１０は常に、ＤＨＴＲに対処することのできる可能な最も低い速度値に、ディスク速度を設定することを試みる（ステップ１５０−１５６）。そうでない場合には、制御回路１０は常に、可能な最も高い速度値にディスク速度を設定することを試みる（ステップ１４０−１４２）。
【００２８】
ステップ１４０では、制御回路１０は、すべての加速許可条件が満たされるか否かをチェックする。満たされない加速許可条件がある場合には、制御回路１０は、現在のディスク速度を維持し（ステップ１６０）、その後ステップ１１０から動作が続行する。すべての加速許可条件が満たされる場合には、制御回路１０は、加速動作を実行する（ステップ１４２）。すなわち、制御回路１０は、ディスク速度を次の速度値へと増分させ、その後ステップ１０２から動作が続行する。好ましくは、ディスク速度を増やすにあたり、制御回路１０は、予め決められたディスク速度の集合から、１つの速度値を選択する。そのような予め決められたディスク速度の集合の例としては、たとえば、１Ｘ、２Ｘ、４Ｘ、８Ｘ等の公称速度で表されたＣＬＶ系列、および／または、１０Ｈｚ、２０Ｈｚ、４０Ｈｚ、８０Ｈｚ、１２０Ｈｚ等のディスク回転数で表されたＣＡＶ系列が挙げられる。
【００２９】
ステップ１５０では、制御回路１０は、バッファ５の充足レベルをチェックする。バッファ充足レベルＢＦＬが、予め決められた第１の低い側の閾値（たとえば最大バッファ容量の３０％）未満である場合には、ディスク速度を増やすことが企図される。ここでの考察において、ＤＨＴＲとＤＤＴＲとの間の関係が、ステップ１５１で考慮に入れられる。ＤＨＴＲがＤＤＴＲに比べて比較的低い場合には、制御回路１０は、現在のディスク速度で妥当であると判断して、現在のディスク速度を維持し（ステップ１６０）、その後ステップ１１０から動作が続行する。一方、ＤＨＴＲがＤＤＴＲに比べて比較的高い場合には、制御回路１０は、ステップ１４０での加速許可条件のチェックへと進む。
【００３０】
ＤＨＴＲがＤＤＴＲに比べて比較的低いときにはディスク速度を増やすことを拒否することにより、制御回路１０は、事実上、バッファ充足レベルの低い値は単なる一時的なものであり、現在のディスク速度を維持しても将来（おそらくは近い将来）上昇するものであると予測する。そのときに加速が実行されると、バッファ充足レベルがおそらくは非常に急速に上昇し、すぐに減速が必要になると予期され得る。そのため、加速動作および後続の減速動作が防止される。この点から、制御回路１０は、ＤＨＴＲがＤＤＴＲよりも低い場合、またはより安全を期すためにはＤＨＴＲがα・ＤＤＴＲよりも低い場合には、ディスク速度を維持するという決定をしてもよい（ステップ１６０）。ここで、αは、測定誤差を考慮に入れた、０と１との間の係数（たとえば０．９５または０．９）である。
【００３１】
ステップ１５０において、バッファ充足レベルＢＦＬが、上記の第１の閾値よりも高い、予め決められた第２の高い側の閾値（たとえば最大バッファ容量の７０％）を超えるようである場合には、ディスク速度を減らすことが企図される。ここでの考察において、ＤＨＴＲとＤＤＴＲｅｘとの間の関係が、ステップ１５２で考慮に入れられる。ここで、ＤＤＴＲｅｘとは、減速後の予測ＤＤＴＲ、すなわち減速動作が完了した後に結果として得られるであろうＤＤＴＲを示す。ＤＨＴＲがＤＤＴＲｅｘに比べて比較的高い場合には、制御回路１０は、現在のディスク速度で妥当であると判断して、現在のディスク速度を維持し（ステップ１６０）、その後ステップ１１０から動作が続行する。一方、ＤＨＴＲが比較的低い場合には、制御回路１０は、ステップ１５４での減速許可条件のチェックへと進む。
【００３２】
ＤＨＴＲがＤＤＴＲｅｘに比べて比較的高いときにはディスク速度を減らすことを拒否することにより、制御回路１０は、事実上、減速後においてバッファレベルがおそらくは非常に急速に下降し、すぐに加速が必要になると予期され得ると予測する。そのため、減速動作および後続の加速動作が防止される。この点から、制御回路１０は、ＤＨＴＲがＤＤＴＲｅｘよりも高い場合、またはより安全を期すためにはＤＨＴＲがβ・ＤＤＴＲｅｘよりも高い場合には、ディスク速度を維持するという決定をしてもよい（ステップ１６０）。βは、０と１との間の係数（たとえば０．９５または０．９）である。ここで、βはαと等しくてもよいが、それは必須条件ではない。
【００３３】
ステップ１５４では、制御回路１０は、すべての減速許可条件が満たされるか否かをチェックする。満たされない減速許可条件がある場合には、制御回路１０は、現在のディスク速度を維持し（ステップ１６０）、その後ステップ１１０から動作が続行する。すべての減速許可条件が満たされる場合には、制御回路１０は、減速動作を実行する（ステップ１５６）。すなわち、制御回路１０は、ディスク速度を次の速度値へと減少させ、その後ステップ１０２から動作が続行する。好ましくは、ディスク速度を減らすにあたり、制御回路１０は、ディスク速度を増やす処理に関連して上記で説明したような予め決められたディスク速度の集合から、１つの速度値を選択する。
【００３４】
ステップ１５０において、バッファ充足レベルＢＦＬが、予め決められた上記の第１の閾値と第２の閾値との間のレベルのようである場合には、制御回路１０は、現在のディスク速度で妥当であると判断して、現在のディスク速度を維持し（ステップ１６０）、その後ステップ１１０から動作が続行する。
【００３５】
減速強制条件とは、その条件が存在する場合、制御回路１０に、即座にディスクモータ４を減速させる条件である。たとえば、温度がある特定のレベルを超える場合、または機械的な振動がある特定のレベルを超える場合には、それらは減速強制条件とみなされ得る。また、ブロック読出エラーが生じた場合は、それも減速強制条件とみなされ得る。そのような条件はいずれも、何かが間違っているかもしれないことを示唆するものであり、したがってそのような条件の存在が１つでも見つかった場合には、ディスクモータの速度が減らされるべきであることは明らかである。減速は段階的に行われてもよいし、可能な最も低い値（たとえば１Ｘまたは４０Ｈｚ）まで速度が減らされてもよい。また、回転しているディスクの冷却効果から利益を得るために、可能な最も低い値よりは高いある値まで、速度が減らされてもよい。
【００３６】
減速許可条件は、減速が許可されるために全条件が満たされなくてはならない条件である。ある好ましい実施形態では、少なくとも以下の減速許可条件が考慮される。
ａ）現在の速度が、最小ディスク速度よりも速い。
ｂ）前回の減速動作からの経過時間が、ある最小時間（たとえば１秒）よりも長くなくてはならない。
ｃ）前回の加速動作からの経過時間が、ある最小時間（たとえば３０秒）よりも長くなくてはならない。
【００３７】
加速許可条件は、加速が許可されるために全条件が満たされなくてはならない条件である。ある好ましい実施形態では、少なくとも以下の加速許可条件が考慮される。
ａ）現在の速度が、最大ディスク速度よりも遅い。
ｂ）エラーを伴わずに以前に読み出されたブロックの個数ＮＧＢが、ある最小計数よりも多くなくてはならない（たとえばＮＧＢ＞１０００）。
ｃ）前回の加速動作からの経過時間が、ある最小時間（たとえば１秒）よりも長くなくてはならない。
ｄ）前回の減速動作からの経過時間が、ある最小時間（たとえば３０秒）よりも長くなくてはならない。
【００３８】
上記では、読出動作に関連して本発明を説明してきた。しかしながら、本発明は、読出しに限定されるものではなく、図３を参照しながら以下において説明するように、書込みにも適用可能なものである。
【００３９】
図３は、ディスクドライブ３の１つの好ましい書込手順を示したフローチャートである。ステップ２００において第１の書込コマンドを受け取った後、ディスクドライブ３の制御回路１０は、ステップ２０１において、初期速度でのディスク書込動作で、その動作を開始する。ステップ２０２では、前回の速度変更からの経過時間を測定するため、速度変更タイマがセットされる。
【００４０】
制御回路１０は、ディスク／ドライブ転送レートＤＤＴＲを測定し（ステップ２１０）、ドライブ／ホスト転送レートＤＨＴＲを測定する（ステップ２１１）。ここで、測定されるドライブ／ホスト転送レートＤＨＴＲは、過去の予め決められた期間に亘る平均レートである点に留意されたい。
【００４１】
ステップ２２０において、制御回路１０は、減速強制条件があるか否かをチェックする。すなわち、制御回路１０は、ディスク速度の即時の低減を必要とする何らかの条件が存在するか否かをチェックする。かかる条件が見出された場合には、制御回路１０は、ステップ２５６において、減速動作（すなわち、ディスクが既に最小速度で回転している場合を除き、ディスク速度を減らす動作）を実行する。
【００４２】
当てはまる減速強制条件がない場合には、制御回路１０は、ホスト２がストリーミング書込モードで動作しているか否か、すなわち連続する書込要求が連続するアドレスに関するものであるか否かをチェックする（ステップ２３０）。ホスト２がストリーミング書込モードで動作している場合には、制御回路１０は常に、ＤＨＴＲに対処することのできる可能な最も低い速度値に、ディスク速度を設定することを試みる（ステップ２５０−２５６）。そうでない場合には、制御回路１０は常に、可能な最も高い速度値にディスク速度を設定することを試みる（ステップ２４０−２４２）。
【００４３】
ステップ２４０では、制御回路１０は、すべての加速許可条件が満たされるか否かをチェックする。満たされない加速許可条件がある場合には、制御回路１０は、現在のディスク速度を維持し（ステップ２６０）、その後ステップ２１０から動作が続行する。すべての加速許可条件が満たされる場合には、制御回路１０は、加速動作を実行する（ステップ２４２）。すなわち、制御回路１０は、ディスク速度を次の速度値へと増分させ、その後ステップ２０２から動作が続行する。好ましくは、ディスク速度を増やすにあたり、制御回路１０は、予め決められたディスク速度の集合から、１つの速度値を選択する。そのような予め決められたディスク速度の集合の例としては、たとえば、１Ｘ、２Ｘ、４Ｘ、８Ｘ等の公称速度で表されたＣＬＶ系列、および／または、１０Ｈｚ、２０Ｈｚ、４０Ｈｚ、８０Ｈｚ、１２０Ｈｚ等のディスク回転数で表されたＣＡＶ系列が挙げられる。
【００４４】
ステップ２５０では、制御回路１０は、バッファ５の充足レベルをチェックする。バッファ充足レベルＢＦＬが、予め決められた第１の低い側の閾値（たとえば最大バッファ容量の３０％）未満である場合には、ディスク速度を減らすことが企図される。ここでの考察において、ＤＨＴＲとＤＤＴＲｅｘとの間の関係が、ステップ２５２で考慮に入れられる。ＤＨＴＲがＤＤＴＲｅｘに比べて比較的高い場合には、制御回路１０は、現在のディスク速度で妥当であると判断して、現在のディスク速度を維持し（ステップ２６０）、その後ステップ２１０から動作が続行する。一方、ＤＨＴＲが比較的低い場合には、制御回路１０は、ステップ２５４での減速許可条件のチェックへと進む。
【００４５】
ＤＨＴＲがＤＤＴＲｅｘに比べて比較的高いときにはディスク速度を減らすことを拒否することにより、制御回路１０は、事実上、減速後においてバッファレベルがおそらくは非常に急速に上昇し、すぐに加速が必要になると予期され得ると予測する。そのため、減速動作および後続の加速動作が防止される。この点から、制御回路１０は、ＤＨＴＲがＤＤＴＲｅｘよりも高い場合、またはより安全を期すためにはＤＨＴＲがδ・ＤＤＴＲｅｘよりも高い場合には、ディスク速度を維持するという決定をしてもよい（ステップ２６０）。δは、０と１との間の係数（たとえば０．９５または０．９）である。
【００４６】
ステップ２５０において、バッファ充足レベルＢＦＬが、上記の第１の閾値よりも高い、予め決められた第２の高い側の閾値（たとえば最大バッファ容量の７０％）を超えるようである場合には、ディスク速度を増やすことが企図される。ここでの考察において、ＤＨＴＲとＤＤＴＲとの間の関係が、ステップ２５１で考慮に入れられる。ＤＨＴＲが比較的低い場合には、制御回路１０は、現在のディスク速度で妥当であると判断して、現在のディスク速度を維持し（ステップ２６０）、その後ステップ２１０から動作が続行する。一方、ＤＨＴＲが比較的高い場合には、制御回路１０は、ステップ２４０での加速許可条件のチェックへと進む。
【００４７】
ＤＨＴＲがＤＤＴＲに比べて比較的低いときにはディスク速度を増やすことを拒否することにより、制御回路１０は、事実上、バッファ充足レベルの高い値は単なる一時的なものであり、現在のディスク速度を維持しても将来（おそらくは近い将来）下降するものであると予測する。そのときに加速が実行されると、バッファ充足レベルがおそらくは非常に急速に下降し、すぐに減速が必要になると予期され得る。そのため、加速動作および後続の減速動作が防止される。この点から、制御回路１０は、ＤＨＴＲがＤＤＴＲよりも低い場合、またはより安全を期すためにはＤＨＴＲが
2007503080.tif 000003
よりも低い場合には、ディスク速度を維持するという決定をしてもよい（ステップ２６０）。ここで、
2007503080.tif 000004
は、０と１との間の係数（たとえば０．９５または０．９）であり、δと等しくてもよいが、それは必須条件ではない。  
【００４８】
ステップ２４０では、制御回路１０は、すべての加速許可条件が満たされるか否かをチェックする。満たされない加速許可条件がある場合には、制御回路１０は、現在のディスク速度を維持し（ステップ２６０）、その後ステップ２１０から動作が続行する。すべての加速許可条件が満たされる場合には、制御回路１０は、加速動作を実行する（ステップ２４２）。すなわち、制御回路１０は、ディスク速度を次の速度値へと増分させ、その後ステップ２０２から動作が続行する。好ましくは、ディスク速度を増やすにあたり、制御回路１０は、上記で説明したような予め決められたディスク速度の集合から、１つの速度値を選択する。
【００４９】
ステップ２５０において、バッファ充足レベルＢＦＬが、上記の予め決められた第１の閾値と第２の閾値との間のレベルのようである場合には、制御回路１０は、現在のディスク速度で妥当であると判断して、現在のディスク速度を維持し（ステップ２６０）、その後ステップ２１０から動作が続行する。
【００５０】
以上の説明より、ディスク速度をある特定の値に設定することを決定する際に重要な１つの要素は、ホストシステム２がストリーミングモードで動作しているか否かという問い（ステップ１３０および２３０）であることが分かる。ストリーミングモードで動作していない場合には、制御回路１０は常に、なるべく早くディスク速度を可能な最も高い速度値に設定しようと試みる。この「ストリーミングモード」は、動作モードパラメータの一例、すなわちドライブ−ホストシステムの動作のモードを示す１つのパラメータである。かかるパラメータの本質のため、このようなパラメータの値は頻繁な変更が見込まれるものではない。１回の変更が行われた場合、その変更は長く続く効力を有するものと予期される。そのため、ディスク速度の設定に際しこのような動作モードパラメータを考慮に入れることは、データ転送システム１の性能に有利な効果を及ぼす。
【００５１】
また、ディスク速度をある特定の値に設定することを決定する際に重要な別の１つの要素は、データブロックがエラーを伴わずに読み出されたか否かという問いであることも分かる。この「エラーのない動作」は、システム性能パラメータの一例、すなわち近い過去においてシステムがどのように動作したかを示す１つのパラメータである。エラーのない動作は、ディスク速度により左右される。すなわち、ディスク速度が速いほど、エラーの発生確率は高くなる。また、ドライブ／ホスト転送レートおよびドライブ／ディスク転送レートも、システム性能パラメータの例である。ディスク速度の設定に際しこれらのパラメータを考慮に入れることは、データ転送システム１の性能に有利な効果を及ぼす。
【００５２】
さらに、ディスク速度をある特定の値に設定することを決定する際に重要な別の１つの要素は、前回の速度変更からの経過時間量であることも分かる。連続する変更間においてある最小時間を採ることにより、システムの落ち着かない動作が防止される。連続する加速工程間の待機時間は比較的短く（たとえば数秒のオーダー）、連続する減速工程間の待機時間についても同じことがいえる。一方、連続する逆方向への速度変更間の待機時間は比較的長く、たとえば３０秒のオーダー、あるいはさらに長い時間とされる。このことも、データ転送システム１の性能に有利な効果を及ぼす。
【００５３】
図４Ａおよび４Ｂは、本発明の上記の特徴をより詳細に図解したタイミング図である。横軸は時間を表し、縦軸はディスク速度を表す。図４Ａは、ディスク４が、当初ある第１の速度Ｖ１で回転させられており、Ｖ１より速い第２の速度Ｖ２にディスク速度が増分される第１の時刻ｔ１まで、この第１の速度Ｖ１での回転が続く場合を図解している。さらなる速度の増加が必要とされるまたは必要となるべき場合、前回の速度変更が生じた上記の第１の時刻ｔ１から、予め決められた第１の最小待機時間ＴＷ１が経過するまで、そのような速度の増加が禁止される。線４１は、上記の第２の速度Ｖ２から、Ｖ２より速い第３の速度Ｖ３への、時刻ｔ２における第２の加速工程がなされる場合を示している。ここで、ｔ２−ｔ１＞ＴＷ１である。
【００５４】
一方、時刻ｔ１における加速工程の後、速度の減少が必要とされるまたは必要となるべき場合、前回の速度変更が生じた上記の第１の時刻ｔ１から、予め決められた第２の最小待機時間ＴＷ２が経過するまで、そのような速度の減少が禁止される。線４２は、上記の第２の速度Ｖ２から、Ｖ２より遅い第３の速度Ｖ３’への、時刻ｔ２’における減速工程がなされる場合を示している。ここで、ｔ２’−ｔ１＞ＴＷ２である。
【００５５】
ここで、上記の予め決められた第１の最小待機時間ＴＷ１が経過する前に速度のさらなる増加が必要となった場合には、時刻ｔ１＋ＴＷ１まで、加速工程が何ら実行されない点に留意されたい。上記の予め決められた第１の最小待機時間ＴＷ１中に既に速度のさらなる増加が必要とされていることを理由に、ｔ２＝ｔ１＋ＴＷ１となるように、時刻ｔ１＋ＴＷ１において加速工程が即座に実行されてもよい。しかしながら、そのような事実が「記憶」されずに、単に、時刻ｔ１＋ＴＷ１後において、加速許可条件をチェックするステップ（たとえばステップ１４０）を実行する制御が行われ、すべての加速許可条件（上記の予め決められた第１の最小待機時間ＴＷ１の経過を含む）が満たされることが分かった最初のときに、加速工程が実行されてもよい。その場合、図に示されているように、ｔ２がｔ１＋ＴＷ１よりも大きくてもよい。必要な変更を加えた同一の原則が、減速工程にも当てはまる。
【００５６】
図４Ｂは、ディスク４が、当初ある第１の速度Ｖ１で回転させられており、Ｖ１より遅い第２の速度Ｖ２にディスク速度が減らされる第１の時刻ｔ１まで、この第１の速度Ｖ１での回転が続く場合を図解している。さらなる速度の減少が必要とされるまたは必要となるべき場合、前回の速度変更が生じた上記の第１の時刻ｔ１から、予め決められた第１の最小待機時間ＴＷ３が経過するまで、そのような速度の減少が禁止される。線４３は、上記の第２の速度Ｖ２から、Ｖ２より遅い第３の速度Ｖ３への、時刻ｔ２における第２の減速工程がなされる場合を示している。ここで、ｔ２−ｔ１＞ＴＷ３である。
【００５７】
一方、時刻ｔ１における減速工程の後、速度の増加が必要とされるまたは必要となるべき場合、前回の速度変更が生じた上記の第１の時刻ｔ１から、予め決められた第２の最小待機時間ＴＷ４が経過するまで、そのような速度の増加が禁止される。線４４は、上記の第２の速度Ｖ２から、Ｖ２より速い第３の速度Ｖ３’への、時刻ｔ２’における加速工程がなされる場合を示している。ここで、ｔ２’−ｔ１＞ＴＷ４である。
【００５８】
ここで、ＴＷ１はＴＷ３に等しくてもよいが、そのことは必須条件ではない。同様に、ＴＷ２はＴＷ４に等しくてもよいが、そのことも必須条件ではない。
【００５９】
本発明は上記で説明した例示的な実施形態に限定されるものではなく、特許請求の範囲で規定された本発明の保護範囲内において、様々なバリエーションや変更が可能であることは、当業者には明らかである。
【００６０】
たとえば、上記では光記憶ディスクに関連して本発明を説明してきた。しかしながら、本発明の要旨は、光記憶ディスクに限定されるものではなく、動作可能なデータ担体を含み、担体速度が可変であり、かつドライブから担体へのデータ転送レートおよび／または担体からドライブへのデータ転送レートが担体速度に依存する記憶装置に、広く適用可能である。
【００６１】
また、タイマをセットする工程（ステップ１０２；２０２）は、加速手順（ステップ１４２；２４２）または減速手順（ステップ１５６；２５６）の一部として実行されてもよい。
【００６２】
上記では、ディスクドライブ３の制御回路１０によって実行される方法の各工程を述べることにより、本発明を説明してきた。このことは、ディスクドライブの適切な適合化、たとえばディスクドライブ３の制御回路１０を適切にプログラミングすることによって、本発明が実施されることを意味している。したがって、ディスクドライブは、本発明の１つの実施形態である。しかしながら、上記の方法の各工程を、ホスト２によって実行することも可能である。その場合、典型的には、ディスクドライブは、ディスク速度設定命令を含む命令の組を受け取るものとされ、ホストは、ディスク速度設定命令を含むコマンドをディスクドライブに送ることができるものとされる。したがって、ホストもまた、本発明の１つの実施形態である。
【００６３】
また上記では、加速工程を行おうとする際に、ドライブ／ホスト平均転送レートＤＨＴＲが現在のディスク／ドライブ転送レートＤＤＴＲと比較され（ステップ１５１；２５１）、一方、減速工程を行おうとする際に、ドライブ／ホスト平均転送レートＤＨＴＲが予測ディスク／ドライブ転送レートＤＤＴＲｅｘと比較される（ステップ１５２；２５２）ような、好ましい実施形態のケースに関連して、本発明を説明してきた。しかしながら、本発明の範囲内において、加速工程を行おうとする際に、ドライブ／ホスト平均転送レートＤＨＴＲが、予測ディスク／ドライブ転送レートＤＤＴＲｅｘと比較される形態も可能である。かかる比較の結果は、ある速度変更が、近い将来において逆方向への速度変更により打ち消されることが予期されるか否かを示す。同様に、減速工程を行おうとする際に、ドライブ／ホスト平均転送レートＤＨＴＲが、現在のディスク／ドライブ転送レートＤＤＴＲと比較される形態も可能である。かかる比較の結果は、バッファレベルが、近い将来において、上記の低い側の閾値より上かつ上記の高い側の閾値より下の、中間レベルに近づく傾向があることが予期されるか否かを示す。
【００６４】
さらに上記では、本発明に従う装置の機能ブロックを示したブロック図を参照して、本発明を説明してきた。ここで、これらの機能ブロックの１つまたは複数がハードウェア内に実装され、かかる機能ブロックの機能が、個々のハードウェア構成要素によって実行されてもよいし、これらの機能ブロックの１つまたは複数がソフトウェア内に実装され、かかる機能ブロックの機能が、コンピュータプログラムまたはプログラミング可能な装置（たとえば、マイクロプロセッサ、マイクロコントローラ等）の１つまたは複数のプログラムラインによって実行されてもよい点を理解されたい。
【図面の簡単な説明】
【００６５】
【図１】データ転送システムを模式的に示した図
【図２】本発明の１つの好ましい実施形態に係る読出手順を概略的に示したフローチャート
【図３】本発明の１つの好ましい実施形態に係る書込手順を概略的に示したフローチャート
【図４Ａ】本発明の１つの好ましい実施形態に係る速度変更を図解したタイミング図
【図４Ｂ】本発明の１つの好ましい実施形態に係る速度変更を図解したタイミング図
【図１】
2007503080.tif 000013
【図２】
2007503080.tif 000014
【図３】
2007503080.tif 000015
【図４Ａ】
2007503080.tif 000016
【図４Ｂ】
2007503080.tif 000017
【国際調査報告】
2007503080.tif 000018
2007503080.tif 000019
2007503080.tif 000020