JP2005071399A - Device and method for access control of information recording and reproducing device - Google Patents
Device and method for access control of information recording and reproducing device Download PDFInfo
- Publication number
- JP2005071399A JP2005071399A JP2003208437A JP2003208437A JP2005071399A JP 2005071399 A JP2005071399 A JP 2005071399A JP 2003208437 A JP2003208437 A JP 2003208437A JP 2003208437 A JP2003208437 A JP 2003208437A JP 2005071399 A JP2005071399 A JP 2005071399A
- Authority
- JP
- Japan
- Prior art keywords
- access
- disk medium
- formatter
- data
- head
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、ディスク媒体への情報の書込みとディスク媒体からの情報の読出しを行う情報記録再生装置において、ディスク媒体に対するアクセス(書込みまたは読出し)を制御する装置および方法に関する。
【0002】
【従来の技術】
ハードディスクドライブ等の磁気ディスク装置においては、ディスク媒体のトラック上にあるデータの最小アドレスから、バッファ上およびディスク媒体上で連続処理できるデータ(セクタの塊)毎に書込み/読出し処理が行われる。
【0003】
例えば、バッファ上で連続なアドレスであるBA(Buffer Address)=100000h−11FFFFhの領域に格納されている256セクタ分のデータ(1セクタ=200hバイト)を、ディスク媒体上の連続した論理セクタであるLBA(Logical Block Address )=5000h−50FFhの領域に書き込む場合、ホスト装置は、ディスク媒体の書込み/読出しを制御しているディスク・コントローラに対して、データの先頭BA/先頭LBAをPSN(Physical Sector Number)に変換した値(仮に000hとする)と処理セクタ数(100h)を指定して、ディスク・コントローラ内のフォーマッタ(Formatter )を起動している。
(注:PSNにはDefect Sector が考慮されている、あるいはPSNはDefect Sector上でカウントされないものとする。)
ところが、フォーマッタ起動時にヘッドが既にアクセス領域の先頭セクタ(ターゲット・セクタ)の先頭位置を通過していた場合、フォーマッタは次の回転で再びターゲット・セクタを検出するまで書込み/読出し動作を行えないため、最大1回転の回転待ちが発生する。
【0004】
図18は、このようなディスク媒体の回転待ちの例を示している。ディスク媒体100上において、ターゲット・セクタの先頭位置101の直前の位置102にヘッドがある場合、直ちに書込み/読出し処理を開始できるので回転待ちは発生せず、必要な回転数は書込み/読出し処理の1回転のみである。これに対して、ディスク媒体100上の位置103、104、および105にヘッドがある場合、それぞれ、2/4回転、3/4回転、および1回転の回転待ちが発生する。
【0005】
また、1回のフォーマッタ起動によりデータを処理するためには、そのデータのアドレスがバッファ上で連続である必要があり、かつ、ディスク媒体上でもアクセス先のLBAが連続である必要がある。この制限により、複数個のデータの書込み/読出し処理を行う場合、ディスク媒体上で複数個のターゲット・セクタが同一トラック上に存在していても、バッファ上でアドレスが不連続、またはLBAが不連続である場合には、複数回に分けてフォーマッタが起動される。
【0006】
しかし、ディスク媒体上で複数のデータを書き込む位置が近接している場合(ヘッドが次のターゲット・セクタに到達するまでの時間が、ファームウェアがフォーマッタの停止判定および次のフォーマッタ起動を処理する時間よりも短い場合)は、同様に回転待ちが発生する。
【0007】
図19は、バッファ上のアドレス/ディスク媒体上のLBAが不連続なデータを同一トラック上で書き込む場合のハードディスクドライブの制御信号のタイミングチャートである。図19の横軸は時間を表し、トラック上のヘッド位置に対応する。サーボゲート(SG)パルスは、ディスク媒体上でユーザデータを書き込めない領域を表しており、セクタパルス(SP)は、各セクタの先頭位置を表している。ライトゲート(WG)パルスは、ユーザデータを書き込む領域を表している。
【0008】
この例では、ユーザデータAのWGパルスとユーザデータBのWGパルスの間のDisk割込み処理パルスが出ている時間TABの間に、ユーザデータAに関するフォーマッタ終了処理とユーザデータBに関するフォーマッタ起動処理を行う必要がある。これらの処理が間に合わない場合、1回転の回転待ちが発生する。
【0009】
従来の磁気ディスク装置においては、データの読出し時の回転待ち時間を有効に活用する制御方法が提案されている(例えば、特許文献1参照)。
【0010】
【特許文献1】
特開2001−101767号公報
【0011】
【発明が解決しようとする課題】
しかしながら、上述した特許文献1の制御方法では、読出し時の回転待ちのみに注目しており、書込み時の回転待ちについては対象外となっている。また、読出し時の回転待ちについても、回転待ち時間を利用して要求されたデータ以外のデータを読み出すことで待ち時間を有効に活用する処理が提案されており、要求されたデータに対する回転待ち時間が削減されるわけではない。
【0012】
本発明の課題は、磁気ディスク装置のような情報記録再生装置において、ユーザデータの書込み/読出しを行う際に、ヘッド位置とディスク媒体上のセクタ位置の相対的位置関係により発生する回転待ち時間を削減するアクセス制御装置およびその方法を提供することである。
【0013】
【課題を解決するための手段】
図1は、本発明のアクセス制御装置の原理図である。図1のアクセス制御装置は、アクセス手段201および起動判定手段202を備え、情報記録再生装置によるディスク媒体203へのデータの書込みとディスク媒体203からのデータの読出しのうち少なくとも一方のアクセスを制御する。
【0014】
アクセス手段201は、ディスク媒体203の回転中に、ヘッド204を介してディスク媒体203に対するアクセス動作を行う。起動判定手段202は、ディスク媒体203上におけるヘッド204の現在位置がディスク媒体203上のアクセス対象領域205内にあるか否かをチェックし、現在位置がアクセス対象領域205内にあるとき、ディスク媒体203が回転してアクセス対象領域205の先頭位置206が現在位置に到達するまでの時間を待たずにアクセス手段201を起動する。
【0015】
ヘッド204の現在位置がディスク媒体203上のアクセス対象領域205内にあれば、先頭位置206が回転により現在位置まで移動するのを待ち合わせることなく直ちにアクセス手段201が起動され、現在位置からデータの書込みまたはデータの読出しが開始される。したがって、ディスク媒体203の回転待ち時間が削減され、情報記録再生装置の性能向上が図られる。
【0016】
アクセス手段201は、例えば、後述する図3のフォーマッタ305および図8のフォーマッタ803に対応し、起動判定手段202は、例えば、図3のフォーマッタ起動/停止判定器304および図8のフォーマッタ起動/停止判定器801に対応する。
【0017】
【発明の実施の形態】
以下、図面を参照しながら、本発明の実施の形態を詳細に説明する。
本実施形態では、フォーマッタ起動時にヘッドが既に先頭セクタを通過していた場合でも、書き込む/読み出す領域(先頭セクタ+処理セクタ)内にヘッドがある場合には、現在のヘッドの位置からフォーマッタを起動できるようにする。また、バッファ上のアドレス/ディスク媒体上のLBAが不連続な複数個のデータを同一トラック上で書き込む時に、ファームウェアの介在なしにそれらのデータの書き込みを可能にする。
【0018】
図2は、このようなアクセス制御を行うハードディスクドライブの構成図である。図2のハードディスクドライブは、マイクロプロセッサ211、ハードディスク・コントローラ(HDC)212、ヘッド213、ディスク214、およびスピンドルモータ215を備え、HDC212は、バッファ221、ディスク・コントローラ222、バッファ制御部223、ホスト制御部224、ヘッド位置制御部225、およびモータ速度制御部226を含む。
【0019】
ヘッド213は、ディスク214へのデータの書込みとディスク214からのデータの読出しを行い、スピンドルモータ215はディスク214を回転させる。マイクロプロセッサ211は、ディスク・コントローラ222、バッファ制御部223、ホスト制御部224、ヘッド位置制御部225、およびモータ速度制御部226を制御する。
【0020】
バッファ221は、例えば、SDRAM(Synchronous Dynamic Random Access Memory)であり、書込み/読出しデータを一時的に格納する。バッファ制御部223は、バッファ221へのデータの書込みとバッファ221からのデータの読出しを制御し、ディスク・コントローラ222は、ヘッド213とバッファ制御部223の間のデータ転送を制御する。
【0021】
ホスト制御部224は、外部の情報処理装置(ホスト装置)からコマンドを受け取り、ホスト装置とバッファ制御部223の間のデータ転送を制御する。ヘッド位置制御部225は、ディスク214上のヘッド213の位置を制御し、モータ速度制御部226は、スピンドルモータ215を制御することでディスク214の回転数を制御する。
【0022】
なお、バッファ221は、HDC212の外部に設けられることもあり、マイクロプロセッサ211は、HDC212に内蔵されることもある。
次に、図3から図17までを参照しながら、図2のディスク・コントローラ222の構成と動作について説明する。
【0023】
ディスク・コントローラ222の第1の構成では、ファームウェアが書込み/読出しを実施するディスク214上のトラック・パラメタ(SPT[Sector Per Track]、PSN等)より設定したバッファ空間の情報を基に、PSN位置をカウントしているSP[Sector Pulse]から現在のヘッド位置を求め、バッファ空間のディスク側ポインタを補正して、フォーマッタを起動するハードウェア機能を備える。ファームウェアが設定する情報は以下の通りである。
(1)バッファの先頭アドレス(BTOP)/最終アドレス(BEND)によって決定されるバッファ空間の大きさは、SPT分のデータ数と同一に設定し、1トラック分のデータに対応するバッファ空間を確保する。
(2)Logical INDEX(トラック内の最小LBAセクタ位置)とPhysical INDEX(PSN00h位置)の差分を求め、それをSKEWとして設定する。
(3)実際に書き込む/読み出すデータの先頭バッファアドレス(DSTART)と最終バッファアドレス(DLIMIT)とセクタ数(DSC)を設定して、フォーマッタを起動する。
(注:Buffer Full/Empty監視用のカウンタおよびStreaming制御は、特に記述していない。)
図3は、このようなディスク・コントローラ222の構成図である。図3のディスク・コントローラは、BTOP/BEND算出器301、DBA算出器302、SP生成器303、フォーマッタ起動/停止判定器304、およびフォーマッタ305を含む。
【0024】
BTOP/BEND算出器301は、SPTおよびSKEWを格納するレジスタを有する。そして、フォーマッタ起動/停止判定器304が保持するDSTARTを参照し、DSTARTおよびSPTからBTOPおよびBENDを計算して、BTOP、BEND、およびSKEWをDBA算出器302に転送する。
【0025】
DBA算出器302は、BTOP、BEND、およびPSNに対応するバッファアドレス(DBA)を格納するレジスタを有する。そして、SP生成器303からSP信号を受け取るとSP生成器303が保持するPSNを参照し、BTOP、BEND、SKEW、およびPSNからDBAを計算する。DBA算出器302は、DBAの算出が完了すると、その旨をフォーマッタ起動/停止判定器304に通知する。
【0026】
SP生成器303は、PSNを格納するレジスタを有し、SP信号を出力する。
フォーマッタ起動/停止判定器304は、DSTART、DLIMIT、DSC、および連続処理可能セクタ数(DSC2)を格納するレジスタを有する。そして、DBA算出器302からDBA算出完了通知を受け取るとDBA算出器302が保持するDBAを参照し、DSTART、DLIMIT、DSC、DSC2、およびDBAを用いてフォーマッタ305の起動/停止を判定して、フォーマッタ305に起動/停止を指示する。
【0027】
フォーマッタ305は、WCS(Writable Control Store)とも呼ばれ、フォーマッタ起動/停止判定器304からの指示により起動される。そして、ヘッド213に対してWGパルスおよびリードゲート(RG)パルスを出力するとともに、ヘッド213への書込みデータの転送/ヘッド213からの読出しデータの受信を行う。
【0028】
データの変調方式としては、例えば、NRZ(Non Return to Zero)が用いられる。WG/RGパルスが出ている間、データの書込み/読出しを行うことが可能となる。また、フォーマッタ305は、フォーマッタ起動/停止判定器304に対してDSCおよびDSC2のデクリメントを指示する。
【0029】
ここで、ホスト装置からLBA5010h−50EFh/SC=E0hのライトコマンドが発行され、図4に示すように、ホスト装置から転送された書込みデータがバッファ221上のBA100000h−11BFFFhに格納された場合の動作について説明する。LBA5010hは書込み開始位置402を表し、LBA50EFhは書込み終了位置405を表し、SC=E0hは書込み対象のセクタ数を表す。SCはDSCとして設定される。
【0030】
ディスク214上では、トラックnに対してデータが書き込まれるものとし、トラックnのSPTは100hとする。また、Logical INDEX401を表すLSN(Logical Sector Number )00hはLBA5000hに対応し、LBA5000h−50FFhの論理セクタが配置されているものとする。また、Physical INDEX403を表すPSN00hはLBA5020hに対応するものとする。
Track n:
SPT=100h
LSN00h=LBA5000h
PSN00h=LBA5020h
(SKEW=20h)
Write対象:
LBA5010h−50EFh,SC=E0h
Buffer Data:
BA100000h−11BFFFh
BTOPは、Buffer Data(Write Data)の先頭バッファアドレス(DSTART=BA100000h)から、Logical INDEX401(LBA5000h)と書込み開始位置402(LBA5010h)の間のセクタ数に対応するデータ数を減算した値となる。また、BENDは、トラック内セクタ数の総データ数をBTOPに加算した値となる。そこで、BTOP/BEND算出器301は、以下の計算を行ってBTOPおよびBENDを算出する。
ターゲット・トラックnへのシークが完了すると、DBA算出器302は、以下の計算を行ってDBAを算出する。
シーク完了時のPSN(ヘッド位置404)がPSN070hであったと仮定すると、DBAは以下のように算出される。
次に、フォーマッタ起動/停止判定器304は、以下の判定方法により、現在のヘッド位置(PSN)におけるフォーマッタ305の起動可否をチェックする。
If((DBA≧DSTART)&&(DBA≦DLIMIT)){ //フォーマッタ起動可能
(注:バッファ空間内でのリロードは考慮していない。)
図5は、このようなフォーマッタ起動/停止判定器304の動作フローチャートである。まず、判定器304は、DBA算出器302からDBA算出完了通知を受け取ったか否かをチェックし(ステップ501)、DBA算出完了通知を受け取ると、次に、DBA≧DSTARTかつDBA≦DLIMITの条件が満たされるか否かをチェックする(ステップ502)。
【0031】
この条件が満たされなければ、現在のヘッド位置ではデータの書込みが行えないのでフォーマッタ起動不可能と判定し、ステップ501以降の動作を繰り返す。一方、DBA≧DSTARTかつDBA≦DLIMITの条件が満たされれば、フォーマッタ起動可能と判定し、以下の計算を行ってDSC2を算出する(ステップ503)。
DSC2=(DLIMIT+1−DBA)/SectorSize(200h)
そして、得られたDSC2がDSCより大きければ、DSCの値をDSC2に設定して、フォーマッタ305に起動を指示する(ステップ504)。DSC2がDSC以下であれば、そのままフォーマッタ305に起動を指示する。これにより、現在のヘッド位置でデータの書込みが開始され、現在のBAからDSC2分のデータのフォーマッタ・ライト処理が実行される。
【0032】
PSN070hでシークが完了した場合は、ステップ502の条件が満たされるためフォーマッタ起動可能と判定され、DSC2は以下のように計算される。
そして、図6に示すように、バッファ221から60hセクタ分のデータが読み出されて、ディスク214上のLBA5090h−50EFhのセクタに書き込まれる。このとき、フォーマッタ305は、1セクタの書込み処理が完了するごとにDSC/DSC2のデクリメント指示を出力する。
【0033】
判定器304は、フォーマッタ305からDSC/DSC2のデクリメント指示を受け取ったか否かをチェックし(ステップ505)、デクリメント指示を受け取ると、DSCおよびDSC2をデクリメントする(ステップ506)。
【0034】
次に、DSCが00hになったか否かをチェックする(ステップ507)。DSCが00hになっていなければ、DSC2が00hになったか否かをチェックし(ステップ508)、DSC2が00hになっていなければ、ステップ505以降の動作を繰り返す。
【0035】
DSC2が00hになっていれば、フォーマッタ305に停止を指示し(ステップ510)、ステップ501以降の動作を繰り返す。これにより、判定器304は、DBA完了通知のチェックを再開し、残りの書込み対象セクタにおけるフォーマッタ起動のタイミングを待つ。また、ステップ507においてDSCが00hになっていれば、フォーマッタ305に停止を指示する(ステップ509)。
【0036】
DSC2が60hに設定された場合、DSC2が00hになった時点で、DSCは初期値E0hから60h分デクリメントされて80hとなる。これは、80hセクタ分のデータが書き込まれずに残されていることを意味する。書込み終了位置405から書込み開始位置402までの間(PSNが0D0h−0EFhの間)は、ステップ502の条件が満たされないためフォーマッタ起動不可能と判定される。
【0037】
そして、ヘッド213がPSN0F0hに到達すると、DBA=100000hとなり、再びフォーマッタ起動可能と判定される。これにより、DSC2が80hに設定され、残りセクタ(80h)のフォーマッタ・ライト処理が実行される。
【0038】
このとき、図7に示すように、バッファ221から残りの80hセクタ分のデータが読み出されて、ディスク214上のLBA5010h−508Fhのセクタに書き込まれる。そして、DSC2が00hになった時点で、DSCは前の値80hから80h分デクリメントされて00hとなる。そこで、すべてのフォーマッタ動作を完了する。
【0039】
このようなフォーマッタ起動/停止判定方法によれば、ヘッド213が書込み対象領域のいずれかのセクタ上にあれば、直ちにフォーマッタ305が起動されて書込み処理が開始されるため、ディスク214の回転待ち時間が削減される。
【0040】
ディスク・コントローラ222の第2の構成では、ファームウェアが設定するパラメタの計算方法とハードウェアによるフォーマッタ起動可否の判定方法が、上述した第1の構成とは異なる。第2の構成において、ファームウェアが設定する情報は以下の通りである。
(1)ターゲット・トラック上のSPTを設定する。
(2)実際に書き込む/読み出すデータの先頭バッファアドレス(DSTART)とセクタ数(DSC)と先頭データに対応するPSNの値(GPSN)を設定して、フォーマッタを起動する。
【0041】
図8は、このようなディスク・コントローラ222の構成図である。図8のディスク・コントローラは、フォーマッタ起動/停止判定器801、SP生成器802、およびフォーマッタ803を含む。
【0042】
SP生成器802は、PSNを格納するレジスタを有し、SP信号を出力する。
フォーマッタ起動/停止判定器801は、SPT、ワークカウンタ(DSC_WK)、DSC2、DSTART、DSC、およびGPSNの各パラメタを格納するレジスタを有する。そして、SP生成器802からSP信号を受け取るとSP生成器802が保持するPSNを参照し、SPT、DSC_WK、DSC2、DSTART、DSC、およびGPSNを用いてフォーマッタ803の起動/停止を判定して、フォーマッタ803に起動/停止を指示する。
【0043】
フォーマッタ803は、フォーマッタ起動/停止判定器801からの指示により起動され、第1の構成と同様に、データの書込み/読出しを行う。また、フォーマッタ803は、フォーマッタ起動/停止判定器801に対してDSC_WKおよびDSC2のデクリメントを指示する。
【0044】
ここで、図4に示した書込み処理が指示された場合の動作について説明する。この場合、フォーマッタ起動/停止判定器801には、図9のようなパラメタが設定される。図9のParameter−3のDSC_WKには、ハードウェアによりParameter−2のDSCの値がコピーされる。
【0045】
ターゲット・トラックnへのシークが完了すると、フォーマッタ起動/停止判定器801は、以下の判定方法により、Parameter−2に設定された値を用いて現在のヘッド位置(PSN)におけるフォーマッタ803の起動可否をチェックする。
If((GPSN+DSC)>SPT){ //Physical INDEXを跨いでいる
図10は、このようなフォーマッタ起動/停止判定器801の動作フローチャートである。まず、判定器801は、SP生成器802からSP信号を受信したか否かをチェックし(ステップ1001)、SP信号を受信すると、次に、(GPSN+DSC)>SPTの条件が満たされるか否かをチェックする(ステップ1002)。
【0046】
この条件が満たされれば、次に、PSN≧GPSNの条件が満たされるか否かをチェックする(ステップ1005)。この条件が満たされれば、フォーマッタ起動可能と判定し、以下の計算を行ってDBAおよびDSC2を算出する(ステップ1008)。
ステップ1005の条件が満たされなければ、次に、PSN<(GPSN+DSC−SPT)の条件が満たされるか否かをチェックする(ステップ1006)。この条件が満たされれば、フォーマッタ起動可能と判定し、以下の計算を行ってDBAおよびDSC2を算出する(ステップ1007)。
ステップ1006の条件が満たされなければ、現在のヘッド位置ではデータの書込みが行えないのでフォーマッタ起動不可能と判定し、ステップ1001以降の動作を繰り返す。
【0047】
一方、ステップ1002の条件が満たされなければ、次に、PSN≧GPSNかつPSN<(GPSN+DSC)の条件が満たされるか否かをチェックする(ステップ1003)。この条件が満たされれば、フォーマッタ起動可能と判定し、以下の計算を行ってDBAおよびDSC2を算出する(ステップ1004)。
ステップ1003の条件が満たされなければ、現在のヘッド位置ではデータの書込みが行えないのでフォーマッタ起動不可能と判定し、ステップ1001以降の動作を繰り返す。
【0048】
次に、得られたDSC2とDSC_WKを比較し(ステップ1009)、DSC2がDSC_WKより大きければ、DSC_WKの値をDSC2に設定して(ステップ1010)、フォーマッタ803に起動を指示する(ステップ1011)。DSC2がDSC_WK以下であれば、そのままフォーマッタ803に起動を指示する。これにより、現在のヘッド位置でデータの書込みが開始され、現在のBAからDSC2分のデータのフォーマッタ・ライト処理が実行される。
【0049】
PSN070hでシークが完了した場合は、ステップ1006の条件が満たされるためフォーマッタ起動可能と判定され、DBAおよびDSC2は以下のように計算される。
そして、図6に示したように、60hセクタ分のデータがディスク214上に書き込まれる。このとき、フォーマッタ803は、1セクタの書込み処理が完了するごとにDSC_WK/DSC2のデクリメント指示を出力する。
【0050】
判定器801は、フォーマッタ803からDSC_WK/DSC2のデクリメント指示を受け取ったか否かをチェックし(ステップ1012)、デクリメント指示を受け取ると、DSC_WKおよびDSC2をデクリメントする(ステップ1013)。
【0051】
次に、DSC_WKが00hになったか否かをチェックする(ステップ1014)。DSC_WKが00hになっていなければ、DSC2が00hになったか否かをチェックし(ステップ1015)、DSC2が00hになっていなければ、ステップ1012以降の動作を繰り返す。
【0052】
DSC2が00hになっていれば、フォーマッタ803に停止を指示し(ステップ1017)、ステップ1001以降の動作を繰り返す。これにより、判定器801は、SP信号のチェックを再開し、残りの書込み対象セクタにおけるフォーマッタ起動のタイミングを待つ。また、ステップ1014においてDSC_WKが00hになっていれば、フォーマッタ803に停止を指示する(ステップ1016)。
【0053】
DSC2が60hに設定された場合、DSC2が00hになった時点で、DSC_WKは80hとなる。PSNが0D0h−0EFhの間は、ステップ1005および1006のいずれの条件も満たされないためフォーマッタ起動不可能と判定される。
【0054】
次に、ヘッド213がPSN0F0hに到達すると、ステップ1005の条件が満たされ、再びフォーマッタ起動可能と判定される。これにより、DBAおよびDSC2がそれぞれ100000hおよび10hに設定され、10hセクタ分のフォーマッタ・ライト処理が実行される。そして、DSC2が00hになった時点で、DSC_WKは前の値80hから10h分デクリメントされて70hとなる。
【0055】
次に、ヘッド213がPSN000hに到達すると、ステップ1006の条件が満たされ、再びフォーマッタ起動可能と判定される。これにより、DBAおよびDSC2がそれぞれ102000hおよび70hに設定され、70hセクタ分のフォーマッタ・ライト処理が実行される。そして、DSC2が00hになった時点で、DSCは前の値70hから70h分デクリメントされて00hとなる。そこで、すべてのフォーマッタ動作を完了する。
【0056】
このようなフォーマッタ起動/停止判定方法によれば、ディスク・コントローラ222の第1の構成の場合と同様に、ディスク214の回転待ち時間が削減される。第2の構成では、さらに、同一トラック内で複数のデータを扱うことも可能である。この場合、ファームウェアが設定する情報は以下の通りである。
(1)ターゲット・トラック上のSPTを設定する。
(2)実際に書き込む/読み出す複数個のデータの先頭バッファアドレス(DSTARTn)とセクタ数(DSCn)と先頭データに対応するPSNの値(GPSNn)を設定する。
(3)複数個のDSCnを合計した処理セクタ総数(TDSC)を設定して、フォーマッタを起動する。
【0057】
この場合、図8のフォーマッタ起動/停止判定器801のパラメタは、図11のように変更される。図11のフォーマッタ起動/停止判定器801は、SPT、TDSC、およびDSC2と、複数個のエントリのDSTARTn、DSCn、およびGPSNnを格納するレジスタを有する。そして、これらのパラメタを用いてフォーマッタ803の起動/停止を判定し、フォーマッタ803に起動/停止を指示する。フォーマッタ803は、フォーマッタ起動/停止判定器801に対してTDSCおよびDSC2のデクリメントを指示する。
【0058】
ここで、図12に示すように、ホスト装置からトラックn上の不連続な3つの書込み対象領域WT−1、WT−2、およびWT−3に対するライトコマンドが発行され、ホスト装置から転送された書込みデータがバッファ221上の不連続な3つの領域に格納された場合の動作について説明する。
【0059】
WT−1の書込み開始位置1202、書込み終了位置1204は、それぞれ、LBA5010h、LBA504Fh、およびSCは40hとする。WT−2の書込み開始位置1205、書込み終了位置1207は、それぞれ、LBA5080h、LBA50AFh、およびSCは30hとする。WT−3の書込み開始位置1208、書込み終了位置1209は、それぞれ、LBA50C0h、LBA50EFh、およびSCは30hとする。
【0060】
また、トラックnのSPTは100hとする。Logical INDEX1201を表すLSN00hはLBA5000hに対応し、LBA5000h−50FFhの論理セクタが配置されているものとする。Physical INDEX1203を表すPSN00hはLBA5020hに対応するものとする。
【0061】
また、WT−1の書込みデータは、バッファ221上のBA110000h−117FFFhの領域に格納され、WT−2の書込みデータは、BA100000h−105FFFhの領域に格納され、WT−3の書込みデータは、BA120000h−125FFFhの領域に格納されているものとする。
Track n:
SPT=100h
LSN00h=LBA5000h
PSN00h=LBA5020h (SKEW=20h)
Write対象:
WT−1 LBA5010h−504Fh,SC=40h
WT−2 LBA5080h−50AFh,SC=30h
WT−3 LBA50C0h−50EFh,SC=30h
Buffer Data:
WT−1 BA110000h−117FFFh
WT−2 BA100000h−105FFFh
WT−3 BA120000h−125FFFh
この場合、フォーマッタ起動/停止判定器801には、図13のようなパラメタが設定される。フォーマッタ起動/停止判定器801は、Parameter−2の複数個のエントリのそれぞれについて、DSTART=DSTARTn、DSC=DSCn、およびGPSN=GPSNnと設定し、図10と同様の判定方法を用いてフォーマッタ803の起動/停止を判定する。ただし、フォーマッタ起動/停止判定器801は、DSC_WKの代わりにTDSCを用いるものとする。
【0062】
具体的には、図10のステップ1009においてDSC2とTDSCを比較し、DSC2がTDSCより大きければ、ステップ1010においてTDSCの値をDSC2に設定する。また、ステップ1012においてフォーマッタ803からTDSC/DSC2のデクリメント指示を受け取ったか否かをチェックし、デクリメント指示を受け取ると、ステップ1013においてTDSCおよびDSC2をデクリメントする。さらに、ステップ1014においてTDSCが00hになったか否かをチェックし、TDSCが00hになったときにすべてのフォーマッタ動作を完了する。
【0063】
このようなフォーマッタ起動/停止判定方法によれば、バッファ221上のBAおよび/またはディスク214上のLBAが不連続な複数個のデータを同一トラック上で書き込む場合でも、ファームウェアの介在なしに処理することが可能となり、ディスク214の回転待ち時間が削減される。
【0064】
次に、ディスク214からデータを読み出す場合の動作について説明する。図14は、ホスト装置から発行されたリードコマンドの読出し要求範囲(Read範囲)の例を示している。図14では、読出し要求範囲が始点1401と終点1402により表されている。ここで、要求された範囲のデータのみを読み出す場合、図3または図8の構成において、アクセスの方向を書込みから読出しに変更することで、現在のヘッド位置から読出し動作を開始することが可能である。
【0065】
例えば、図15に示すように、ディスク214上の位置1501でシークが完了した場合、ディスク・コントローラ222は、まず、シーク完了位置1501から終点1402までのセクタに対して読出しを行い、次に、始点1401からシーク完了位置1501までのセクタに対して読出しを行う。これにより、読出し要求範囲のデータをもれなく読み出すことができる。
【0066】
このように、ヘッドが読出し要求範囲のいずれかのセクタ上にあれば、直ちにフォーマッタが起動されて読出し処理が開始されるため、読出し動作時においてもディスク214の回転待ち時間が削減される。
【0067】
また、書込み動作とは異なり、読出し動作時には、ホスト装置から要求された範囲よりも広い範囲のセクタを読み出し、キャッシュ・データとして保持することも可能である。
【0068】
例えば、図16に示すように、要求セクタ数を実際の値よりも大きく設定することで、終点1402より後ろに読出し終了位置1602を設定すれば、終点1402から読出し終了位置1602までのセクタを読み出すことができる(後読み)。また、要求範囲の先頭位置を手前にすることで、始点1401より手前に読出し開始位置1601を設定すれば、読出し開始位置1601から始点1401までのセクタを読み出すことができる(前読み)。
【0069】
また、要求範囲の先頭位置をトラック上の先頭位置(LSN00h)に設定し、要求セクタ数をトラック上の全セクタ数(SPT)に設定することで、図17に示すように全周のセクタを読み出すこともできる。
【0070】
(付記1) ディスク媒体へのデータの書込みと該ディスク媒体からのデータの読出しのうち少なくとも一方のアクセスを制御するアクセス制御装置であって、 前記ディスク媒体の回転中に、ヘッドを介して該ディスク媒体に対するアクセス動作を行うアクセス手段と、
前記ディスク媒体上における前記ヘッドの現在位置が該ディスク媒体上のアクセス対象領域内にあるか否かをチェックし、該現在位置が該アクセス対象領域内にあるとき、該ディスク媒体が回転して該アクセス対象領域の先頭位置が該現在位置に到達するまでの時間を待たずに前記アクセス手段を起動する起動判定手段と
を備えることを特徴とするアクセス制御装置。
【0071】
(付記2) 前記ディスク媒体への書き込むデータと該ディスク媒体から読み出されたデータを一時的に格納するバッファ上における、前記現在位置に対応するバッファアドレスを計算するバッファアドレス計算手段をさらに備え、前記起動判定手段は、計算されたバッファアドレスを該バッファ上のデータの先頭アドレスおよび最終アドレスと比較することで、該現在位置が前記アクセス対象領域内にあるか否かをチェックすることを特徴とする付記1記載のアクセス制御装置。
【0072】
(付記3) 前記アクセス対象領域が存在するトラック内の最小論理セクタ位置と前記アクセス対象領域の先頭位置の差分に相当する値を前記データの先頭アドレスから減算して前記バッファの先頭アドレスを計算し、該バッファの先頭アドレスに該トラックのセクタ数に相当する値を加算して該バッファの最終アドレスを計算する先頭/最終アドレス計算手段をさらに備え、前記バッファアドレス計算手段は、計算されたバッファの先頭アドレスと最終アドレスを用いて前記現在位置に対応するバッファアドレスを計算することを特徴とする付記2記載のアクセス制御装置。
【0073】
(付記4) 前記起動判定手段は、前記アクセス対象領域の先頭位置と大きさの情報を用いて、前記現在位置が該アクセス対象領域内にあるか否かをチェックすることを特徴とする付記1記載のアクセス制御装置。
【0074】
(付記5) 前記起動判定手段は、前記現在位置が該アクセス対象領域内にあるとき、前記ディスク媒体への書き込むデータと該ディスク媒体から読み出されたデータを一時的に格納するバッファ上におけるデータの先頭アドレスと、該アクセス対象領域の先頭位置の情報とを用いて、該現在位置に対応する該バッファ上のバッファアドレスを計算することを特徴とする付記4記載のアクセス制御装置。
【0075】
(付記6) 前記起動判定手段は、前記ディスク媒体の同一トラック上で不連続な複数個のアクセス対象領域に対するアクセスが要求されたとき、該複数個のアクセス対象領域のそれぞれについて、前記現在位置が該アクセス対象領域内にあるか否かのチェックを繰り返すことを特徴とする付記1記載のアクセス制御装置。
【0076】
(付記7) ディスク媒体の回転中にヘッドを介して該ディスク媒体へのデータの書込みと該ディスク媒体からのデータの読出しのうち少なくとも一方のアクセス動作を行う情報記録再生装置を制御するアクセス制御方法であって、
前記ディスク媒体上における前記ヘッドの現在位置が該ディスク媒体上のアクセス対象領域内にあるか否かをチェックし、
前記現在位置が前記アクセス対象領域内にあるとき、前記ディスク媒体が回転して該アクセス対象領域の先頭位置が該現在位置に到達するまでの時間を待たずに前記アクセス動作を行う
ことを特徴とするアクセス制御方法。
【0077】
【発明の効果】
本発明によれば、磁気ディスク装置のような情報記録再生装置において、ユーザデータの書込み/読出しを行う際に、ヘッド位置とディスク媒体上のセクタ位置の相対的位置関係により発生する回転待ち時間が削減され、情報記録再生装置の性能向上が期待できる。
【図面の簡単な説明】
【図1】本発明のアクセス制御装置の原理図である。
【図2】ハードディスクドライブの構成図である。
【図3】第1のディスク・コントローラの構成図である。
【図4】第1の書込みデータを示す図である。
【図5】第1のフォーマッタ起動/停止判定器の動作フローチャートである。
【図6】第1の書込み動作を示す図である。
【図7】第2の書込み動作を示す図である。
【図8】第2のディスク・コントローラの構成図である。
【図9】第1のパラメタを示す図である。
【図10】第2のフォーマッタ起動/停止判定器の動作フローチャートである。
【図11】第3のディスク・コントローラの構成図である。
【図12】第2の書込みデータを示す図である。
【図13】第2のパラメタを示す図である。
【図14】読出し要求範囲を示す図である。
【図15】第1の読出し動作を示す図である。
【図16】第2の読出し動作を示す図である。
【図17】第3の読出し動作を示す図である。
【図18】ディスク媒体の回転待ちを示す図である。
【図19】不連続なデータの書込み処理を示す図である。
【符号の説明】
100、203 ディスク媒体
101 ターゲット・セクタの先頭位置
102、103、104、105、404、1206、1501 ヘッド位置
201 アクセス手段
202 起動判定手段
205 アクセス対象領域
206 アクセス対象領域の先頭位置
211 マイクロプロセッサ
212 ハードディスク・コントローラ
204、213 ヘッド
214 ディスク
215 スピンドルモータ
221 バッファ
222 ディスク・コントローラ
223 バッファ制御部
224 ホスト制御部
225 ヘッド位置制御部
226 モータ速度制御部
301 BTOP/BEND算出器
302 DBA算出器
303、802 SP生成器
304、801 フォーマッタ起動/停止判定器
305、803 フォーマッタ
401、1201 Logical INDEX
402、1202、1205、1208 書込み開始位置
403、1203 Physical INDEX
405、1204、1207、1209 書込み終了位置
1401 始点
1402 終点
1601 読出し開始位置
1602 読出し終了位置[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an apparatus and method for controlling access (writing or reading) to a disk medium in an information recording / reproducing apparatus that writes information to the disk medium and reads information from the disk medium.
[0002]
[Prior art]
In a magnetic disk device such as a hard disk drive, writing / reading processing is performed for each piece of data (sector lump) that can be continuously processed on the buffer and on the disk medium from the minimum address of the data on the track of the disk medium.
[0003]
For example, 256 sectors of data (1 sector = 200 h bytes) stored in an area of BA (Buffer Address) = 100000h-11FFFFh, which are continuous addresses on the buffer, are continuous logical sectors on the disk medium. When writing to the area of LBA (Logical Block Address) = 5000h-50FFh, the host device uses the PSN (Physical Sector) for the first BA / first LBA of the data to the disk controller controlling the writing / reading of the disk medium. The formatter (Formatter) in the disk controller is activated by designating the value converted to Number (assuming 000h) and the number of processing sectors (100h).
(Note: Defect Sector is considered for PSN, or PSN is not counted on Defect Sector.)
However, if the head has already passed the head position of the head sector (target sector) of the access area when the formatter is activated, the formatter cannot perform the write / read operation until the target sector is detected again in the next rotation. , A rotation waiting of a maximum of one rotation occurs.
[0004]
FIG. 18 shows an example of waiting for the rotation of such a disk medium. On the
[0005]
In addition, in order to process data by activating the formatter once, the address of the data needs to be continuous on the buffer, and the access destination LBA needs to be continuous even on the disk medium. Due to this limitation, when writing / reading a plurality of data, even if a plurality of target sectors exist on the same track on the disk medium, the addresses are discontinuous on the buffer or the LBA is not valid. If it is continuous, the formatter is activated in multiple times.
[0006]
However, when multiple data write positions are close to each other on the disk medium (the time until the head reaches the next target sector is longer than the time when the firmware processes the formatter stop determination and the next formatter activation. If it is short), a waiting for rotation occurs similarly.
[0007]
FIG. 19 is a timing chart of hard disk drive control signals when writing data with discontinuous LBA addresses / buffers on the same track. The horizontal axis in FIG. 19 represents time and corresponds to the head position on the track. The servo gate (SG) pulse represents an area where user data cannot be written on the disk medium, and the sector pulse (SP) represents the head position of each sector. The write gate (WG) pulse represents an area where user data is written.
[0008]
In this example, the time T during which the Disk interrupt processing pulse is output between the WG pulse of the user data A and the WG pulse of the user data B AB In the meantime, it is necessary to perform a formatter end process for user data A and a formatter activation process for user data B. When these processes are not in time, one rotation waiting is generated.
[0009]
In a conventional magnetic disk device, a control method that effectively uses the rotation waiting time at the time of reading data has been proposed (see, for example, Patent Document 1).
[0010]
[Patent Document 1]
JP 2001-101767 A
[0011]
[Problems to be solved by the invention]
However, in the control method of
[0012]
An object of the present invention is to reduce a rotation waiting time generated by a relative positional relationship between a head position and a sector position on a disk medium when writing / reading user data in an information recording / reproducing apparatus such as a magnetic disk apparatus. It is an object to provide an access control apparatus and method for reducing the amount.
[0013]
[Means for Solving the Problems]
FIG. 1 is a principle diagram of an access control apparatus according to the present invention. The access control apparatus of FIG. 1 includes an access unit 201 and an activation determination unit 202, and controls access to at least one of data writing to the
[0014]
The access unit 201 performs an access operation to the
[0015]
If the current position of the
[0016]
The access unit 201 corresponds to, for example, the
[0017]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
In this embodiment, even if the head has already passed the first sector when the formatter is activated, the formatter is activated from the current head position if the head is in the writing / reading area (first sector + processing sector). It can be so. Further, when a plurality of data having discontinuous LBA addresses / buffers are written on the same track, the data can be written without intervention of firmware.
[0018]
FIG. 2 is a configuration diagram of a hard disk drive that performs such access control. 2 includes a
[0019]
The
[0020]
The
[0021]
The
[0022]
Note that the
Next, the configuration and operation of the
[0023]
In the first configuration of the
(1) The size of the buffer space determined by the first address (BTOP) / last address (BEND) of the buffer is set to be the same as the number of data for SPT, and a buffer space corresponding to data for one track is secured. To do.
(2) A difference between Logical INDEX (minimum LBA sector position in the track) and Physical INDEX (PSN00h position) is obtained and set as SKEW.
(3) Start the formatter by setting the first buffer address (DSTART), the last buffer address (DLIMIT) and the number of sectors (DSC) of the data actually written / read.
(Note: Buffer Full / Empty monitoring counter and Streaming control are not specifically described.)
FIG. 3 is a configuration diagram of such a
[0024]
The BTOP / BEND calculator 301 has a register for storing SPT and SKEW. Then, referring to DSTART held by the formatter activation /
[0025]
The
[0026]
The
The formatter start /
[0027]
The
[0028]
For example, NRZ (Non Return to Zero) is used as a data modulation method. Data can be written / read while the WG / RG pulse is output. The
[0029]
Here, when a write command of LBA5010h-50EFh / SC = E0h is issued from the host device, and write data transferred from the host device is stored in BA100000h-11BFFFh on the
[0030]
On the
Track n:
SPT = 100h
LSN00h = LBA5000h
PSN00h = LBA5020h
(SKEW = 20h)
Write target:
LBA5010h-50EFh, SC = E0h
Buffer Data:
BA100,000h-11BFFFh
BTOP is a value obtained by subtracting the number of data corresponding to the number of sectors between Logical INDEX 401 (LBA5000h) and write start position 402 (LBA5010h) from the top buffer address (DSTART = BA100000h) of Buffer Data (Write Data). BEND is a value obtained by adding the total number of data of the number of sectors in the track to BTOP. Therefore, the BTOP / BEND calculator 301 performs the following calculation to calculate BTOP and BEND.
When the seek to the target track n is completed, the
Assuming that the PSN (head position 404) at the completion of seek is PSN070h, DBA is calculated as follows.
Next, the formatter start /
If ((DBA ≧ DSTART) && (DBA ≦ DLIMIT)) {/// Formatter can be activated
(Note: Reloading in the buffer space is not considered.)
FIG. 5 is an operation flowchart of such a formatter start /
[0031]
If this condition is not satisfied, it is determined that the formatter cannot be activated because data cannot be written at the current head position, and the operations in and after
DSC2 = (DLIMIT + 1−DBA) / SectorSize (200h)
If the obtained DSC2 is larger than the DSC, the DSC value is set to DSC2, and the
[0032]
When the seek is completed at PSN 070h, it is determined that the formatter can be activated because the condition of
Then, as shown in FIG. 6, data for 60 h sectors is read from the
[0033]
The
[0034]
Next, it is checked whether DSC has become 00h (step 507). If DSC is not 00h, it is checked whether DSC2 is 00h (step 508). If DSC2 is not 00h, the operations in and after
[0035]
If DSC2 is 00h, the
[0036]
When DSC2 is set to 60h, DSC is decremented by 60h from the initial value E0h to 80h when DSC2 reaches 00h. This means that 80h sector data is left without being written. Between the
[0037]
When the
[0038]
At this time, as shown in FIG. 7, the remaining 80h sector data is read from the
[0039]
According to such a formatter start / stop determination method, if the
[0040]
In the second configuration of the
(1) Set the SPT on the target track.
(2) Start the formatter by setting the top buffer address (DSTART), the number of sectors (DSC) and the PSN value (GPSN) corresponding to the top data of the data actually written / read.
[0041]
FIG. 8 is a configuration diagram of such a
[0042]
The
The formatter activation /
[0043]
The
[0044]
Here, the operation when the write processing shown in FIG. 4 is instructed will be described. In this case, parameters as shown in FIG. 9 are set in the formatter start /
[0045]
When the seek to the target track n is completed, the formatter start /
If ((GPSN + DSC)> SPT) {// straddles Physical INDEX
FIG. 10 is an operation flowchart of such a formatter start /
[0046]
If this condition is satisfied, it is next checked whether or not the condition of PSN ≧ GPSN is satisfied (step 1005). If this condition is satisfied, it is determined that the formatter can be activated, and the following calculation is performed to calculate DBA and DSC2 (step 1008).
If the condition of
If the condition of step 1006 is not satisfied, data cannot be written at the current head position. Therefore, it is determined that the formatter cannot be activated, and the operations after
[0047]
On the other hand, if the condition of step 1002 is not satisfied, it is next checked whether the conditions of PSN ≧ GPSN and PSN <(GPSN + DSC) are satisfied (step 1003). If this condition is satisfied, it is determined that the formatter can be activated, and the following calculation is performed to calculate DBA and DSC2 (step 1004).
If the condition of
[0048]
Next, the obtained DSC2 and DSC_WK are compared (step 1009). If DSC2 is greater than DSC_WK, the value of DSC_WK is set to DSC2 (step 1010), and the
[0049]
When the seek is completed at PSN 070h, it is determined that the formatter can be activated because the condition of step 1006 is satisfied, and DBA and DSC2 are calculated as follows.
Then, as shown in FIG. 6, data for 60 h sectors are written on the
[0050]
The
[0051]
Next, it is checked whether DSC_WK has become 00h (step 1014). If DSC_WK is not 00h, it is checked whether DSC2 is 00h (step 1015). If DSC2 is not 00h, the operations in and after step 1012 are repeated.
[0052]
If DSC2 is 00h, the
[0053]
When DSC2 is set to 60h, DSC_WK becomes 80h when DSC2 becomes 00h. While the PSN is between 0D0h and 0EFh, it is determined that the formatter cannot be activated because neither of the conditions in
[0054]
Next, when the
[0055]
Next, when the
[0056]
According to such a formatter start / stop determination method, as in the case of the first configuration of the
(1) Set the SPT on the target track.
(2) A head buffer address (DSTARTn), a number of sectors (DSCn), and a PSN value (GPSNn) corresponding to the head data of a plurality of data actually written / read are set.
(3) The total number of processing sectors (TDSC) obtained by adding up a plurality of DSCn is set, and the formatter is activated.
[0057]
In this case, the parameters of the formatter start /
[0058]
Here, as shown in FIG. 12, a write command for three discontinuous write target areas WT-1, WT-2, and WT-3 on track n is issued from the host device and transferred from the host device. An operation when write data is stored in three discontinuous areas on the
[0059]
The
[0060]
The SPT of track n is 100h. LSN00h representing
[0061]
The write data of WT-1 is stored in the BA110000h-117FFFh area on the
Track n:
SPT = 100h
LSN00h = LBA5000h
PSN00h = LBA5020h (SKEW = 20h)
Write target:
WT-1 LBA5010h-504Fh, SC = 40h
WT-2 LBA5080h-50AFh, SC = 30h
WT-3 LBA50C0h-50EFh, SC = 30h
Buffer Data:
WT-1 BA110000h-117FFFh
WT-2 BA100000h-105FFFh
WT-3 BA120,000h-125FFFh
In this case, parameters as shown in FIG. 13 are set in the formatter start /
[0062]
Specifically, DSC2 and TDSC are compared in
[0063]
According to such a formatter start / stop determination method, even when a plurality of data in which the BA on the
[0064]
Next, an operation for reading data from the
[0065]
For example, as shown in FIG. 15, when the seek is completed at the
[0066]
As described above, if the head is on any sector in the read request range, the formatter is immediately activated and the read process is started. Therefore, the rotation waiting time of the
[0067]
Unlike the write operation, during a read operation, it is possible to read a sector in a range wider than the range requested by the host device and hold it as cache data.
[0068]
For example, as shown in FIG. 16, if the read
[0069]
Also, by setting the start position of the required range to the start position (LSN00h) on the track and setting the required number of sectors to the total number of sectors (SPT) on the track, as shown in FIG. It can also be read.
[0070]
(Supplementary note 1) An access control device for controlling access of at least one of writing data to a disk medium and reading data from the disk medium, wherein the disk is rotated via a head during rotation of the disk medium. An access means for performing an access operation on the medium;
It is checked whether or not the current position of the head on the disk medium is within the access target area on the disk medium, and when the current position is within the access target area, the disk medium rotates to Activation determination means for activating the access means without waiting for the time until the head position of the access target area reaches the current position;
An access control device comprising:
[0071]
(Additional remark 2) It further has the buffer address calculation means which calculates the buffer address corresponding to the said present position in the buffer which stores temporarily the data written in the said disk medium, and the data read from this disk medium, The activation determination unit checks whether or not the current position is within the access target area by comparing the calculated buffer address with the start address and the end address of the data on the buffer. The access control apparatus according to
[0072]
(Supplementary Note 3) The head address of the buffer is calculated by subtracting a value corresponding to the difference between the minimum logical sector position in the track where the access target area exists and the head position of the access target area from the head address of the data. And a head / final address calculating means for calculating a final address of the buffer by adding a value corresponding to the number of sectors of the track to the head address of the buffer, and the buffer address calculating means The access control apparatus according to
[0073]
(Additional remark 4) The said starting determination means checks whether the said present position exists in this access object area | region using the information of the head position of the said access object area | region, and a magnitude | size. The access control device described.
[0074]
(Supplementary Note 5) When the current position is within the access target area, the activation determining unit is configured to temporarily store data to be written to the disk medium and data read from the disk medium. The access control device according to appendix 4, wherein the buffer address on the buffer corresponding to the current position is calculated using the start address of the access target area and the information on the start position of the access target area.
[0075]
(Supplementary Note 6) When access to a plurality of discontinuous access target areas on the same track of the disk medium is requested, the activation determination unit determines whether the current position of each of the plurality of access target areas is The access control apparatus according to
[0076]
(Appendix 7) An access control method for controlling an information recording / reproducing apparatus that performs at least one access operation of writing data to the disk medium and reading data from the disk medium through a head during rotation of the disk medium Because
Check whether the current position of the head on the disk medium is within an access target area on the disk medium,
When the current position is in the access target area, the access operation is performed without waiting for a time until the disk medium rotates and the head position of the access target area reaches the current position.
An access control method characterized by the above.
[0077]
【The invention's effect】
According to the present invention, in an information recording / reproducing apparatus such as a magnetic disk apparatus, when writing / reading user data, there is a rotation waiting time generated by the relative positional relationship between the head position and the sector position on the disk medium. The performance of the information recording / reproducing apparatus can be expected to be reduced.
[Brief description of the drawings]
FIG. 1 is a principle diagram of an access control apparatus according to the present invention.
FIG. 2 is a configuration diagram of a hard disk drive.
FIG. 3 is a block diagram of a first disk controller.
FIG. 4 is a diagram showing first write data.
FIG. 5 is an operation flowchart of a first formatter start / stop determination unit;
FIG. 6 is a diagram showing a first write operation.
FIG. 7 is a diagram showing a second write operation.
FIG. 8 is a configuration diagram of a second disk controller.
FIG. 9 is a diagram illustrating a first parameter.
FIG. 10 is an operation flowchart of a second formatter start / stop determination unit;
FIG. 11 is a configuration diagram of a third disk controller.
FIG. 12 is a diagram showing second write data.
FIG. 13 is a diagram illustrating a second parameter.
FIG. 14 is a diagram illustrating a read request range.
FIG. 15 is a diagram illustrating a first read operation.
FIG. 16 is a diagram illustrating a second read operation.
FIG. 17 is a diagram illustrating a third read operation.
FIG. 18 is a diagram showing a waiting for rotation of a disk medium.
FIG. 19 is a diagram showing discontinuous data writing processing;
[Explanation of symbols]
100, 203 disk media
101 Start position of target sector
102, 103, 104, 105, 404, 1206, 1501 Head position
201 Access means
202 Start determination means
205 Access target area
206 Start position of access target area
211 Microprocessor
212 Hard disk controller
204, 213 heads
214 discs
215 Spindle motor
221 buffer
222 disk controller
223 Buffer control unit
224 Host controller
225 Head position controller
226 Motor speed controller
301 BTOP / BEND calculator
302 DBA calculator
303, 802 SP generator
304, 801 Formatter start / stop decision unit
305, 803 formatter
401, 1201 Logical INDEX
402, 1202, 1205, 1208 Write start position
403, 1203 Physical INDEX
405, 1204, 1207, 1209 Write end position
1401 Starting point
1402 End point
1601 Reading start position
1602 Reading end position
Claims (5)
前記ディスク媒体上における前記ヘッドの現在位置が該ディスク媒体上のアクセス対象領域内にあるか否かをチェックし、該現在位置が該アクセス対象領域内にあるとき、該ディスク媒体が回転して該アクセス対象領域の先頭位置が該現在位置に到達するまでの時間を待たずに前記アクセス手段を起動する起動判定手段と
を備えることを特徴とするアクセス制御装置。An access control device that controls access to at least one of writing data to a disk medium and reading data from the disk medium, wherein the disk medium is rotated while the disk medium is being rotated. Access means for performing
It is checked whether or not the current position of the head on the disk medium is within the access target area on the disk medium, and when the current position is within the access target area, the disk medium rotates to An access control apparatus, comprising: an activation determination unit that activates the access unit without waiting for a time until the head position of the access target area reaches the current position.
前記ディスク媒体上における前記ヘッドの現在位置が該ディスク媒体上のアクセス対象領域内にあるか否かをチェックし、
前記現在位置が前記アクセス対象領域内にあるとき、前記ディスク媒体が回転して該アクセス対象領域の先頭位置が該現在位置に到達するまでの時間を待たずに前記アクセス動作を行う
ことを特徴とするアクセス制御方法。An access control method for controlling an information recording / reproducing apparatus that performs at least one access operation of writing data to the disk medium and reading data from the disk medium via a head during rotation of the disk medium,
Check whether the current position of the head on the disk medium is within an access target area on the disk medium,
When the current position is in the access target area, the access operation is performed without waiting for a time until the disk medium rotates and the head position of the access target area reaches the current position. Access control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003208437A JP2005071399A (en) | 2003-08-22 | 2003-08-22 | Device and method for access control of information recording and reproducing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003208437A JP2005071399A (en) | 2003-08-22 | 2003-08-22 | Device and method for access control of information recording and reproducing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005071399A true JP2005071399A (en) | 2005-03-17 |
Family
ID=34401721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003208437A Pending JP2005071399A (en) | 2003-08-22 | 2003-08-22 | Device and method for access control of information recording and reproducing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005071399A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010118112A (en) * | 2008-11-12 | 2010-05-27 | Toshiba Storage Device Corp | Memory system and control method of the same |
-
2003
- 2003-08-22 JP JP2003208437A patent/JP2005071399A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010118112A (en) * | 2008-11-12 | 2010-05-27 | Toshiba Storage Device Corp | Memory system and control method of the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4469906B2 (en) | Magnetic disk device and data refresh method in the same | |
JP2003131942A (en) | Apparatus and method for controlling cache of hard disk devices | |
JP2007241927A (en) | Data storage device and method | |
JP2007304691A (en) | Disk device and read-ahead control method for rotary type memory device | |
JPH06289999A (en) | Disk control system | |
JPH07334426A (en) | Information recording and reproducing device and data caching method | |
JP3745552B2 (en) | Information storage device | |
US6310743B1 (en) | Seek acoustics reduction with minimized performance degradation | |
JPH11110139A (en) | Method and device for reading data | |
US6725395B2 (en) | Method for assigning alternative sector, method for reading data, disk drive apparatus, and apparatus for writing/reading AV data | |
KR19980029917A (en) | How to improve read cache performance on magnetic disk drives | |
JP2002304823A (en) | Reordering controller, reordering method and storage device | |
JPWO2009060500A1 (en) | Medium storage device read / write processing method and medium storage device | |
US6957300B2 (en) | Reducing delay of command completion due to overlap condition | |
JPH076088A (en) | Information storage device | |
JP2005071399A (en) | Device and method for access control of information recording and reproducing device | |
JP2006185162A (en) | Data storage device and control method for the same | |
JP2845658B2 (en) | Access control device for data recording / reproducing device | |
JPH11212733A (en) | External storage system | |
JP2009230789A (en) | Memory unit, and control method for the same | |
JP2007011661A (en) | Disk unit, and cache memory control method therefor | |
JPH0944315A (en) | Memory device and its method | |
JPH10171713A (en) | Disk storage device and method for controlling cache applied to the same device | |
JP2003199014A (en) | Disk storage device and command processing method | |
JP2002342038A (en) | Disk device controlling execution order of commands |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060525 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080331 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080513 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080916 |