(57)【特許請求の範囲】
【請求項１】
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置に於いて、
前記符号器は、
前記記録媒体に記録する単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成する第２符号化部と、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記記録媒体から読み出された、単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成するハミング符号化部と、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とするエラー訂正装置。
【請求項２】
請求項１記載のエラー訂正装置に於いて、
前記符号器の第３符号化部は、前記ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、前記データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
前記符号器の出力部は、前記単位長データに前記第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力し、
前記復号器の第１エラー訂正部は、前記単位データに複数の第２ＲＳパリティが連接されている場合、前記ハミングパリティを一列に整列したデータを前記複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正することを特徴とするエラー訂正装置。
【請求項３】
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラー訂正のために符号化する符号器に於いて、
前記記録媒体に記録する単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化部と、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備えたことを特徴とする符号器。
【請求項４】
請求項３記載の符号器に於いて、
前記第３符号化部は、前記ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、前記データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
前記出力部は、前記単位長データに前記第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力することを特徴とする符号器。
【請求項５】
記録媒体に記録する単位長データをリードソロモン符号化して第１ＲＳパリティを生成し、前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成し、該ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成してデータを記録した記録媒体を含む記録再生系を伝搬するデータのエラー訂正のために符号化された符号化データを復号する復号器に於いて、
前記記録媒体から読み出された、単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化部と、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする復号器。
【請求項６】
請求項５記載の復号器に於いて、前記第１エラー訂正部は、前記単位データに複数の第２ＲＳパリティが連接されている場合、前記ハミングパリティを一列に整列したデータを前記複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正することを特徴とする復号器。
【請求項７】
ｍビットエラーが支配的な系列を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置に於いて、
前記符号器は、
単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正部と、
ｍビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とするエラー訂正装置。
【請求項８】
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラーを訂正する符号ステップと復号ステップを備えたエラー訂正方法に於いて、
前記符号ステップは、
前記記録媒体に記録する単位長データを入力する入力ステップと、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化ステップと、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化ステップと、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化ステップと、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力ステップと、
を備え、
前記復号ステップは、
前記記録媒体から読み出された単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力ステップと、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化ステップと、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正ステップと、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正ステップと、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正ステップと、
エラー訂正された単位長データを出力する出力ステップと、
を備えたことを特徴とするエラー訂正方法。
【請求項９】
ｍビットエラーが支配的な系列を伝搬するデータのエラーを訂正する符号ステップと復号ステップを備えたエラー訂正方法に於いて、
前記符号ステップは、
単位長データを入力する入力ステップと、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化ステップと、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化ステップと、
前記ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化ステップと、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力ステップと、
を備え、
前記復号ステップは、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力ステップと、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化ステップと、
前記ｍビット訂正用パリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正ステップと、
前記各ブロックをエラー訂正されたｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正ステップと、
ｍビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正ステップと、
エラー訂正された単位長データを出力する出力ステップと、
を備えたことを特徴とするエラー訂正方法。
【請求項１０】
１ビットエラーが支配的な記録媒体を含む記録再生系と、前記記録再生系を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置とを備える情報記憶装置に於いて、
前記符号器は、
前記記録媒体に記録する単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成する第２符号化部と、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記記録媒体から読み出された、単位長データに前記前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成するハミング符号化部と、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号化して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする情報記憶装置。
【請求項１１】
ｍビットエラーが支配的な系列と、該系列中を伝搬するデータのエラーを訂正する符号器と復号器を備えた情報記憶装置に於いて、
前記符号器は、
単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正部と、
ｍビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする情報記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ｍビットエラーが支配的な系列を伝搬するデータのエラーを訂正するエラー訂正装置、符号器、復号器、方法及び情報記憶装置に関し、特に、１ビットエラーが支配的な磁気ディスク装置などの記録再生系を伝搬するデータのエラーを訂正するエラー訂正装置、符号器、復号器、方法及び情報記憶装置に関する。
【背景技術】
【０００２】
従来、磁気ディスク装置や光ディスク装置ではエラー訂正符号であるＥＣＣ符号(Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ)としてリードソロモン符号（Ｒｅｅｄ Ｓｏｌｏｍｏｎ符号）が用いられている。従来のＰＲＭＬチャネルなどの長いエラーが出やすい状況下では、リードソロモン符号は最適な誤り訂正符号といえる。
【０００３】
一方、磁気ディスク装置における次世代の誤り訂正技術として低密度パリティチェック符号、即ちＬＤＰＣ(Ｌｏｗ−Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ)符号が注目され、磁気ディスク装置用のＬＤＰＣ符号の研究も盛んに行われている。
【０００４】
ＬＤＰＣ符号はランダム誤りに対する訂正性能が非常に優れている。しかし、ＬＤＰＣ符号にはエラーフロア等の問題もあるため、ＬＤＰＣ符号による復号の後にＥＣＣ符号による誤り訂正を必要とする。
【０００５】
ここで、エラーフロアとは、誤り訂正符号において、低いＳＮＲ（信号対雑音電力比）領域では、雑音電力が低下するにつれて急激に復号誤り率の向上をみせるのに対して、高いＳＮＲ領域では雑音電力が低下するにもかかわらず、誤り率が殆ど向上しなくなる現象をいう。
【特許文献１】「符号理論」、今井秀樹著、電子情報通信学会、平成２年３月１５日発行
【特許文献２】Ｐａｎｕ  Ｃｈａｉｃｈａｎａｖｏｎｇ，  Ｐａｕｌ  Ｈ．  Ｓｉｅｇｅｌ，「Ｔｅｎｓｏｒ−Ｐｒｏｄｕｃｔ  Ｐａｒｉｔｙ  Ｃｏｄｅｓ：  Ｃｏｍｂｉｎａｔｉｏｎ  ｗｉｔｈ  Ｃｏｎｓｔｒａｉｎｅｄ  Ｃｏｄｅｓ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎ  ｔｏ  Ｐｅｒｐｅｎｄｉｃｕｌａｒ  Ｒｅｃｏｒｄｉｎｇ」，ＩＥＥＥ  ＴＲＡＮＳ．  ＯＮ  ＭＡＧＮＥＴＩＣＳ，  ２１４−２１９，  ＶＯＬ．４２，   ＮＯ．２，  ＦＥＢＲＵＡＲＹ  ２００６
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、このような従来のＬＤＰＣ符号による復号で出力されるデータのエラーは圧倒的に１ビットエラーが多く、リードソロモン符号による誤り訂正では１ビットエラーに対し１シンボルを割り当ててしまうため、１ビットエラーの訂正可能な最大数が制約され、効率的な１ビットエラーの訂正ができないという問題がある。
【０００７】
本発明は、ＬＤＰＣ符号などの１ビットエラーが多い系列に適したエラー訂正を可能とするエラー訂正装置、符号器、復号器、方法及び情報記憶装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
（装置）
本発明はエラー訂正装置（ＥＣＣ装置）を提供する。本発明は、１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置に於いて、
符号器は、
記録媒体に記録する単位長データを入力する入力部と、
単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化部と、
ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
単位長データに第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
復号器は、
記録媒体から読み出された単位長データに第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを入力する入力部と、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化部と、
ハミングパリティを一列に整列したデータを第２ＲＳパリティと共にリードソロモン復号して各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
各ブロックをエラー訂正されたハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正した各ブロックを整列したデータを第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする。
【０００９】
ここで、符号器の第３符号化部は、ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
符号器の出力部は、単位長データに第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力する。
【００１０】
また復号器の第１エラー訂正部は、単位データに複数の第２ＲＳパリティが連接されている場合、ハミングパリティを一列に整列したデータを複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して各ブロックのハミングパリティのエラーを訂正する。
【００１１】
本発明は符号器を提供する。本発明は、１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラー訂正のために符号化する符号器に於いて、
記録媒体に記録する単位長データを入力する入力部と、
単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化部と、
ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備えたことを特徴とする。
【００１２】
本発明は復号器を提供する。本発明は、１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータをエラー訂正するために符号化した符号化データを復号する復号器に於いて、
記録媒体から読み出された単位長データに第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを入力する入力部と、
単位長データに前記第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化部と、
ハミングパリティを一列に整列したデータを第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
各ブロックをエラー訂正されたハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正した各ブロックを整列したデータを第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする。
【００１３】
本発明は、ｍビットエラーが支配的な系列を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置を提供する。このような本発明のエラー訂正装置に於いて、
符号器は、
単位長データを入力する入力部と、
単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化部と、
ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
復号器は、
単位長データに第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを入力する入力部と、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化部と、
ｍビット訂正用パリティを一列に整列したデータを第２ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正部と、
各ブロックをエラー訂正されたｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正部と、
ｍビットエラーが訂正された各ブロックを整列したデータを第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする。
【００１４】
（方法）
本発明はエラー訂正方法を提供する。本発明は、１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラーを訂正する符号ステップと復号ステップを備えたエラー訂正方法に於いて、
符号ステップは、
記録媒体に記録する単位長データを入力する入力ステップと、
単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化ステップと、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化ステップと、
ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化ステップと、
単位長データに第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力ステップと、
を備え、
復号ステップは、
記録媒体から読み出された単位長データに第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを入力する入力ステップと、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化ステップと、
ハミングパリティを一列に整列したデータを第２ＲＳパリティと共にリードソロモン復号して各ブロックのハミングパリティのエラーを訂正する第１エラー訂正ステップと、
各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正ステップと、
１ビットエラーが訂正された各ブロックを整列したデータを第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正ステップと、
エラー訂正された単位長データを出力する出力ステップと、
を備えたことを特徴とする。
【００１５】
本発明は、ｍビットエラーが支配的な系列を伝搬するデータのエラーを訂正する符号ステップと復号ステップを備えたエラー訂正方法に於いて、
符号ステップは、
単位長データを入力する入力ステップと、
単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化ステップと、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化ステップと、
ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化ステップと、
単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力ステップと、
を備え、
復号ステップは、
単位長データに第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを入力する入力ステップと、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化ステップと、
ｍビット訂正用パリティを一列に整列したデータを第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正ステップと、
各ブロックをエラー訂正されたｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正ステップと、
ｍビットエラーが訂正された各ブロックを整列したデータを第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正ステップと、
エラー訂正された単位長データを出力する出力ステップと、
を備えたことを特徴とする。
【００１６】
（情報記憶装置）
本発明は情報記憶装置を提供する。本発明は、１ビットエラーが支配的な記録媒体を含む記録再生系と、記録再生系を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置とを備える情報記憶装置に於いて、
符号器は、
記録媒体に記録する単位長データを入力する入力部と、
単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成する第２符号化部と、
ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
復号器は、
記録媒体から読み出された、単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成するハミング符号化部と、
ハミングパリティを一列に整列したデータを第２ＲＳパリティと共にリードソロモン復号して各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号化して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、ＬＤＰＣ符号などの１ビットエラーが多い記録再生系などの系列に対する誤り訂正として、１ビット以外のエラーを訂正するリードソロモン符号と１ビットエラーを訂正するハミング符号との両方を組み合わせた連接符号による符号化と復号により、リードソロモン符号と同じパリティ長であれば１ビットエラーの訂正数をリードソロモン符号により大きくすることができ、ＬＤＰＣ符号による復号出力で多発する１ビットエラーに対し効率的なエラー訂正ができる。
【００１８】
またＬＤＰＣ符号による復号出力では２ビット以上の誤りは殆ど発生せず、このためリードソロモン符号による訂正能力もそれほど大きくする必要がなく、結果として連結符号によるパリティ長を小さくして効率的なエラー訂正ができる。
【発明を実施するための最良の形態】
【００１９】
図１は本発明が適用される磁気ディスク装置のブロック図である。図１において、ハードディスクドライブ（ＨＤＤ）として知られた磁気ディスク装置１０は、ディスクエンクロージャ１２と制御ボード１４で構成される。ディスクエンクロージャ１２にはスピンドルモータ１６が設けられ、スピンドルモータ１６の回転軸に磁気ディスク（記憶媒体）２０−１，２０−２を装着し、一定回転速度例えば４２００ｒｐｍで回転させる。
【００２０】
またディスクエンクロージャ１２にはボイスコイルモータ１８が設けられ、ボイスコイルモータ１８はヘッドアクチュエータのアーム先端にヘッド２２−１〜２２−４を搭載しており、磁気ディスク２０−１，２０−２の記録面に対するヘッドの位置決めを行う。
【００２１】
ヘッド２２−１〜２２−２にはライトヘッド素子とリードヘッド素子が一体化されて搭載されている。また磁気ディスク２０−１，２０−２に対するヘッド２２−１〜２２−４による磁気記録方式としては、長手磁気記録方式または垂直磁気記録方式にいずれであっても良い。
【００２２】
ヘッド２２−１，２２−２はヘッドＩＣ２４（「プリアンプ」ともいう）に対し信号線接続されており、ヘッドＩＣ２４は上位装置となるホストからのライトコマンドまたはリードコマンドに基づくヘッドセレクト信号で１つのヘッドを選択して書込みまたは読出しを行う。
【００２３】
制御ボード１４にはＭＰＵ２６が設けられ、ＭＰＵ２６のバス２８に対し、ＲＡＭを用いた制御プログラム及び制御データを格納するメモリ３０、ＦＲＯＭ等を用いた制御プログラムを格納する不揮発メモリ３２が設けられている。
【００２４】
またＭＰＵ２６のバス２８には、ホストインタフェース制御部３４、バッファメモリ３８を制御するバッファメモリ制御部３６、フォーマットとして機能するハードディスクコントローラ４０、ライト変調部及びリード復調部として機能するリードチャネル４２、ボイスコイルモータ１８及びスピンドルモータ１６を制御するモータ駆動制御部４４が設けられている。
【００２５】
磁気ディスク装置１０は、ホストからのコマンドに基づき書込処理及び読出処理を行う。ここで、磁気ディスク装置における通常の動作を説明すると次のようになる。
【００２６】
ホストからのライトコマンドとライトデータをホストインタフェース制御部３４で受けると、ライトコマンドをＭＰＵ２６で解読し、受信したライトデータを必要に応じてバッファメモリ３８に格納した後、ハードディスクコントローラ４０で所定のデータ形式に変換すると共にＥＣＣ符号化処理によりＥＣＣ符号を付加し、リードチャネル４２におけるライト変調系でＬＤＰＣ符号変換、更に記録補償を行った後、ライトアンプからヘッドＩＣ２４を介して選択した例えばヘッド２２−１のライトヘッドから磁気ディスク２０−１に書き込む。
【００２７】
このときＭＰＵ２６からモータ駆動制御部４４にヘッド位置決め信号が与えられており、ボイスコイルモータ１８によりヘッドをコマンドで指示された目標トラックにシークした後にオントラックしてトラック追従制御を行っている。
【００２８】
一方、ホストからのリードコマンドをホストインタフェース制御部３４で受けると、リードコマンドをＭＰＵ２６で解読し、ヘッドＩＣ２４のヘッドセレクトで選択されたリードヘッドから読み出された読出信号をアンプで増幅した後に、リードチャネル４２のリード復調系に入力し、チャネル復号及びＬＤＰＣ復号によりリードデータを復調し、ハードディスクコントローラ４０でＥＣＣ復号処理を行ってエラーを検出訂正した後、バッフメモリ３８にバッファリングし、ホストインタフェース制御部３４からリードデータをホストに転送する。
【００２９】
図２は図１のハートディスクコントローラ、リードチャネル及びヘッドＩＣにおける記録再生系の構成を示したブロック図である。図２において磁気ディスク装置の記録再生系はハードディスクコントローラ４０、リードチャネル４２及びヘッドＩＣ２４で構成される。
【００３０】
記録系はハードディスクコントローラ４０のＣＲＣ符号器４６、ＭＴＲ符号器４８、本実施形態が適用されるＥＣＣ符号器５０、リードチャネル４２に設けたＬＤＰＣ符号器５２、記録補償器５４、ドライバ５６及びヘッドＩＣ２４のドライバ５８で構成される。
【００３１】
ライトデータはハードディスクコントローラ４０におけるフォーマット処理により単位長データであるセクタデータに切り分けられ、セクタデータはＣＲＣ符号器４６でＣＲＣ符号化を行った後にＭＴＲ符号器４８によりＭＴＲ符号化により拘束条件が満たされるデータ列に変換される。
【００３２】
続いて本発明の実施形態となるＥＣＣ符号器５０による符号化処理によりパリティが付加されてリードチャネル４２に送られる。リードチャネル４２にあってはＬＤＰＣ符号器５２によりＬＤＰＣ符号化を行った後、記録補償器５４で磁化反転が隣接する箇所で反転間隔を多少広げる補償処理を行った後、ドライバ５６からヘッドＩＣ２４のドライバ５８に出力し、ドライバ５８からヘッドの記録素子にライト電流を流し、磁気ディスクに記録する。
【００３３】
一方、再生系はヘッドＩＣ２４のアンプ６０、リードチャネル４２に設けたＴＡ（サーマルアスペリティ）検出器６２、可変利得アンプ６４、ローパスフィルタ６６、ＡＤコンバータ６８、ＦＩＲフィルタ７０、チャネル復号器７２、ＬＤＰＣ復号器７４更にハードディスクコントローラ４０に設けた本発明の実施形態となるＥＣＣ復号器８０、ＭＴＲ復号器８２及びＣＲＣ復号器８４で構成される。更にリードチャネル４２の再生系にはＰＬＬ回路７６と自動利得制御器７８が設けられている。
【００３４】
磁気ディスクから読取素子により読みだされたアナログ読取電圧信号はヘッドＩＣ２４のアンプ６０でまず増幅した後、リードチャネル４２に送られる。リードチャネル４２にあっては、ＴＡ検出器６２によるサーマルアスペリティの検出処理を行った後、可変利得アンプ６４とローパスフィルタ６６及びＡＤコンバータ６８を経由してデジタル信号への変換を行う。続いてＦＩＲフィルタ７０によって波形等化を行った後、チャネル復号器７２とＬＤＰＣ復号器７４により反復復号が行われる。
【００３５】
ＰＬＬ回路７６はＡＤコンバータ６８で信号をサンプルするタイミングを制御する。また自動利得制御器７８は可変利得アンプ６４の出力レベルが一定レベルとなるように利得を制御する。
【００３６】
リードチャネル４２からのデジタル信号はハードディスクコントローラ４０に送られ、本発明の実施形態となるＥＣＣ復号器８０によるエラー訂正を行った後、ＭＴＲ復号器８２によるＭＴＲ復号及びＣＲＣ復号器８４によるＣＲＣ復号を経て、再生データとして出力される。
【００３７】
図３は図２のＥＣＣ符号器の実施形態を示した機能構成のブロック図である。図３において、ＥＣＣ符号器５０は入力部８６、第１符号化部８８、第２符号部９０、第３符号部９２及び出力部９４で構成される。このＥＣＣ符号器５０による符号化処理の手順は次の３つなる。
【００３８】
（１）リードソロモン符号による符号化；
（２）巡回ハミング符号による符号化；
（３）巡回ハミング符号化による得られたパリティに対するリードソロモン符号による符号化；
【００３９】
すなわち入力部８６は磁気ディスクに記録する単位長データとしてセクタデータを入力し、メモリ９６に保存する。第１符号化部８８はセクタデータをリードソロモン符号化して第１ＲＳパリティを生成する。第２符号化部９０はセクタデータに第１ＲＳパリティを連出したデータを所定数ｎのブロックに分割し各ブロックを巡回ハミング符号化してハミングパリティを生成する。
【００４０】
第３符号化部９２は第２符号化部９０で生成したハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する。出力部９４はメモリ９６に保存しているセクタデータに第１符号化部８８で生成した第１ＲＳパリティと第３符号化部９２で生成した第２ＲＳパリティを連出した符号化データ（符号語）を出力する。
【００４１】
図４は図３のＥＣＣ符号器５０による符号化処理の詳細を示した説明図である。図４（Ａ）はＥＣＣ符号器５０の入力となる１セクタ分のセクタデータ１１０であり、例えば４１００ビットのデータ長を持っている。
【００４２】
図４（Ａ）のセクタデータ１１０は第１符号化部８８により図４（Ｂ）のようにリードソロモン符号化が行われ、この符号化により生成した「ＲＳ１−Ｐ」で示す第１ＲＳパリティ１１２をセクタデータ１１０の前に配置する。
【００４３】
ここで第１ＲＳパリティ１１２はリードソロモン符号のシンボル長をｑ１ビット、訂正シンボル数をｔ１とすると、
パリティビット長＝（２×ｑ１×ｔ１）ビット
となる。
【００４４】
例えば本実施形態で第１符号化部８８によるリードソロモン符号のシンボル長ｑ１はｑ１＝１０ビット、訂正シンボル数ｔ１はｔ１＝４シンボルであり、この場合、第１ＲＳパリティ１１２のビット長は
（２×ｑ１×ｔ１）＝８０ビット
となる。
【００４５】
このセクタデータ１１０に対する第１符号化部８８によるリードソロモンの符号化は
「ＧＦ（２10）、ｔ＝４のリードソロモン符号化」と表現することができる。
【００４６】
次に第２符号化部９０により図４（Ｂ）のセクタデータ１１０の先頭に第１ＲＳパリティ１１２を配置したデータにつき、ｎ個のブロック１１４−１〜１１４−ｎに分割する。そして分割データ１１４−１〜１１４−ｎのそれぞれにつき巡回ハミング符号化を行い、巡回ハミング符号化により得られた符号「ｐ１〜ｐｎ」で示すハミングパリティ１１６−1〜１１６−ｎをブロック１１４−１〜１１４−nの先頭側に配置する。
【００４７】
この図４（Ｃ），（Ｄ）のｎ分割したブロック１１４−1〜１１４−ｎに対する巡回ハミング符号化は「（符号長ｎ’，情報長ｋ’）の巡回ハミング符号化」と表現することができる。
【００４８】
ここで巡回ハミング符号については最大符号長ｎ’と最大情報長ｋ’との間には生成多項式がＧＦ（２）上のｍ次の原始多項式となる場合
ｎ’＝２＾ｍ−１
ｋ’＝２＾ｍ−１−ｍ
の関係がある。
【００４９】
本実施形態にあっては次数ｍ＝７とするとｎ’＝１２７,ｋ’＝１２０となり、これは「（ｎ’,  ｋ’）＝（１２７，１２０）巡回ハミング符号化」と表現することができる。
【００５０】
ｎ個のブロック１１４−１〜１１４−ｎの各ブロック長はｋ’以下にならねばならない。そこで例えばブロック長は６０ビットとして巡回ハミング符号化を行う。この場合分割数はｎ＝７０となる。
【００５１】
次に第３符号化部９２において図４（Ｅ）に示すように、図４（Ｄ）の巡回ハミング符号化で得られたハミングパリティ１１６−１〜１１６−ｎを１列に整列し、この整列したハミングパリティ１１６−１〜１１６−ｎについてリードソロモン符号化を行い、第２ＲＳパリティ１１８を生成し、先頭に配置する。
【００５２】
このハミングパリティ列を対象としたリードソロモン符号化にあっては、リードソロモン符号のシンボル長をｑ２ビット、訂正シンボル数ｔ２とすると、リードソロモン符号化によって得られた第２ＲＳパリティ１１８のパリティビット長は
パリティビット長＝（２×ｑ２×ｔ２）ビット
となる。
【００５３】
本実施形態におけるハミングパリティ列に対するリードソロモン符号化にあっては例えばシンボル長ｑ２＝７ビット、訂正シンボル数ｔ２＝２８シンボルとしており、この場合のパリティビット長は
（２×ｑ２×ｔ２）＝３９２ビット
となる。この具体的な第２符号化部９０によるリードソロモン符号化は「ＧＦ（２7），ｔ＝２８のリードソロモン符号化」と表現することできる。
【００５４】
この具体例では情報長が７０シンボル、パリティが５６シンボルで合計１２６シンボルとなり、図４（Ｅ）のようにハミングパリティ１１６−１〜１１６−ｎの系列の先頭に生成した第２ＲＳパリティ１１８を配置した符号長（126シンボル）が「ＧＦ（２7）」のリードソロモン符号の最大符号長（１２６シンボル）になる。
【００５５】
一方、図４（Ｅ）のようにハミングパリティ１１６−１〜１１６−ｎの系列の先頭に生成した第２ＲＳパリティ１１８を配置した符号長が「ＧＦ（２7）」のリードソロモン符号の最大符号長を超えてしまう場合には、図５に示すようにハミングパリティ１１４−１〜１１４−ｎを例えばｋ個のデータに分割し、各分割データにつき「ＧＦ（２7）」のリードソロモン符号化を行って生成する。
【００５６】
再び図４を参照するに、出力部９４は最終的に図４（Ｆ）に示すようにセクタデータ１１０の先頭に第１符号化部８８で生成された第１ＲＳパリティ１１２と第３符号化部９２で生成された第２ＲＳパリティ１１８を配置し、これを符号化データ（符号語）として出力する。
【００５７】
本実施形態にあっては、巡回ハミング符号化で得られたハミングパリティ１１６−１〜１１６−ｎをセクタデータ１１０に付加して出力するのではなく、ハミングパリティ１１６−１〜１１６−ｎを更にリードソロモン符号化して得られた第２ＲＳパリティ１１８として出力するため、冗長ビットを減らすことができ、ＥＣＣ符号器による符号化率を向上させることができる。
【００５８】
図６は図４のＥＣＣ符号器５０による符号化処理のフローチャートである。図６において、符号化処理はステップＳ１で入力部８６がセクタデータを読み込み、ステップＳ２で第１符号化部８８がセクタデータをリードソロモン符号化して第１ＲＳパリティを生成する。
【００５９】
続いてステップＳ３で第２符号化部９０がセクタデータと第１ＲＳパリティをｎ個のブロックに分割し、ステップＳ４で分割した各ブロックを巡回ハミング符号化してハミングパリティを生成する。次にステップＳ５で第３符号化部９２がハミング符号化で得られたハミングパリティを一列に整列した後、ステップＳ６で整列パリティをリードソロモン符号化して第２ＲＳパリティを生成する。
【００６０】
続いてステップＳ７で出力部９６がセクタデータに第１ＲＳパリティを第２ＲＳパリティを付加し、これを符号化データとして出力する。このステップＳ１〜Ｓ７の処理をステップＳ８で読込みデータの全セクタが終了するまで繰り返す。
【００６１】
また整列パリティと第２ＲＳパリティが第２ＲＳの最大符号長を超えている場合はステップＳ６の代わりにステップＳ６’を実行する。
【００６２】
図７は図２のＥＣＣ復号器８０の詳細を示した実施形態の機能構成を示したブロック図である。図７において、ＥＣＣ復号器８０は入力部９８、ハミング符号化部１００、第１エラー訂正部１０２、第２エラー訂正部１０４、第３エラー訂正部１０５及び出力部１０６で構成される。
【００６３】
入力部９８は磁気ディスクから読み出されてリードチャネルから出力された符号化データ、すなわちセクタデータの先頭に第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを入力してメモリ１０８に保存する。
【００６４】
ハミング符号化部１００はセクタデータに第１ＲＳパリティを連接したデータをｎ個のブロックに分割し、各ブロックで巡回ハミング符号化してハミングパリティを生成する。
【００６５】
第１エラー訂正部１０２はハミング符号化部１００で生成したハミングパリティを一列に整列したデータを対象に、第２ＲＳパリティとともにリードソロモン復号を行い、各ブロックのハミングパリティにもしエラーが存在した場合には、このハミングパリティの中のエラーを訂正する。
【００６６】
第２エラー訂正部１０４はハミングパリティにつきエラー訂正が済んだ各ブロックにつき巡回ハミング復号を行って各ブロックに存在する１ビットエラーを訂正する。第３エラー訂正部１０５は１ビットエラーが訂正された各ブロックを整列し、第１ＲＳパリティとともにリードソロモン復号を行って各ブロックに存在する１ビット以外のエラー、すなわち２ビット以上のエラーを訂正する。出力部１０６はエラー訂正の済んだセクタデータをリードデータとして出力する。
【００６７】
図８は図７のＥＣＣ復号器による復号処理の詳細を示した説明図である。図８（Ａ）に示す磁気ディスクから読み出されて復調された符号化データは、入力部９８により入力されてメモリ１０８に保存する。この符号化データはセクタデータ１１０、第１ＲＳパリティ１１２及び第２ＲＳパリティ１１８で構成されている。
【００６８】
ハミング符号化部１００は入力した符号化データのセクタデータ１１０と第１ＲＳパリティ１１２を対象に、図８（Ｂ）のように、ｎ個のブロック１２０−１〜１２０−ｎに分割する。ここで一例としてブロック１２０−１に１ビットエラー１２４が存在し、ブロック１２０−２に２つの１ビットエラー１２６，１２８からなる２ビットエラーが存在した場合を想定する。
【００６９】
ハミング符号化部１００は、図８（Ｃ）のようにｎ分割したブロック１２０−１〜１２０−ｎに対し巡回ハミング符号化を行い、図８（Ｃ）のように生成したハミングパリティ１２２−１〜１２２−ｎをそれぞれ配置する。巡回ハミング符号化により得られたハミングパリティ１２２−１〜１２２−ｎは、ブロック１２０−１〜１２０−ｎにビットエラーがなければ図８（Ｃ）のようにＥＣＣ符号器５０側で計算されたハミングパリティ１１６−１〜１１６−ｎ(図４)と等しくなる。
【００７０】
しかし、ブロック１２０−１、１２０−２のようにエラービット１２４，１２６，１２８がある場合には、ＥＣＣ復号器８０側で計算されたハミングパリティ１２２−１，１２２−２は図４（Ａ）のＥＣＣ符号器５０側で計算された対応するブロック１１４−１，１１４−２のハミングパリティ１１６−１，１１６−２とは異なるビット列が出力され、誤りパリティ１３０，１３２となる。
【００７１】
そこで第１エラー訂正部１０２は、図８（Ｄ）のように巡回ハミング符号化で生成された誤りパリティ１３０，１３２を含むハミングパリティ１２２−１〜１２２−ｎを一列に整列し、第２ＲＳパリティ１１８とともに「ＧＦ（２7）」のリードソロモン復号を行う。
【００７２】
このリードソロモン復号によりパリティエラーの総数がリードソロモン符号の訂正シンボル数ｔ２を超えていなければ、図８（Ｅ）に示すように誤りパリティ１３０，１３２が正しいパリティに訂正される。
【００７３】
次に第２エラー訂正部１０４が図８（Ｆ）のようにブロック１２０−１〜１２０−ｎに訂正済みのハミングパリティ１２２−１〜１２２−ｎのそれぞれを配置する再構成を行った後、巡回ハミング復号によりブロック１２０−１〜１２０−ｎに存在する１ビットエラーの訂正を図８（Ｇ）のように行う。
【００７４】
この巡回ハミング復号によりブロック１２０−１に存在した１ビットエラー１２４は訂正される。しかしながら、ブロック１２０−２に存在する２つの１ビットエラー１２６，１２８からなる２ビットエラーについて復号は失敗する。
【００７５】
本実施形態における図２のリードチャネル４２に示したＬＤＰＣ復号器７４におけるＬＤＰＣ復号にあっては徹底的に１ビットエラーが多い。したがって、ＬＤＰＣ復号で多発する１ビットエラーの復号に失敗しないようにするため、第２ＲＳパリティ１１８のリードソロモン復号の訂正シンボル数ｔ２の値を十分に大きくする事が本実施形態にあっては重要である。本実施形態にあっては前述のＥＣＣ符号器５０に示したように、１ビットエラー訂正を行うリードソロモン符号の訂正シンボル数ｔ２をｔ２＝２８シンボルとしている。
【００７６】
次に第３エラー訂正部１０５が１ビットエラー訂正の済んだブロック１２０−１〜１２０−ｎを図８（Ｈ）のように整列し、第１ＲＳパリティ１１２とともに「ＧＦ（２10）」のリードソロモン復号を行い、２ビット以上のエラーを訂正する。このリードソロモン復号によりブロック１２０−２に残っていた１ビットエラー１２６，１２８からなる２ビットエラーが訂正される。
【００７７】
ここでＬＤＰＣ符号は圧倒的に１ビットエラーが多く２ビット以上のエラーはあまり発生しないことから、第１ＲＳパリティ１１２による訂正能力である訂正シンボル数ｔ１はあまり大きくしなくてもよい。本実施形態にあってはＥＣＣ符号器５０について示したようにこの場合のリードソロモン符号の訂正シンボル数ｔ１はｔ１＝４シンボルに抑えている。
【００７８】
最終的に出力部１０６が図８（Ｉ）のように入力した符号化データに含まれている１ビットエラー及び２ビットエラーを訂正したセクタデータ１１０をＥＣＣ復号器８０から出力する。
【００７９】
図９は図５のインタリーブ構成を伴う符号化データを対象とした復号処理の説明図である。インタリーブ構成を伴う符号化データにあっては、図９（Ａ）のＥＣＣ復号器入力に示すように、セクタデータ１１０の先頭側に第１ＲＳパリティ１１２に加え、例えば２つの第２ＲＳパリティ１１８−１，１１８−２が付加されている。
【００８０】
このため図９（Ｂ）のようにセクタデータ１１０と第１ＲＳパリティ１１２を連接したデータをｎ分割によりブロック１２０−１〜１２０−ｎに分割した後、図９（Ｃ）のように各ブロック１２０−１〜１２０−ｎを巡回ハミング復号してハミングパリティ１２２−１〜１２２−ｎを生成する点は図８と同じであるが、次の第２ＲＳパリティ１１８を用いたリードソロモン復号につき、ハミング復号で得られたハミングパリティ１２２−１〜１２２−ｎを図９（Ｄ）のハミングパリティ１２２−１〜１２２−ｊと図９（Ｆ）のハミングパリティ１２２−ｊ＋１〜１２２−ｎのように２つに分割し、それぞれ第２ＲＳパリティ１１８−１，１１８−２と組み合わせて図９（Ｅ）および図９（Ｇ）のように巡回ハミング復号を行ってハミングパリティのエラーを訂正する。
【００８１】
その後のエラー訂正済みのハミングパリティをブロック１２０−１〜１２０−ｎに付加する再構成となる図９（Ｈ）から図９（Ｉ）のハミング復号による１ビットエラー訂正、更に図１０（Ｊ）〜図１０（Ｌ）の第１ＲＳパリティ１１２と共に行う２ビット以上のエラー訂正を行って出力する点は図８の場合と同じである。
【００８２】
図１１は図７のＥＣＣ復号器による復号処理のフローチャートである。第２ＲＳパリティが１つの場合は図１１の復号処理にあたって、ステップＳ１で入力部９８が第１ＲＳパリティをセクタデータに付加した復号データ（復号後）を読み込み、ステップＳ２でセクタデータと第１ＲＳパリティをｎ個のブロックに分割し、ステップＳ３で分割した各ブロックを巡回ハミング復号してハミングパリティを生成する。
【００８３】
次にハミングパリティを整列し、第２ＲＳパリティとともにリードソロモン復号を行ってパリティを訂正する。
【００８４】
続いてステップＳ５で各ブロックに訂正済みのパリティを合せ、巡回ハミング復号によりブロック内の１ビットエラーを訂正する。さらにステップＳ８で１ビットエラー訂正済みのブロックを整列し、第１ＲＳパリティと共にリードソロモン復号を行って２ビット以上の訂正を行う。このようなステップＳ１〜Ｓ６の処理をステップＳ７でリード対象となった全セクタの処理が終了するまで繰り返す。
【００８５】
一方、第２ＲＳパリティが複数あった場合にはステップＳ４の代わりにステップＳ４’を行い、ハミングパリティを整列した後に、第２ＲＳパリティの数に対応して複数のブロックに分割し、ブロックごとに対応する第２ＲＳパリティと共にリードソロモン復号を行ってパリティを訂正する。
【００８６】
ここで、本実施形態のＥＣＣ符号器５０及びＥＣＣ復号器８０によるエラー訂正処理を従来のリードソロモン符号のみによるエラー訂正処理と比較すると次のようになる。
【００８７】
まず従来のリードソロモン符号によるエラー訂正として１セクタのセクタデータが４１００ビットであり、これに付加する冗長ビットを４８０ビットとするとき、従来の１シンボル＝１０ビットのリードソロモン符号では最大２４シンボルまでエラーを訂正することができる。
【００８８】
これに対し本実施形態にあっては図４（Ｂ）のリードソロモン符号のシンボル長ｑ１＝１０ビット、訂正シンボル数ｔ１＝４ビットとし、更に、図４（Ｅ）のリードソロモン符号のシンボル長ｑ２＝７ビット、訂正シンボル数ｔ２＝２８ビットとした場合、図４（Ｆ）の符号化データにおける第１ＲＳパリティ１１２と第２ＲＳパリティ１１８からなるパリティ長は４７２ビットとなり、パリティ長が少ないにも関わらず２８ビット分の１ビットエラーを訂正することができる。
【００８９】
このためリードソロモン符号と同じ程度のパリティ長であれば、本実施形態による１ビットエラーの訂正数をリードソロモン符号のみの場合に比べ十分に大きくすることができ、１ビットエラーが圧倒的に多いＬＤＰＣ符号の復号で得られたデータのエラー訂正を確実かつ効率よく行うことができる。
【００９０】
また本発明は図３、図７に示したＥＣＣ符号器５０及びＥＣＣ復号器８０で実行される符号化プログラム及び復号プログラムを提供するものであり、このプログラムの内容は図６及び図１１のフローチャートに示した内容となる。
【００９１】
また本実施形態のＥＣＣ符号器５０及びＥＣＣ復号器８０の機能を備えた図２のハードディスクコントローラ４０は、ＣＰＵ、メモリ、入出力インタフェースを備えたハードウェア構成をもつ組み込み型のコンピュータで実現されており、このコンピュータの不揮発メモリに本実施形態の符号化プログラム及び復号プログラムを格納してＣＰＵにより実行することで、ＥＣＣ符号器５０及びＥＣＣ復号器８０としての機能を実現することができる。
【００９２】
尚、本実施形態は磁気ディスク装置の記録再生系におけるエラー訂正を例にとるものであったが、本発明はこれに限定されず、１ビットエラーが多発するＬＤＰＣ符号を用いた系列、例えば光ディスクなどのストレージデバイスや通信装置についても同様に適用することができる。
【００９３】
また図３及び図７のＥＣＣ符号器５０，ＥＣＣ復号器８０にあっては、入力したセクタデータ及び入力した符号を一端メモリに保存した後に符号化処理及び復号処理を行っているが、メモリを使用せずに各部にデータを転送しながら符号化及び復号を行う所謂オンザフライ処理構成としてもよい。
【００９４】
また本発明は上記実施形態に限定されず、その目的と利点を損なうことのない適宜の変形を含み、さらに上記の実施形態に示した数値による限定は受けない。
【００９５】
ここで本発明の特徴をまとめて列挙すると次の付記のようになる。
（付記）
（付記１）
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置に於いて、
前記符号器は、
前記記録媒体に記録する単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成する第２符号化部と、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記記録媒体から読み出された、単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成するハミング符号化部と、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とするエラー訂正装置。（１）
【００９６】
（付記２）
付記１記載のエラー訂正装置に於いて、
前記符号器の第３符号化部は、前記ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、前記データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
前記符号器の出力部は、前記単位長データに前記第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力し、
前記復号器の第１エラー訂正部は、前記単位データに複数の第２ＲＳパリティが連接されている場合、前記ハミングパリティを一列に整列したデータを前記複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正することを特徴とするエラー訂正装置。（２）
【００９７】
（付記３）
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラー訂正のために符号化する符号器に於いて、
前記記録媒体に記録する単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化部と、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備えたことを特徴とする符号器。（３）
【００９８】
（付記４）
付記３記載の符号器に於いて、
前記第３符号化部は、前記ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、前記データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
前記出力部は、前記単位長データに前記第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力することを特徴とする符号器。（４）
【００９９】
（付記５）
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラー訂正のために符号化された符号化データを復号する復号器に於いて、
前記記録媒体から読み出された、単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化部と、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする復号器。（５）
【０１００】
（付記６）
付記５記載の復号器に於いて、前記第１エラー訂正部は、前記単位データに複数の第２ＲＳパリティが連接されている場合、前記ハミングパリティを一列に整列したデータを前記複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正することを特徴とする復号器。（６）
【０１０１】
（付記７）
ｍビットエラーが支配的な系列を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置に於いて、
前記符号器は、
単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正部と、
ｍビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とするエラー訂正装置。（７）
【０１０２】
（付記８）
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラーを訂正する符号ステップと復号ステップを備えたエラー訂正方法に於いて、
前記符号ステップは、
前記記録媒体に記録する単位長データを入力する入力ステップと、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化ステップと、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化ステップと、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化ステップと、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力ステップと、
を備え、
前記復号ステップは、
前記記録媒体から読み出された単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力ステップと、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化ステップと、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正ステップと、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正ステップと、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正ステップと、
エラー訂正された単位長データを出力する出力ステップと、
を備えたことを特徴とするエラー訂正方法。（８）
【０１０３】
（付記９）
付記８記載のエラー訂正方法に於いて、
前記符号ステップの第３符号化ステップは、前記ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、前記データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
前記符号ステップの出力ステップは、前記単位長データに前記第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力し、
前記復号ステップの第１エラー訂正ステップは、前記単位データに複数の第２ＲＳパリティが連接されている場合、前記ハミングパリティを一列に整列したデータを前記複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正することを特徴とするエラー訂正方法。
【０１０４】
（付記１０）
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータのエラーを訂正するために符号化する符号化方法に於いて、
前記記録媒体に記録する単位長データを入力する入力ステップと、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化ステップと、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成する第２符号化ステップと、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化ステップと、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力ステップと、
を備えたことを特徴とする符号化方法。
【０１０５】
（付記１１）
付記１０記載の符号化方法に於いて、
前記第３符号化ステップは、前記ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、前記データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
前記出力ステップは、前記単位長データに前記第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力することを特徴とする符号化方法。
【０１０６】
（付記１２）
１ビットエラーが支配的な記録媒体を含む記録再生系を伝搬するデータをエラーを訂正するために符号化した符号化データを復号する復号方法に於いて、
前記記録媒体から読み出された、単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力ステップと、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをハミング符号化してハミングパリティを生成するハミング符号化ステップと、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正ステップと、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号して各ブロックの１ビットエラーを訂正する第２エラー訂正ステップと、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正ステップと、
エラー訂正された単位長データを出力する出力ステップと、
を備えたことを特徴とする復号方法。
【０１０７】
（付記１３）
付記１２記載の復号方法に於いて、前記第１エラー訂正ステップは、前記単位データに複数の第２ＲＳパリティが連接されている場合、前記ハミングパリティを一列に整列したデータを前記複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正することを特徴とする復号方法。
【０１０８】
（付記１４）
ｍビットエラーが支配的な系列を伝搬するデータのエラーを訂正する符号ステップと復号ステップを備えたエラー訂正方法に於いて、
前記符号ステップは、
単位長データを入力する入力ステップと、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化ステップと、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化ステップと、
前記ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化ステップと、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力ステップと、
を備え、
前記復号ステップは、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力ステップと、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化ステップと、
前記ｍビット訂正用パリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正ステップと、
前記各ブロックをエラー訂正されたｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正ステップと、
ｍビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正ステップと、
エラー訂正された単位長データを出力する出力ステップと、
を備えたことを特徴とするエラー訂正方法。（９）
【０１０９】
（付記１５）
１ビットエラーが支配的な記録媒体を含む記録再生系と、前記記録再生系を伝搬するデータのエラーを訂正する符号器と復号器を備えたエラー訂正装置とを備える情報記憶装置に於いて、
前記符号器は、
前記記録媒体に記録する単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成する第２符号化部と、
前記ハミングパリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記記録媒体から読み出された、単位長データに前記前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックを巡回ハミング符号化してハミングパリティを生成するハミング符号化部と、
前記ハミングパリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したハミングパリティと共に巡回ハミング復号化して各ブロックの１ビットエラーを訂正する第２エラー訂正部と、
１ビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックの１ビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする情報記憶装置。
【０１１０】
（付記１６）
付記１５記載の情報記憶装置に於いて、
前記符号器の第３符号化部は、前記ハミングパリティを一列に整列したデータがリードソロモン符号の最大符号長を超えた場合、前記データを複数のデータに分割し、分割データ毎にリードソロモン符号化して複数の第２ＲＳパリティを生成し、
前記符号器の出力部は、前記単位長データに前記第１ＲＳパリティと複数の第２ＲＳパリティを連接した符号化データを出力し、
前記復号器の第１エラー訂正部は、前記単位データに複数の第２ＲＳパリティが連接されている場合、前記ハミングパリティを一列に整列したデータを前記複数の第２ＲＳパリティに対応して分割し、各分割データを対応する第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのハミングパリティのエラーを訂正することを特徴とする情報記憶装置。
【０１１１】
（付記１７）
ｍビットエラーが支配的な系列と、該系列中を伝搬するデータのエラーを訂正する符号器と復号器を備えた情報記憶装置に於いて、
前記符号器は、
単位長データを入力する入力部と、
前記単位長データをリードソロモン符号化して第１ＲＳパリティを生成する第１符号化部と、
前記単位長データに第１ＲＳパリティを連接したデータを所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成する第２符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータをリードソロモン符号化して第２ＲＳパリティを生成する第３符号化部と、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した符号化データを出力する出力部と、
を備え、
前記復号器は、
前記単位長データに前記第１ＲＳパリティと第２ＲＳパリティを連接した前記符号化データを入力する入力部と、
前記単位長データに前記第１ＲＳパリティを連接したデータを前記所定数ｎのブロックに分割し、各ブロックをｍビットエラー訂正用符号によるｍビット訂正用パリティを生成するｍビット訂正用符号化部と、
前記ｍビット訂正用パリティを一列に整列したデータを前記第２ＲＳパリティと共にリードソロモン復号して前記各ブロックのｍビット訂正用パリティのエラーを訂正する第１エラー訂正部と、
前記各ブロックをエラー訂正したｍビット訂正用パリティと共に復号して各ブロックのｍビットエラーを訂正する第２エラー訂正部と、
ｍビットエラーが訂正された各ブロックを整列したデータを前記第１ＲＳパリティと共にリードソロモン復号して各ブロックのｍビット以外のエラーを訂正する第３エラー訂正部と、
エラー訂正された単位長データを出力する出力部と、
を備えたことを特徴とする情報記憶装置。
【図面の簡単な説明】
【０１１２】
【図１】本発明が適用される磁気ディスク装置の実施形態を示した説明図
【図２】図１のハードディスクコントローラ、リードチャネル及びヘッドＩＣにおける記録再生系の構成を示したブロック図
【図３】図２のＥＣＣ符号器の機能構成のブロック図
【図４】図３のＥＣＣ符号器による符号化処理の説明図
【図５】本実施形態の符号化処理におけるインタリーブ構成の説明図
【図６】図４のＥＣＣ符号器による符号化処理のフローチャート
【図７】図２のＥＣＣ復号器の機能構成のブロック図
【図８】図７のＥＣＣ復号器による復号処理の説明図
【図９】図５のインタリーブを伴う符号化データを対象とした復号処理の説明図
【図１０】図９に続く復号処理の説明図
【図１１】図７のＥＣＣ復号器による復号処理のフローチャート
【符号の説明】
【０１１３】
１０：磁気ディスク装置
１２：ディスクエンクロージャ
１４：制御ボード
１６：スピンドルモータ
１８：ボイスコイルモータ
２０−１，２０−２：磁気ディスク
２２−１〜２２−４：ヘッド
２４：ヘッドＩＣ
２６：ＭＰＵ
２８：バス
３０：メモリ
３２：不揮発メモリ
３４：ホストインタフェース制御部
３６：バッファメモリ制御部
３８：バッファメモリ
４０：ハードディスクコントローラ
４２：リードチャネル
４４：モータ駆動制御部
４６：ＣＲＣ符号器
４８：ＭＴＲ符号器
５０：ＥＣＣ符号器
５２：ＬＤＰＣ符号器
５４：記録補償器
５６，５８：ドライバ
６０：アンプ
６２：ＴＡ検出器
６４：可変利得アンプ
６６：ローパスフィルタ
６８：ＡＤコンバータ
７０：ＦＩＲフィルタ
７２：チャネル復号器
７４：ＬＤＰＣ復号器
７６：ＰＬＬ回路
７８：自動利得制御器
８０：ＥＣＣ復号器
８２：ＭＴＲ復号器
８４：ＣＲＣ復号器
８６，９８：入力部
８８：第１符号化部
９０：第２符号化部
９２：第３符号化部
９４，１０６：出力部
９６，１０８：メモリ
１００：ハミング符号化部
１０２：第１エラー訂正部
１０４：第２エラー訂正部
１０５：第３エラー訂正部
１１０：セクタデータ
１１２：第１ＲＳパリティ
１１４−１〜１１４−ｎ，１２０−１〜１２０−ｎ：ブロック
１１６−１〜１１６−ｎ，１２２−１〜１２２−ｎ：ハミングパリティ
１１８，１１８−１〜１１８−ｋ：第２ＲＳパリティ
１２４，１２６，１２８：１ビットエラー
１３０，１３２：パリティエラー
【図１】
0004662278.tif 000002
【図２】
0004662278.tif 000003
【図３】
0004662278.tif 000004
【図４】
0004662278.tif 000005
【図５】
0004662278.tif 000006
【図６】
0004662278.tif 000007
【図７】
0004662278.tif 000008
【図８】
0004662278.tif 000009
【図９】
0004662278.tif 000010
【図１０】
0004662278.tif 000011
【図１１】
0004662278.tif 000012