説明

パリティ機能付きハードディスク装置

【課題】簡易な手法にてデータの信頼性を向上させることが可能なパリティ機能付きハードディスク装置を提供する。
【解決手段】コントローラ11は、データを記録する場合、所定のブロック毎に、データをハードディスク13に記録し、所定のエラー訂正方式によってブロック内のデータからパリティを計算し、パリティをフラッシュメモリ14に記録する。また、データを再生する場合、ハードディスク13からデータを読み出し、所定のブロック内で読み出しエラーを判定すると、フラッシュメモリ14からそのブロックのパリティを読み出し、所定のエラー訂正方式によってデータエラーを復元する。所定のブロック長のサイズ及び所定のエラー訂正方式は、ハードディスク13のセクタに対する記録及び再生処理の可否を測定し、そのエラー率及びエラー分布に基づいて、予め設定される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像等の各種データを記録及び再生するハードディスク装置に関し、特に、データの再生時にエラーが発生した場合、記録時に計算したパリティを用いてデータを復元するパリティ機能付きハードディスク装置に関する。
【背景技術】
【0002】
従来、画像等の各種データを記録及び再生するハードディスク装置が知られている。一般に、ハードディスク装置は、ハードディスクの外周側から内周側へ向けて、通常512バイトの容量のセクタと呼ばれる単位にデータを記録する。
【0003】
セクタ単位にデータを記録する方式の一つとして、ゾーン記録方式がある。ゾーン記録方式は、ハードディスク面を半径方向に輪切りにして数十程度の数に分割(ゾーン分割)し、分割した一つのゾーン内において同一の転送レートでデータを記録するものである。また、ゾーン記録方式を用いたハードディスクは、外周に向かう程ゾーン内のセクタ数が多くなり、内外周に渡って面記録密度がほぼ一定になるように構成される。つまり、外周に向かう程、転送レートを高くすることができるから、面積を有効利用し、大容量化を実現することができる。
【0004】
このようなハードディスク装置に対し、OS(Operating System)のファイルシステムにより論理フォーマットを行うと、複数のセクタから構成されるクラスタ単位にデータが記録されるようになる。
【0005】
ところで、論理フォーマットが行われたハードディスク装置では、初期状態において、データの記録及び再生が不可能な不良セクタが存在することがある。このような初期不良(フォーマット時の不良)に対し、ハードディスク装置は、不良セクタにアクセスしないように管理を行う。具体的には、不良セクタのアドレスを飛ばして次のアドレスにアクセスしたり、不良セクタに代わる代替セクタを割り当てたりする。
【0006】
一方、ハードディスク装置を用いた運用が始まり、データの記録及び再生が連続して行われると、ある特定のセクタでエラーレートが高くなり、記録ができなくなることがある。また、ハードディスクへのアクセスに伴うヘッドの浮上量の変動及び振動等により、記録及び再生が不安定になることもある。このような運用時の不良に対し、ハードディスク装置は、初期不良時と同様に、不良セクタ管理を行う。
【0007】
しかしながら、ハードディスクにアクセスしている際にセクタ不良が発生した場合には、データに欠落が生じる可能性がある。このような場合には、再読み出し(リトライ)処理を行うことによりデータの欠落を防ぐことができるが、データの転送速度が極端に低くなってしまう。
【0008】
このような問題を解決するため、ハードディスクに記録されるデータの信頼性を確保する方式として、RAID(Redundant Arrays of Inexpensive Disks)と呼ばれる技術が用いられる(例えば、特許文献1を参照)。RAIDとは、複数のハードディスクを組み合わせてディスクアレイを構成し、仮想的な1台のハードディスクとして運用する方式である。RAIDのディスクアレイ管理方式を用いたハードディスク装置は、データを複数のハードディスクに記録し、データのパリティも記録し、ハードディスクの不良に対してデータを再構成する。これにより、データの信頼性が確保される。例えば、RAID3のディスクアレイ管理方式を用いたハードディスク装置は、データ記録時に、データを分割して複数のハードディスクに並列に記録すると共に、分割したデータからパリティを計算し、そのパリティをパリティ用ハードディスクに記録する。そして、データ再生時に、複数のハードディスクのうちの1台が故障したと判定した場合、残りのハードディスクから読み出したデータとパリティ用ハードディスクから読み出したパリティとに基づいて、データを復元する。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開平6−324815号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、前述のRAIDの方式を用いたハードディスク装置は、複数のハードディスクからなるディスクアレイを備えるから、ハードディスク装置として大型化し、コストが増大するという問題があった。また、前述のとおり、ハードディスクの初期不良(フォーマット時の不良)及び運用時の不良に対し、不良セクタのアドレスを飛ばしたり、不良セクタに代わる代替セクタを割り当てたりする不良セクタ管理を行う必要があるから、管理が複雑になるという問題があった。
【0011】
そこで、不良セクタ管理を行うことなく、ハードディスクに記録されるデータの信頼性を向上させることが可能な簡易な構成のハードディスク装置が望まれていた。
【0012】
本発明は前記課題を解決するためになされたものであり、その目的は、所定数のセクタからなるブロックを単位にしてパリティを計算し、ブロック毎に読み出し時のエラーデータを復元することにより、簡易な手法にてデータの信頼性を向上させることが可能なパリティ機能付きハードディスク装置を提供することにある。
【課題を解決するための手段】
【0013】
前記目的を達成するために、本発明によるパリティ機能付きハードディスク装置は、ハードディスクに記録するデータに基づいてパリティを計算し、前記ハードディスクからデータを読み出す際にエラーとなったデータを、前記パリティを用いて復元するパリティ機能付きハードディスク装置において、データの記録及び再生を行う制御部、パリティを記録するメモリ部、及び、データを記録するハードディスクを備え、前記制御部が、データを記録する場合、前記ハードディスクに記録するデータ群を、複数セクタにより構成される所定サイズのブロックに分割し、前記ブロック毎に、前記ブロック内のデータに基づいて所定のエラー訂正方式にてパリティを計算し、前記ブロック内のデータをハードディスクに、前記ブロックに対応するパリティをメモリ部にそれぞれ記録し、データを再生する場合、前記ハードディスクからデータを読み出し、前記ブロック内で読み出しエラーが発生したときに、前記メモリ部から前記ブロックに対応するパリティを読み出し、前記ブロック内のエラーデータを除くデータと前記パリティとを用いて、前記所定のエラー訂正方式にてエラーデータを復元する、ことを特徴とする。
【0014】
また、本発明によるパリティ機能付きハードディスク装置は、ハードディスクに記録するデータに基づいてパリティを計算し、前記ハードディスクからデータを読み出す際にエラーとなったデータを、前記パリティを用いて復元するパリティ機能付きハードディスク装置において、データの記録及び再生を行う制御部、及び、データ及びパリティを記録するハードディスクを備え、前記制御部が、データを記録する場合、前記ハードディスクに記録するデータ群を、複数セクタにより構成される所定サイズのブロックに分割し、前記ブロック毎に、前記ブロック内のデータに基づいて所定のエラー訂正方式にてパリティを計算し、前記ブロック内のデータ及び前記ブロックに対応するパリティをハードディスクに記録し、データを再生する場合、前記ハードディスクからデータを読み出し、前記ブロック内で読み出しエラーが発生したときに、前記ハードディスクから前記ブロックに対応するパリティを読み出し、前記ブロック内のエラーデータを除くデータと前記パリティとを用いて、前記所定のエラー訂正方式にてエラーデータを復元する、ことを特徴とする。
【0015】
また、本発明によるパリティ機能付きハードディスク装置は、前記ブロックのサイズ、及びエラー訂正方式が、前記ハードディスクのセクタに対しデータの記録及び再生のエラーが測定され、前記測定により得られた、ランダムに発生したエラーの割合及びバースト的に発生したエラーの分布に基づいて設定される、ことを特徴とする。
【発明の効果】
【0016】
以上のように、本発明によれば、所定サイズのブロックを単位にして、所定のエラー訂正方式にてパリティを計算し、ブロック毎に読み出し時のエラーデータを復元するようにした。これにより、ブロック毎にデータの記録及び再生が行われ、読み出しエラーの際には、ブロック毎にエラーデータの復元が行われるから、不良セクタ管理を行う必要がない。また、RAIDの方式においてはエラー時にハードディスクを切り替える処理を行うが、本発明ではこのような切り替え処理を行う必要がない。したがって、簡易な手法によりデータの信頼性を向上させることが可能となる。
【図面の簡単な説明】
【0017】
【図1】本発明の第1の実施形態(実施例1)によるパリティ機能付きハードディスク装置の構成を示すブロック図である。
【図2】コントローラによる記録処理を説明するフローチャートである。
【図3】コントローラによる再生処理を説明するフローチャートである。
【図4】実施例1の記録処理及び再生処理の説明を補助する図である。
【図5】本発明の第2の実施形態(実施例2)によるパリティ機能付きハードディスク装置の構成を示すブロック図である。
【図6】実施例2の記録処理及び再生処理を補助する図である。
【発明を実施するための形態】
【0018】
以下、本発明を実施するための形態について、図面を参照して説明する。実施例1では、データから計算したパリティを固体メモリに記録し、実施例2では、データから計算したパリティを、データと共に同じハードディスクに記録する。また、実施例1,2は共に、所定サイズのブロックを単位にして、所定のエラー訂正方式にてパリティを計算し、読み出しエラーの際には、ブロック毎にエラーデータを復元する。このブロック長を規定するサイズ及びエラー訂正方式は、ハードディスクのセクタに対する記録及び再生処理のエラー率及びエラー分布を測定することにより、エラーデータを確実に復元できるように予め設定される。以下、実施例1,2について詳細に説明する。
【0019】
〔実施例1〕
まず、実施例1について説明する。実施例1では、所定サイズのブロックを単位にして、所定のエラー訂正方式にてパリティを計算し、計算したパリティを固体メモリに記録する。
【0020】
(構成)
図1は、本発明の第1の実施形態(実施例1)によるパリティ機能付きハードディスク装置の構成を示すブロック図である。このパリティ機能付きハードディスク装置1は、コントローラ(制御部)11、キャッシュメモリ12、ハードディスク(磁気ディスク)13及びフラッシュメモリ(メモリ部)14を備えている。
【0021】
コントローラ11は、データを記録する際に、ハードディスク13に記録するデータを入力し、入力したデータ群を所定サイズのブロックに分割し、ブロック内のデータからパリティを計算する。そして、コントローラ11は、データを、キャッシュメモリ12を介してハードディスク13に記録すると共に、パリティをフラッシュメモリ14に記録する。パリティは、所定サイズのブロックを単位にして、所定のエラー訂正方式にて計算される。また、コントローラ11は、データを再生する際に、キャッシュメモリ12を介してハードディスク13からデータを読み出し、所定サイズのブロック毎に読み出しエラーの判定を行い、データを出力する。この場合、ブロック内でデータの読み出しエラーが発生したときには、フラッシュメモリ14からそのブロックのパリティを読み出し、所定のエラー訂正方式にてブロック内のエラーデータ以外のデータ及びパリティに基づいてデータを復元し、正しく読み出したデータ及び復元したデータを出力する。
【0022】
キャッシュメモリ12は、コントローラ11からの記録の指示に従い、指定されたセクタアドレスに対しハードディスク13へアクセスし、入力したデータを記録する。また、コントローラ11からの読み出しの指示に従い、指定されたセクタアドレスに対しハードディスク13へアクセスし、データを読み出してコントローラ11に出力する。フラッシュメモリ14は、所定サイズのブロック毎に計算されたパリティが記録される固体メモリである。ハードディスク13には、所定サイズのブロックを単位にしてデータが記録される。
【0023】
尚、ハードディスク13にデータを記録する際にはセクタアドレスが指定され、また、ハードディスク13からデータを読み出す際にはセクタアドレスが指定されるが、本実施例1においては、説明を簡単にするため、セクタアドレスの指定については言及しない。実施例2においても同様である。また、フラッシュメモリ14に対して指定されるセクタアドレスについても同様である。
【0024】
(ブロック、エラー訂正方式の設定)
次に、コントローラ11に予め設定される、ブロック長のサイズ及びエラー訂正方式の種類について説明する。ブロックとは、ハードディスク13において複数セクタからなる記録単位をいう。尚、OSのファイルシステムによる論理フォーマットを考慮すると、複数セクタにより構成されるクラスタが記録単位になるから、ブロックは、1クラスタを記録単位とするか、または、複数のクラスタの集合を記録単位とすることが望ましい。すなわち、ブロックは、クラスタサイズを整数倍した、複数セクタからなる記録単位とすることが望ましい。
【0025】
パリティ機能付きハードディスク装置1の設計者は、ブロック長のサイズ及びエラー訂正方式の種類を設定するために、パリティ機能付きハードディスク装置1に備えたハードディスク13の全セクタに対し、データの記録及び再生を行ってその可否をチェックし、エラー率及びエラーの分布を得る。
【0026】
設計者は、データの記録及び再生を行った結果、ランダムエラーの発生に対し、記録及び再生を行うことができなかった不良セクタ数を総セクタ数で除算し、ランダムエラーのエラー率を計算し、ブロック長のサイズ及びエラー訂正方式を設定する。例えば、計算したエラー率が1/100未満の場合、100セクタが1ブロックになるようにブロック長のサイズを設定し、排他的論理和演算方式をエラー訂正方式として設定する。これは、エラー率が1/100未満の場合、100セクタに対し最大で1セクタの割合でエラーが発生することが予想されるところ、コントローラ11が100セクタのデータ毎に1セクタのパリティを計算し、排他的論理和演算方式によって1セクタのエラーデータを復元することができるからである。また、エラー率が1/100未満の場合、200セクタが1ブロックになるようにブロック長のサイズを設定し、エラー訂正方式をリードソロモン符号による訂正方式として設定する。この場合、200セクタに対して最大で2セクタの割合でエラーが発生することが予想されるところ、コントローラ11がリードソロモン符号を用いてECCビットを生成し2セクタ分のパリティを計算することにより、2セクタのエラーデータを復元することができるからである。
【0027】
また、設計者は、データの記録及び再生を行った結果、連続する複数のセクタに対するバーストエラーの発生に対し、記録及び再生を行うことができなかった不良セクタ数を測定し、ブロック長のサイズ及びエラー訂正方式を設定する。例えば、連続した不良セクタの数が3の場合、100セクタが1ブロックになるようにブロック長のサイズを設定し、エラー訂正方式をリードソロモン符号による訂正方式として設定する。この場合、100セクタに対し最大で3セクタの割合でエラーが発生することが予想されるところ、コントローラ11がリードソロモン符号を用いてECCビットを生成し3セクタ分のパリティを計算することにより、3セクタ分のエラーデータを復元することができるからである。この場合、ブロック長のサイズは100以外の値でもよく、3セクタを超えるエラーデータが発生しない範囲内において設定される。
【0028】
このように、コントローラ11がパリティを計算する際及びエラーデータを復元する際のブロック長のサイズ、及びエラー訂正方式の種類は、ハードディスク13のセクタに対する記録及び再生処理のエラー率及びエラー分布を測定することにより、設計者によって予め設定される。つまり、コントローラ11は、このようにして設定されたブロック長のサイズ及びエラー訂正方式を用いることにより、ブロック内でエラーが発生してもそのエラーは想定範囲内のエラーになるから、パリティに基づいてエラーデータを確実に復元することができる。
【0029】
(記録処理)
次に、コントローラ11による記録処理について説明する。図2は、記録処理を説明するフローチャートである。コントローラ11は、ハードディスク13に記録すべきデータの入力を開始すると(ステップS201)、入力したデータ群を予め設定されたブロックに分割し、そのブロック毎に、予め設定されたエラー訂正方式にてブロック内のデータからパリティを計算する(ステップS202)。例えば、ブロック長のサイズが100セクタ、エラー訂正方式が排他的論理和演算方式に設定されている場合、コントローラ11は、1ブロックのデータに対して排他的論理和を演算し、パリティを計算する。計算されたパリティは、1セクタ長の情報となる。
【0030】
コントローラ11は、ブロック内のデータをハードディスク13に記録する(ステップS203)。そして、コントローラ11は、ステップS202にて計算したパリティをフラッシュメモリ14に記録する(ステップS204)。この場合、コントローラ11は、ハードディスク13に記録したデータのブロックアドレスと同じ番号のセクタアドレスに、パリティを記録する。これにより、ハードディスク13に記録したデータのブロックアドレスと、フラッシュメモリ14に記録したパリティのセクタアドレスとの間の整合性が取り易くなるから、データ及びパリティの管理が容易になる。
【0031】
図4は、実施例1の記録処理及び再生処理の説明を補助する図であり、コントローラ11が5セクタを1ブロックとして、ブロック毎に排他的論理和を演算し、1セクタ長のパリティを求める例を示している。図4に示すように、コントローラ11は、1ブロック(5セクタ)毎にデータをハードディスク13に記録し、1ブロックのデータから計算した1セクタ長のパリティをフラッシュメモリ14に記録する。1ブロックのデータに対し1セクタのパリティが対応している。
【0032】
図2に戻って、コントローラ11は、入力したデータについて、全てのブロックの記録が完了したか否かを判定する(ステップS205)。全てのブロックの記録が完了していないと判定した場合(ステップS205:N)、ステップS202へ移行し、次のブロックの処理を行う。一方、全てのブロックの記録が完了したと判定した場合(ステップS205:Y)、記録処理を終了する。
【0033】
このように、コントローラ11は、全てのブロックのデータをハードディスク13に記録すると共に、所定のブロック毎に所定のエラー訂正方式によってパリティを計算し、フラッシュメモリ14に記録する。したがって、フラッシュメモリ14には、ブロック毎に計算されたパリティが記録される。
【0034】
(再生処理)
次に、コントローラ11による再生処理について説明する。図3は、再生処理を説明するフローチャートである。コントローラ11は、ハードディスク13からデータの読み出しを開始し(ステップS301)、予め設定された1ブロック分のデータの読み出しが完了すると、ブロック内のデータについて、読み出しエラーの有無を判定する(ステップS302)。データの読み出しエラーが無いと判定した場合(ステップS302:N)、ステップS305へ移行する。
【0035】
一方、コントローラ11は、読み出しエラーが有ると判定した場合(ステップS302:Y)、そのブロックに対するパリティをフラッシュメモリ14から読み出す(ステップS303)。ここで、フラッシュメモリ14に記録されたパリティのセクタアドレスの番号と、ハードディスク13に記録されたデータのブロックアドレスの番号とが同一の場合、コントローラ11は、ハードディスク13から読み出したデータのブロックアドレスと同じ番号のセクタアドレスを指定することにより、そのブロックに対するパリティをフラッシュメモリ14から読み出す。これにより、データのブロックアドレスとパリティのセクタアドレスとの間の整合性が取れているから、パリティの読み出し処理が容易になる。
【0036】
コントローラ11は、ブロック内のエラーデータ以外のデータと、ステップS303にて読み出したパリティとに基づいて、予め設定されたエラー訂正方式にてエラーデータを復元する(ステップS304)。例えば、ブロック長のサイズが100セクタ、エラー訂正方式が排他的論理和演算方式に設定されている場合、コントローラ11は、1ブロック内で1セクタのデータ読み出しにエラーが有ると判定すると、それ以外の99セクタのデータと、読み出した1セクタ長のパリティとの間で排他的論理和を演算し、その演算結果を復元データとして扱う。ここで、ブロック長のサイズが100セクタに設定され、エラー訂正方式が排他的論理和演算方式に設定された意義は、これらの設定が、100セクタに対して1セクタの割合でエラーが発生する可能性がある測定データによるものであるから、1ブロック内で1セクタのエラーが発生するか、または、エラーが発生しないことを前提にして、エラーデータを確実に復元することができることにある。
【0037】
コントローラ11は、ハードディスク13から読み出したデータについて、全てのブロックの読み出しが完了したか否かを判定する(ステップS305)。全てのブロックの読み出しが完了していないと判定した場合(ステップS305:N)、ステップS302へ移行し、次のブロックの処理を行う。一方、全てのブロックの読み出しが完了したと判定した場合(ステップS305:Y)、再生処理を終了する。
【0038】
このように、コントローラ11は、データを再生する場合、所定のブロック毎に、ハードディスク13からデータを読み出す際のエラーを判定すると、フラッシュメモリ14からそのブロックのパリティを読み出し、所定のエラー訂正方式によってエラーデータを復元する。
【0039】
以上のように、実施例1のパリティ機能付きハードディスク装置1によれば、データを記録する場合、所定のブロック毎に、データをハードディスク13に記録し、所定のエラー訂正方式によってブロック内のデータからパリティを計算し、パリティをフラッシュメモリ14に記録するようにした。また、データを再生する場合、ハードディスク13からデータを読み出し、所定のブロック内で読み出しエラーを判定すると、フラッシュメモリ14からそのブロックのパリティを読み出し、所定のエラー訂正方式によってデータエラーを復元するようにした。ここで、所定のブロック長のサイズ及び所定のエラー訂正方式は、ハードディスク13のセクタに対する記録及び再生処理の可否を測定し、そのエラー率及びエラー分布によって予め設定される。例えば、ランダムエラーのエラー率が1/100未満の場合、ブロック長のサイズを100セクタとし、エラー訂正方式を排他的論理和演算方式とする。100セクタに対し最大で1セクタのエラーが発生することが想定されるから、排他的論理和演算により1セクタ長のパリティを計算することにより、1セクタのエラーが発生しても、パリティを用いてその1セクタのエラーデータを復元することができるからである。同様に、バーストエラーが発生する隣接セクタ数が3の場合、ブロック長のサイズを100セクタとし、エラー訂正方式をリードソロモン符号による方式とする。100セクタに対し最大で3セクタのエラーが発生することが想定されるから、リードソロモン符号を用いて3セクタ長のパリティを計算することにより、3セクタのエラーが発生しても3セクタ分のパリティを用いて、その3セクタのエラーデータを復元することができるからである。このように、エラー率及びエラー分布を考慮して、エラーデータを確実に復元できるように、ブロック長のサイズ及びエラー訂正方式が予め設定される。
【0040】
これにより、エラーデータを確実に復元することができる。また、ハードディスク13に対するデータの記録及び再生のために、不良セクタ管理を行う必要がない。また、リトライ処理の代わりにパリティを用いたデータ復元処理を行うようにしたから、リトライ処理を行う必要がなくなり、データの転送速度が低くなることはない。また、従来のRAIDの方式では、エラー時にハードディスクを切り替える処理を行うが、実施例1のパリティ機能付きハードディスク装置1ではこのような切り替え処理を行う必要がない。したがって、簡易な手法によりデータの信頼性を向上させることが可能となる。
【0041】
〔実施例2〕
次に、実施例2について説明する。実施例2では、所定サイズのブロックを単位にして、所定のエラー訂正方式にてパリティを計算し、計算したパリティを、データと共に同じハードディスクに記録する。
【0042】
(構成)
図5は、本発明の第2の実施形態(実施例2)によるパリティ機能付きハードディスク装置の構成を示すブロック図である。このパリティ機能付きハードディスク装置2は、コントローラ21、キャッシュメモリ12及びハードディスク13を備えている。図1に示した実施例1のパリティ機能付きハードディスク装置1と比較すると、実施例2のパリティ機能付きハードディスク装置2は、フラッシュメモリ14を備えていない点でパリティ機能付きハードディスク装置1と相違する。また、実施例2のコントローラ21は、計算したパリティを、キャッシュメモリ12を介してハードディスク13に記録する点で実施例1のコントローラ11と相違する。その他の機能は、実施例1に示したものと同一である。また、ブロック長のサイズ及びエラー訂正方式についても、エラーデータを確実に復元できるように、ハードディスク13のセクタに対する記録及び再生処理の可否を測定し、エラー率及びエラー分布に基づいて予め設定される。
【0043】
コントローラ21による記録処理は、図2に示したフローチャートのとおりである。尚、ステップS204において、コントローラ21は、計算したパリティをハードディスク13に記録する。また、コントローラ21による再生処理は、図3に示したフローチャートのとおりである。尚、ステップS303において、コントローラ21は、パリティをハードディスク13から読み出す。
【0044】
図6は、実施例2の記録処理及び再生処理の説明を補助する図であり、コントローラ21が6セクタを1ブロックとして、1ブロック内の5セクタのデータに対し排他的論理和を演算して1セクタ長のパリティを求め、1ブロック内の残りの1セクタにパリティを記録する例を示している。図6に示すように、コントローラ21は、5セクタ毎にデータをハードディスク13に記録し、同じブロック内の残りの1セクタにパリティを記録する。1ブロック内の5セクタのデータに対し、同じブロック内の1セクタのパリティが対応している。
【0045】
以上のように、実施例2のパリティ機能付きハードディスク装置2によれば、実施例1と同様に、エラーデータを確実に復元することができ、簡易な手法によりデータの信頼性を向上させることが可能となる。また、パリティ機能付きハードディスク装置2は、パリティを記録するフラッシュメモリ14を備えていないから、一層簡易な構成により、データの信頼性を向上させることが可能となる。
【符号の説明】
【0046】
1,2 パリティ機能付きハードディスク装置
11,21 コントローラ
12 キャッシュメモリ
13 ハードディスク
14 フラッシュメモリ

【特許請求の範囲】
【請求項1】
ハードディスクに記録するデータに基づいてパリティを計算し、前記ハードディスクからデータを読み出す際にエラーとなったデータを、前記パリティを用いて復元するパリティ機能付きハードディスク装置において、
データの記録及び再生を行う制御部、パリティを記録するメモリ部、及び、データを記録するハードディスクを備え、
前記制御部は、
データを記録する場合、前記ハードディスクに記録するデータ群を、複数セクタにより構成される所定サイズのブロックに分割し、前記ブロック毎に、前記ブロック内のデータに基づいて所定のエラー訂正方式にてパリティを計算し、前記ブロック内のデータをハードディスクに、前記ブロックに対応するパリティをメモリ部にそれぞれ記録し、
データを再生する場合、前記ハードディスクからデータを読み出し、前記ブロック内で読み出しエラーが発生したときに、前記メモリ部から前記ブロックに対応するパリティを読み出し、前記ブロック内のエラーデータを除くデータと前記パリティとを用いて、前記所定のエラー訂正方式にてエラーデータを復元する、ことを特徴とするパリティ機能付きハードディスク装置。
【請求項2】
ハードディスクに記録するデータに基づいてパリティを計算し、前記ハードディスクからデータを読み出す際にエラーとなったデータを、前記パリティを用いて復元するパリティ機能付きハードディスク装置において、
データの記録及び再生を行う制御部、及び、データ及びパリティを記録するハードディスクを備え、
前記制御部は、
データを記録する場合、前記ハードディスクに記録するデータ群を、複数セクタにより構成される所定サイズのブロックに分割し、前記ブロック毎に、前記ブロック内のデータに基づいて所定のエラー訂正方式にてパリティを計算し、前記ブロック内のデータ及び前記ブロックに対応するパリティをハードディスクに記録し、
データを再生する場合、前記ハードディスクからデータを読み出し、前記ブロック内で読み出しエラーが発生したときに、前記ハードディスクから前記ブロックに対応するパリティを読み出し、前記ブロック内のエラーデータを除くデータと前記パリティとを用いて、前記所定のエラー訂正方式にてエラーデータを復元する、ことを特徴とするパリティ機能付きハードディスク装置。
【請求項3】
請求項1または2に記載のパリティ機能付きハードディスク装置において、
前記ブロックのサイズ、及びエラー訂正方式は、前記ハードディスクのセクタに対しデータの記録及び再生のエラーが測定され、前記測定により得られた、ランダムに発生したエラーの割合及びバースト的に発生したエラーの分布に基づいて設定される、ことを特徴とするパリティ機能付きハードディスク装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2010−267333(P2010−267333A)
【公開日】平成22年11月25日(2010.11.25)
【国際特許分類】
【出願番号】特願2009−118479(P2009−118479)
【出願日】平成21年5月15日(2009.5.15)
【出願人】(000004352)日本放送協会 (2,206)
【Fターム(参考)】