消費電力最適化方法及び該消費電力最適化方法を用いた磁気ディスク装置
【課題】磁気ヘッドアクチュエータの消費電力低減。
【解決手段】パターンテーブルに格納したコマンド列により指示されたセクターの磁気ヘッドの移動遷移に要するアクチュエータの消費電力を算出する工程と、該算出した消費電力が大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、該工程により並び替えた消費電力が比較的大きい順且つ前記マッピングテーブルに格納可能な容量のコマンド列をマッピングテーブルに格納する工程と、該マッピングテーブルに格納したコマンド列の対応するセクターのデータを不揮発性メモリに格納する工程とを実行することにより、消費電力が比較的大きいコマンド列のセクターデータを半導体メモリに格納してシーク動作を行う磁気ディスク装置。
【解決手段】パターンテーブルに格納したコマンド列により指示されたセクターの磁気ヘッドの移動遷移に要するアクチュエータの消費電力を算出する工程と、該算出した消費電力が大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、該工程により並び替えた消費電力が比較的大きい順且つ前記マッピングテーブルに格納可能な容量のコマンド列をマッピングテーブルに格納する工程と、該マッピングテーブルに格納したコマンド列の対応するセクターのデータを不揮発性メモリに格納する工程とを実行することにより、消費電力が比較的大きいコマンド列のセクターデータを半導体メモリに格納してシーク動作を行う磁気ディスク装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、磁気ディスクからデータを記録再生するときの消費電力を低減することができる消費電力最適化方法及び該消費電力最適化方法を用いた該磁気ディスク装置に関する。
【背景技術】
【0002】
一般に磁気ディスク装置は、情報の記録再生を行う磁気ヘッドを磁気ディスク上で回動可能に支持して高速に位置決めを行うためのアクチュエータを備え、ホストコンピュータからのコマンドを受領することにより指定された磁気ディスク上のセクターへシークして記録再生要求に応答する様に動作するため、磁気ディスク上のランダムな位置に磁気ヘッドを移動させる。
【0003】
また磁気ディスク装置は、磁気ディスク上に記録されるデータが、連続したセクタに連続して記録されるとは限らず、通常は断片化して記録されることが多いため、磁気ディスク上のランダムな位置に磁気ヘッドを移動させる。
【0004】
尚、近年の磁気ディスク装置は、高速なデータ記録再生が要求されており、このために磁気ディスク装置内部に不揮発性メモリを設け、この不揮発性メモリを磁気ディスク記憶領域の一部として使用する技術が下記特許文献に記載されている。
【特許文献1】特開平6−314177号公報
【特許文献2】特開2005−190187号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
前述のように従来技術による磁気ディスク装置は、ホストコンピュータからの指示によるランダムアクセスや、データを断片的な位置に記録再生するため、この磁気ヘッドを移動させるためのアクチュエータの駆動電力が大きいと言う不具合があった。
【0006】
特に近年の磁気ディスク装置においては、ノート型パーソナルコンピュータの長時間駆動のための省電力化の要望や、発熱の原因となる電力の消費量を低減しなければならない要望があるにもかかわらず、アクチュエータの駆動に要する電力を考慮しておらず、消費電力が大きいと言う不具合があった。
【0007】
また、前記特許文献記載の技術は、不揮発性メモリを磁気ディスク記憶領域の一部として使用しているものの、アクチュエータ自体の消費電力を考慮しておらず、アクチュエータの駆動電力が大きいと言う不具合があった。
【0008】
本発明の目的は、アクチュエータの駆動電力を低減することができる消費電力最適化方法及び該消費電力最適化方法を用いた該磁気ディスク装置を提供することである。
【課題を解決するための手段】
【0009】
前記目的を達成するために本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、前記制御回路が、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、該算出した消費電力が大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、該工程により並び替えたコマンド列を消費電力が比較的大きい順から抽出し、該抽出したコマンド列の前記対応情報を前記マッピングテーブルに格納する工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程とを実行することを第1の特徴とする。
【0010】
また本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、前記制御回路が、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納したときの他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程とを実行することを第2の特徴とする。
【0011】
また本発明は、前記何れかの特徴の磁気ディスク装置において、前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスをマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行することを第3の特徴とする。
【0012】
更に本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターデータの記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、前記制御回路に、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、該算出した消費電力が比較的大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、該工程により並び替えた消費電力が比較的大きい順且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスとの対応情報をマッピングテーブルに格納する工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程と、を実行させることによりアクチュエータの消費電力を最適化することを第4の特徴とする。
【0013】
また本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、前記制御回路に、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納した際の他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程と、を実行させることにより、アクチュエータの消費電力を最適化することを第5の特徴とする。
【0014】
また本発明は、前記何れかの特徴の消費電力最適化方法において、前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量のコマンド列をマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行することを第6の特徴とする。
【発明の効果】
【0015】
本発明による消費電力最適化方法及び該消費電力最適化方法を用いた該磁気ディスク装置は、コマンド列に応じて移動が遷移する磁気ヘッドのアクチュエータのコマンド列毎の消費電力を算出し、消費電力が比較的大きいコマンド列のセクターデータを不揮発性メモリに格納することによって、消費電力を低減することができる。
【0016】
また本発明は、コマンド列に応じて移動が遷移する磁気ヘッドのアクチュエータのコマンド列毎の消費電力和と、任意の2セクターを不揮発性メモリに格納した際の他セクターに対する磁気ヘッド移動遷移に要する消費電力和とを算出し、前記実消費電力和から仮消費電力和を減算し且つセクター数で除算した削減消費電力比を算出し、この削減消費電力比を用いてコマンド列をマッピングテーブルに格納することによって、消費電力を低減することができる。
【発明を実施するための最良の形態】
【0017】
以下、本発明による消費電力最適化方法を用いた該磁気ディスク装置の一実施形態を図面を参照して詳細に説明する。
図1は本発明の一実施形態による磁気ディスク装置の構成を示す図、図2は本実施形態による消費電力最適化方法の動作フロー図、図3は前記消費電力最適化方法に使用するパターンテーブルを示す図、図4は磁気ヘッドの動作とコマンドとの関係を示す図、図5は本実施形態による消費電力を説明するための図、図6及び図7は本実施形態によるセクターを半導体メモリに配置した際の消費電力を示す図、図8は本実施形態による消費電力の低減効果を説明するための図、図9はパターンテーブル内の検索を説明するための図、図10は磁気ディスクの論理ブロック番号とマッピングテーブルとメモリアドレスの関係を示す図、図11は本実施形態による消費電力の最適化検索アルゴリズムの動作フロー図、図12は磁気ヘッドの動作を説明するための図である。
【0018】
[原理]
まず、従来の磁気ヘッドの動作及び該磁気ヘッドを駆動するアクチュエータ(ボイスコイルモータ)の消費電力について説明し、次いで本発明の原理を説明する。
一般に磁気ディスク装置は、反時計回り方向に回転している磁気ディスク上において磁気ヘッドを図12に示す位置H1から位置H4に順に移動させる場合、アクチュエータが、磁気ヘッドを位置H1からH2に向かって磁気ディスク外周側に移動させ、次いで位置H2からH3に向かって内周側に移動させ、更に位置H3からH4に向かって外周側に移動させるように動作する。
【0019】
この磁気ヘッドの移動遷移を図4を用いて説明する。この図4は、上位からのコマンドA1〜A5に応じた磁気ヘッドの動きの遷移を説明するための図であって、磁気ヘッドのコマンドA1を受けた時点のシリンダ基準位置を図の中央横線、上方向が磁気ディスク内周(インナー)側移動、下方向が外周(アウター)側移動とし、前記横線右方向が時間経過を表すものであって、符号401がシリンダ番号を示し、符号402がシークの順番を表すシーク順番号を表すものである。また図下方に前記磁気ヘッドを移動させるためのコマンドをテーブル番号順に登録したパターンテーブルを示す。
【0020】
さて、本実施形態による磁気ディスク装置の磁気ヘッドは、例えば、コマンドA1により、前記シリンダ基準位置のシリンダCy0からシリンダCy1に移動(符号403)し、次いでシリンダCy2に移動(符号404)し、シリンダCy1に戻る動作を行い、次のコマンドA2によりシリンダCy3からシリンダCy0に戻る等の動作を行い、更にコマンドA3以降による図示した様に移動するものとする。
【0021】
この様に磁気ディスク装置は、上位からのコマンド列に応じて磁気ヘッドを正逆方向に頻繁に移動させるものであり、このヘッド移動に必要なアクチュエータ(例えばボイスコイルモータ)の消費電力は、前記図4縦軸のヘッド移動量と対比させた図5に示す如く、ヘッド移動量に比例して消費電力P1〜Pnを消費する。
【0022】
この消費電力は、磁気ヘッドのシーク順番号の変数をnとしたとき、全消費電力Ptotalは次数式1で表され、
【数1】
このPtotalは、例えばn=7のとき、次数式2として算出され、磁気ヘッドの内外周への移動頻度が多いほど消費電力が増大することが判る。
【数2】
【0023】
ここでは、前記磁気ディスクのシリンダCy0〜Cy31の該当セクターを半導体メモリへ配置(マッピング)したと仮定した時の消費電力を計算する。まず、nを7とし、シリンダCy1〜Cy7のセクターデータを半導体メモリへ配置(マッピング)したと仮定し、それぞれの場合の消費電力を計算している。
【0024】
この消費電力は、図6(a)に示す如く、シリンダCy1の該当セクターを半導体メモリへ配置に配置した場合、シーク順番Sk1によるシリンダCy0からシリンダCy1に移動する際の消費電力(破線で示す)はなくなるものの、次のシーク順番Sk2によるシリンダCy1からシリンダCy2に移動する際の消費電力(一点鎖線で示す)は増大し、同様に図6(b)に示す如くシリンダCy2の該当セクターを半導体メモリへ配置に配置した場合、シーク順番Sk1からシリンダCy2への消費電力はなくなり、図6(c)に示す如くシリンダCy3の該当セクターを半導体メモリへ配置に配置した場合、シーク順番Sk3へのシークはなくなるもののシリンダCy4への消費電力は増大する。
【0025】
このように半導体メモリへ特定の単一セクターのみを配置した場合は、当該セクタへのシークが無くなって消費電力が低減するものの、他のシリンダに移動する際に消費電力が増大する傾向にある。
【0026】
発明者は、前述した半導体メモリへ1つのセクターのみを配置した際にはかえって消費電力が増大する点を発見し、このため、複数のセクターを半導体メモリに配置することによりシークによる消費電力を低減できることを発見した。
【0027】
これを説明すると、シリンダCy1及びCy2の該当セクターを半導体メモリに配置した場合、図7(a)に示す如く、シリンダCy1及びCy2への消費電力がなくなり且つシリンダCy3への消費電力も低減し、更に図7(b)に示す如く、シリンダCy1、Cy2、Cy3の該当セクターを半導体メモリに配置した場合、シリンダCy1、Cy2、Cy3への消費電力がなくなり且つシリンダCy4への消費電力も低減することを発見した。
【0028】
発明者は、前記消費電力が上位からのコマンドによるシリンダ位置と該シリンダ位置の遷移によって変化するものである事と、近年の磁気ディスク装置においては磁気ディスク記憶領域の一部として使用する不揮発性メモリを採用する事と、前記上位からのコマンド列が一旦磁気ディスク装置の制御部に蓄積される事に着目し、前記コマンド列を解析してシーク動作に伴う消費電力を算出し、該算出した消費電力が比較的大きいコマンド列を基にシークされるセクターデータを半導体メモリに配置することにより、アクチュエータの消費電力を低減することができる本願発明を発明した。
【0029】
[構成]
次いで本実施形態による消費電力最適化方法を採用した磁気ディスク装置を図面を参照して説明する。
図1は本実施形態による磁気ディスク装置の構成を説明するための図であり、この磁気ディスク装置10は、上位のホストシステム100からインタフェース(I/F)200を介してデータ記録再生のための複数コマンドから成るコマンド列を受信し、該コマンド列に応じてデータの記録再生を行うものであって、データを記録する磁気ディスク20と、該磁気ディスク20の任意のセクターに図示しないアクチュエータを用いて移動されることによりデータの記録再生を行う磁気ヘッド25と、前記磁気ディスク20の任意のセクター(データ)を格納するための不揮発性半導体メモリ21と、前記上位からのコマンド列や後述するマッピングテーブル及びパターンテーブル等を一時的に記憶するキャッシュメモリ30と、前記各部位を制御し、本実施形態の特徴である消費電力最適化処理を行うアルゴリズム演算器41を含む制御回路40とから構成される。尚、本出願においては、複数のコマンドの連続した列をアクセスパターンとも呼ぶ。
【0030】
前記キャッシュメモリ30に記憶されるパターンテーブル51は、図3(B)に示す如く上位から送られるコマンド列「A1〜A7」、「B1,A1〜A5,B2」毎にテーブル番号1〜を付与して格納するものであって、詳細は図3(A)に示す如く、各コマンドは、論理ブロック番号とブロック数とコマンド種類の各項目を含むものである。
【0031】
更に前記制御回路40は、図10に示す如き磁気ディスク20の記憶領域を論理的に管理する論理ブロック番号と前記不揮発半性導体メモリ21のアドレスとの対応を取るためのマッピングテーブル75を含むものとする。
【0032】
[動作]
前述の様に構成された磁気ディスク装置は、制御回路40のアルゴリズム演算器41が、ホストシステム100から受信した複数のコマンド列を前記パターンテーブル51に格納し、該格納したコマンド列を解析してアクチュエータの消費電力を後述するアルゴリズムにより演算し、消費電力の比較的大きいコマンド列によりシークされるセクター(データ)を半導体メモリに配置することにより、アクチュエータの消費電力を低減するものである。
【0033】
この処理は、図2に示す如く、制御回路40がホストシステム100から複数のコマンド列をマッピングテーブル75(図10)に受領するステップS21と、該ステップS21によりマッピングテーブル75に格納した複数のコマンド列を検索し、受領した順にパターンテーブル51へ論理ブロック番号(LBA)、ブロック数(セクターカウント)、コマンド種類(リード/ライト)を記録するステップS22と、前記コマンド列の受領終了時から、次コマンド受領までの時間を測定し、該測定時間が予め定めた設定時間より大きいか否かを判定するステップS23と、該ステップS23により設定時間より大きいと判定したとき、パターンテーブル番号をインクルメントして次のテーブル番号を設定するステップS24と、前記受領したコマンド列をパターンテーブル51に追加・更新するステップS25と、該パターンテーブル51に格納したコマンド列によりアクチュエータの駆動電流が最大となるアクセスパターンを解析し、後述するマッピングテーブル75の更新を行うステップS26と、該ステップS26の後に次のコマンド列を待機する処理を実行する。尚、前記ステップS23による時間判定は、データの連続性の有無を認識させる為である。
【0034】
まず本発明の第1の実施形態においては、前記ステップS26による処理が、パターンテーブル51に格納したコマンド列毎のアクチュエータの消費電力を前述の数式1及び2を用いて算出し、パターンテーブル51に格納したコマンド列の順番を消費電力が大きいコマンド列になる様にソートし、この消費電力が比較的大きいコマンド列により指定されたセクターのデータを不揮発性半導体メモリ21に格納すると共に、該格納したコマンド列によるセクターの論理ブロック番号と前記不揮発性半導体メモリ21のアドレスとを対応付けてマッピングテーブル75に格納し、制御回路40がパターンテーブル51及びマッピングテーブル75を参照してデータの記録再生を行うことにより、比較的消費電力の大きいコマンド列による消費電力を消費せずにデータの記録再生を行うことができる。
【0035】
前記第1の実施形態においては、単純にパターンテーブル51に格納したコマンド列毎の消費電力を判定する例を説明したが、本発明はこれに限られるものではなく、前記パターンテーブル51に格納したコマンド列毎の消費電力の算出に加え、任意の複数のセクターデータを半導体メモリ21に記憶させた際のアクチュエータの消費電力も算出し、最も消費電力を低減することができるセクターデータを半導体メモリ21に格納させることもでき、この第2の実施形態を次に説明する。
【0036】
この第2の実施形態によるステップS26による消費電力の最適化を行うアルゴリズムを、上位から送られたコマンド列が図3(B)に示した如く、テーブル番号1が「A1,A2,A3,A4,A5,A6,A7・・」のコマンド列、テーブル番号2が「B1,A1,A2,A3,A4,A5,B2・・」のコマンド列、テーブル番号3が「C1,B1,C3,C4,C5,C6,C7・・」のコマンド列、テーブル番号4が「D1,A1,A2,A3,A4,A5,D7・・」のコマンド列、テーブル番号5が「E1,E2,C3,C4,C5,E6,E7・・」のコマンド列の場合を例にとって説明する。尚、図1に示したシリンダー番号を変数n(1・・)及びk(1・・)とする。
【0037】
この消費電力最適化アルゴリズムは、図11に示す如く、まず、テーブル番号毎のアクセスパターン全体のシークに要する消費電力の和であるPtotalを前述の数式1及び2を用いて算出するステップS101と、前記変数n及びkを「1」に設定するステップS102と、前記変数n及びkのセクターデータを半導体メモリへ配置したと仮定したときの消費電力の和であるPsum[n][k]を算出するステップS103と、前記kに「1」を加算するステップS104と、前記kが最大値か否かを判定し、最大値でないときに前記ステップS103に戻るステップS105と、該ステップS105によりkが最大値と判定したときにnに「1」を加算するステップS106と、前記nが最大値と判定したときにkに「1」を加算するステップS107とを実行する。
【0038】
これらステップS103〜107による処理は、例えば最大値を「7」としたとき、下記の様に算出する。
Psum[1][1]= |P1-P1|+|P2+P1|+|P3|+|P4|+|P5|+|P6|+|P7|
Psum[2][2]= |P1|+|P2-P2|+|P3+P2|+|P4|+|P5|+|P6|+|P7|
Psum[3][3]= |P1|+|P2|+|P3-P3|+|P4+P3|+|P5|+|P6|+|P7|
Psum[4][4]= |P1|+|P2|+|P3|+|P4-P4|+|P5+P4|+|P6|+|P7|
Psum[5][5]= |P1|+|P2|+|P3|+|P4-P4|+|P5+P4|+|P6|+|P7|
Psum[6][6]= |P1|+|P2|+|P3|+|P4-P4|+|P5+P4|+|P6|+|P7|
Psum[7][7] = |P1|+|P2|+|P3|+|P4|+|P5|+|P6|+|P7-P7|
【0039】
次いで本消費電力最適化アルゴリズムは、ステップS107においてnが最大値を超えたと判定したとき、変数n及びkを「1」に設定するステップS108と、2つ以上のシリンダーを半導体メモリに配置したと仮定した際の削減消費電力Peff[n][k]を算出するステップS109と、前記kに「1」を加算するステップS110と、前記kが最大値か否かを判定し、最大値でないときに前記ステップS109に戻るステップS111と、該ステップS111によりkが最大値と判定したときにnに「1」を加算するステップS112と、前記nが最大値と判定したときにkに「1」を加算するステップS113とを実行する。
【0040】
これらステップS109〜113による削減消費電力比Peff[n][k]の算出処理は、前述のステップS103により求めた消費電力Psum[n][k]から半導体メモリに配置したことにより削減された消費電力(Psave)を配置したセクター数(Scn)で除算することにより効率(Peff:1セクター当たりの削減消費電力比)を算出する処理であって、例えば最大値を「7」としたとき、下記数式3の計算式を基に算出する。
【数3】
【0041】
例えば図8に示したコマンド列によるセクタ移動を行うシリンダ5及び6を半導体メモリに配置した際の削減消費電力比Peff[n][k]は次数式4及び5の如く算出する。
【数4】
【数5】
【0042】
前記ステップS109による算出結果は、算出した削減消費電力比Peff[n][k]から、効率の良い順に該当するセクター数が半導体メモリに配置可能かどうかを判定し、削減された消費電力Ptotal−Psum[n][k](=Psave[n][k]とする)をパターンテーブルに記録することを含み、各パターンテーブル毎のアクセス頻度にPsave[n][k]を除算した値が大きい順にパターンテーブル51に再配置を行う。尚、前記配置が可能かどうかの判断基準は、半導体メモリの容量と、配置セクター数が超えてないかを基に判定する。尚、この削減消費電力比Peff[n][k]を算出する理由は、不揮発性メモリには容量制限があり、1セクターあたりのアクセスにかかる消費電力が多くかかるものを優先的に配置するためである。
【0043】
次いで本実施形態による消費電力最適化アルゴリズムは、ステップS113においてnが最大値を超えたと判定したとき、パターンテーブル番号のインリメント(次のテーブル番号に設定)するステップS114と、全テーブルの削減消費電力の算出が終了したか否かを判定し、終了していないと判定したときに前記ステップS101に戻って次のパターンの削減消費電力比算出に移行するステップS115と、該ステップS115において全テーブルの算出が終了したと判定したとき、パターンテーブル51内のアクセスパターン(コマンド列)の再現頻度と削減率(効率Peff:1セクタ当たりの削減消費電力比)の乗算値が大きい順に再配置してマッピングテーブルを更新するステップS116を実行して処理を終了するように動作する。
【0044】
前記ステップS116によるパターンテーブル51内の再配置は、例えば図9に示す如く、複数のコマンド列に、「コマンドA1〜A5」が連続するパターンが3回、「コマンドC3〜C5」が連続するパターンが2回あり、「コマンドA1〜A5」連続パターンの削減率が「コマンドC3〜C5」連続パターンの削減率より大きいとき、「コマンドA1〜A5」連続パターンを含むコマンド列(図9のテーブル番号1,2,4)をテーブル番号1〜3に連続して再配置し、「コマンドC3〜C5」連続パターンを含むコマンド列(図9のテーブル番号3,5)をテーブル番号4〜5に連続して再配置することによって行われる。
【0045】
この様に本実施形態による磁気ディスク装置は、制御回路40がアルゴリズム演算器41を用いてパターンテーブル51に格納したコマンド列を解析してアクチュエータのコマンド列毎(アクセスパターン毎)の消費電力を合算してアクセスパターン全体の消費電力の和Ptotalを算出する工程と、前記コマンド列(アクセスパターン)によるシークを行う任意の複数シリンダーを半導体メモリに配置したと仮定したときの仮定消費電力の和Psum[n][k]を算出する工程と、前記アクセスパターン全体の消費電力の和Ptotalから仮定消費電力の和Psum[n][k]を減算し、この減算値をパターンテーブル51に格納したコマンド列によりシークされるセクター数で除算した削減消費電力比Peff[n][k]を全テーブルに亘って算出する工程と、該削減消費電力比Peff[n][k]が大きく且つ再現頻度が大きい順にマッピングテーブル75を更新し、該マッピングテーブル75に格納したマッピングに従って不揮発半性導体メモリ21へ磁気ディスク20のセクターデータを配置する工程と、この不揮発半性導体メモリ21へ配置したセクターデータを参照してアクセス動作を行うことによって、アクチュエータの消費電力を低減することができる。
【0046】
尚、前記実施形態においては、低減消費電力比の大きいアクセスパターンも参照してマッピングテーブルへの再配置を行う例を説明したが、本発明はこれに限られるものではなく、同一のアクセスパターンを含むコマンド列を連続してマッピングテーブルへ再配置することによっても消費電力を低減することができる。
【図面の簡単な説明】
【0047】
【図1】本発明の一実施形態による磁気ディスク装置の構成を示す図。
【図2】本実施形態による消費電力最適化方法の動作フロー図。
【図3】本消費電力最適化方法に使用するパターンテーブルを示す図。
【図4】磁気ヘッドの動作とコマンドとの関係を示す図。
【図5】本実施形態による消費電力を説明するための図。
【図6】本実施形態による1セクターを半導体メモリに配置した際の消費電力を示す図。
【図7】本実施形態による2セクターを半導体メモリに配置した際の消費電力を示す図。
【図8】本実施形態による消費電力の低減効果を説明するための図。
【図9】パターンテーブル内の検索を説明するための図。
【図10】磁気ディスクの論理ブロック番号とマッピングテーブルとメモリアドレスの関係を示す図。
【図11】本実施形態による消費電力の最適化検索アルゴリズムの動作フロー図。
【図12】磁気ヘッドの移動遷移を説明するための図。
【符号の説明】
【0048】
10:磁気ディスク装置、20:磁気ディスク、21:不揮発性半導体メモリ、21:不揮発半性導体メモリ、25:磁気ヘッド、30:キャッシュメモリ、40:制御回路、41:アルゴリズム演算器、51:パターンテーブル、75:マッピングテーブル、100:ホストシステム。
【技術分野】
【0001】
本発明は、磁気ディスクからデータを記録再生するときの消費電力を低減することができる消費電力最適化方法及び該消費電力最適化方法を用いた該磁気ディスク装置に関する。
【背景技術】
【0002】
一般に磁気ディスク装置は、情報の記録再生を行う磁気ヘッドを磁気ディスク上で回動可能に支持して高速に位置決めを行うためのアクチュエータを備え、ホストコンピュータからのコマンドを受領することにより指定された磁気ディスク上のセクターへシークして記録再生要求に応答する様に動作するため、磁気ディスク上のランダムな位置に磁気ヘッドを移動させる。
【0003】
また磁気ディスク装置は、磁気ディスク上に記録されるデータが、連続したセクタに連続して記録されるとは限らず、通常は断片化して記録されることが多いため、磁気ディスク上のランダムな位置に磁気ヘッドを移動させる。
【0004】
尚、近年の磁気ディスク装置は、高速なデータ記録再生が要求されており、このために磁気ディスク装置内部に不揮発性メモリを設け、この不揮発性メモリを磁気ディスク記憶領域の一部として使用する技術が下記特許文献に記載されている。
【特許文献1】特開平6−314177号公報
【特許文献2】特開2005−190187号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
前述のように従来技術による磁気ディスク装置は、ホストコンピュータからの指示によるランダムアクセスや、データを断片的な位置に記録再生するため、この磁気ヘッドを移動させるためのアクチュエータの駆動電力が大きいと言う不具合があった。
【0006】
特に近年の磁気ディスク装置においては、ノート型パーソナルコンピュータの長時間駆動のための省電力化の要望や、発熱の原因となる電力の消費量を低減しなければならない要望があるにもかかわらず、アクチュエータの駆動に要する電力を考慮しておらず、消費電力が大きいと言う不具合があった。
【0007】
また、前記特許文献記載の技術は、不揮発性メモリを磁気ディスク記憶領域の一部として使用しているものの、アクチュエータ自体の消費電力を考慮しておらず、アクチュエータの駆動電力が大きいと言う不具合があった。
【0008】
本発明の目的は、アクチュエータの駆動電力を低減することができる消費電力最適化方法及び該消費電力最適化方法を用いた該磁気ディスク装置を提供することである。
【課題を解決するための手段】
【0009】
前記目的を達成するために本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、前記制御回路が、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、該算出した消費電力が大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、該工程により並び替えたコマンド列を消費電力が比較的大きい順から抽出し、該抽出したコマンド列の前記対応情報を前記マッピングテーブルに格納する工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程とを実行することを第1の特徴とする。
【0010】
また本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、前記制御回路が、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納したときの他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程とを実行することを第2の特徴とする。
【0011】
また本発明は、前記何れかの特徴の磁気ディスク装置において、前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスをマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行することを第3の特徴とする。
【0012】
更に本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターデータの記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、前記制御回路に、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、該算出した消費電力が比較的大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、該工程により並び替えた消費電力が比較的大きい順且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスとの対応情報をマッピングテーブルに格納する工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程と、を実行させることによりアクチュエータの消費電力を最適化することを第4の特徴とする。
【0013】
また本発明は、複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、前記制御回路に、前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納した際の他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程と、を実行させることにより、アクチュエータの消費電力を最適化することを第5の特徴とする。
【0014】
また本発明は、前記何れかの特徴の消費電力最適化方法において、前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量のコマンド列をマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行することを第6の特徴とする。
【発明の効果】
【0015】
本発明による消費電力最適化方法及び該消費電力最適化方法を用いた該磁気ディスク装置は、コマンド列に応じて移動が遷移する磁気ヘッドのアクチュエータのコマンド列毎の消費電力を算出し、消費電力が比較的大きいコマンド列のセクターデータを不揮発性メモリに格納することによって、消費電力を低減することができる。
【0016】
また本発明は、コマンド列に応じて移動が遷移する磁気ヘッドのアクチュエータのコマンド列毎の消費電力和と、任意の2セクターを不揮発性メモリに格納した際の他セクターに対する磁気ヘッド移動遷移に要する消費電力和とを算出し、前記実消費電力和から仮消費電力和を減算し且つセクター数で除算した削減消費電力比を算出し、この削減消費電力比を用いてコマンド列をマッピングテーブルに格納することによって、消費電力を低減することができる。
【発明を実施するための最良の形態】
【0017】
以下、本発明による消費電力最適化方法を用いた該磁気ディスク装置の一実施形態を図面を参照して詳細に説明する。
図1は本発明の一実施形態による磁気ディスク装置の構成を示す図、図2は本実施形態による消費電力最適化方法の動作フロー図、図3は前記消費電力最適化方法に使用するパターンテーブルを示す図、図4は磁気ヘッドの動作とコマンドとの関係を示す図、図5は本実施形態による消費電力を説明するための図、図6及び図7は本実施形態によるセクターを半導体メモリに配置した際の消費電力を示す図、図8は本実施形態による消費電力の低減効果を説明するための図、図9はパターンテーブル内の検索を説明するための図、図10は磁気ディスクの論理ブロック番号とマッピングテーブルとメモリアドレスの関係を示す図、図11は本実施形態による消費電力の最適化検索アルゴリズムの動作フロー図、図12は磁気ヘッドの動作を説明するための図である。
【0018】
[原理]
まず、従来の磁気ヘッドの動作及び該磁気ヘッドを駆動するアクチュエータ(ボイスコイルモータ)の消費電力について説明し、次いで本発明の原理を説明する。
一般に磁気ディスク装置は、反時計回り方向に回転している磁気ディスク上において磁気ヘッドを図12に示す位置H1から位置H4に順に移動させる場合、アクチュエータが、磁気ヘッドを位置H1からH2に向かって磁気ディスク外周側に移動させ、次いで位置H2からH3に向かって内周側に移動させ、更に位置H3からH4に向かって外周側に移動させるように動作する。
【0019】
この磁気ヘッドの移動遷移を図4を用いて説明する。この図4は、上位からのコマンドA1〜A5に応じた磁気ヘッドの動きの遷移を説明するための図であって、磁気ヘッドのコマンドA1を受けた時点のシリンダ基準位置を図の中央横線、上方向が磁気ディスク内周(インナー)側移動、下方向が外周(アウター)側移動とし、前記横線右方向が時間経過を表すものであって、符号401がシリンダ番号を示し、符号402がシークの順番を表すシーク順番号を表すものである。また図下方に前記磁気ヘッドを移動させるためのコマンドをテーブル番号順に登録したパターンテーブルを示す。
【0020】
さて、本実施形態による磁気ディスク装置の磁気ヘッドは、例えば、コマンドA1により、前記シリンダ基準位置のシリンダCy0からシリンダCy1に移動(符号403)し、次いでシリンダCy2に移動(符号404)し、シリンダCy1に戻る動作を行い、次のコマンドA2によりシリンダCy3からシリンダCy0に戻る等の動作を行い、更にコマンドA3以降による図示した様に移動するものとする。
【0021】
この様に磁気ディスク装置は、上位からのコマンド列に応じて磁気ヘッドを正逆方向に頻繁に移動させるものであり、このヘッド移動に必要なアクチュエータ(例えばボイスコイルモータ)の消費電力は、前記図4縦軸のヘッド移動量と対比させた図5に示す如く、ヘッド移動量に比例して消費電力P1〜Pnを消費する。
【0022】
この消費電力は、磁気ヘッドのシーク順番号の変数をnとしたとき、全消費電力Ptotalは次数式1で表され、
【数1】
このPtotalは、例えばn=7のとき、次数式2として算出され、磁気ヘッドの内外周への移動頻度が多いほど消費電力が増大することが判る。
【数2】
【0023】
ここでは、前記磁気ディスクのシリンダCy0〜Cy31の該当セクターを半導体メモリへ配置(マッピング)したと仮定した時の消費電力を計算する。まず、nを7とし、シリンダCy1〜Cy7のセクターデータを半導体メモリへ配置(マッピング)したと仮定し、それぞれの場合の消費電力を計算している。
【0024】
この消費電力は、図6(a)に示す如く、シリンダCy1の該当セクターを半導体メモリへ配置に配置した場合、シーク順番Sk1によるシリンダCy0からシリンダCy1に移動する際の消費電力(破線で示す)はなくなるものの、次のシーク順番Sk2によるシリンダCy1からシリンダCy2に移動する際の消費電力(一点鎖線で示す)は増大し、同様に図6(b)に示す如くシリンダCy2の該当セクターを半導体メモリへ配置に配置した場合、シーク順番Sk1からシリンダCy2への消費電力はなくなり、図6(c)に示す如くシリンダCy3の該当セクターを半導体メモリへ配置に配置した場合、シーク順番Sk3へのシークはなくなるもののシリンダCy4への消費電力は増大する。
【0025】
このように半導体メモリへ特定の単一セクターのみを配置した場合は、当該セクタへのシークが無くなって消費電力が低減するものの、他のシリンダに移動する際に消費電力が増大する傾向にある。
【0026】
発明者は、前述した半導体メモリへ1つのセクターのみを配置した際にはかえって消費電力が増大する点を発見し、このため、複数のセクターを半導体メモリに配置することによりシークによる消費電力を低減できることを発見した。
【0027】
これを説明すると、シリンダCy1及びCy2の該当セクターを半導体メモリに配置した場合、図7(a)に示す如く、シリンダCy1及びCy2への消費電力がなくなり且つシリンダCy3への消費電力も低減し、更に図7(b)に示す如く、シリンダCy1、Cy2、Cy3の該当セクターを半導体メモリに配置した場合、シリンダCy1、Cy2、Cy3への消費電力がなくなり且つシリンダCy4への消費電力も低減することを発見した。
【0028】
発明者は、前記消費電力が上位からのコマンドによるシリンダ位置と該シリンダ位置の遷移によって変化するものである事と、近年の磁気ディスク装置においては磁気ディスク記憶領域の一部として使用する不揮発性メモリを採用する事と、前記上位からのコマンド列が一旦磁気ディスク装置の制御部に蓄積される事に着目し、前記コマンド列を解析してシーク動作に伴う消費電力を算出し、該算出した消費電力が比較的大きいコマンド列を基にシークされるセクターデータを半導体メモリに配置することにより、アクチュエータの消費電力を低減することができる本願発明を発明した。
【0029】
[構成]
次いで本実施形態による消費電力最適化方法を採用した磁気ディスク装置を図面を参照して説明する。
図1は本実施形態による磁気ディスク装置の構成を説明するための図であり、この磁気ディスク装置10は、上位のホストシステム100からインタフェース(I/F)200を介してデータ記録再生のための複数コマンドから成るコマンド列を受信し、該コマンド列に応じてデータの記録再生を行うものであって、データを記録する磁気ディスク20と、該磁気ディスク20の任意のセクターに図示しないアクチュエータを用いて移動されることによりデータの記録再生を行う磁気ヘッド25と、前記磁気ディスク20の任意のセクター(データ)を格納するための不揮発性半導体メモリ21と、前記上位からのコマンド列や後述するマッピングテーブル及びパターンテーブル等を一時的に記憶するキャッシュメモリ30と、前記各部位を制御し、本実施形態の特徴である消費電力最適化処理を行うアルゴリズム演算器41を含む制御回路40とから構成される。尚、本出願においては、複数のコマンドの連続した列をアクセスパターンとも呼ぶ。
【0030】
前記キャッシュメモリ30に記憶されるパターンテーブル51は、図3(B)に示す如く上位から送られるコマンド列「A1〜A7」、「B1,A1〜A5,B2」毎にテーブル番号1〜を付与して格納するものであって、詳細は図3(A)に示す如く、各コマンドは、論理ブロック番号とブロック数とコマンド種類の各項目を含むものである。
【0031】
更に前記制御回路40は、図10に示す如き磁気ディスク20の記憶領域を論理的に管理する論理ブロック番号と前記不揮発半性導体メモリ21のアドレスとの対応を取るためのマッピングテーブル75を含むものとする。
【0032】
[動作]
前述の様に構成された磁気ディスク装置は、制御回路40のアルゴリズム演算器41が、ホストシステム100から受信した複数のコマンド列を前記パターンテーブル51に格納し、該格納したコマンド列を解析してアクチュエータの消費電力を後述するアルゴリズムにより演算し、消費電力の比較的大きいコマンド列によりシークされるセクター(データ)を半導体メモリに配置することにより、アクチュエータの消費電力を低減するものである。
【0033】
この処理は、図2に示す如く、制御回路40がホストシステム100から複数のコマンド列をマッピングテーブル75(図10)に受領するステップS21と、該ステップS21によりマッピングテーブル75に格納した複数のコマンド列を検索し、受領した順にパターンテーブル51へ論理ブロック番号(LBA)、ブロック数(セクターカウント)、コマンド種類(リード/ライト)を記録するステップS22と、前記コマンド列の受領終了時から、次コマンド受領までの時間を測定し、該測定時間が予め定めた設定時間より大きいか否かを判定するステップS23と、該ステップS23により設定時間より大きいと判定したとき、パターンテーブル番号をインクルメントして次のテーブル番号を設定するステップS24と、前記受領したコマンド列をパターンテーブル51に追加・更新するステップS25と、該パターンテーブル51に格納したコマンド列によりアクチュエータの駆動電流が最大となるアクセスパターンを解析し、後述するマッピングテーブル75の更新を行うステップS26と、該ステップS26の後に次のコマンド列を待機する処理を実行する。尚、前記ステップS23による時間判定は、データの連続性の有無を認識させる為である。
【0034】
まず本発明の第1の実施形態においては、前記ステップS26による処理が、パターンテーブル51に格納したコマンド列毎のアクチュエータの消費電力を前述の数式1及び2を用いて算出し、パターンテーブル51に格納したコマンド列の順番を消費電力が大きいコマンド列になる様にソートし、この消費電力が比較的大きいコマンド列により指定されたセクターのデータを不揮発性半導体メモリ21に格納すると共に、該格納したコマンド列によるセクターの論理ブロック番号と前記不揮発性半導体メモリ21のアドレスとを対応付けてマッピングテーブル75に格納し、制御回路40がパターンテーブル51及びマッピングテーブル75を参照してデータの記録再生を行うことにより、比較的消費電力の大きいコマンド列による消費電力を消費せずにデータの記録再生を行うことができる。
【0035】
前記第1の実施形態においては、単純にパターンテーブル51に格納したコマンド列毎の消費電力を判定する例を説明したが、本発明はこれに限られるものではなく、前記パターンテーブル51に格納したコマンド列毎の消費電力の算出に加え、任意の複数のセクターデータを半導体メモリ21に記憶させた際のアクチュエータの消費電力も算出し、最も消費電力を低減することができるセクターデータを半導体メモリ21に格納させることもでき、この第2の実施形態を次に説明する。
【0036】
この第2の実施形態によるステップS26による消費電力の最適化を行うアルゴリズムを、上位から送られたコマンド列が図3(B)に示した如く、テーブル番号1が「A1,A2,A3,A4,A5,A6,A7・・」のコマンド列、テーブル番号2が「B1,A1,A2,A3,A4,A5,B2・・」のコマンド列、テーブル番号3が「C1,B1,C3,C4,C5,C6,C7・・」のコマンド列、テーブル番号4が「D1,A1,A2,A3,A4,A5,D7・・」のコマンド列、テーブル番号5が「E1,E2,C3,C4,C5,E6,E7・・」のコマンド列の場合を例にとって説明する。尚、図1に示したシリンダー番号を変数n(1・・)及びk(1・・)とする。
【0037】
この消費電力最適化アルゴリズムは、図11に示す如く、まず、テーブル番号毎のアクセスパターン全体のシークに要する消費電力の和であるPtotalを前述の数式1及び2を用いて算出するステップS101と、前記変数n及びkを「1」に設定するステップS102と、前記変数n及びkのセクターデータを半導体メモリへ配置したと仮定したときの消費電力の和であるPsum[n][k]を算出するステップS103と、前記kに「1」を加算するステップS104と、前記kが最大値か否かを判定し、最大値でないときに前記ステップS103に戻るステップS105と、該ステップS105によりkが最大値と判定したときにnに「1」を加算するステップS106と、前記nが最大値と判定したときにkに「1」を加算するステップS107とを実行する。
【0038】
これらステップS103〜107による処理は、例えば最大値を「7」としたとき、下記の様に算出する。
Psum[1][1]= |P1-P1|+|P2+P1|+|P3|+|P4|+|P5|+|P6|+|P7|
Psum[2][2]= |P1|+|P2-P2|+|P3+P2|+|P4|+|P5|+|P6|+|P7|
Psum[3][3]= |P1|+|P2|+|P3-P3|+|P4+P3|+|P5|+|P6|+|P7|
Psum[4][4]= |P1|+|P2|+|P3|+|P4-P4|+|P5+P4|+|P6|+|P7|
Psum[5][5]= |P1|+|P2|+|P3|+|P4-P4|+|P5+P4|+|P6|+|P7|
Psum[6][6]= |P1|+|P2|+|P3|+|P4-P4|+|P5+P4|+|P6|+|P7|
Psum[7][7] = |P1|+|P2|+|P3|+|P4|+|P5|+|P6|+|P7-P7|
【0039】
次いで本消費電力最適化アルゴリズムは、ステップS107においてnが最大値を超えたと判定したとき、変数n及びkを「1」に設定するステップS108と、2つ以上のシリンダーを半導体メモリに配置したと仮定した際の削減消費電力Peff[n][k]を算出するステップS109と、前記kに「1」を加算するステップS110と、前記kが最大値か否かを判定し、最大値でないときに前記ステップS109に戻るステップS111と、該ステップS111によりkが最大値と判定したときにnに「1」を加算するステップS112と、前記nが最大値と判定したときにkに「1」を加算するステップS113とを実行する。
【0040】
これらステップS109〜113による削減消費電力比Peff[n][k]の算出処理は、前述のステップS103により求めた消費電力Psum[n][k]から半導体メモリに配置したことにより削減された消費電力(Psave)を配置したセクター数(Scn)で除算することにより効率(Peff:1セクター当たりの削減消費電力比)を算出する処理であって、例えば最大値を「7」としたとき、下記数式3の計算式を基に算出する。
【数3】
【0041】
例えば図8に示したコマンド列によるセクタ移動を行うシリンダ5及び6を半導体メモリに配置した際の削減消費電力比Peff[n][k]は次数式4及び5の如く算出する。
【数4】
【数5】
【0042】
前記ステップS109による算出結果は、算出した削減消費電力比Peff[n][k]から、効率の良い順に該当するセクター数が半導体メモリに配置可能かどうかを判定し、削減された消費電力Ptotal−Psum[n][k](=Psave[n][k]とする)をパターンテーブルに記録することを含み、各パターンテーブル毎のアクセス頻度にPsave[n][k]を除算した値が大きい順にパターンテーブル51に再配置を行う。尚、前記配置が可能かどうかの判断基準は、半導体メモリの容量と、配置セクター数が超えてないかを基に判定する。尚、この削減消費電力比Peff[n][k]を算出する理由は、不揮発性メモリには容量制限があり、1セクターあたりのアクセスにかかる消費電力が多くかかるものを優先的に配置するためである。
【0043】
次いで本実施形態による消費電力最適化アルゴリズムは、ステップS113においてnが最大値を超えたと判定したとき、パターンテーブル番号のインリメント(次のテーブル番号に設定)するステップS114と、全テーブルの削減消費電力の算出が終了したか否かを判定し、終了していないと判定したときに前記ステップS101に戻って次のパターンの削減消費電力比算出に移行するステップS115と、該ステップS115において全テーブルの算出が終了したと判定したとき、パターンテーブル51内のアクセスパターン(コマンド列)の再現頻度と削減率(効率Peff:1セクタ当たりの削減消費電力比)の乗算値が大きい順に再配置してマッピングテーブルを更新するステップS116を実行して処理を終了するように動作する。
【0044】
前記ステップS116によるパターンテーブル51内の再配置は、例えば図9に示す如く、複数のコマンド列に、「コマンドA1〜A5」が連続するパターンが3回、「コマンドC3〜C5」が連続するパターンが2回あり、「コマンドA1〜A5」連続パターンの削減率が「コマンドC3〜C5」連続パターンの削減率より大きいとき、「コマンドA1〜A5」連続パターンを含むコマンド列(図9のテーブル番号1,2,4)をテーブル番号1〜3に連続して再配置し、「コマンドC3〜C5」連続パターンを含むコマンド列(図9のテーブル番号3,5)をテーブル番号4〜5に連続して再配置することによって行われる。
【0045】
この様に本実施形態による磁気ディスク装置は、制御回路40がアルゴリズム演算器41を用いてパターンテーブル51に格納したコマンド列を解析してアクチュエータのコマンド列毎(アクセスパターン毎)の消費電力を合算してアクセスパターン全体の消費電力の和Ptotalを算出する工程と、前記コマンド列(アクセスパターン)によるシークを行う任意の複数シリンダーを半導体メモリに配置したと仮定したときの仮定消費電力の和Psum[n][k]を算出する工程と、前記アクセスパターン全体の消費電力の和Ptotalから仮定消費電力の和Psum[n][k]を減算し、この減算値をパターンテーブル51に格納したコマンド列によりシークされるセクター数で除算した削減消費電力比Peff[n][k]を全テーブルに亘って算出する工程と、該削減消費電力比Peff[n][k]が大きく且つ再現頻度が大きい順にマッピングテーブル75を更新し、該マッピングテーブル75に格納したマッピングに従って不揮発半性導体メモリ21へ磁気ディスク20のセクターデータを配置する工程と、この不揮発半性導体メモリ21へ配置したセクターデータを参照してアクセス動作を行うことによって、アクチュエータの消費電力を低減することができる。
【0046】
尚、前記実施形態においては、低減消費電力比の大きいアクセスパターンも参照してマッピングテーブルへの再配置を行う例を説明したが、本発明はこれに限られるものではなく、同一のアクセスパターンを含むコマンド列を連続してマッピングテーブルへ再配置することによっても消費電力を低減することができる。
【図面の簡単な説明】
【0047】
【図1】本発明の一実施形態による磁気ディスク装置の構成を示す図。
【図2】本実施形態による消費電力最適化方法の動作フロー図。
【図3】本消費電力最適化方法に使用するパターンテーブルを示す図。
【図4】磁気ヘッドの動作とコマンドとの関係を示す図。
【図5】本実施形態による消費電力を説明するための図。
【図6】本実施形態による1セクターを半導体メモリに配置した際の消費電力を示す図。
【図7】本実施形態による2セクターを半導体メモリに配置した際の消費電力を示す図。
【図8】本実施形態による消費電力の低減効果を説明するための図。
【図9】パターンテーブル内の検索を説明するための図。
【図10】磁気ディスクの論理ブロック番号とマッピングテーブルとメモリアドレスの関係を示す図。
【図11】本実施形態による消費電力の最適化検索アルゴリズムの動作フロー図。
【図12】磁気ヘッドの移動遷移を説明するための図。
【符号の説明】
【0048】
10:磁気ディスク装置、20:磁気ディスク、21:不揮発性半導体メモリ、21:不揮発半性導体メモリ、25:磁気ヘッド、30:キャッシュメモリ、40:制御回路、41:アルゴリズム演算器、51:パターンテーブル、75:マッピングテーブル、100:ホストシステム。
【特許請求の範囲】
【請求項1】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、
前記制御回路が、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、
該算出した消費電力が大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、
該工程により並び替えたコマンド列を消費電力が比較的大きい順から抽出し、該抽出したコマンド列の前記対応情報を前記マッピングテーブルに格納する工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程とを実行する磁気ディスク装置。
【請求項2】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、
前記制御回路が、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、
前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納したときの他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、
前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、
前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程とを実行する磁気ディスク装置。
【請求項3】
前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスをマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行する請求項1又は2記載の磁気ディスク装置。
【請求項4】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターデータの記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、
前記制御回路に、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、
該算出した消費電力が比較的大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、
該工程により並び替えた消費電力が比較的大きい順且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスとの対応情報をマッピングテーブルに格納する工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程と、
を実行させることによりアクチュエータの消費電力を最適化する消費電力最適化方法。
【請求項5】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、
前記制御回路に、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、
前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納した際の他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、
前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、
前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程と、
を実行させることにより、アクチュエータの消費電力を最適化する消費電力最適化方法。
【請求項6】
前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量のコマンド列をマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行する請求項4又は5記載の消費電力最適化方法。
【請求項1】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、
前記制御回路が、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、
該算出した消費電力が大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、
該工程により並び替えたコマンド列を消費電力が比較的大きい順から抽出し、該抽出したコマンド列の前記対応情報を前記マッピングテーブルに格納する工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程とを実行する磁気ディスク装置。
【請求項2】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意セクターのデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置であって、
前記制御回路が、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、
前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納したときの他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、
前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、
前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程とを実行する磁気ディスク装置。
【請求項3】
前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスをマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行する請求項1又は2記載の磁気ディスク装置。
【請求項4】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターデータの記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、
前記制御回路に、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する工程と、
該算出した消費電力が比較的大きい順に前記パターンテーブルに格納したコマンド列の順番を並び替える工程と、
該工程により並び替えた消費電力が比較的大きい順且つ前記マッピングテーブルに格納可能な容量の論理ブロック番号及び不揮発性メモリアドレスとの対応情報をマッピングテーブルに格納する工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する工程と、
を実行させることによりアクチュエータの消費電力を最適化する消費電力最適化方法。
【請求項5】
複数のセクターにデータを記録する磁気ディスクと、該磁気ディスクの任意のセクターデータを記憶する不揮発性メモリと、前記磁気ディスクのセクターの論理ブロック番号と不揮発性メモリのアドレスとの対応情報を格納するマッピングテーブルと、上位から受信したコマンド列を格納するパターンテーブルと、前記磁気ディスクのセクターにアクチュエータにより位置決めされる磁気ヘッドと、上位から受信したコマンド列により指示されるセクターのデータ記録再生を制御する制御回路とを備える磁気ディスク装置の消費電力最適化方法であって、
前記制御回路に、
前記パターンテーブルに格納したコマンド列により指示される複数セクターにわたる移動遷移に要するアクチュエータの消費電力をコマンド列毎に算出する第1工程と、
前記パターンテーブルに格納したコマンド列により指示される任意の2セクターを不揮発性メモリに格納した際の他セクターに対する磁気ヘッドの移動遷移に要するアクチュエータの消費電力の和を算出する第2工程と、
前記第1工程により算出した消費電力の和から前記第2工程で算出した消費電力の和を減算し、該減算値をセクター数で除算することにより削減消費電力比を算出する第3工程と、
前記第1及び第2工程において算出したコマンド列の対応情報を、前記第3工程より算出した削減消費電力比が比較的大きい順に前記マッピングテーブルに格納する第4工程と、
該マッピングテーブルに格納した対応情報に含まれる論理ブロック番号のセクターデータを不揮発性メモリに格納する第5工程と、
を実行させることにより、アクチュエータの消費電力を最適化する消費電力最適化方法。
【請求項6】
前記制御回路が、削減消費電力比が大きく且つ前記マッピングテーブルに格納可能な容量のコマンド列をマッピングテーブルに格納した後、パターンテーブルのコマンドの配置が同一なコマンド列をソートする工程を実行する請求項4又は5記載の消費電力最適化方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2009−48436(P2009−48436A)
【公開日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願番号】特願2007−214344(P2007−214344)
【出願日】平成19年8月21日(2007.8.21)
【出願人】(000233033)日立コンピュータ機器株式会社 (253)
【Fターム(参考)】
【公開日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願日】平成19年8月21日(2007.8.21)
【出願人】(000233033)日立コンピュータ機器株式会社 (253)
【Fターム(参考)】
[ Back to top ]