説明

記録媒体制御装置、及びその方法

【課題】高密度化と書き込み速度の両立を図る。
【解決手段】実施の形態にかかる記録媒体制御装置は、記録媒体と、受付手段と、読み込み手段と、書込手段と、を備えている。記録媒体は、複数のトラックで構成され且つ書き込み単位であるトラック群を、複数含む書込領域と、データを一時的に格納する待避領域と、を有する。入力手段は、データの書き込み命令を受け付ける。読込手段は、前記待避領域に格納されたデータと、前記複数のトラック群のうち第1のトラック群のデータと、を読み込む。書込手段は、前記書き込み命令で受け付けた前記データを前記待避領域に書き込み、前記待避領域から読み込まれたデータと、前記第1のトラック群から読み込まれたデータと、をマージしたデータを、隣接するトラック同士を部分的に重複させるシングル記録方式を用いて、前記複数のトラック群のうち第2のトラック群の各トラックに書き込む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、シングル記録方式で記録媒体に書き込みする記録媒体制御装置、及びその方法に関する。
【背景技術】
【0002】
従来から、磁気ディスクを有するハードディスクドライブ(HDD)が利用されている。近年、ハードディスクは、さらに大容量化していく傾向にある。大容量化のための記録密度の向上のための方策としては、トラック幅を短縮し、トラック密度を向上させる技術が開示されている。
【0003】
さらに、トラック密度を向上させるために、隣接トラックが部分的に重ね書きされる程度までトラック幅を狭める技術が提案されている。この記録技術は、シングル記録技術、又は瓦記録技術と称されることがある。当該技術を用いると、部分的に重ね書きされた隣接トラックのデータが消失する。このため、複数のトラックをまとめたトラック群単位で書き込みを行う必要がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−338731号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載された技術では、トラック群単位の書き込みが必要なため、データの書き込み時間が長くなる。
【0006】
本発明は、上記に鑑みてなされたものであって、高密度化と書き込み速度の両立を図ることを目的とする。
【課題を解決するための手段】
【0007】
実施の形態にかかる記録媒体制御装置は、記録媒体と、受付手段と、読込手段と、書込手段と、を備えている。記録媒体は、複数のトラックで構成された書き込み単位であるトラック群を含む書込領域と、データを一時的に格納する待避領域と、を有する。受付手段は、データの書き込み命令を受け付ける。読込手段は、前記待避領域に格納されたデータと、第1の前記トラック群のデータと、を読み込む。書込手段は、前記書き込み命令で受け付けた前記データを前記待避領域に書き込み、前記待避領域から読み込まれたデータと、第1の前記トラック群から読み込まれたデータと、をマージしたデータを、隣接するトラック同士を部分的に重複させるシングル記録方式を用いて、第2のトラック群の各トラックに書き込む。
【図面の簡単な説明】
【0008】
【図1】図1は、本実施の形態にかかる磁気ディスク装置の斜視図である。
【図2】図2は、本実施の形態にかかる磁気ディスク装置の電気的ハードウェア構成を示すブロック図である。
【図3】図3は、本実施の形態にかかる磁気ディスク装置のCPUによるプログラムの実行で実現されるソフトウェア構成を示したブロック図である。
【図4】図4は、本実施の形態にかかる書込部が書き込む磁気ディスクの記録領域を模式的に示した図である。
【図5】図5は、本実施の形態にかかる受付部がデータの更新命令を受け付けた場合、書込部が待避領域に書き込む処理を模式的に示した図である。
【図6】図6は、本実施の形態にかかる磁気ディスク装置における、待避領域に格納されたデータを、書込領域のトラック群に書き込む処理を模式的に示した図である。
【図7】図7は、本実施の形態にかかる磁気ディスク装置における、書き込み命令に伴う書き込み処理の手順を示すフローチャートである。
【図8】図8は、本実施の形態にかかる磁気ディスク装置における、待避領域に格納されたデータを、トラック群に書き込む際の処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下に、記録媒体制御装置、及びその方法を適用した磁気ディスク装置の一実施の形態を図面に基づいて詳細に説明する。また、以下に説明する実施形態により本発明が限定されるものではない。
【0010】
本実施の形態にかかる磁気ディスク装置の機構構成について、図1を用いて説明する。図1は、本実施の形態にかかる磁気ディスク装置の斜視図である。
【0011】
図1に示す磁気ディスク装置1は、既知のハードディスクドライブと同様に、主な機構構成として、筐体10の内部に、磁気ディスク11と、磁気ディスク11を回転させるスピンドルモータ12と、磁気ヘッド(図1にて図示せず)を組み込んだヘッドスライダ13と、サスペンション14およびアクチュエータアーム15を含み、ヘッドスライダ13を支持するヘッドサスペンションアッセンブリと、ヘッドサスペンションアッセンブリのアクチュエータとしてのボイスコイルモータ(VCM)16とを備えている。
【0012】
磁気ディスク11は、スピンドルモータ12によって回転される。ヘッドスライダ13には、記録ヘッドと再生ヘッドを含む磁気ヘッドが組み込まれている(図1にていずれも図示せず)。アクチュエータアーム15は、ピボット17に回動自在に取り付けられており、このアクチュエータアーム15の一端にはサスペンション14が取り付けられる。ヘッドスライダ13は、このサスペンション14に設けられたジンバルを介して弾性支持されている。アクチュエータアーム15の他端にはボイスコイルモータ(VCM)16がある。このボイスコイルモータ(VCM)16がアクチュエータアーム15をピボット17周りに回転させ、磁気ヘッドを磁気ディスク11の任意の半径位置上に浮上した状態で位置決めする。
【0013】
続いて、本実施の形態にかかる磁気ディスク装置1の電気的ハードウェア構成について、図2を用いて説明する。図2は、本実施の形態にかかる磁気ディスク装置1の電気的ハードウェア構成を示すブロック図である。
【0014】
図2において、磁気ディスク11は、前述のスピンドルモータ12(図1)により、回転軸を中心に所定の回転速度で回転される。スピンドルモータ12の回転は、モータドライバ21により駆動される。
【0015】
磁気ヘッド22は、それに備わる記録ヘッドおよび再生ヘッドにより、磁気ディスク11に対してデータの書き込みや読み出しを行う。また前述のように、磁気ヘッド22は、アクチュエータアーム15の先端にあって、モータドライバ21によって駆動されるボイスコイルモータ(VCM)16により、磁気ディスク11の半径方向に移動される。磁気ディスク11の回転が停止しているときなどは、磁気ヘッド22は、ランプ23上に退避される。
【0016】
ヘッドアンプ24は、磁気ヘッド22が磁気ディスク11から読み取った信号を増幅して出力し、RDC(Read Write Channel)25に供給する。また、ヘッドアンプ24は、RDC25から供給された、磁気ディスク11にデータを書き込むための信号を増幅して、磁気ヘッド22に供給する。
【0017】
RDC25は、後述するHDC31から供給される、磁気ディスク11に書き込むためのデータをコード変調してヘッドアンプ24に供給する。また、RDC25は、磁気ディスク11から読み取られヘッドアンプ24から供給された信号をコード復調してディジタルデータとしてHDC31へ出力する。
【0018】
CPU26には、動作用メモリであるSRAM(Random Access Memory)27、不揮発性メモリであるFlash ROM(Read Only Memory)28および一時記憶用のバッファRAM29が接続されている。このCPU26は、Flash ROM28および磁気ディスク11に予め記憶されたファームウェア(当該ファームウェアは、初期ファームウェアおよび通常動作に用いる制御用ファームウェアである。なお、制御用ファームウェアには、後述する磁気ディスク制御プログラムが含まれている)に従って、この磁気ディスク装置1の全体的な制御を行う。なお、起動時に最初に実行される初期ファームウェアは、Flash ROM28に記憶されている。また、通常動作に用いる制御用ファームウェアは、磁気ディスク11に記録されており、初期ファームウェアに従った制御により、磁気ディスク11から一旦バッファRAM29に読み出され、その後SRAM27に格納される。
【0019】
HDC(Hard Disk Controller)31は、I/Fバスを介してホストコンピュータ(Host)40との間で行われるデータの送受信の制御や、バッファRAM29の制御、ならびに、記録データに対するデータの誤り訂正処理などを行う。また、バッファRAM29は、ホストコンピュータ40との間で送受信されるデータのキャッシュとして用いられる。さらに、バッファRAM29は、磁気ディスク11から読み出されるデータ、磁気ディスク11に書き込むデータ、又は磁気ディスク11から読み出される制御用ファームウェアを、一時記憶するためなどに用いられる。
【0020】
図3は、磁気ディスク装置1のCPU25による磁気ディスク制御プログラムの実行で実現されるソフトウェア構成を示したブロック図である。図3に示すように、磁気ディスク装置1のCPU26は、Flash ROM28に格納された制御用ファームウェアに含まれる、磁気ディスク制御プログラムを起動させることで、受付部301と、書込部302と、読込部303と、マージ部304と、によるブロック構成を実現する。
【0021】
受付部301は、磁気ディスク装置1に接続されたホスト40から、データの書き込み命令又はデータの読み込み命令を受け付ける。このデータの書き込み命令は、例えば、磁気ディスク11の1トラック内に含まれるセクタに格納可能なデータサイズのデータの書き込み命令や、容量の大きいデータによるシーケンシャルな書き込み命令などとする。
【0022】
書込部302は、磁気ディスク11に対してデータの書き込み制御を行う。本実施の形態にかかる書込部302が書き込み制御を行う際、書込を行う磁気ヘッド22の主磁極幅よりも狭いトラックに対して書き込みを行う必要がある。
【0023】
そこで、本実施の形態に係る書込部302は、シングル(Shingle)記録方式による書込を行う。シングル(Shingle)記録方式とは、記録ヘッドをトラック方向に微小量で走査しながら重ね書きを行う方式とする。このシングル(Shingle)記録方式では、記録ヘッドの主磁極幅より、磁気ディスク11のトラックの幅が狭いため、隣接するトラック同士で部分的な重ね書きが行われる。このシングル記録方式を適用した場合、トラックの幅を狭くできるので、媒体の高密度化が可能となる。
【0024】
このシングル記録方式では、隣接するトラック同士で部分的な重ね書きが行われるため、当該隣接トラックの片方のデータが消失する。このため、あるトラックについてデータの更新を行う場合であっても、当該トラックのみを書き換えることはできず、複数のトラックを単位として、まとめて書き換える必要がある。本実施の形態においては、この複数のトラックからなる単位を、トラック群と称す。このトラック群同士の間は空き領域が設けられているため、あるトラック群に書き込みを行う際、隣接する他のトラック群に重ね書きされることは抑止される。
【0025】
図4は、書込部302が書き込む磁気ディスク11の記録領域を模式的に示した図である。図4に示すように磁気ディスク11は、通常の記録領域となる書込領域402と、データの一時的な格納領域となる待避領域401と、で構成されている。
【0026】
書込領域402は、複数のトラック群(例えば、トラック群403)で構成されている。上述したように、各トラック群は、書き込みを行うヘッドの主磁極幅より幅の狭い、複数のトラックで構成されている。トラック群に含まれているトラック数について制限はないが、下記に示す図ではトラック数を“100”として説明している。
【0027】
また、書込領域402には、論理アドレスが割り当てられたトラック群だけなく、論理アドレスが割り振られていないトラック群も含まれている。この論理アドレスが割り当てられていないトラック群を、本実施の形態ではスペアトラック群と称す。スペアトラック群は、書込領域402内に配置される数に制限はなく、複数配置されても良い。ところで、本実施の形態にかかる磁気ディスク11では、当該磁気ディスク11に含まれるトラックが、同心円状にいくつかのHead/Zoneに分けられている。そして、トラックのセクタの数は、Head/Zone毎に異なっている。具体的には、外周に近いHead/Zoneほど、1トラック当たりのセクタの数が増加する。つまり、Head/Zone毎にトラック内の容量に差異がある。そこで、本実施の形態にかかる磁気ディスク11では、Head/Zone毎に1個のスペアトラック群を備えることとする。これにより、Head/Zone毎にトラックの容量が異なる場合でも、Head/Zone毎にスペアトラックが配置されているため、1トラックに書き込まれた全てのデータを、1個のスペアトラックに書き込むことができる。
【0028】
待避領域401は、書込領域402に書き込むべきデータを一時的に格納する。例えば、磁気ディスク11のプラッタ一枚あたり500GB〜1TBの容量を有する場合、待避領域401を数G単位で設けることとする。
【0029】
待避領域401を磁気ディスク11上に設けた理由について説明する。シングル記録方式による書き換えでは、トラック群全体を書き換える必要があるため、従来の書き換えと比較して、所要時間が大幅に大きい。そこで、本実施の形態にかかる磁気ディスク装置1においては、磁気ディスク11上に一時的な待避領域401を設け、書込部302が、書き込み命令に従って書き込む際、書込領域402のトラック群ではなく、データを一時的に当該待避領域401に書き込むこととした。これにより、書き込み処理を行う際の所要時間を短縮している。
【0030】
なお、本実施の形態にかかる待避領域401は、磁気ディスク11の外側に設けられている。これにより、書き込み及び読み込み速度を向上できる。
【0031】
待避領域401は、シングル記録様式で書き込むためのトラック幅が狭いトラック群でも良い。また、待避領域401は、磁気ヘッド22が重ね書きを行わずに書き込み可能な、通常のトラック幅の集まりでもよい。
【0032】
読込部303は、受付部301が読み込み命令を受け付けた場合や、磁気ディスク11に書き込まれたデータの更新を行う場合に、待避領域401に含まれているデータと、書込領域402に含まれているデータと、のいずれか1つ以上を読み込む。
【0033】
図5は、受付部301がデータの更新命令を受け付けた場合、書込部302が、待避領域401に書き込む処理を模式的に示した図である。図5に示す例では、受付部301がトラック群501のトラック2のセクタ503に格納するデータの書込命令を受け付けた場合とする。そして、シングル記録様式でセクタ503の位置を更新する場合、トラック群501全体を更新する必要がある。これでは、処理に時間がかかる。
【0034】
そこで、本実施の形態では、受付部301が、ホスト40から、すでに書き込まれたトラック群に含まれる一部のトラック又はセクタ(例えばセクタ503)についての更新命令を受け付けた場合、書込部302は、待機領域401に含まれるトラック又はセクタ(例えばセクタ504)に更新するデータを書き込むこととする。
【0035】
そして、書込部302は、当該書込処理の後、書込対象のトラック又はセクタ(例えばセクタ503)に割り当てられていた論理アドレスを、待避領域401のトラック又はセクタ(例えば、セクタ504)に割り当て直す。当該処理により、受付部301が受け付けた更新命令に基づく書き込み処理を終了する。
【0036】
上述した処理が継続して行われると、待避領域401の容量が圧迫される。そこで、待避領域401の容量の圧迫を避けるために、本実施の形態にかかる磁気ディスク装置1では、待避領域401に書き込まれたデータを、書込領域402内に書き換える。この書き換えは、受付部301が読込命令や書込命令に応じた処理を実行する時間を除くアイドル時間中に行う。
【0037】
このアイドル時間の書き換えでは、待避領域401に格納されていたデータと、当該データの書き込み対象であったトラック群のデータと、のマージを行うこととする。つまり、本実施の形態にかかる磁気ディスク装置1では、アイドル時間にマージを行うことで、ホスト40からの読込命令や書込命令に応じた処理の実行を阻害することがないため、当該処理の実行の遅延を抑止できる。
【0038】
マージ部304は、(図示しない)バッファを用いて、アイドル時間中に、読込部303が書込領域402から読み込んだトラック群のデータと待避領域401から読み込んだデータとをマージする。
【0039】
そして、書込部302が、マージ部304によりマージされたデータを、読込部303が読み込んだトラック群と別に設けられたスペアトラック群の各トラックに書き込む。
【0040】
図6は、本実施の形態にかかる磁気ディスク装置1における、待避領域401に格納されたデータを、書込領域402のトラック群に書き込む際の処理を模式的に示した図である。図6は、図5で示した処理によって待避領域401に含まれているセクタ504に書き込まれたデータと、トラック群501のデータと、をマージ部304がマージした後、書込部302がスペアトラック群に書き込む例を示している。
【0041】
図6に示すように、読込部303がトラック群501から読み込んだデータを、書込部302が、スペアトラック群601に書き込み処理していく。その際に、読込部303は、待避領域401に含まれているセクタ504のデータも読み込む。そして、マージ部304が、読込部303が読み込んだトラック群501のトラック2のデータに対して、待避領域401のセクタ504から読み込んだデータをマージする。そして、書込部302が、マージされたデータを、スペアトラック群601に書き込む。
【0042】
そして、トラック群の書き込みが完了した場合、書込部302が、書き換え対象のトラック群501に割り当てられていた論理アドレスをスペアトラック群601に割り振り、元の書き換えトラック群501の論理アドレスを削除することで、元の書き換えトラック群501を新たなスペアトラック群とする。
【0043】
図6に示す処理では、書き込み制御が行われるのはスペアトラック群601のみであり、元のトラック群501について書き換えは行わない。このため、常にトラック群501内のデータは保護されており、不意の電源遮断が発生しても、データが消失することはない。また、図6に示す処理中に電源遮断が生じた場合、復旧処理は特に必要ではない。仮に復旧処理がなされた場合、スペアトラック群601に対して書き込まれたデータを破棄し、書込部302が、スペアトラック群601の先頭から再び書き込みを開始すればよい。
【0044】
ところで、本実施の形態にかかる磁気ディスク装置1は、シングル記録方式で書き込みを行う際に、磁気ディスク11上の待避領域401を用いるが、この待避領域401は、容量が有限のため、容量圧迫を回避する必要がある。
【0045】
受付部301が受け付けた書き込み命令全てが比較的小さなブロック単位の書き込みであれば、全て待避領域401に書き込んでも、待避領域401の圧迫が小さいため、特に問題は生じない。しかし、大規模なファイルコピー等で見られるシーケンシャルな書き込み命令の場合、待避領域401の圧迫は大きくなる。待避領域401に書き込まれたデータの量が増大すると、シングル記録方式による複数のトラックのデータの書き込みが頻発し、性能の大幅な低下がみられるようになる。
【0046】
そこで、本実施の形態にかかる磁気ディスク装置1においては、受付部301がシーケンシャルな書き込み命令を受け付けた場合、書込部302が、書き込み命令を受け付けた当初、当該書き込み命令に基づくデータを待避領域401に書き込む。そして、シーケンシャルな書き込み先として示された論理アドレスが、そもそもの書き込み対象であったトラック群から、次のトラック群に変更されるタイミングで、書込部302は、それ以降、データを、スペアトラック群に直接書き込む。そして、スペアトラック群の書き込みが終了した場合には、当該スペアトラック群に論理アドレスを割り当て、そもそも書き込み対象であったトラック群を新たなスペアトラック群に変更する。そして、書き込み命令が継続するようであれば、さらに、書込部302は、変更された新たなスペアトラック群に対して、書き込みを継続する。当該処理を繰り返すことで、シーケンシャルな書き込み命令を実現できる。
【0047】
そして、上述した処理により、シーケンシャルな書き込み命令による書き込みが終了した後、磁気ディスク装置1では、アイドル時間中に、書き込み当初に待避領域401に格納されたデータと、当該データの書き込み対象であったトラック群と、のマージを行う。
当該マージは、図6で示した処理と同様とする。このように、シーケンシャルな書き込み命令の場合に、途中から、スペアトラック群に直接書き込むことで、待避領域401の容量圧迫を防ぐことができる。
【0048】
さらに、第1の実施の形態で示した磁気ディスク装置1は、マルチスレッドの書き込みであっても、対応させることもできる。つまり、磁気ディスク11では、Head/Zone毎にスペアトラック群を備えることとしている。マルチスレッドによる書き込みとして、異なるHead/Zoneの各スペアトラックを用いるものであれば、書込部302は、複数のトラック群に対する同時書き込みを可能とする。
【0049】
また、仮に、マルチスレッドによる書き込み命令の対象が同一のHead/Zoneである場合でも、磁気ディスク11内でHead/Zoneを問わず利用可能なスペアトラック群を、トラックの容量が最大となる位置に設けることで対応できる。
【0050】
次に、本実施の形態にかかる磁気ディスク装置1における、書き込み命令に伴う書き込み処理について説明する。図7は、本実施の形態にかかる磁気ディスク装置1における上述した処理の手順を示すフローチャートである。
【0051】
まず、受付部301が、ホスト40からのWriteコマンド(書き込み命令)を受け付ける(ステップS701)。そして、受付部301が、ホスト40から、書き込み対象となるデータの転送を受け付ける(ステップS702)。当該データは、トラック群全体を書き換えるものではなく、トラック群に含まれるトラック、又はセクタに格納可能なサイズのデータとする。
【0052】
このようなデータサイズの書き込み命令の場合、書込部302は、当該データを格納する待避領域の物理位置を算出する(ステップS703)。なお、待避領域の物理位置は、どのような位置でもよく、書き込み要求に応じてシーケンシャルに位置を算出しても良い。このように、書込部302は、書き込み命令で指示された書き込み先と関係のない、退避領域内の位置を算出する。
【0053】
そして、書込部302は、磁気ディスク11上の、算出された物理位置に対して、データを書き込む(ステップS704)。そして、書込部302は、書き込みが終了したか否か判定する(ステップS705)。書き込みが終了していないと判定した場合(ステップS705:No)、ステップS704による書き込みを継続する。
【0054】
一方、書込部302は、書き込みが終了したと判定した場合(ステップS705:Yes)、書込部302は、書き込みを行った待避領域に対して論理アドレスを割り当てる一方、書き込み命令で指示された書き込み先の、トラック群内の論理アドレスについて参照されないよう削除し、処理を終了する。
【0055】
次に、本実施の形態にかかる磁気ディスク装置1における、待避領域401に格納されたデータを、トラック群に書き込む際の処理について説明する。図8は、本実施の形態にかかる磁気ディスク装置1における上述した処理の手順を示すフローチャートである。この図8の示すフローチャートは、受付部301が読込命令や書込命令を受け付けてないアイドル時間中に行われることとする。これにより、図8に示す処理に伴う、読み込みや書き込み処理の遅延を抑止する。
【0056】
まず、読込部303が、読み込み対象となるトラック群を設定する(ステップS801)。読み込み対象となるトラック群の基準は、例えば、当該トラック群とマージできるデータが、待避領域中に格納されているか否か等とする。
【0057】
そして、読込部303が、設定されたトラック群に含まれているトラックのデータを読み込む(ステップS802)。そして、読込部303は、設定されている論理アドレスに基づいて、読み込んだトラックに対してマージすべきデータがあるか否か判定する(ステップS803)。
【0058】
そして、読込部303は、マージすべきデータがないと判定した場合(ステップS803:No)、特に処理を行わず、ステップS806に進む。
【0059】
一方、読込部303が、マージすべきデータがあると判定した場合(ステップS803:Yes)、ステップS802で読み込まれたトラックのデータにマージされるべきものとして、待避領域に一時的に格納されているデータを読み込む(ステップS804)。
【0060】
そして、マージ部304が、ステップS802で読み込んだトラックのデータと、ステップS804で読み込んだデータと、をマージする(ステップS805)。
【0061】
その後、書込部302が、スペアトラック群のトラックにデータを書き込む(ステップS806)。書き込まれるデータは、マージすべきデータがあった場合、マージされたデータであり、マージすべきデータがない場合、ステップS802で読み込まれたデータとする。
【0062】
そして、書込部302が、スペアトラック群に含まれる全てのトラックについて書き込みを終了したか否か判定する(ステップS807)。書込部302が、書き込みが終了していないと判定した場合(ステップS807:No)、ステップS802から再びトラックの読み込みを行う。
【0063】
一方、書込部302が、スペアトラック群に含まれる全てのトラックについて書き込みが終了したと判定した場合(ステップS807:Yes)、書込部302は、読み込み元のトラック群を新たなスペアトラック群に変更すると共に、書き込まれたスペアトラック群を、読み込み可能な通常のトラック群に変更するよう、論理アドレスを変更し、処理を終了する(ステップS808)。その際、待避領域に割り当てられていた論理アドレスについても変更する。
【0064】
上述した処理手順により、一時的に待避領域に格納されていたデータが、通常のトラック群内に含めることが可能となった。
【0065】
本実施の形態にかかる磁気ディスク装置1においては、上述した構成でデータの読み書きを行うこととした。これにより、磁気ディスク11がシングル記録方式用でのデータ記録を行う場合であったとしても、データの書き換え時間を短縮できる。さらに、トラック群からスペアトラック群にデータをコピーする際に、書き換えを行うのがスペアトラック群のみのため、不意に電源遮断が行われた場合でも、データの破損を抑止できる。このように、磁気ディスク装置1は、実動作環境に適した手法を適用している。
【0066】
本実施の形態にかかる磁気ディスク装置1では、上述したように書き込み命令、特にセクタなどの小さい単位の書き込み命令の場合に、データを待避領域401に待避させてから、トラック群に書き込むこととした。このため、磁気ディスク装置1では、トラック群全体の書き込み時間より短い時間で、書き込みを終了できる。したがって、トラック群を構成するトラックの数を、従来と比べて多くすることが容易となる。
【0067】
本実施の形態にかかる磁気ディスク装置1では、シングル記録方式で書き込みを行う際に、スペアトラック群を用いている。そして、トラック群のデータと、待避領域のデータとを、マージした上で、スペアトラック群に対して書き込みを行うことで、データの重ね書き等による消失が抑止される。これにより、不意な電源遮断にも対応できる。
【0068】
本実施の形態にかかる磁気ディスク装置1では、シーケンシャルライト時の書き込み先を待避領域から、スペアトラック群に切り替えることとした。これにより、待避領域の容量圧迫を避け、性能の低下を防ぐことができる。
【0069】
さらには、本実施の形態にかかる磁気ディスク装置1では、スペアトラック群を複数備えることで、マルチスレッドによる書き込みにも対応できる。さらに、磁気ディスク11のHead/Zone毎に共通のスペアトラック群を有することで、汎用性を持たせることができる。
【0070】
なお、本実施の形態にかかる磁気ディスク装置1のCPU26で実行される磁気ディスク制御プログラムは、Flash ROM28に予め組み込まれて提供される。
【0071】
本実施の形態にかかる磁気ディスク装置1のCPU26で実行される磁気ディスク制御プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0072】
さらに、本実施の形態にかかる磁気ディスク装置1のCPU26で実行される磁気ディスク制御プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施の形態にかかる磁気ディスク装置1のCPU26で実行される磁気ディスク制御プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0073】
本実施の形態にかかる磁気ディスク装置1のCPU26で実行される磁気ディスク制御プログラムは、上述した各部(受付部、書込部、読込部、マージ部)を含むモジュール構成となっており、実際のハードウェアとしてはCPU26が上記Flash ROM28から磁気ディスク制御プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、受付部、書込部、読込部、マージ部が主記憶装置上に生成されるようになっている。
【0074】
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【0075】
1 磁気ディスク装置
11 磁気ディスク
301 受付部
302 書込部
303 読込部
304 マージ部
401 待避領域
402 書込領域
403 トラック群

【特許請求の範囲】
【請求項1】
複数のトラックで構成された書き込み単位であるトラック群を含む書込領域と、データを一時的に格納する待避領域と、を有する記録媒体と、
データの書き込み命令を受け付ける受付手段と、
前記待避領域に格納されたデータと、第1の前記トラック群のデータと、を読み込む読込手段と、
前記書き込み命令で受け付けた前記データを前記待避領域に書き込み、前記待避領域から読み込まれたデータと、第1の前記トラック群から読み込まれたデータと、をマージしたデータを、隣接するトラック同士を部分的に重複させるシングル記録方式を用いて、第2のトラック群の各トラックに書き込む書込手段と、
を備えることを特徴とする記録媒体制御装置。
【請求項2】
前記書込手段は、前記書き込み命令で受け付けた時に、当該書き込み命令で受け付けた前記データを前記待避領域に書き込み、前記書き込み命令又は読み出し命令に応じた処理を実行する時間を除くアイドル時間に、前記マージしたデータを、前記第2のトラック群の各トラックに書き込むこと、
を特徴とする請求項1に記載の記録媒体制御装置。
【請求項3】
前記受付手段は、1トラック内に含まれるセクタに格納可能なデータサイズのデータの書き込み命令を受け付け、
前記書込手段は、前記書き込み命令で受け付けた前記データサイズのデータを、前記待避領域に書き込むこと、
を特徴とする請求項1又は2に記載の記録媒体制御装置。
【請求項4】
前記第2のトラック群は、前記書込手段が前記マージしたデータを書き込む前まで、論理アドレスの割り当てられていない予備として設けられたスペア領域であり、
前記書込手段は、前記マージしたデータを、前記第2のトラック群の各トラックに書き込んだ後、前記第2のトラック群に論理アドレスを割り当て、前記第1のトラック群の論理アドレスを削除し予備として設けられた新たなスペア領域とすること、
を特徴とする請求項1乃至3のいずれか1つに記載の記録媒体制御装置。
【請求項5】
複数のトラックで構成された書き込み単位であるトラック群を含む書込領域と、データを一時的に格納する待避領域と、を有する記録媒体を備える記録媒体制御装置で実行される記録媒体制御方法であって、
受付手段が、データの書き込み命令を受け付ける受付ステップと、
読込手段が、前記待避領域に格納されたデータと、第1の前記トラック群のデータと、を読み込む読込ステップと、
書込手段が、前記書き込み命令で受け付けた前記データを前記待避領域に書き込み、前記待避領域から読み込まれたデータと、第1の前記トラック群から読み込まれたデータと、をマージしたデータを、部分的に重複させるシングル記録方式を用いて、第2のトラック群の各トラックに書き込む書込ステップと、
を含むことを特徴とする記録媒体制御方法。
【請求項6】
前記書込ステップは、前記書き込み命令で受け付けた時に、当該書き込み命令で受け付けた前記データを前記待避領域に書き込み、前記書き込み命令又は読み出し命令を受け付けていないアイドル時間に、前記待避領域から読み込まれたデータと、第1の前記トラック群から読み込まれたデータと、をマージしたデータを、前記第2のトラック群の各トラックに書き込むこと、
を特徴とする請求項5に記載の記録媒体制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate