(57)【特許請求の範囲】
【請求項１】
不揮発性半導体メモリ及び記録用磁気ディスクを備えたハイブリッド記録装置であって、
前記記録用磁気ディスク内の第一記録領域と前記不揮発性半導体メモリ内の第二記録領域とを冗長化領域又は高速化領域の内の何れか一方を示す属性を付けてマッピングするマッピング手段と、
前記第一記録領域へのアクセス命令として、書き込み命令を受信したときに、前記第一記録領域に前記冗長化領域を示す属性が付けられている場合は、前記第一記録領域及び前記第二記録領域に共通のデータを書き込む制御を行う制御手段と、
を備え、
前記制御手段は、前記第一記録領域及び前記第二記録領域の何れかのデータを復元する際に、前記第一記録領域及び前記第二記録領域の双方のデータを取得したならば、前記双方のデータに誤り訂正符号処理を施し、誤り率の低いデータを他方の記録媒体にコピーする処理を行うことを特徴とするハイブリッド記録装置。
【請求項２】
前記制御手段は、前記第一記録領域へのアクセス命令として、書き込み命令を受信したときに、前記第一記録領域に前記高速化領域を示す属性が付けられている場合は前記第二記録領域に最新のデータを書き込む制御を行い且つ所定状況下において前記第二記録領域の最新のデータを前記第一記録領域に書き込む制御を行う、
ことを特徴とする請求項１に記載のハイブリッド記録装置。
【請求項３】
前記マッピング手段は、ホストから指定されるブロックを単位に、前記記録用磁気ディスク内の前記ブロックに対応する記録領域と不揮発性半導体メモリ内の記録領域の一部とを前記第一記録領域及び前記第二記録領域として対応付け且つ前記第一記録領域及び前記第二記録領域のペアごとに前記属性を対応付けするマッピングテーブルを備える、
ことを特徴とする請求項２に記載のハイブリッド記録装置。
【請求項４】
前記制御手段は、
前記第一記録領域及び前記第二記録領域の何れかのデータを復元する際に、前記冗長化領域の属性を付けてマッピングされている前記第一記録領域及び前記第二記録領域の内の何れか一方のデータが破損している場合に、該破損しているデータを他方の正常なデータから復元する制御を行う、
ことを特徴とする請求項２又は請求項３に記載のハイブリッド記録装置。
【請求項５】
ホストから送信されるリード命令及びライト命令をアクセス命令として、特定の命令を登録命令として受信する、且つ前記アクセス命令を受信した場合に記録用磁気ディスク内の記録領域にアクセスする記録装置であって、
不揮発性半導体メモリと、
前記ホストから前記登録命令を受信すると前記ホストからの受信ブロックに対応する前記記録用磁気ディスク内の第一記録領域を前記不揮発性半導体メモリ内の第二記録領域に割り当てて二重化し、前記記録用磁気ディスク内の第一記録領域と前記不揮発性半導体メモリ内の第二記録領域とを冗長化領域又は高速化領域の内の何れか一方を示す属性を付けてマッピングするマッピング手段と、
前記第一記録領域へのアクセス命令として、書き込み命令を受信したときに、前記第一記録領域に前記冗長化領域を示す属性が付けられている場合は、前記第一記録領域及び前記第二記録領域に共通のデータを書き込む制御を行う制御手段と、
を備え、
前記制御手段は、前記第一記録領域及び前記第二記録領域の何れかのデータを復元する際に、前記第一記録領域及び前記第二記録領域の双方のデータを取得したならば、前記双方のデータに誤り訂正符号処理を施し、誤り率の低いデータを他方の記録媒体にコピーする処理を行うことを特徴とするハイブリッド記録装置。
【請求項６】
前記制御手段は、前記第一記録領域へのアクセス命令として、書き込み命令を受信したときに、前記第一記録領域に前記高速化領域を示す属性が付けられている場合は前記第二記録領域に最新のデータを書き込む制御を行い且つ所定状況下において前記第二記録領域の最新のデータを前記第一記録領域に書き込む制御を行う、
ことを特徴とする請求項５に記載のハイブリッド記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性半導体メモリ及び記録用磁気ディスクを備えたハイブリッド記録装置に関し、特に不揮発性半導体メモリ及び記録用磁気ディスクに対するデータ記録制御技術に関する。
【背景技術】
【０００２】
近年、記録用磁気ディスクに加えて不揮発性半導体メモリを搭載したハイブリッド記録装置が登場している。
そのハイブリッド記録装置の一つは、揮発性半導体メモリを記録用磁気ディスクと同等に扱い、何れか一方の記録領域にデータを配置するように構成されたものである（特許文献１参照）。
【特許文献１】特願平５−１０２０２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
一般的に、記録装置は全てのデータを同等に扱う。
一方、記録装置との間でデータを送受信する外部装置（ホストコンピュータ）では、データのアクセス頻度やデータの重要度などをポリシーテーブルに記録し、各データに意味をもたせて管理している。
【０００４】
従って、記録装置内のアクセス先のデータがアクセス頻度の高いものである場合はそのデータへの高速アクセスが望ましく、またアクセス先のデータが重要度の高いものである場合はデータ紛失やデータ破壊によるアクセスエラーを生じさせないようにすることが望ましい。
【０００５】
上述したように、ハイブリッド記録装置は記録用磁気ディスクと不揮発性半導体メモリとを備えている。この二つの記録媒体は、同じデータを共に保持させれば重要なデータの冗長化に有効であり、またアクセス先を不揮発性半導体メモリにすることによりデータアクセスの高速化にも有効である。
【０００６】
しかしながら、従来のハイブリッド記録装置は、記録用磁気ディスクと不揮発性半導体メモリとを備えているにもかかわらず、不揮発性半導体メモリの記録領域の全てにおいて上述の外部装置がデータに対してもつ意味とは無関係にデータを任意に記録する。そのため、外部装置がもつ各データごとのデータアクセス方式の適正化情報（例えば外部装置がポリシーテーブルで管理する重要度やアクセス頻度等）を、記録制御方式の違いとしてハイブリッド記録装置に反映させることができないという問題があった。
【０００７】
本発明は、適正化情報に応じて、記録用磁気ディスクに記録されているデータの記録領域を不揮発性半導体メモリにも備えるハイブリッド記録装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は上記課題を解決するために以下のように構成する。
本発明のハイブリッド記録装置の態様の一つは、不揮発性半導体メモリ及び記録用磁気ディスクを備えたハイブリッド記録装置であって、前記記録用磁気ディスク内の第一記録領域と前記不揮発性半導体メモリ内の第二記録領域とを冗長化領域又は高速化領域の内の何れか一方を示す属性を付けてマッピングするマッピング手段と、前記第一記録領域へのアクセス命令として、書き込み命令を受信したときに、前記第一記録領域に前記冗長化領域を示す属性が付けられている場合は、前記第一記録領域及び前記第二記録領域に共通のデータを書き込む制御を行う制御手段と、を備え、前記制御手段は、前記第一記録領域及び前記第二記録領域の何れかのデータを復元する際に、前記第一記録領域及び前記第二記録領域の双方のデータを取得したならば、前記双方のデータに誤り訂正符号処理を施し、誤り率の低いデータを他方の記録媒体にコピーする処理を行う。
【００１２】
本発明のハイブリッド記録装置のその他の態様の一つは、ホストから送信されるリード命令及びライト命令をアクセス命令として、特定の命令を登録命令として受信する、且つ前記アクセス命令を受信した場合に記録用磁気ディスク内の記録領域にアクセスする記録装置であって、不揮発性半導体メモリと、前記ホストから前記登録命令を受信すると前記ホストからの受信ブロックに対応する前記記録用磁気ディスク内の第一記録領域を前記不揮発性半導体メモリ内の第二記録領域に割り当てて二重化し、前記記録用磁気ディスク内の第一記録領域と前記不揮発性半導体メモリ内の第二記録領域とを冗長化領域又は高速化領域の内の何れか一方を示す属性を付けてマッピングするマッピング手段と、前記第一記録領域へのアクセス命令として、書き込み命令を受信したときに、前記第一記録領域に前記冗長化領域を示す属性が付けられている場合は、前記第一記録領域及び前記第二記録領域に共通のデータを書き込む制御を行う制御手段と、を備え、前記制御手段は、前記第一記録領域及び前記第二記録領域の何れかのデータを復元する際に、前記第一記録領域及び前記第二記録領域の双方のデータを取得したならば、前記双方のデータに誤り訂正符号処理を施し、誤り率の低いデータを他方の記録媒体にコピーする処理を行う。
【００１３】
このように、本発明のハイブリッド記録装置は、上記記録用磁気ディスク内の第一記録領域と上記不揮発性半導体メモリ内の第二記録領域とをマッピングするマッピング手段と、上記第一記録領域へのアクセス命令があると上記マッピング手段がマッピングしている上記第二記録領域にアクセスする制御を行う制御手段とを備える。したがって、このマッピング手段に適正化情報に準じてデータを登録した際は、記録用磁気ディスク内の該当するデータは不揮発性半導体メモリ内にも記録領域が設けられ、データを２重化してもつことが可能になる。
【発明の効果】
【００１４】
本発明により、適正化情報に応じて、記録用磁気ディスクに記録されているデータの記録領域を不揮発性半導体メモリにも設けることが可能となり、記録用磁気ディスクと不揮発性半導体メモリとにデータを２重化することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明を実施するための最良の形態について、図面を参照しながら詳細に説明する。
図１は、本発明の実施の形態によるハイブリッド記録装置の論理構成図である。
【００１６】
同図のハイブリッド記録装置１は、記録媒体として記録用磁気ディスク１０及び不揮発
性半導体メモリ１１、これらの記録媒体に選択的にデータを読み書きさせるための手段としてマッピング手段１２及び制御手段１３を備えている。
【００１７】
記録用磁気ディスク１０の記録領域は通常記録領域１００と第一記録領域１０２とに分類されている。通常記録領域１００は従来のアクセス方式でアクセスされる記録領域、第一記録領域１０２は通常記録領域１００の内の、不揮発性半導体メモリ１１の記録領域（図中の第二記録領域１１０）とマッピング手段１２によりマッピングされている記録領域を表している。
【００１８】
マッピング手段１２は、記録用磁気ディスク１０内の通常記録領域１００を、実線で示すように、記録されているデータに応じて第一記録領域１０２として不揮発性半導体メモリ１１内の第二記録領域１１０にマッピングする手段である。マッピングするデータの選定は、例えばホストコンピュータ等の外部装置がもつ重要度やアクセス頻度を示す情報（本明細書ではこれらを「適正化情報」と総称している）に準じて行う。
【００１９】
制御手段１３は、通常記録領域１００へのアクセス命令L1（例えばリード命令又はライト命令等）を受信し、そのアクセス先がマッピング手段１２がマッピングする第一記録領域１０２であった場合に、破線L2が示す経路の替わりに実線L3が示す経路即ち第二記録領域１１０へアクセスする制御を行う手段である。なお、アクセス先が第一記録領域１０２以外の通常記録領域１００である場合は、従来どおりに通常記録領域１００へアクセスする。
【００２０】
従って、このようなハイブリッド記録装置１においては、ハイブリッド記録装置１側で必要なデータを２重化してもたせること即ち記録用磁気ディスク１０及び不揮発性半導体メモリ１１のそれぞれに相互対応する記録領域を確保してそれぞれに同じデータ又は更新日時の異なる同系統のデータを記録することが可能になる。
【００２１】
（実施例）
次に、図１のハイブリッド記録装置１の実施例を示す。
図２は、本実施例による着脱式のハイブリッド記録装置においてのシステム構成を示した図である。
【００２２】
ハイブリッド記録装置２は、データの記録媒体として記録用磁気ディスク２０を備えている。
この記録用磁気ディスク２０は、中心から外径方向に所定間隔で並ぶトラックの周回上にデータの記録領域を設けた回転円板体のディスクである。この記録領域の所定アドレスへのアクセスは、不図示のロータアームを回転させることによりロータアームの先端の磁気ヘッドを所定トラック上に移動し（シーク）、ディスクの回転により磁気ヘッドがトラック上の所定アドレスのデータ領域を走査する、という機械的な動作の下に行われる。
【００２３】
また、ハイブリッド記録装置２は、各部の制御を司るコントローラ２１、主に作業領域として使用する揮発性半導体メモリ２２、及び上記記録媒体として上記記録用磁気ディスク２０とは別に不揮発性半導体メモリ（現在はフラッシュメモリが主に使用されているため、以下ではフラッシュメモリとする）２３を、互いに不図示のバスを介して接続した状態で備えている。
【００２４】
ホストコンピュータ３は、各階層レベル（例えばドライバレベルやアプリケーションレベル等）でデータを所定の意味をもつ塊（データブロック）として認識して取り扱い、そのデータブロックごとにデータの重要度やコントローラ２１に対してのアクセス頻度を管理するものである。コントローラ２１に対して所定の動作を行わせるコマンド（リード命
令やライト命令等）又は未登録の複数のコマンド（登録命令や復元命令等）を備えている。ここでは、未登録のコマンドを「登録命令」と「復元命令」に割り当てている。
【００２５】
コントローラ２１は、ハイブリッド記録装置２をホストコンピュータ３に接続すると、バス４を介してホスト３との間で通信処理を行う。そして、ホストから命令（例えば従来からのライト命令やリード命令、または、新たに相互認識させた登録命令や復元処理命令等）を受けると命令に応じて、各部を制御して後述する受信データの記録処理、記録されているデータの取得処理、または記録されているデータの復元処理等を行う。各処理は、例えば上記の各命令をトリガにして内蔵のコンピュータで所定のプログラムを実行する等により行われる。
【００２６】
揮発性半導体メモリ２２は、コントローラ２１がデータの作業領域として利用するための一時記憶領域として設けている。本実施例では記録用磁気ディスク２０内に記録されている所定のデータをフラッシュメモリ２３内にももたせて２重化させるようにするため、ここでは特に、相互の記録領域をマッピングするための対応表（マッピングテーブル２２０）を一時的に保管する。
【００２７】
フラッシュメモリ２３は、電源を切った後でも電気的にデータを保持することが可能であると共に、指定したアドレスへのデータの書き込みやそのアドレスからのデータの読み出しが全て電気信号処理にて行えるため高速のアクセスが可能である。ここでは、上述の記録用磁気ディスク２０内に記録されている所定のデータを２重化させるための記録領域として設けている。なお、本実施例では、電源OFFする際のマッピングテーブル２２０を保存する記録領域が確保されているものとし、電源OFF時には揮発性半導体メモリ２２にあるマッピングテーブル２２０がその記録領域に退避され、電源ON時にはその記録領域から電源OFF時のマッピングテーブル２２０が再び読み出されて揮発性半導体メモリ２２上に再び配置されるようになっている。
【００２８】
図３は、上記マッピングテーブル２２０の構成例である。
図３の例では、「データブロック番号（ブロック番号）」、「領域属性」、「磁気番地」、及び「メモリ番地」の４項目によりマッピングテーブル２２０が構成されている。
【００２９】
「領域属性」は、ホスト３との間で相互認識させた後述の登録コマンドを通じてコントローラ２１に認識させた受信データブロックの属性情報を示す項目である。ここでは領域属性として「冗長化領域」、「高速化領域」、及び「通常」の３種類を示している。「冗長化領域」は例えば重要度の高いデータブロック等のように冗長化が必要なデータブロックに対して指定される。「高速化領域」は例えばアクセス頻度の高いデータブロック等のような高速化が必要なデータブロックに対して指定される。そして、「通常」は上記のどちらにも該当しないデータブロック即ち従来のアクセス方式でアクセスが行われるデータブロックが指定される。
【００３０】
「磁気番地」及び「メモリ番地」は、記録用磁気ディスク２０内の上記データブロックが記録されている記録領域のアドレス及びフラッシュメモリ２３内の上記データブロックが記録されている記録領域のアドレスである。
【００３１】
この例では、ブロック番号「１」のデータブロックは、記録用磁気ディスク２０の記録領域「a」に記録するものであること又は記録されているものであることを示している。また、このデータブロックは「高速化領域」であるものとしてホストから指示されていることを示している。そして、このデータブロックの記録を２重化するための記録領域としてフラッシュメモリ２３内に記録領域「A」が割り当てられていることを示している。マッピングテーブルにおいてこのような対応付けがなされることで、その後の処理では、図２に示すように記録用磁気ディスク２０内の記録領域「a」とフラッシュメモリ２３内の記録領域「A」とが実際に対応付けされ、データが高速化領域として２重化される。同様に、ブロック番号「２」のデータブロックは、記録用磁気ディスク２０の記録領域「ｂ」に記録するものであること又は記録されているものであることを示している。また、このデータブロックは「冗長化領域」であるものとしてホストから指示されていることを示している。そして、このデータブロックの記録を２重化するための記録領域としてフラッシュメモリ２３内の記録領域「B」が割り当てられていることを示している。マッピングテーブルにおいてこのような対応付けがなされることで、その後の処理では、図２に示すように記録用磁気ディスク２０内の記録領域「ｂ」とフラッシュメモリ２３内の記録領域「B」とが実際に対応付けされ、データが冗長化領域として２重化される。一方、「通常」に設定されているブロック番号「３」及び「４」のデータブロックの記録領域については、図２に「ｃ」及び「ｄ」として示すように各記録領域は記録用磁気ディスク２０内のみに存在し、フラッシュメモリ２３内に２重化させた記録領域は存在しない。
【００３２】
このように、本実施例においては、ホストから「高速化領域」又は「冗長化領域」という指定があったデータブロックに対してのみ、そのデータブロックの記録用磁気ディスク２０内の記録領域が上述した第一記録領域として作用し、フラッシュメモリ２３内に第一記録領域に対応する記録領域即ち上述した第二記録領域が割り当てられる。
【００３３】
図４は、領域属性に応じた処理の違いの一例を示したものである。
ここでは、「高速化領域」及び「冗長化領域」について、それぞれの、読み出し処理、書き込み処理、及び復元処理の異なる点を表にまとめている。
【００３４】
一番目の読み出し処理においては、読み出すデータブロックの領域属性が「高速化領域」及び「冗長化領域」の何れでも、共に、不揮発性半導体メモリ（フラッシュメモリ）からデータを読み出す、ということを示している。領域属性が「通常領域」では記録用磁気ディスクからデータを読み出すので、この点で領域属性に応じて処理が異なる。
【００３５】
二番目の書き込み処理においては、書き込むデータブロックの領域属性が「高速化領域」の場合は、ライト命令の受信時に一方の記録媒体のみ（特に不揮発性半導体メモリ）にデータを書き込み、その後、非同期に他方の記録媒体（不揮発性半導体メモリ又は記録用磁気ディスク）にそのデータをコピーし（ライトバック）、一方、書き込むデータブロックの領域属性が「冗長化領域」の場合は、ライト命令の受信時に両方の記録媒体（不揮発性半導体メモリ及び記録用磁気ディスク）に同期してデータを書き込む（ライトスルー）、という領域属性に応じた処理の違いを示している。また、領域属性が「通常領域」では記録用磁気ディスクに直接データを書き込むだけであるから、この点でも領域属性に応じて処理は異なる。
【００３６】
三番目の復元処理においては、２重化されているデータブロックの何れか片方が壊れている（例えば記録領域が物理的に壊れていて読み出せない）ことを前提とした場合は、データブロックの領域属性が「高速化領域」及び「冗長化領域」の何れであっても、壊れているデータブロックを他方の正常なデータブロックに合わせて復元する、ということを示している。なお、領域属性が「通常領域」では記録用磁気ディスクのみにデータが存在するため、データの復元は不可能であり、処理の違いは明らかである。これに類似するものとして、２重化されているデータブロックの双方が壊れていることを前提とした場合は、その領域属性が「高速化領域」及び「冗長化領域」のどちらであっても修復は不可能である。
【００３７】
三番目の復元処理においては、２重化されているデータブロックの双方が一致しないこと（例えばビット反転が生じている等）を前提とした場合は、そのデータブロックの領域
属性が「高速化領域」では双方のデータを記録用磁気ディスクのデータに統一し、「冗長化領域」では誤り訂正符号で誤り率の低いデータに統一する、という領域属性に応じた処理の違いを示している。
【００３８】
次に、本実施例における、ホストコンピュータ３及びハイブリッド記録装置２の動作フローについて説明する。
図５は、ホストコンピュータ３からハイブリッド記録装置２に対してデータブロックの領域属性を登録させる際の装置間の通信シーケンス図である。
【００３９】
但し、ここでは、後述する登録コマンドの生成をハイブリッド記録装置１のドライバで行うものとしている。
先ずホストコンピュータ３（OS）において、ハイブリッド記録装置１との間で送受信するデータブロックの領域属性の選定を行い（後述する配置ポリシーの選定処理）、そのデータブロックの領域属性情報をつけて登録指示信号をドライバに出力する（S1）。
【００４０】
ドライバでは、ホストコンピュータ３（OS）から登録指示信号を受信し、所定の領域属性の情報（ここでは冗長化領域又は高速化領域を示す情報）を受け取ると登録コマンドを発行し、当該データブロックの該当記録領域と上記領域属性を示す情報とを含めた登録命令をコントローラへ出力する（S2）。上記の該当記録領域とは、例えば、ホストから登録指示信号に含めて送信されたブロック番号から、ドライバで管理されるブロック番号と記録領域の対応表に基づいて生成した、上記データブロックの記録用磁気ディスク内の記録領域を示す情報である。  
【００４１】
コントローラでは、ドライバから登録命令を受信すると、ドライバに対してコマンドを返して応答する（S3）。例えばコントローラで後述する登録処理が正常に行われれば登録完了のコマンドをドライバに返し、エラーがあればドライバにエラーコマンドを返す。
【００４２】
ドライバでは、コントローラから受信エラーの応答を受けた場合や一定時間応答がない場合等には登録命令をコントローラに再出力する。そして、登録完了のコマンドを受信した場合やエラーコマンドを受信した場合には登録完了通知をホストコンピュータに返す（S4）。
【００４３】
図６は、図５のステップS1においての、データブロックの配置ポリシーを選定する処理のフローチャートである。
ホストコンピュータ３では、ハイブリッド記録装置２を対象に送受信するデータ（データブロック単位のデータ）ごとに、データの重要度及びコントローラ２１に対するアクセス頻度をポリシーテーブルで管理している。本実施例では、ホストコンピュータ３は上記ポリシーテーブルを参照してデータブロックの配置ポリシーを選定する。
【００４４】
先ず、データの重要度の高いデータブロックがあるか（高信頼化が必要か）否かをポリシーテーブルから判定し（S10）、高信頼化が必要なデータブロックである場合においてそれらのブロック番号を「冗長化領域」に属するものとして選定する（S11）。
【００４５】
次いで、アクセス頻度の高いデータブロックがあるか（高速化が必要か）否かをポリシーテーブルから判定し（S12）、高速化が必要なデータブロックである場合においてそれらのブロック番号を「高速化領域」に属するものとして選定する（S13）。
【００４６】
そして、上記の何れにも該当しないデータブロックについては、それぞれ、ホストで設定されている通りに選定は行われるが、本実施例ではそれらはハイブリッド記録装置１側で認識しないので、これまで通りの「通常領域」に属するもののように区別して取り扱わ
れることとなる（S14）。
【００４７】
図７は、図５のステップS2においてドライバで生成される登録命令の構成図である。
図７に示すように、本例の登録命令は、登録コマンド、領域属性を示す情報、及びデータブロックの記録用磁気ディスク内の記録領域を示す情報を含めたものにより構成される。繰り返しになるが、データブロックの記録用磁気ディスク内の記録領域を示す情報は、ホストから登録指示信号に含めて送信されたブロック番号から、ドライバで管理されるブロック番号と記録領域の対応表に基づいて生成されたものである。  
【００４８】
図８は、コントローラにおける登録処理のフローチャートである。
ここでは、上記登録命令をドライバから受け取った後の処理を示している。
先ず、登録命令に含まれている記録領域を示す情報を基にマッピングテーブルの「磁気番地」を検索し、該当するレコードの「領域属性」の情報を確認する（S30）。
【００４９】
ここで、「領域属性」に「通常領域（ここでは冗長化領域及び高速化領域以外）」が設定されているならば、フラッシュメモリ内に２重化のための記録領域が確保されていないことを示しているので、フラッシュメモリ内に該当する記録領域分の空きがあるかどうかを調べる（S31）。
【００５０】
次いで、フラッシュメモリ内に該当する記録領域分の空きがある場合は、その空き領域を確保し（S32）、記録用磁気ディスク内の記録領域のデータを上記空き領域にコピーする（S33）。
【００５１】
そして、マッピングテーブルの「領域属性」の情報（通常領域）を、登録命令に含まれている領域属性を示す情報（高速化領域又は冗長化領域）に変更し、更に「メモリ番地」に上記コピー領域のメモリ番地を設定することにより、登録命令の内容をマッピングテーブルに反映する（S34）。
【００５２】
なお、ステップS30において「領域属性」に「通常領域」が設定されていないことが確認されたならば、これは即ち「冗長化領域」又は「高速化領域」が既に設定されていることを意味するので、フラッシュメモリ内に２重化のための記録領域を新たに確保する必要がない。従って、この場合は、ステップS34にジャンプして、マッピングテーブルの「領域属性」の情報を、登録命令に含まれている領域属性を示す情報に変更することにより、登録命令の内容をマッピングテーブルに反映する。
【００５３】
また、ステップS31においてフラッシュメモリ内に該当する記録領域分の空きがないことが確認された場合はステップS35のエラー処理にジャンプして、例えばドライバに対してエラーコマンドを返す。
【００５４】
図９は、コントローラにおける書き込み処理のフローチャートである。
ホスト３側からドライバを介してライト命令を受信すると、先ず、ライト命令を受けたデータブロックの記録用磁気ディスク内の記録領域を示す情報に基づいてマッピングテーブルの「磁気番地」を検索して、ヒットしたレコードの「領域属性」が「通常領域」であるか否かを確認する（S40）。ここで、「領域属性」が「通常領域」であることが確認されると、記録用磁気ディスク内の上記記録領域にデータを書き込む処理即ち従来の書き込み処理をし（S41）、それからホスト３側へ登録完了通知を返す処理を行う（S42）。
【００５５】
一方、ステップS40において「領域属性」が「通常領域」でないことが確認されると、更に「領域属性」が「高速化領域」であるか否かを確認する（S43）。ここで、「領域属性」が「高速化領域」でないことが確認されると、「領域属性」は残る一方の「冗長化領
域」であるので、上記ヒットしたレコードの「磁気番号」及び「メモリ番号」の情報に基づき、フラッシュメモリ及び記録用磁気ディスクの該当する記録領域にデータを書き込む処理（ライトスルー）をし（S44）、それからホスト３側へ登録完了通知を返す処理を行う（S45）。
【００５６】
一方、ステップS43において「領域属性」は「高速化領域」であることが確認されると、先ず、上記ヒットしたレコードの「メモリ番号」の情報に基づきフラッシュメモリの該当する記録領域にデータを書き込む処理をし（S46）、次いでホスト３側へ登録完了通知を返す処理を行う（S47）。そして、その後、所定の状況下になったときにフラッシュメモリの最新データを記録用磁気ディスクに反映する処理（ライトバック）を行う（S48）。「所定の状況下」とは、例えばハイブリッド記録装置２の電源接続時、電源切断前、外部からのデータの読み出しや書き込みが無いとき、或いはホストから更新のコマンドを受信したときなど、である。
【００５７】
なお、上記ライトバック処理では、マッピングテーブルの「磁気番地」と「メモリ番地」との対応関係に基づいて、フラッシュメモリ内の所定の記録領域の情報で記録用磁気ディスク内の該当する記録領域の情報を更新するように処理が行われる。この更新は、マッピングテーブルで管理している全ての「メモリ番地」を対象に一括して行うようにしても良いし、或いは、未更新の「メモリ番地」をマッピングテーブルで管理できるようにして、ライトバック処理時に未更新の情報のみ更新を行うようにしても良い。
【００５８】
特に図示されていないが、コントローラにおける読み出し処理は次の如くに行う。即ち、ホスト３側からドライバを介してリード命令を受信すると、マッピングテーブルを参照し、リード命令により指定されたデータブロックが記録されている磁気番地に対応する領域属性に応じて図４に示すごとくに何れか一方の記録媒体のデータにアクセスする。例えば領域属性が高速化領域又は冗長化領域であればフラッシュメモリに高速アクセスし、それ以外では従来どおりに記録用磁気ディスクのみへのアクセス（HDDアクセス）をする。
【００５９】
図１０は、コントローラにおける復元処理のフローチャートである。
このフローは、図４にまとめた復元処理における処理の違いの一例を示すものである。
ここでは、ホスト側から読み出すことができなかったブロック番号即ち物理破損が生じている記録領域に記録されているデータブロックのブロック番号又は読み出したデータに誤り訂正符号処理を施した結果が所定値よりも悪いブロックデータのブロック番号をまとめて「故障ブロック」と称し、コントローラにおいての故障ブロックに対する復元処理を説明する。
【００６０】
先ず、マッピングテーブルから故障ブロックに該当するレコードを検索し、「メモリ番地」の登録の有無を確認する（S50）。ここで、「メモリ番地」が未登録であることが確認されると、これは即ち記録用磁気ディスクのみにデータが存在し、故障ブロックのデータは物理的に壊れ復元不可能な状態にあることを意味するため、従来のHDDエラー処理を行う（S51）。
【００６１】
一方、ステップS50において「メモリ番地」に登録データがあることが確認されると、続いてそれに対応する「領域属性」が「高速化領域」であるか否かを確認する（S52）。ここで、「領域属性」が「高速化領域」でないことが確認されると、これは即ち「領域属性」が「冗長化領域」であることを示しているので、残りの一方のデータ（つまり「メモリ番地」に指定されているデータが故障ブロックに対応するので、ここでは「磁気番地」に指定されているデータ）の取得処理を行う。このとき、故障ブロックのデータを含め、少なくとも一方のデータを取得することができたか否かを判定し（S53）、両方とも取得することができなかった場合は従来のHDDエラー処理を行う（S51）。
【００６２】
一方、ステップS53において少なくとも何れか一方を取得することができた場合は、続いて双方のデータを取得することができたか否かを判定し（S54）、一方のデータのみならばそのデータを他方の記録媒体にコピーする処理を行う（S55）。このステップS54において双方のデータを取得したならば、双方のデータに誤り訂正符号処理を施し、該双方のデータを誤り率の低いデータに統一させる処理即ち誤り率の低いデータを他方の記録媒体にコピーする処理を行う。（S56）。
【００６３】
また、ステップS52において、「領域属性」が「高速化領域」であることが確認されると、先ず、フラッシュメモリのデータが取得可能であるか否かを確認し（S57）、取得可能であるならば他方の記録媒体のデータが壊れている可能性もあるので、フラッシュメモリのデータを採用し、これを他方の記録媒体にコピーする（S58）。
【００６４】
一方、ステップS57においてフラッシュメモリのデータが取得不可能であることが確認されると、「磁気番地」に指定されている記録用磁気ディスクのデータの取得処理をし（S59）、データが取得できない場合は従来のHDDエラー処理を行う（S51）。データが取得できた場合は、このデータを採用し、これを他方のフラッシュメモリにコピーする。
【００６５】
なお、記録領域が物理的に破損しているような場合のコピーは、記録媒体の空きスペースに新たにコピー用の記録領域を割り当て、データをコピーし、マッピングテーブルの「磁気番地」又は「メモリ番地」をそのコピー用の記録領域に更新するようにして行う。
【００６６】
本実施例のハイブリッド記録装置では、フラッシュメモリ内の記録領域を高速化が必要なデータのための領域、冗長化が必要なデータのための領域などのように、ホストから用途別に割り当てることができる。
【００６７】
また、ホストから従来のコマンドを受信してもデータの適正化情報に応じたアクセス制御（高速アクセス処理や冗長化処理など）をハイブリッド記録装置内で自動的に行うことが可能となる。
【００６８】
これは例えばHDDが起動ディスクに使用されている場合OSの起動時間を早めることにも繋がる。OSでは起動時、電力が供給され媒体を回転させる機械動作（スピンアップ）に時間かかるが、この起動時に必要なファイルを記録用磁気ディスクだけでなく不揮発性半導体メモリにマッピングして置いておくことで、スピンアップを待たずに高速アクセスが可能となり、OSの立ち上げ時間が短縮されるようになる。
【００６９】
以上のように、本実施例のハイブリッド記録装置は、外部装置がもつ各データごとの適正化情報を、記録制御方式の違いとしてハイブリッド記録装置に反映させることが可能になる。
【００７０】
（付記１）
不揮発性半導体メモリ及び記録用磁気ディスクを備えたハイブリッド記録装置であって、
上記記録用磁気ディスク内の第一記録領域と上記不揮発性半導体メモリ内の第二記録領域とをマッピングするマッピング手段と、
上記第一記録領域へのアクセス命令があると上記マッピング手段がマッピングしている上記第二記録領域にアクセスする制御を行う制御手段と、
を備えることを特徴とするハイブリッド記録装置。
（付記２）
上記マッピング手段は、上記第一記録領域と上記第二記録領域とを、冗長化領域又は高速化領域の内の何れか一方を示す属性を付けてマッピングし、
上記制御手段は、上記第一記録領域へのアクセス命令として、書き込み命令を受信したときに、
上記第一記録領域に上記冗長化領域を示す属性が付けられている場合は上記第一記録領域及び上記第二記録領域に共通のデータを書き込む制御を行い、
上記第一記録領域に上記高速化領域を示す属性が付けられている場合は上記第二記録領域に最新のデータを書き込む制御を行い且つ所定状況下においてのみ上記第二記録領域の最新のデータを上記第一記録領域に書き込む制御を行う、
ことを特徴とする付記１に記載のハイブリッド記録装置。
（付記３）
上記マッピング手段は、ホストから指定されるブロックを単位に、上記記録用磁気ディスク内の上記ブロックに対応する記録領域と不揮発性半導体メモリ内の記録領域の一部とを上記第一記録領域及び上記第二記録領域として対応付け且つ上記第一記録領域及び上記第二記録領域のペアごとに上記属性を対応付けするマッピングテーブルを備える、
ことを特徴とする付記２に記載のハイブリッド記録装置。
（付記４）
上記制御手段は、
上記冗長化領域の属性を付けてマッピングされている上記第一記録領域及び上記第二記録領域の内の何れか一方のデータが破損している場合に、該破損しているデータを他方の正常なデータから復元する制御を行う、
ことを特徴とする付記２又は付記３に記載のハイブリッド記録装置。
（付記５）
上記制御手段は、
上記冗長化領域の属性を付けてマッピングされている上記第一記録領域及び上記第二記録領域の双方のデータが整合しない場合に、該双方のデータに誤り訂正符号処理を施し、該双方のデータを誤り率の低いデータに統一させる制御を行う、
ことを特徴とする付記２乃至付記４の内の何れか１項に記載のハイブリッド記録装置。（付記６）
上記制御手段は、
上記高速化領域の属性を付けてマッピングされている上記第一記録領域及び上記第二記録領域の内の何れか一方のデータが破損している場合に、該破損しているデータを他方の正常なデータから復元する制御を行う、
ことを特徴とする付記  に記載のハイブリッド記録装置。
（付記７）  
ホストから送信されるリード命令及びライト命令をアクセス命令として、特定の命令を登録命令として受信する、且つ上記アクセス命令を受信した場合に記録用磁気ディスク内の記録領域にアクセスする記録装置であって、
不揮発性半導体メモリと、
上記ホストから上記登録命令を受信すると上記ホストからの受信ブロックに対応する上記記録用磁気ディスク内の第一記録領域を上記不揮発性半導体メモリ内に割り当てて二重化するマッピング手段と、
上記ホストから上記第一記録領域へのアクセス命令を受信すると上記マッピング手段が上記不揮発性半導体メモリ内に割り当てた記録領域にアクセスする制御を行う制御手段と、
を備えることを特徴とするハイブリッド記録装置。
（付記８）
上記マッピング手段は、上記ホストから上記登録命令として冗長化を示す登録命令を受信すると、上記ホストからの受信ブロックに対応する上記記録用磁気ディスク内の第一記録領域を上記不揮発性半導体メモリ内に冗長化領域として割り当てて二重化し、且つ、上記ホストから上記登録命令として高速化を示す登録命令を受信すると、上記ホストからの受信ブロックに対応する上記記録用磁気ディスク内の第一記録領域を上記不揮発性半導体
メモリ内に高速化領域として割り当てて二重化し、
上記制御手段は、上記第一記録領域へのアクセス命令として書き込み命令を受信したときに、
上記不揮発性半導体メモリ内に上記第一記録領域の冗長化領域が割り当てられている場合は上記第一記録領域及び上記第二記録領域に共通のデータを書き込む制御を行い、上記不揮発性半導体メモリ内に上記第一記録領域の高速化領域が割り当てられている場合は上記第二記録領域に最新のデータを書き込む制御を行い且つ所定状況下においてのみ上記第二記録領域の最新のデータを上記第一記録領域に書き込む制御を行う、
ことを特徴とする付記７に記載のハイブリッド記録装置。
（付記９）
上記冗長化領域又は上記高速化領域に設定されたデータは不揮発性半導体メモリから読み出しを行う、
ことを特徴とする付記２に記載のハイブリッド記録装置。
【図面の簡単な説明】
【００７１】
【図１】本発明の実施の形態によるハイブリッド記録装置の論理構成図である。
【図２】本実施例による着脱式のハイブリッド記録装置においてのシステム構成を示した図である。
【図３】マッピングテーブル２２０の構成例である。
【図４】領域属性に応じた処理の違いの一例を示したものである。
【図５】ホストコンピュータ３からハイブリッド記録装置２に対してデータブロックの領域属性を登録させる際の装置間の通信シーケンス図である。
【図６】図５のステップS1においての、データブロックの配置ポリシーを選定する処理のフローチャートである。
【図７】図５のステップS2においてドライバで生成される登録命令の構成図である。
【図８】コントローラにおける登録処理のフローチャートである。
【図９】コントローラにおける書き込み処理のフローチャートである。
【図１０】コントローラにおける復元処理のフローチャートである。
【符号の説明】
【００７２】
１  ハイブリッド記録装置
１０  記録用磁気ディスク
１１  不揮発性半導体メモリ
１２  マッピング手段
１３  制御手段
１００  通常記録領域
１０２  第一記録領域
１１０  第二記録領域
L1、アクセス命令
L2、L3  アクセス経路
【図１】
0005049835.tif 000002
【図２】
0005049835.tif 000003
【図３】
0005049835.tif 000004
【図４】
0005049835.tif 000005
【図５】
0005049835.tif 000006
【図６】
0005049835.tif 000007
【図７】
0005049835.tif 000008
【図８】
0005049835.tif 000009
【図９】
0005049835.tif 000010
【図１０】
0005049835.tif 000011