JPWO2013021588A1 - 復号装置及び復号方法 - Google Patents

復号装置及び復号方法 Download PDF

Info

Publication number
JPWO2013021588A1
JPWO2013021588A1 JP2013527875A JP2013527875A JPWO2013021588A1 JP WO2013021588 A1 JPWO2013021588 A1 JP WO2013021588A1 JP 2013527875 A JP2013527875 A JP 2013527875A JP 2013527875 A JP2013527875 A JP 2013527875A JP WO2013021588 A1 JPWO2013021588 A1 JP WO2013021588A1
Authority
JP
Japan
Prior art keywords
reliability
output value
processing output
estimated word
column processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013527875A
Other languages
English (en)
Other versions
JP5884031B2 (ja
Inventor
圭助 藤本
圭助 藤本
日野 泰守
泰守 日野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2013527875A priority Critical patent/JP5884031B2/ja
Publication of JPWO2013021588A1 publication Critical patent/JPWO2013021588A1/ja
Application granted granted Critical
Publication of JP5884031B2 publication Critical patent/JP5884031B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1128Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • G11B2020/185Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using an low density parity check [LDPC] code
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)

Abstract

制御器(211)は、同一のデータブロックの信頼度情報を信頼度格納メモリ(202)に複数回入力し、信頼度生成器(201)は、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、信頼度格納メモリ(202)に保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して信頼度格納メモリ(202)に保存し、列処理演算器(204)は、信頼度格納メモリ(202)に保存された新たに生成された信頼度情報と行処理出力値とを用いて列処理出力値を演算する。

Description

本発明は、誤りが発生した箇所について複数の信号を利用してデータを復号する復号装置及び復号方法に関するものである。
近年、磁気ディスク装置又は光ディスク装置などの記憶装置の高密度化に伴い、記憶装置から読み出された信号から正確にデータを取得するための種々の技術が適用されている。従来の技術としては、誤り検出、訂正処理、及び再生エラーが検出された際に再生動作のリトライを行うリトライ処理などが、利用されている。例えば、光ディスク装置におけるリトライ処理では、フォーカスオフセット又は信号振幅などの各種リトライパラメータが変更されて誤り箇所が再度再生されることによって、再生データの信号品質を向上させている。
更に、信号品質を向上させる技術としては、同一領域を複数回再生し、メモリ回路を用いて同一波形の加算平均を算出する手法(例えば、特許文献1及び特許文献2参照)、又は、読み出した複数のデータを比較して最も頻度が高いデータを採用する多数決手法(例えば、特許文献3及び特許文献4参照)がある。
近年、衛星放送規格又は次世代通信規格などでは、強力な誤り訂正符号としてLDPC(Low−Density−Parity−Check)符号が採用されている。LDPC符号では、従来の代数的な誤り訂正符号とは異なり、復号処理に確率推論計算を利用することで、シャノン限界に近い性能を獲得している。この様な誤り訂正技術を用いることで、エラーレートが非常に悪い再生信号に対しても誤り訂正を行うことができる。そのため、記録密度の向上及び通信容量の向上などを目的とする多くの分野で、上記の誤り訂正技術の応用が始まっている。
しかしながら、この誤り訂正技術を用いるような再生系では、再生信号の品質が悪い。そのため、複数の再生信号を毎回同一のタイミングでサンプリングすることは非常に困難である。特許文献1及び特許文献2に開示されている従来の構成では、複数の再生信号を平均化する必要があるため、正確に同一のタイミングで複数回再生する必要がある。しかしながら、再生信号の品質が悪い場合には、同一のタイミングで再生することは非常に難しく、極端なケースでは同期回路(PLL(Phase Locked Loop)回路)でのビットスリップなどが発生する。これによって、波形のサンプリングに同期ずれが発生し、再生性能が大きく劣化するという課題を有していた。
このビットスリップが発生する場合について、図17及び図18を用いて簡単に説明する。図17は、正常時のサンプリングデータの一例を示す図であり、図18は、同期ずれが発生した場合のサンプリングデータの一例を示す図である。特許文献2に記載の光ディスク記録再生装置では、光ディスクから読み出した再生信号をA/D変換器でデジタル値に変換したデジタル信号がメモリに保存され、2つの再生波形を用いて平均処理が行われる。図17に示すように、同期ずれが発生せず正常時に適切なサンプリングタイミングで再生信号が取得されれば、最大で3dBのS/N比の改善効果を得ることができる。
これに対して、同期ずれ(タイミングずれ)が発生すると、図18に示すように、1回目の再生波形と2回目の再生波形とを用いて正しく平均化できなくなり、複数回再生することによって、1回だけ再生した場合よりもエラーレートを悪化させてしまう。更には、同期ずれを起こして平均化された再生信号の波形は、本来の再生レベルとは全く異なった波形となる。そのため、信号処理系は、同期パターン等による再生信号の通常の同期処理を行うことができず、誤り訂正器に正確なタイミングで信号を送ることができなくなる。
従来の複数回の再生が行われる装置において上記の課題が発生する本質的な原因は、再生された信号を同期処理の前に平均化することに由来する。LDPC符号を用いるようなシステムでは、誤り訂正の前の再生信号のエラーレートが高く、上記の課題は、ますます深刻なものとなる。
特開2000−242907号公報 特許第4006446号公報 特開2002−93068号公報 特開2003−141822号公報
本発明は、上記の問題を解決するためになされたもので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる復号装置及び復号方法を提供することを目的とするものである。
本発明の一局面に係る復号装置は、複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、入力された前記データに基づいて前記信頼度情報を生成する信頼度生成器と、前記信頼度情報を保存する信頼度格納メモリと、列処理出力値を用いて、行処理を行うことにより行処理出力値を演算する行処理演算器と、前記行処理出力値と前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算する列処理演算器と、同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御器とを備え、前記信頼度生成器は、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、前記信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して前記信頼度格納メモリに保存し、前記列処理演算器は、前記信頼度格納メモリに保存された前記新たに生成された信頼度情報と前記行処理出力値とを用いて前記列処理出力値を演算する。
この構成によれば、信頼度生成器は、入力されたデータに基づいて信頼度情報を生成する。信頼度格納メモリは、信頼度情報を保存する。行処理演算器は、列処理出力値を用いて、行処理を行うことにより行処理出力値を演算する。列処理演算器は、行処理出力値と信頼度情報とを用いて、列処理を行うことにより列処理出力値を演算する。制御器は、同一のデータブロックの信頼度情報を信頼度格納メモリに複数回入力する。信頼度生成器は、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して信頼度格納メモリに保存する。列処理演算器は、信頼度格納メモリに保存された新たに生成された信頼度情報と行処理出力値とを用いて列処理出力値を演算する。
本発明によれば、誤り訂正前のエラーレートの高いデータに対して、同一のデータブロックの信頼度情報を用いて復号が複数回行われるので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる。
本発明の目的、特徴及び利点は、以下の詳細な説明と添付図面とによって、より明白となる。
本発明の実施の形態1に係る光ディスク装置の構成を示す図である。 本発明の実施の形態1に係る誤り訂正器の詳細な構成を示す図である。 データブロック毎に繰返しデータを再生する処理について説明するための図である。 複数のデータブロックを1つの再生単位としてデータを再生する処理について説明するための図である。 本発明の実施の形態1における誤り訂正器の復号処理について説明するための第1のフローチャートである。 本発明の実施の形態1における誤り訂正器の復号処理について説明するための第2のフローチャートである。 本発明の実施の形態1における誤り訂正器によって得られるBER(符号誤り率)特性を示す図である。 本発明の実施の形態2に係る誤り訂正器の詳細な構成を示す図である。 本発明の実施の形態2における誤り訂正器の復号処理について説明するための第1のフローチャートである。 本発明の実施の形態2における誤り訂正器の復号処理について説明するための第2のフローチャートである。 本発明の実施の形態3における誤り訂正器の復号処理について説明するための第1のフローチャートである。 本発明の実施の形態3における誤り訂正器の復号処理について説明するための第2のフローチャートである。 本発明の実施の形態4に係る誤り訂正器の詳細な構成を表す図である。 本発明の実施の形態4における誤り訂正器の復号処理について説明するための第1のフローチャートである。 本発明の実施の形態4における誤り訂正器の復号処理について説明するための第2のフローチャートである。 本発明の実施の形態1〜4に係る情報通信システムの構成を示す図である。 正常時のサンプリングデータの一例を示す図である。 同期ずれが発生した場合のサンプリングデータの一例を示す図である。
以下本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施の形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定するものではない。
(実施の形態1)
以下、本発明の実施の形態1に係る復号装置及び復号方法について図面を参照しながら詳細に説明する。
図1は、本発明の実施の形態1に係る光ディスク装置の構成を示す図である。図1に示す光ディスク装置は、光ピックアップ102、プリアンプ103、A/D変換器104、PLL(Phase Locked Loop)回路105、波形等化器106、ビタビ復号器107、同期信号検出器108、復調器109、誤り訂正器110、ウォブル検出器111、アドレス検出器112、スピンドルモータ113、モータドライバ114、サーボコントローラ115及びシステムコントローラ116を備える。
光ピックアップ102は、光ディスク101に光を照射するとともに、光ディスク101からの反射光を検出し、検出した反射光に応じた再生信号を出力する。プリアンプ103は、光ピックアップ102からの再生信号を増幅する。A/D変換器104は、プリアンプ103からの出力をサンプリングする。PLL回路105は、A/D変換器104にクロックを供給する。波形等化器106は、A/D変換器104からのサンプリングデータの波形整形を行う。ビタビ復号器107は、波形等化器106からの出力データを基に最尤復号を行う。同期信号検出器108は、ビタビ復号器107の復号結果から同期信号を検出する。復調器109は、同期信号を基準として復号結果を復調する。誤り訂正器110は、復調結果を誤り訂正処理する。
ウォブル検出器111は、光ディスク101の案内溝の蛇行成分を検出し、ウォブル信号を出力する。アドレス検出器112は、ウォブル検出器111から出力されたウォブル信号からアドレス情報を検出する。スピンドルモータ113は、光ディスク101を回転させる。モータドライバ114は、スピンドルモータ113及び光ピックアップ102を駆動する。サーボコントローラ115は、モータドライバ114を制御する。システムコントローラ116は、図示しないホストコンピュータに対して情報を送受信するとともに、光ディスク装置内の各回路に対する動作の制御及び各種設定を行う。
図1において、光ピックアップ102とプリアンプ103とを介して再生された記録媒体である光ディスク101からの再生信号は、A/D変換器104に入力し、デジタル信号に変換される。波形等化器106は、入力したデジタル信号に対し、再生系の周波数特性が所定のPR等化方式になるように波形整形を行う。波形が整形されたデジタル信号は、ビタビ復号器107によって、最も確からしいデータに復号される。
PLL回路105は、再生信号に同期する再生クロックを生成する。A/D変換器104以降の回路は、PLL回路105から供給される再生クロックに従って動作する。同期信号検出器108は、ビタビ復号器107から出力された復号データから同期信号を検出し、同期信号の検出タイミングを復調器109へ出力する。復調器109は、同期信号の検出タイミングを基準位置として、光ディスク101上の記録パターンの形式から記録情報の形式へ復号データを復調する。誤り訂正器110は、同期処理され復調された再生データに対して誤り訂正処理を行う。
データは、複数のデータブロックで構成される。誤り訂正処理が完了した復号データは、システムコントローラ116によって、図示しないインターフェイスを通じてホストコンピュータへ転送される。
ウォブル検出器111は、光ピックアップ102で検出された信号から光ディスク101の案内溝の蛇行成分を検出する。具体的には、光ピックアップ102は、光ディスク101の案内溝に沿って分割された少なくとも2つの受光素子を備える。2つの受光素子は、光ディスク101からの反射光をそれぞれ検出する。2つの受光素子の差信号はプッシュプル信号と呼ばれ、これがウォブル成分を反映した信号となる。光ディスク101には、データを記録するためのトラックがプリグルーブとして予め形成されている。プリグループの側壁は、アドレス情報等を変調したウォブル信号により蛇行している。記録時又は再生時に反射光情報として得られるウォブル情報から、光ディスク101の所定の位置へのデータの記録又は再生を可能とするウォブルアドレスを読み取ることができる。
アドレス検出器112は、ウォブル検出器111で検出されたウォブル信号からウォブルアドレスを検出し、アドレスデータを復調する。復調されたアドレスデータは、システムコントローラ116に供給される。目的のアドレスにシーク動作をする際には、システムコントローラ116は、供給されたアドレスデータに基づいて、サーボコントローラ115及びモータドライバ114を介してスピンドルモータ113、光ピックアップ102及び図示しない光ピックアップ駆動部を制御する。これにより、システムコントローラ116は、光ピックアップ102を目的のアドレスに移動させる。
なお、上記の光ディスク装置は、ウォブル信号からアドレスデータを読み取っているが、デジタル信号(RF信号)に埋め込まれたアドレス情報を読み取っても良い。
図2は、本発明の実施の形態1に係る誤り訂正器110の詳細な構成を示す図である。誤り訂正器110は、複数のデータブロックで構成されたデータが入力され、データブロック内でパリティ検査行列によって符号化されたデータの信頼度情報に基づいてデータを復号する。
誤り訂正器110は、信頼度生成器201、信頼度格納メモリ202、行処理演算器203、列処理演算器204、第1の列処理出力値格納メモリ205、推定語生成器206、推定語格納メモリ207、復号結果判定器208、第2の列処理出力値格納メモリ209及び制御器211を備える。
信頼度生成器201は、復調器109からの再生データyの信頼度λを生成する。信頼度格納メモリ202は、信頼度生成器201によって生成された信頼度λを保存する。行処理演算器203は、パリティ検査行列の行処理を行う。行処理演算器203は、列処理出力値を用いて、行処理を行うことにより行処理出力値を演算する。列処理演算器204は、パリティ検査行列の列処理を行う。列処理演算器204は、行処理出力値と信頼度情報とを用いて、列処理を行うことにより列処理出力値を演算する。第1の列処理出力値格納メモリ205は、列処理演算器204によって演算された列処理出力値βmnを保存する。
推定語生成器206は、信頼度格納メモリ202に保存されている信頼度λと、行処理演算器203によって演算された行処理出力値αmnとに基づいて推定語xを生成する。推定語格納メモリ207は、推定語生成器206によって生成された推定語xを保存する。復号結果判定器208は、推定語x、推定語信頼度L又は列処理出力値βmnなどに基づいて復号結果を判定する。なお、本実施の形態では、復号結果判定器208は、推定語格納メモリ207に保存された推定語xに基づいて復号結果を判定する。
第2の列処理出力値格納メモリ209は、繰返し再生処理時に、列処理出力値βmnを保存する。
制御器211は、複数のメモリ及び複数の演算処理回路によって構成される全体システム210に対する実行の指示及び制御などの各種処理作業を統括する。制御器211は、同一のデータブロックの信頼度情報を信頼度格納メモリ202に複数回入力する。制御器211は、図1に示すシステムコントローラ116で構成されても良いし、システムコントローラ116以外の他のプロセッサで構成されても良い。なお、本実施の形態において、各格納メモリは、演算処理回路とは別の外部メモリ装置であっても良いし、フリップフロップなどの回路素子を用いたレジスタのような記憶装置であっても良い。
第2の列処理出力値格納メモリ209は、前回入力された信頼度情報に基づいて列処理演算器204によって演算された列処理出力値を保存する。行処理演算器203は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、第2の列処理出力値格納メモリ209に保存された前回の列処理出力値を行処理の初期値として用いる。
また、行処理演算器203は、列処理演算器204によって演算された列処理出力値を用いて行処理出力値を繰り返し演算する。制御器211は、行処理演算器203による行処理出力値の演算処理回数を監視する。演算処理回数が所定の回数に到達した場合、制御器211は、前回と同一のデータブロックの信頼度情報を信頼度生成器201に生成させ、生成した信頼度情報を信頼度格納メモリ202に入力させる。
また、制御器211は、復号結果判定器208による判定結果が所定の条件を満たさなかったデータブロックに対して、信頼度格納メモリ202に保存されている信頼度情報を用いて再度復号処理を行う。
また、復号結果判定器208は、信頼度情報と行処理出力値とに基づいて生成される推定語が正しく復号されていることを検査するパリティ検査器を含んでも良い。この場合、制御器211は、パリティ検査器による検査結果が所定の条件を満たさなかったデータブロックに対して、信頼度格納メモリ202に保存されている信頼度情報を用いて再度復号処理を行う。
さらに、復号結果判定器208は、列処理出力値、行処理出力値又は推定語信頼度のいずれかの演算結果と所定の閾値とを比較することにより、復号結果を判定しても良い。この場合、制御器211は、復号結果判定器208による判定結果が所定の条件を満たさなかったデータブロックに対して、信頼度格納メモリ202に保存されている信頼度情報を用いて再度復号処理を行う。
まず、本実施の形態の誤り訂正器110に、再生データyが1回入力されたときの復号処理について、図2の構成に従って説明する。
信頼度生成器201は、復調器109から出力された再生データyを、誤り訂正処理で扱える信頼度の形式に変換する。例えば、通信路モデルをAWGN(加法的白色ガウス雑音)通信路とした場合、信頼度生成器201は、下記の式(1)に示すように、再生データyと通信路の雑音σとから信頼度λを算出する。
Figure 2013021588
信頼度λは、再生データyの尤もらしさを表す指標であれば、通信路の条件付き確率の比を用いても良いし、対数尤度比を用いても良い。対数尤度比を用いることで、演算処理が簡略化できる。なお、再生データyは、軟判定情報でも良いし、硬判定情報でも良い。
信頼度生成器201は、生成した信頼度λを信頼度格納メモリ202に保存する。信頼度格納メモリ202に保存された信頼度λは、復号処理時に、列処理演算器204と推定語生成器206とに出力される。
行処理演算器203は、第1の列処理出力値格納メモリ205に保存されている列処理出力値βmnを用い、下記の式(2)に従ってパリティ検査行列の列の各要素について演算処理(行処理)を行い、演算処理結果を行処理出力値αmnとして出力する。
Figure 2013021588
ここで、A(m)は、パリティ検査行列Hのm行目において値が1である列インデックスの集合を表し、A(m)\nは、集合A(m)からnを取り去って得られる集合差を表す。行処理出力値αmnについては、n’≠nである。なお、本実施の形態では、光ディスク装置は、行処理出力値αmnを保存するための行処理出力値格納メモリを備えていないが、光ディスク装置は、行処理出力値格納メモリを備えても良い。また、関数sign(x)及びf(x)は、下記の式(3)及び式(4)で定義される。
Figure 2013021588
Figure 2013021588
列処理演算器204は、下記の式(5)に従って、信頼度格納メモリ202に保存されている信頼度λと、行処理演算器203から出力される行処理出力値αmnとを用いて演算処理(列処理)を行い、演算処理結果を列処理出力値βmnとして出力する。列処理演算器204は、列処理出力値βmnを第1の列処理出力値格納メモリ205に保存する。
Figure 2013021588
ここで、B(n)は、パリティ検査行列Hのn列目において値が1である行インデックスの集合を表し、B(n)\mは、集合B(n)からmを取り去って得られる集合差を表す。列処理出力値βmnについては、m’≠mである。
推定語生成器206は、信頼度格納メモリ202に保存されている信頼度λと、行処理演算器203から出力される行処理出力値αmnとを用い、下記の式(6)に基づいて推定語信頼度Lを算出する。式(6)が式(5)と異なる点は、推定語信頼度Lの演算には、パリティ検査行列の要素mから要素nへの行処理出力値αmn自身の値も加える点である。
Figure 2013021588
推定語信頼度Lの絶対値は、推定の信頼性を表し、推定語信頼度Lの絶対値が大きいほど推定の信頼性が高いことを示す。推定語生成器206は、下記の式(7)に従い、推定語信頼度Lの値が正であれば推定語xの値を「0」に決定し、推定語信頼度Lの値が負であれば推定語xの値を「1」に決定し、決定した推定語xを出力する。推定語生成器206は、推定語xを推定語格納メモリ207に保存する。
Figure 2013021588
復号結果判定器208は、推定語格納メモリ207に格納された推定語xが正しく復号されたか否かを判定する。制御器211は、復号結果判定器208の判定結果と、後述する処理ループ回数とに基づいて、復号処理を終了するか、引き続き繰返し復号処理を行うかを判断する。引き続き繰返し復号処理を行う場合は、行処理演算器203は、第1の列処理出力値格納メモリ205に保存した列処理出力値βmnを用いて行処理を行い、行処理出力値αmnを更新する。そして、列処理演算器204は、更新された行処理出力値αmnと信頼度λとを用いて列処理出力値βmnを更新する。また、推定語生成器206は、更新された行処理出力値αmnと信頼度λとを用いて推定語信頼度Lを更新し、推定語信頼度Lから推定語xを生成する。この詳しいシーケンスについては、フローチャートを用いて後ほど詳しく説明をする。
具体的には、復号結果判定器208は、例えば、推定語xに対してパリティ検査を行い、パリティ検査条件を満たしている場合は、推定語xに誤りが無いと判定する。または、復号結果判定器208は、推定語信頼度Lを用いて判定しても良い。すなわち、復号結果判定器208は、全ての推定語信頼度Lの絶対値の平均値が所定の条件を満たす場合、例えば全ての推定語信頼度Lの絶対値の平均値が所定の値以上である場合、推定語はx確率的に正しいと判定しても良い。推定語信頼度Lの代わりに、行処理出力値αmn又は列処理出力値βmnを用いても判定可能である。これ以外にも、予めデータブロック内にエラーを判定できるエラー検出符号を埋め込み、エラー検出符号の検出結果に基づいて判定することもできる。本実施の形態における復号結果判定器208は、データブロックがエラーであることが判定可能であれば、どのような構成でも本実施の形態を実現でき、同様の効果を得ることができる。
復号処理が終了すると、復号判定結果及び復号データが誤り訂正器110の外部に出力される。これらの各種処理作業は、制御器211の制御に基づいて実行される。
次に、本実施の形態の誤り訂正器110に、再生データyが複数回入力されたときの復号処理(繰返し再生処理)について、図2の構成に従って説明する。
前述の再生データyが1回入力されたときの復号処理において、予め設定した処理ループ回数の復号処理を行っても復号結果判定器208によりエラーがあると判定された場合、制御器211は、入力された再生データに対する復号処理では誤り訂正が不可能と判断し、前回と同一のデータブロックを再度再生する。前回と同一のデータブロックの再生は、アドレス検出器112で検出されたアドレス情報に基づいて行われる。
信頼度生成器201は、前回と同一のデータブロックが再生されることにより得られた2回目の再生データy2iから、下記の式(8)に従って2回目の再生データy2iに対する信頼度λ2nを生成する。信頼度生成器201は、生成した信頼度λ2nを信頼度格納メモリ202に保存する。
Figure 2013021588
次に、行処理演算器203は、行処理出力値αmnを求める。ここで、2回目の復号処理が1回目の復号処理と異なる点は、1回目の復号処理では、行処理演算器203は、“0”を列処理出力値βmnの初期値として演算するのに対して、2回目の復号処理では、行処理演算器203は、1回目の復号処理の列処理出力値βmnの最終値を初期値として演算する点である。
1回目の復号処理の列処理出力値の最終値をβ1mnとすると、2回目の行処理出力値α2mnは、下記の式(9)に示すように、1回目の復号処理の行処理出力値の最終値α1mnと等しくなる。
Figure 2013021588
これより、2回目の復号処理における列処理出力値β2mn及び推定語信頼度L2nは、下記の式(10)及び式(11)に従って求められる。
Figure 2013021588
Figure 2013021588
ここで、2回目の復号処理の列処理出力値β2mn及び推定語信頼度L2nは、1回目の再生信号のエネルギー(α1m’n)と2回目の再生信号のエネルギー(λ2n)との両方を用いている。そのため、それぞれの再生信号だけで得られる信頼度に比べて、より高い信頼度を得ることが可能となる。
図3及び図4は、本実施の形態1において繰返しデータを再生する処理について説明するための図であり、図3は、データブロック毎に繰返しデータを再生する処理について説明するための図であり、図4は、複数のデータブロックを1つの再生単位としてデータを再生する処理について説明するための図である。
図3に示すようにデータブロック毎に繰返しデータが再生される場合は、列処理演算器204は、列処理出力値βmnを上書き更新することが可能である。そのため、誤り訂正器110は、1つの第1の列処理出力値格納メモリ205を備えれば良い。
これに対して、図4に示すように、複数のデータブロックを1つの再生単位として繰返しデータが再生される場合は、列処理演算器204は、復号判定結果がエラーだったデータブロックの列処理出力値βmnだけを抽出して保存する必要がある。そのため、列処理演算器204は、第1の列処理出力値格納メモリ205内の異なるメモリ空間か、あるいは第2の列処理出力値格納メモリ209を使用する。
繰返しデータが再生される際に、制御器211は、第1の列処理出力値格納メモリ205内の異なるメモリ空間又は第2の列処理出力値格納メモリ209に保存していた列処理出力値βmnを第1の列処理出力値格納メモリ205に移す。これにより、前回の復号処理ループの列処理出力値βmnの最終値を、次回の復号処理ループの列処理出力値βmnの初期値として使用することができる。
なお、第1の列処理出力値格納メモリ205の記憶容量にはシステム構成上、一定の上限があるケースが殆どである。そのため、第1の列処理出力値格納メモリ205の使用状況に応じて繰返し再生処理を制御することによって、より高速な再生を実現できる。具体的には、第1の列処理出力値格納メモリ205の記憶容量が上限に達した際に、繰返し再生処理に移行する制御が行われることが、より好ましい。繰返し再生処理に移行するまでの時間は、データ再生の遅延時間となるのでデータ再生の遅延時間を考慮した制御が行われることが、より望ましい。
このように、複数のデータブロックを1つの再生単位として繰返しデータを再生する方法は、無駄なシーク時間及び回転待ち時間を減らし、転送速度の大幅な低下を防ぐ利点がある。さらに、処理時間の主要因である回転待ち時間をできるだけ少なくするように、繰返しデータが再生されるデータブロックの長さを調整することで、さらに転送速度の低下を防ぐことができる。なお、同一のデータブロックを複数回再生する制御は、制御器211からの命令により行われる。
次に、本発明の実施の形態1における誤り訂正器110の復号処理について説明する。図5及び図6は、本発明の実施の形態1における誤り訂正器の復号処理について説明するためのフローチャートである。
まず、制御器211は、初期設定として、復号処理のループ回数、繰返し再生処理の回数及び列処理出力値βmnの初期設定を行う(ステップS1)。復号処理のループ回数は、列処理演算器204で生成された列処理出力値βmnを用いて再び行処理演算器203で行処理出力値αmnを生成する処理が繰返される回数である。制御器211は、復号処理のループ回数として、予め所定の最大回数を設定する。繰返し再生処理の回数は、同一のデータブロックを繰返し再生する回数である。制御器211は、繰返し再生処理の回数として、予め所定の最大回数を設定する。前述の通り、制御器211は、1回目の再生処理時において、列処理出力値βmnを0に設定する。
次に、信頼度生成器201は、受信した再生データ系列に従って、信頼度λを生成する(ステップS2)。
次に、信頼度生成器201は、生成した信頼度λを信頼度格納メモリ202に保存する(ステップS3)。
次に、行処理演算器203は、行処理を行うことにより、列処理出力値βmnから行処理出力値αmnを演算する(ステップS4)。なお、前記の通り、初回再生時における列処理出力値βmnは0に設定される。
次に、列処理演算器204は、列処理を行うことにより、信頼度λ及び行処理出力値αmnから列処理出力値βmnを演算する(ステップS5)。
次に、列処理演算器204は、演算した列処理出力値βmnを第1の列処理出力値格納メモリ205に保存する(ステップS6)。
次に、推定語生成器206は、信頼度λ及び行処理出力値αmnから推定語信頼度Lを生成し、生成した推定語信頼度Lの正負の符号に従って推定語xを生成する(ステップS7)。推定語生成器206は、推定語信頼度Lの符号の判定において、例えば推定語信頼度Lが2の補数で表現されている場合には、最上位の符号ビットの値により、正又は負を判定することができる。
次に、推定語生成器206は、生成した推定語xを推定語格納メモリ207に保存する(ステップS8)。
推定語xが全て生成されると、復号結果判定器208は、復号結果を判定する(ステップS9)。
例えば、パリティ検査により復号結果が判定される場合、復号結果判定器208は、nビットの推定語(x、x、・・・、x)の転置行列とパリティ検査行列Hとを用いて、H・(x、x、・・・、xを計算する。復号結果判定器208は、この計算の結果、生成されるシンドロームが0であれば、推定語が正しく復号されたと判定し、生成されるシンドロームが0でなければ、推定語が誤って復号されたと判定する。復号結果判定器208は、判定結果を制御器21へ出力する。
あるいは、推定語信頼度Lを用いて復号結果が判定される場合、推定語信頼度Lが0より大きい場合に推定語は0であり、逆に推定語信頼度Lが0より小さい場合に推定語は1であり、推定語信頼度が0に近いほどその推定語の確からしさが小さくなるという定義を利用してもよい。すなわち、復号結果判定器208は、全ての推定語信頼度Lの絶対値の平均値が所定の閾値以上であれば、推定語は確率的に正しいため、正しく復号されていると判定する。一方、復号結果判定器208は、全ての推定語信頼度Lの絶対値の平均値が所定の閾値より小さい場合、誤って復号されていると判定する。
なお、復号結果判定器208は、誤り検出用の符号を用いて誤りの数を検出して、復号結果を判定しても良い。
次に、制御器211は、復号結果判定器208による復号判定の結果、推定語が正しく復号されているか否かを判断する(ステップS10)。ここで、推定語が正しく復号されていると判断された場合(ステップS10でYES)、制御器211は、判定結果と共に推定語(x、x、・・・、x)を復号データとして推定語格納メモリ207から出力するよう制御する(ステップS11)。
一方、推定語が正しく復号されていないと判断された場合(ステップS10でNO)、制御器211は、ループ回数が最大回数であるか否かを判断する(ステップS12)。ここで、ループ回数が最大回数であると判断された場合(ステップS12でYES)、制御器211は、繰返し再生回数が最大回数であるか否かを判断する(ステップS13)。例えば、制御器211は、推定語が生成された回数をカウントし、生成回数が所定の最大回数に到達した場合、その符号についてのループ処理を停止し、繰返し再生回数が最大回数であるか否かを判断する。
また、制御器211は、行処理演算器203による行処理演算処理回数をカウントし、演算処理回数が所定の最大回数に到達したか否かを判断しても良い。
繰返し再生回数が最大回数であると判断された場合(ステップS13でYES)、制御器211は、最終的に生成された推定語を復号データとして推定語格納メモリ207から出力するよう制御する(ステップS11)。これにより、雑音が多く収束性の悪い符号に対して、不必要な演算処理時間が増加するのを防ぐことができる。
また、ステップS12においてループ回数が最大回数ではないと判断された場合(ステップS12でNO)、制御器211は、ループ回数を1だけインクリメントする(ステップS14)。その後、制御器211は、ステップS2の処理へ戻り、再びステップS2以降の処理を実行する。
ステップS13において繰返し再生回数が最大回数ではないと判断された場合(ステップS13でNO)、制御器211は、最終的に生成された列処理出力値βmnを第2の列処理出力値格納メモリ209に保存するよう制御する(ステップS15)。そして、制御器211は、ステップS1の処理へ戻り、前回と同じ領域(データブロック)を再度再生するよう指示し、前回と同じデータブロックに対応する信頼度を生成し、生成した信頼度を信頼度格納メモリ202に保存する処理が繰り返される。このとき、システムコントローラ116は、アドレス検出器112で検出されたアドレス情報を用いて前回と同じデータブロックを再生する。なお、アドレス情報に基づいてシーク動作を行う際に、ターゲットのアドレスよりも手前の領域にシーク動作を行うことで、前回と同じデータブロックを確実に再生することができる。
第2の列処理出力値格納メモリ209に保存した列処理出力値βmnは、前回の再生データに対する尤もらしさを表した値である。この値を初期値として、前回と異なる再生データに対して繰返し復号が行われることで、複数回の再生エネルギーを利用できるため、前回の再生時には訂正できなかった誤りを訂正することができる。
図7は、本発明の実施の形態1における誤り訂正器によって得られるBER(符号誤り率)特性を示す図である。図7において、縦軸は、繰返し再生回数を示し、横軸は、誤り訂正後に誤り無く再生するために必要な入力信号のBERの限界値を示している。ここでは、誤り訂正後の信号に含まれるBERが1E−11以下の状態を誤りの無い状態と定義している。
従来の繰返し再生を行わないシステムでは、誤り無く再生することが可能な入力信号のBERの訂正限界値は、1.7E−2であった。しかしながら、本実施の形態1の繰返し再生を行うことで、従来の訂正限界値以上に品質が悪い入力信号に対しても誤りの無い再生が可能となった。
また、A/D変換後に波形を平均処理する従来の方法では、例えば入力信号のBERが1E−1の品質レベルであるとき、同期パターンの誤検出又は未検出により同期ずれが多数発生し、誤りの無い再生を行うことができなかった。しかしながら、本実施の形態1の方法では、1E−1以上に品質が悪い入力信号に対しても誤りの無い再生が可能となり、従来に比べて非常に高い信頼性を得ることができる。
かかる構成によれば、従来の繰返し再生処理を行わないシステムでは誤り訂正できないような品質の悪い信号を有するデータブロックに対して、該データブロックの信頼度情報が複数回入力され、前回の復号結果である列処理出力値βmnが次回の復号時に初期値として用いられる。これにより、複数回の再生エネルギーを使用でき、従来できなかったエラーレートの低減を実現することができる。また、復調器109において同期ずれのタイミングが補償された再生信号を用いて複数回再生処理が行われるため、従来の課題であった同期ずれを起こした状態での複数回再生処理が行われることは無い。
(実施の形態2)
次に、本発明の実施の形態2に係る復号装置及び復号方法について図面を参照しながら詳細に説明する。
図8は、本発明の実施の形態2に係る誤り訂正器の詳細な構成を示す図である。なお、実施の形態2に係る光ディスク装置の構成は、図1に示す実施の形態1に係る光ディスク装置の構成と同じであるので説明を省略する。また、図8において、図2に示す実施の形態1の誤り訂正器と同一の構成要素については、同一の符号を付し、説明を省略する。図8に示す実施の形態2の誤り訂正器と、図2に示す実施の形態1の誤り訂正器との違いは、誤り訂正器110が、第2の列処理出力値格納メモリ209の代わりに推定語信頼度格納メモリ501を備える点である。
図8に示す誤り訂正器110は、信頼度生成器201、信頼度格納メモリ202、行処理演算器203、列処理演算器204、第1の列処理出力値格納メモリ205、推定語生成器206、推定語格納メモリ207、復号結果判定器208、制御器211及び推定語信頼度格納メモリ501を備える。
推定語信頼度格納メモリ501は、推定語生成器206によって生成された推定語信頼度Lを保存する。
推定語生成器206は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、推定語信頼度格納メモリ501に保存された前回の推定語信頼度と、今回入力された信頼度情報及び行処理出力値に基づいて生成された推定語の信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語信頼度を更新し、更新した推定語信頼度に従って推定語を生成する。
また、推定語生成器206は、推定語信頼度が推定語信頼度格納メモリ501に保存されているときに、更新した推定語信頼度に従って推定語を生成する。
図9及び図10は、本発明の実施の形態2における誤り訂正器の復号処理について説明するためのフローチャートである。
図9及び図10のステップS21〜S33の処理は、図5及び図6のステップS1〜S12,S14の処理と同じであるため、説明を省略する。
本実施の形態2では、入力された再生データに対して、繰返し復号処理を行っても推定語が正しく復号されず(ステップS30でNO)、さらにループ回数が所定の最大回数に到達した場合(ステップS32でYES)、制御器211は、推定語信頼度格納メモリ501に、前回までの推定語信頼度Lが保存されているか否かを判断する(ステップS34)。
ここで、推定語信頼度格納メモリ501に前回までの推定語信頼度Lが保存されていないと判断された場合(ステップS34でNO)、推定語生成器206は、最終的に生成された推定語信頼度Lを推定語信頼度格納メモリ501に保存する(ステップS35)。そして、制御器211は、ステップS1の処理へ戻り、前回と同じデータブロックを再度再生する。このとき、システムコントローラ116は、アドレス検出器112で検出されたアドレス情報を用いて前回と同じ領域(データブロック)を再生する。
一方、推定語信頼度格納メモリ501に前回までの推定語信頼度Lが保存されていると判断された場合(ステップS34でYES)、推定語生成器206は、ステップS27において最終的に生成された推定語信頼度Lと、推定語信頼度格納メモリ501に保存されている推定語信頼度Lとを用い、確率計算に基づいた演算処理によって推定語信頼度L’を生成し、生成した推定語信頼度L’の正負の符号に従って新たな推定語x’を生成する(ステップS36)。
次に、復号結果判定器208は、生成された新たな推定語x’を使って復号結果を判定する(ステップS37)。
次に、制御器211は、復号結果判定器208による復号判定の結果、推定語が正しく復号されているか否かを判断する(ステップS38)。ここで、推定語が正しく復号されていると判断された場合(ステップS38でYES)、制御器211は、判定結果と共に推定語x’を復号データとして推定語格納メモリ207から出力するよう制御する(ステップS31)。
一方、推定語が正しく復号されていないと判断された場合(ステップS38でNO)、制御器211は、繰返し再生回数が最大回数であるか否かを判断する(ステップS39)。ここで、繰返し再生回数が所定の最大回数であると判断された場合(ステップS39でYES)、制御器211は、判定結果と共に推定語x’を復号データとして推定語格納メモリ207から出力するよう制御する(ステップS31)。
一方、繰返し再生回数が所定の最大回数ではないと判断された場合(ステップS39でNO)、推定語生成器206は、最終的に生成された推定語信頼度Lを推定語信頼度格納メモリ501に保存する(ステップS35)。そして、制御器211は、ステップS1の処理へ戻り、前回と同じデータブロックを再度再生する。
かかる構成によれば、従来の繰返し再生処理を行わないシステムでは誤り訂正できないような品質の悪い信号を有するデータブロックに対して、該データブロックの信頼度情報が複数回入力され、前回の推定語信頼度と、今回の再生データから生成された推定語信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語信頼度が生成され、生成された推定語信頼度を用いて新たな推定語が生成される。これにより、実施の形態1と同様に、複数回の再生エネルギーが使用でき、従来できなかったエラーレートの低減を実現することができる。
(実施の形態3)
次に、本発明の実施の形態3に係る復号装置及び復号方法について図面を参照しながら詳細に説明する。なお、実施の形態3に係る光ディスク装置の構成は、図1に示す実施の形態1に係る光ディスク装置の構成と同じであるので説明を省略する。
実施の形態3における誤り訂正器の構成は、図8に示す実施の形態2における誤り訂正器の構成と同じである。そのため、本実施の形態3の誤り訂正器については、図8に示す誤り訂正器を用いて説明する。
図11及び図12は、本発明の実施の形態3における誤り訂正器の復号処理について説明するためのフローチャートである。
本発明の実施の形態3が、特に実施の形態2と異なる点は、前回と同じデータブロックを再度再生する処理を行う際に、新たな推定語x’を生成するステップを、ループ回数が所定の最大回数に到達した後に行うのではなく、復号処理ループ中に行う点である。推定語生成器206は、今回生成された推定語信頼度Lと、推定語信頼度格納メモリ501に保存されている推定語信頼度Lとを用いて確率計算に基づいた演算処理を行うことにより新たな推定語信頼度L’を生成する。そして、推定語生成器206は、生成した推定語信頼度L’の正負の符号に従って新たな推定語x’を生成する。
図11のステップS41からステップS47までの処理は、図5のステップS1からステップS7までの処理と同じであるため、説明を省略する。
ステップS47において推定語xが生成されると、制御器211は、推定語信頼度格納メモリ501に、前回までの推定語信頼度Lが保存されているか否かを判断する(ステップS48)。ここで、推定語信頼度格納メモリ501に前回までの推定語信頼度Lが保存されていないと判断された場合(ステップS48でNO)、推定語生成器206は、生成された推定語xを推定語信頼度格納メモリ501に保存する(ステップS50)。
一方、推定語信頼度格納メモリ501に前回までの推定語信頼度Lが保存されていると判断された場合(ステップS48でYES)、推定語生成器206は、ステップS47において最終的に生成された推定語信頼度Lと、推定語信頼度格納メモリ501に保存されている推定語信頼度Lとを用い、確率計算に基づいた演算処理によって推定語信頼度L’を生成し、生成した推定語信頼度L’の正負の符号に従って新たな推定語x’を生成する(ステップS49)。次に、推定語生成器206は、生成した推定語x’を推定語格納メモリ207に保存する(ステップS50)。
図11及び図12のステップS51からステップS56までの処理は、図5及び図6のステップS9からステップS14までの処理と同じであるため、説明を省略する。
ステップS55において繰返し再生回数が最大回数ではないと判断された場合(ステップS55でNO)、推定語生成器206は、最終的に生成された推定語信頼度Lを推定語信頼度格納メモリ501に保存する(ステップS57)。そして、制御器211は、ステップS1の処理へ戻り、前回と同じデータブロックを再度再生する。
かかる処理によれば、複数の再生信号から生成された信頼度を用いて新たな信頼度が生成され、生成された新たな信頼度を用いて通常の復号処理ループが実行される。そのため、本発明の実施の形態1及び実施の形態2と同様の効果を得ながら、更に復号処理時間を短縮することができる。
(実施の形態4)
次に、本発明の実施の形態4に係る復号装置及び復号方法について図面を参照しながら詳細に説明する。
図13は、本発明の実施の形態4に係る誤り訂正器の詳細な構成を表す図である。なお、実施の形態4に係る光ディスク装置の構成は、図1に示す実施の形態1に係る光ディスク装置の構成と同じであるので説明を省略する。また、図13において、図2に示す実施の形態1の誤り訂正器と同の構成要素については、同一の符号を付し、説明を省略する。
図13に示す誤り訂正器110は、信頼度生成器301、信頼度格納メモリ202、行処理演算器203、列処理演算器204、第1の列処理出力値格納メモリ205、推定語生成器206、推定語格納メモリ207、復号結果判定器208、第2の列処理出力値格納メモリ209及び制御器211を備える。
図13に示す実施の形態4の誤り訂正器と、図2に示す実施の形態1の誤り訂正器との違いは、信頼度生成器301が、信頼度格納メモリ202に信頼度情報を格納するだけでなく、信頼度格納メモリ202に保存された前回までの信頼度情報を用いて新たな信頼度情報を生成する点である。
信頼度生成器301は、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、信頼度格納メモリ202に保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を生成して信頼度格納メモリ202に保存する。
列処理演算器204は、信頼度格納メモリ202に保存された演算処理後の信頼度情報と行処理出力値とを用いて列処理出力値を演算する。
図14及び図15は、本発明の実施の形態4における誤り訂正器の復号処理について説明するためのフローチャートである。
図14及び図15のステップS61,S62,S65〜S77の処理は、図5及び図6のステップS1〜S15の処理と同じ処理であるため、説明を省略する。
ステップS62において信頼度λが生成されると、信頼度生成器301は、信頼度格納メモリ202に保存された前回までの信頼度λを読み出す(ステップS63)。
次に、信頼度生成器301は、受信した再生データ系列に従って、生成した信頼度λと、信頼度格納メモリ202から読み出した前回までの信頼度λとを用いて確率計算に基づいた演算処理を行うことにより信頼度情報を生成する(ステップS64)。
なお、信頼度格納メモリ202に前回までの信頼度λが保存されていない場合、ステップS63及びS64の処理は行われず、生成された信頼度λが信頼度格納メモリ202に保存される。
ステップS65以降の処理は実施の形態1における処理と同じであるが、確率計算に基づいた演算処理が行われた信頼度を用いて復号処理が行われる。
確率計算に基づいた演算処理としては、例えば、信頼度指標を振幅値で定義する場合は信頼度情報を平均処理すれば良いし、信頼度指標を通信路の条件付き確率の比で定義する場合は、確率分布に基づいて平均処理すれば良いし、信頼度指標を対数尤度比で定義する場合は、積算処理すれば良い。
かかる処理によれば、複数の再生信号から生成された信頼度情報が確率計算に基づいた演算処理により生成されるので、複数回の再生エネルギーを使用でき、従来できなかったエラーレートの低減を実現することができる。
なお、本実施の形態4において、実施の形態1と同様に、前回の復号結果である列処理出力値βmnを次回の復号時に初期値として用いているが、これに限定するものではなく、確率計算に基づいた演算処理によって信頼度を新たに生成する構成だけでも、複数回再生した場合と同等の効果を得ることができる。
また、本実施の形態4では、誤り訂正器110は、第2の列処理出力値格納メモリ209を備えているが、本発明は特にこれに限定されない。本実施の形態4における誤り訂正器110は、第2の列処理出力値格納メモリ209を備えず、実施の形態2及び3における推定語信頼度格納メモリ501を備えても良い。
また、本実施の形態4において、信頼度生成器301は、生成した信頼度λと、第2の列処理出力値格納メモリ205に保存された列処理出力値βmnとを用いて新たな信頼度情報を生成しても良い。
なお、本実施の形態1〜4において、再生動作中の時間を測定し、測定した再生時間が予め設定していた最大時間に達した場合に、復号処理ループ及び繰返し再生処理を終了しても良い。
なお、本実施の形態1〜4において、光ディスクの回転待ち時間を減らすため、信頼度格納メモリ202に信頼度情報系列を所定のデータ量だけ保存してから、以降の復号処理を行っても良い。
なお、本実施の形態2,3において、新たな推定語信頼度L’の生成方法は、上記の方法に限定されるものではなく、例えば、信頼度が2値情報であれば最も頻度が高い結果を採用することにより、必要なメモリ量を少なくすることができる。
なお、本実施の形態1〜4において、光ディスクから情報を再生する光ディスク装置を示したが、これに限定するものではなく、図16のような情報通信システムに復号装置を用いても良い。
図16は、本発明の実施の形態1〜4に係る情報通信システムの構成を示す図である。図16の情報通信システムは、送信装置901、通信チャネル902及び受信装置903を備える。送信装置901が送信した通信情報が、通信チャネル902を介して受信装置903に送信される。通信情報とは、電気信号又は光信号などである。
受信装置903は、プリアンプ103、A/D変換器104、PLL回路105、波形等化器106、ビタビ復号器107、同期信号検出器108、復調器109、誤り訂正器110、システムコントローラ116、受信器904及び送信器905を備える。なお、図16において、図1に示す実施の形態1の光ディスク装置と同一の構成要素については、同一の符号を付し、説明を省略する。
受信器904は、送信装置901によって送信された通信情報(データ)を受信し、プリアンプ103へ出力する。
送信装置901が送信した通信情報に対して、図示しない制御器211によって誤り訂正が不可能と判断された場合、送信器905は、通信チャネル902を介して送信装置901に再送命令を送信する。送信装置901は、再送命令を受信すると、前回と同じデータブロックの通信情報を再度送信する。受信装置903は、実施の形態1〜3で前述したように前回の通信情報と合わせて複数回の復号処理を行う。以上の構成により、情報を送受信する情報通信システムにおいても、複数回の再生エネルギーが使用でき、従来できなかったエラーレートの低減を実現することができる。
なお、上述した具体的実施形態には以下の構成を有する発明が主に含まれている。
本発明の一局面に係る復号装置は、複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、入力された前記データに基づいて前記信頼度情報を生成する信頼度生成器と、前記信頼度情報を保存する信頼度格納メモリと、行処理を行うことにより行処理出力値を演算する行処理演算器と、列処理を行うことにより列処理出力値を演算する列処理演算器と、同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御器とを備え、前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて、行処理を行うことにより前記行処理出力値を演算し、前記列処理演算器は、前記行処理出力値によって演算された前記行処理出力値と前記信頼度生成器によって生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、前記信頼度生成器は、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、前記信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して前記信頼度格納メモリに保存し、前記列処理演算器は、前記信頼度格納メモリに保存された前記新たに生成された信頼度情報と前記行処理出力値とを用いて前記列処理出力値を演算する。
この構成によれば、信頼度生成器は、入力されたデータに基づいて信頼度情報を生成する。信頼度格納メモリは、信頼度情報を保存する。行処理演算器は、行処理を行うことにより行処理出力値を演算する。列処理演算器は、列処理を行うことにより列処理出力値を演算する。制御器は、同一のデータブロックの信頼度情報を信頼度格納メモリに複数回入力する。また、行処理演算器は、列処理演算器によって演算された列処理出力値を用いて、行処理を行うことにより行処理出力値を演算する。列処理演算器は、行処理出力値によって演算された行処理出力値と信頼度生成器によって生成された信頼度情報とを用いて、列処理を行うことにより列処理出力値を演算する。信頼度生成器は、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して信頼度格納メモリに保存する。列処理演算器は、信頼度格納メモリに保存された新たに生成された信頼度情報と行処理出力値とを用いて列処理出力値を演算する。
したがって、誤り訂正前のエラーレートの高いデータに対して、同一のデータブロックの信頼度情報を用いて復号が複数回行われるので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる。
また、上記の復号装置において、前回入力された前記信頼度情報に基づいて前記列処理演算器によって演算された列処理出力値を保存する列処理出力値格納メモリをさらに備え、前記行処理演算器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記列処理出力値格納メモリに保存された前回の前記列処理出力値を前記行処理の初期値として用いることが好ましい。
この構成によれば、列処理出力値格納メモリは、前回入力された信頼度情報に基づいて列処理演算器によって演算された列処理出力値を保存する。行処理演算器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、列処理出力値格納メモリに保存された前回の列処理出力値を行処理の初期値として用いる。
したがって、列処理出力値格納メモリに保存された列処理出力値は、前回の再生データに対する尤もらしさを表した値であるので、列処理出力値格納メモリに保存された前回の列処理出力値を行処理の初期値として、前回と異なるデータに対して繰返し復号が行われることで、複数回の再生エネルギーを利用することができ、前回の再生時には訂正できなかった誤りを訂正することができる。
また、上記の復号装置において、前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、前記推定語の信頼度を保存する推定語信頼度格納メモリとをさらに備え、前記推定語生成器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記推定語信頼度格納メモリに保存された前回の推定語の信頼度と、今回入力された信頼度情報及び前記行処理出力値に基づいて生成された推定語の信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語の信頼度を更新し、前記更新した推定語の信頼度に従って推定語を生成することが好ましい。
この構成によれば、推定語生成器は、信頼度情報と行処理出力値とに基づいて推定語を生成する。推定語信頼度格納メモリは、推定語の信頼度を保存する。推定語生成器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、推定語信頼度格納メモリに保存された前回の推定語の信頼度と、今回入力された信頼度情報及び行処理出力値に基づいて生成された推定語の信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語の信頼度を更新し、更新した推定語の信頼度に従って推定語を生成する。
したがって、エラーレートの高いデータを有するデータブロックに対し、前回の推定語の信頼度と、今回入力された信頼度情報及び行処理出力値に基づいて生成された推定語の信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語の信頼度が更新され、更新された推定語の信頼度に従って推定語が生成されるので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる。
また、上記の復号装置において、前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて行処理出力値を繰り返し演算し、前記制御器は、前記行処理演算器による前記行処理出力値の演算処理回数を監視し、前記演算処理回数が所定の回数に到達した場合、前回と同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに入力させることが好ましい。
この構成によれば、行処理演算器は、列処理演算器によって演算された列処理出力値を用いて行処理出力値を繰り返し演算する。制御器は、行処理演算器による行処理出力値の演算処理回数を監視し、演算処理回数が所定の回数に到達した場合、前回と同一のデータブロックの信頼度情報を信頼度格納メモリに入力させる。
したがって、演算処理回数が所定の回数に到達した場合、前回と同一のデータブロックの信頼度情報が信頼度格納メモリに入力されるので、雑音が多く収束性の悪いデータに対して不要な演算処理時間が増加するのを防ぐことができる。
また、上記の復号装置において、復号結果を判定する復号結果判定器をさらに備え、前記制御器は、前記復号結果判定器による判定結果が所定の条件を満たさなかったデータブロックに対して、前記信頼度格納メモリに保存されている前記信頼度情報を用いて再度復号処理を行うことが好ましい。
この構成によれば、復号結果判定器による判定結果が所定の条件を満たさなかったデータブロックに対して、信頼度格納メモリに保存されている信頼度情報を用いて再度復号処理が行われるので、復号結果に応じて再度復号処理を行うか否かを判断することができる。
また、上記の復号装置において、前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、前記信頼度情報と前記行処理出力値とに基づいて生成される前記推定語が正しく復号されていることを検査するパリティ検査器とをさらに備え、前記制御器は、前記パリティ検査器による検査結果が所定の条件を満たさなかったデータブロックに対して、前記信頼度格納メモリに保存されている前記信頼度情報を用いて再度復号処理を行うことが好ましい。
この構成によれば、推定語生成器は、頼度情報と行処理出力値とに基づいて推定語を生成する。パリティ検査器は、信頼度情報と行処理出力値とに基づいて生成される推定語が正しく復号されていることを検査する。そして、制御器は、パリティ検査器による検査結果が所定の条件を満たさなかったデータブロックに対して、信頼度格納メモリに保存されている信頼度情報を用いて再度復号処理を行う。
したがって、パリティ検査器により推定語が正しく復号されていることを検査することができ、検査結果に応じて再度復号処理を行うか否かを判断することができる。
また、上記の復号装置において、前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、前記列処理出力値、前記行処理出力値又は前記推定語の信頼度のいずれかの演算結果と所定の閾値とを比較することにより、復号結果を判定する復号結果判定器とをさらに備え、前記制御器は、前記復号結果判定器による判定結果が所定の条件を満たさなかったデータブロックに対して、前記信頼度格納メモリに保存されている前記信頼度情報を用いて再度復号処理を行うことが好ましい。
この構成によれば、推定語生成器は、頼度情報と行処理出力値とに基づいて推定語を生成する。復号結果判定器は、列処理出力値、行処理出力値又は推定語の信頼度のいずれかの演算結果と所定の閾値とを比較することにより、復号結果を判定する。そして、制御器は、復号結果判定器による判定結果が所定の条件を満たさなかったデータブロックに対して、信頼度格納メモリに保存されている信頼度情報を用いて再度復号処理を行う。
したがって、列処理出力値、行処理出力値又は推定語の信頼度のいずれかの演算結果と所定の閾値とを比較することにより、復号結果を判定することができ、復号結果に応じて再度復号処理を行うか否かを判断することができる。
また、上記の復号装置において、前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器をさらに備え、前記推定語生成器は、前記推定語の信頼度が前記推定語信頼度格納メモリに保存されているときに、前記更新した推定語の信頼度に従って推定語を生成することが好ましい。
この構成によれば、推定語の信頼度が推定語信頼度格納メモリに保存されているときに、更新した推定語の信頼度に従って推定語が生成されるので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる。
本発明の他の局面に係る復号装置は、複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、前記信頼度情報を保存する信頼度格納メモリと、行処理を行うことにより行処理出力値を演算する行処理演算器と、列処理を行うことにより前記列処理出力値を演算する列処理演算器と、前記列処理出力値を保存する列処理出力値格納メモリと、同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御器とを備え、前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて、行処理を行うことにより前記行処理出力値を演算し、前記列処理演算器は、前記行処理出力値によって演算された前記行処理出力値と前記信頼度生成器によって生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、前記列処理出力値格納メモリは、前回入力された前記信頼度情報に基づいて前記列処理演算器によって演算された列処理出力値を保存し、前記行処理演算器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記列処理出力値格納メモリに保存された前回の前記列処理出力値を前記行処理の初期値として用いる。
この構成によれば、信頼度格納メモリは、信頼度情報を保存する。行処理演算器は、行処理を行うことにより行処理出力値を演算する。列処理演算器は、列処理を行うことにより列処理出力値を演算する。列処理出力値格納メモリは、列処理出力値を保存する。制御器は、同一のデータブロックの信頼度情報を信頼度格納メモリに複数回入力する。また、行処理演算器は、列処理演算器によって演算された列処理出力値を用いて、行処理を行うことにより行処理出力値を演算する。列処理演算器は、行処理出力値によって演算された行処理出力値と信頼度生成器によって生成された信頼度情報とを用いて、列処理を行うことにより列処理出力値を演算する。そして、列処理出力値格納メモリは、前回入力された信頼度情報に基づいて列処理演算器によって演算された列処理出力値を保存する。行処理演算器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、列処理出力値格納メモリに保存された前回の列処理出力値を行処理の初期値として用いる。
したがって、誤り訂正前のエラーレートの高いデータに対して、同一のデータブロックの信頼度情報を用いて復号が複数回行われるので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる。また、列処理出力値格納メモリに保存された列処理出力値は、前回の再生データに対する尤もらしさを表した値であるので、列処理出力値格納メモリに保存された前回の列処理出力値を行処理の初期値として、前回と異なるデータに対して繰返し復号が行われることで、複数回の再生エネルギーを利用することができ、前回の再生時には訂正できなかった誤りを訂正することができる。
本発明の他の局面に係る復号装置は、複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、前記信頼度情報を保存する信頼度格納メモリと、行処理を行うことにより行処理出力値を演算する行処理演算器と、列処理を行うことにより前記列処理出力値を演算する列処理演算器と、前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、前記推定語の信頼度を保存する推定語信頼度格納メモリと、同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御器とを備え、前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて、行処理を行うことにより前記行処理出力値を演算し、前記列処理演算器は、前記行処理出力値によって演算された前記行処理出力値と前記信頼度生成器によって生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、前記推定語生成器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記推定語信頼度格納メモリに保存された前回の推定語信頼度と、今回入力された信頼度情報及び前記行処理出力値に基づいて生成された推定語信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語信頼度を更新し、前記更新した推定語信頼度に従って推定語を生成する。
この構成によれば、信頼度格納メモリは、信頼度情報を保存する。行処理演算器は、行処理を行うことにより行処理出力値を演算する。列処理演算器は、列処理を行うことにより列処理出力値を演算する。推定語生成器は、信頼度情報と行処理出力値とに基づいて推定語を生成する。推定語信頼度格納メモリは、推定語の信頼度を保存する。制御器は、同一のデータブロックの信頼度情報を信頼度格納メモリに複数回入力する。また、行処理演算器は、列処理演算器によって演算された列処理出力値を用いて、行処理を行うことにより行処理出力値を演算する。列処理演算器は、行処理出力値によって演算された行処理出力値と信頼度生成器によって生成された信頼度情報とを用いて、列処理を行うことにより列処理出力値を演算する。そして、推定語生成器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、推定語信頼度格納メモリに保存された前回の推定語信頼度と、今回入力された信頼度情報及び行処理出力値に基づいて生成された推定語信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語信頼度を更新し、更新した推定語信頼度に従って推定語を生成する。
したがって、エラーレートの高いデータを有するデータブロックに対し、前回の推定語の信頼度と、今回入力された信頼度情報及び行処理出力値に基づいて生成された推定語の信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語の信頼度が更新され、更新された推定語の信頼度に従って推定語が生成されるので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる。
本発明の他の局面に係る復号装置は、複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、入力された前記データに基づいて生成された前記信頼度情報、列処理を行うことにより演算された列処理出力値、及び信頼度情報と行処理出力値とに基づいて生成された推定語の信頼度のうちの少なくとも1つを保存するメモリと、前記信頼度情報、前記列処理出力値及び前記推定語の信頼度のうちの少なくとも1つを用いて、同一のデータブロックの前記信頼度情報に対して所定の復号処理を複数回行う復号処理部とを備える。
この構成によれば、メモリは、入力された前記データに基づいて生成された信頼度情報、列処理を行うことにより演算された列処理出力値、及び信頼度情報と行処理出力値とに基づいて生成された推定語の信頼度のうちの少なくとも1つを保存する。復号処理部は、信頼度情報、列処理出力値及び推定語の信頼度のうちの少なくとも1つを用いて、同一のデータブロックの信頼度情報に対して所定の復号処理を複数回行う。
したがって、復調器によって同期ずれが補正されたデータに対して、信頼度情報、列処理出力値及び推定語の信頼度のうちの少なくとも1つを用いて、同一のデータブロックの信頼度情報に対して所定の復号処理が複数回行われるので、同期ずれを抑えることができると共に、復号データのS/Nを向上させることができる。
本発明の他の局面に係る復号方法は、複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号方法であって、入力された前記データに基づいて前記信頼度情報を生成する信頼度生成ステップと、前記信頼度情報を信頼度格納メモリに保存する信頼度格納ステップと、行処理を行うことにより行処理出力値を演算する行処理演算ステップと、列処理を行うことにより前記列処理出力値を演算する列処理演算ステップと、同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御ステップとを含み、前記行処理演算ステップは、前記列処理演算ステップにおいて演算された前記列処理出力値を用いて、行処理を行うことにより行処理出力値を演算し、前記列処理演算ステップは、前記行処理出力ステップにおいて演算された前記行処理出力値と前記信頼度生成ステップにおいて生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、前記信頼度生成ステップは、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、前記信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して前記信頼度格納メモリに保存し、前記列処理演算ステップは、前記信頼度格納メモリに保存された前記新たに生成された信頼度情報と前記行処理出力値とを用いて前記列処理出力値を演算する。
この構成によれば、信頼度生成ステップにおいて、入力されたデータに基づいて信頼度情報が生成される。信頼度格納ステップにおいて、信頼度情報が信頼度格納メモリに保存される。行処理演算ステップにおいて、行処理が行われることにより行処理出力値が演算される。列処理演算ステップにおいて、列処理が行われることにより列処理出力値が演算される。制御ステップにおいて、同一のデータブロックの信頼度情報が信頼度格納メモリに複数回入力される。また、行処理演算ステップにおいて、列処理演算で演算された列処理出力値を用いて、行処理を行うことにより行処理出力値が演算される。列処理演算ステップにおいて、行処理出力ステップで演算された行処理出力値と信頼度生成ステップで生成された信頼度情報とを用いて、列処理を行うことにより列処理出力値が演算される。信頼度生成ステップにおいて、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理が行われることにより信頼度情報が新たに生成されて信頼度格納メモリに保存される。列処理演算ステップにおいて、信頼度格納メモリに保存された新たに生成された信頼度情報と行処理出力値とを用いて列処理出力値が演算される。
したがって、誤り訂正前のエラーレートの高いデータに対して、同一のデータブロックの信頼度情報を用いて復号が複数回行われるので、復号されたデータのエラーレートを低減することができ、S/Nを向上させることができる。
なお、発明を実施するための形態の項においてなされた具体的な実施態様または実施例は、あくまでも、本発明の技術内容を明らかにするものであって、そのような具体例にのみ限定して狭義に解釈されるべきものではなく、本発明の精神と特許請求事項との範囲内で、種々変更して実施することができるものである。
本発明に係る復号装置及び復号方法は、複数の再生信号を利用してデータを復号する復号装置及び復号方法に有用であり、記録媒体の高密度化、及びシステム全体のフィジビリティの向上に有用である。また、大容量の光ディスクを用いた復号装置及び復号方法にも応用でき、デジタル通信装置及びデジタル通信方法にも応用でき、集積回路にも応用できる。

Claims (12)

  1. 複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、
    入力された前記データに基づいて前記信頼度情報を生成する信頼度生成器と、
    前記信頼度情報を保存する信頼度格納メモリと、
    行処理を行うことにより行処理出力値を演算する行処理演算器と、
    列処理を行うことにより列処理出力値を演算する列処理演算器と、
    同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御器とを備え、
    前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて、行処理を行うことにより前記行処理出力値を演算し、
    前記列処理演算器は、前記行処理出力値によって演算された前記行処理出力値と前記信頼度生成器によって生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、
    前記信頼度生成器は、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、前記信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して前記信頼度格納メモリに保存し、
    前記列処理演算器は、前記信頼度格納メモリに保存された前記新たに生成された信頼度情報と前記行処理出力値とを用いて前記列処理出力値を演算することを特徴とする復号装置。
  2. 前回入力された前記信頼度情報に基づいて前記列処理演算器によって演算された列処理出力値を保存する列処理出力値格納メモリをさらに備え、
    前記行処理演算器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記列処理出力値格納メモリに保存された前回の前記列処理出力値を前記行処理の初期値として用いることを特徴とする請求項1記載の復号装置。
  3. 前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、
    前記推定語の信頼度を保存する推定語信頼度格納メモリとをさらに備え、
    前記推定語生成器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記推定語信頼度格納メモリに保存された前回の推定語の信頼度と、今回入力された信頼度情報及び前記行処理出力値に基づいて生成された推定語の信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語の信頼度を更新し、前記更新した推定語の信頼度に従って推定語を生成することを特徴とする請求項1記載の復号装置。
  4. 前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて行処理出力値を繰り返し演算し、
    前記制御器は、前記行処理演算器による前記行処理出力値の演算処理回数を監視し、前記演算処理回数が所定の回数に到達した場合、前回と同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに入力させることを特徴とする請求項1〜3のいずれかに記載の復号装置。
  5. 復号結果を判定する復号結果判定器をさらに備え、
    前記制御器は、前記復号結果判定器による判定結果が所定の条件を満たさなかったデータブロックに対して、前記信頼度格納メモリに保存されている前記信頼度情報を用いて再度復号処理を行うことを特徴とする請求項1〜4のいずれかに記載の復号装置。
  6. 前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、
    前記信頼度情報と前記行処理出力値とに基づいて生成される前記推定語が正しく復号されていることを検査するパリティ検査器とをさらに備え、
    前記制御器は、前記パリティ検査器による検査結果が所定の条件を満たさなかったデータブロックに対して、前記信頼度格納メモリに保存されている前記信頼度情報を用いて再度復号処理を行うことを特徴とする請求項1〜5のいずれかに記載の復号装置。
  7. 前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、
    前記列処理出力値、前記行処理出力値又は前記推定語の信頼度のいずれかの演算結果と所定の閾値とを比較することにより、復号結果を判定する復号結果判定器とをさらに備え、
    前記制御器は、前記復号結果判定器による判定結果が所定の条件を満たさなかったデータブロックに対して、前記信頼度格納メモリに保存されている前記信頼度情報を用いて再度復号処理を行うことを特徴とする請求項1〜6のいずれかに記載の復号装置。
  8. 前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器をさらに備え、
    前記推定語生成器は、前記推定語の信頼度が前記推定語信頼度格納メモリに保存されているときに、前記更新した推定語の信頼度に従って推定語を生成することを特徴とする請求項1〜7のいずれかに記載の復号装置。
  9. 複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、
    前記信頼度情報を保存する信頼度格納メモリと、
    行処理を行うことにより行処理出力値を演算する行処理演算器と、
    列処理を行うことにより前記列処理出力値を演算する列処理演算器と、
    前記列処理出力値を保存する列処理出力値格納メモリと、
    同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御器とを備え、
    前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて、行処理を行うことにより前記行処理出力値を演算し、
    前記列処理演算器は、前記行処理出力値によって演算された前記行処理出力値と前記信頼度生成器によって生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、
    前記列処理出力値格納メモリは、前回入力された前記信頼度情報に基づいて前記列処理演算器によって演算された列処理出力値を保存し、
    前記行処理演算器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記列処理出力値格納メモリに保存された前回の前記列処理出力値を前記行処理の初期値として用いることを特徴とする復号装置。
  10. 複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、
    前記信頼度情報を保存する信頼度格納メモリと、
    行処理を行うことにより行処理出力値を演算する行処理演算器と、
    列処理を行うことにより前記列処理出力値を演算する列処理演算器と、
    前記信頼度情報と前記行処理出力値とに基づいて推定語を生成する推定語生成器と、
    前記推定語の信頼度を保存する推定語信頼度格納メモリと、
    同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御器とを備え、
    前記行処理演算器は、前記列処理演算器によって演算された前記列処理出力値を用いて、行処理を行うことにより前記行処理出力値を演算し、
    前記列処理演算器は、前記行処理出力値によって演算された前記行処理出力値と前記信頼度生成器によって生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、
    前記推定語生成器は、前回と同一のデータブロックの信頼度情報を用いた復号が行われる際に、前記推定語信頼度格納メモリに保存された前回の推定語信頼度と、今回入力された信頼度情報及び前記行処理出力値に基づいて生成された推定語信頼度とに基づいて、確率計算に基づいた演算処理を用いて推定語信頼度を更新し、前記更新した推定語信頼度に従って推定語を生成することを特徴とする復号装置。
  11. 複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号装置であって、
    入力された前記データに基づいて生成された前記信頼度情報、列処理を行うことにより演算された列処理出力値、及び信頼度情報と行処理出力値とに基づいて生成された推定語の信頼度のうちの少なくとも1つを保存するメモリと、
    前記信頼度情報、前記列処理出力値及び前記推定語の信頼度のうちの少なくとも1つを用いて、同一のデータブロックの前記信頼度情報に対して所定の復号処理を複数回行う復号処理部とを備えることを特徴とする復号装置。
  12. 複数のデータブロックで構成されたデータが入力され、前記データブロック内でパリティ検査行列によって符号化された前記データの信頼度情報に基づいて前記データを復号する復号方法であって、
    入力された前記データに基づいて前記信頼度情報を生成する信頼度生成ステップと、
    前記信頼度情報を信頼度格納メモリに保存する信頼度格納ステップと、
    行処理を行うことにより行処理出力値を演算する行処理演算ステップと、
    列処理を行うことにより前記列処理出力値を演算する列処理演算ステップと、
    同一のデータブロックの前記信頼度情報を前記信頼度格納メモリに複数回入力する制御ステップとを含み、
    前記行処理演算ステップは、前記列処理演算ステップにおいて演算された前記列処理出力値を用いて、行処理を行うことにより行処理出力値を演算し、
    前記列処理演算ステップは、前記行処理出力ステップにおいて演算された前記行処理出力値と前記信頼度生成ステップにおいて生成された前記信頼度情報とを用いて、列処理を行うことにより前記列処理出力値を演算し、
    前記信頼度生成ステップは、前回と同一のデータブロックの信頼度情報を用いて復号が行われる際に、前記信頼度格納メモリに保存されている前回生成された信頼度情報と、今回生成された信頼度情報とを用いて、確率計算に基づいた演算処理を行うことにより信頼度情報を新たに生成して前記信頼度格納メモリに保存し、
    前記列処理演算ステップは、前記信頼度格納メモリに保存された前記新たに生成された信頼度情報と前記行処理出力値とを用いて前記列処理出力値を演算することを特徴とする復号方法。
JP2013527875A 2011-08-09 2012-08-01 復号装置及び復号方法 Expired - Fee Related JP5884031B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013527875A JP5884031B2 (ja) 2011-08-09 2012-08-01 復号装置及び復号方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011173918 2011-08-09
JP2011173918 2011-08-09
PCT/JP2012/004897 WO2013021588A1 (ja) 2011-08-09 2012-08-01 復号装置及び復号方法
JP2013527875A JP5884031B2 (ja) 2011-08-09 2012-08-01 復号装置及び復号方法

Publications (2)

Publication Number Publication Date
JPWO2013021588A1 true JPWO2013021588A1 (ja) 2015-03-05
JP5884031B2 JP5884031B2 (ja) 2016-03-15

Family

ID=47668126

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013527875A Expired - Fee Related JP5884031B2 (ja) 2011-08-09 2012-08-01 復号装置及び復号方法

Country Status (4)

Country Link
US (1) US9244760B2 (ja)
EP (1) EP2744113A1 (ja)
JP (1) JP5884031B2 (ja)
WO (1) WO2013021588A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014213071A1 (de) * 2014-07-04 2016-01-07 Robert Bosch Gmbh Verfahren und Vorrichtung zur Verarbeitung von Daten
US10277252B2 (en) * 2017-01-09 2019-04-30 At&T Intellectual Property I, L.P. Encoding data with polar codes for control channels

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01233008A (ja) 1988-03-14 1989-09-18 Eiwa Tekko Kk ブライトワイヤーの製造法
JPH0443721A (ja) * 1990-06-11 1992-02-13 Matsushita Electric Ind Co Ltd ディジタル信号復号装置
JP2000242907A (ja) 1999-02-16 2000-09-08 Nec Corp 情報読出し方法及び情報再生装置
JP4012677B2 (ja) 2000-09-20 2007-11-21 富士通株式会社 データリード方法及び記憶装置
JP3663377B2 (ja) 2001-10-23 2005-06-22 インターナショナル・ビジネス・マシーンズ・コーポレーション データ記憶装置、読み出しデータの処理装置および読み出しデータの処理方法
JP3889286B2 (ja) * 2002-01-31 2007-03-07 三菱電機株式会社 復号方法、復号装置及びディジタル伝送システム
WO2004053873A1 (ja) 2002-12-10 2004-06-24 Fujitsu Limited データ記録再生システム
GB2408898B (en) 2003-12-02 2006-08-16 Toshiba Res Europ Ltd Improved communications apparatus and methods
JP2007124341A (ja) 2005-10-28 2007-05-17 Kddi Corp 復号装置および方法、ならびに復調復号装置および方法
US8103945B2 (en) * 2007-01-05 2012-01-24 Sony Corporation Decoding method and decoding apparatus as well as program
JP5195550B2 (ja) 2009-03-17 2013-05-08 沖電気工業株式会社 復号装置及び符号化システム
JP2012244305A (ja) * 2011-05-17 2012-12-10 Toshiba Corp メモリコントローラ、半導体メモリ装置、および復号方法

Also Published As

Publication number Publication date
US20130173993A1 (en) 2013-07-04
WO2013021588A1 (ja) 2013-02-14
EP2744113A1 (en) 2014-06-18
US9244760B2 (en) 2016-01-26
JP5884031B2 (ja) 2016-03-15

Similar Documents

Publication Publication Date Title
US20070061687A1 (en) Soft decoding method and apparatus, error correction method and apparatus, and soft output method and apparatus
US7133232B2 (en) Apparatus for recording and regenerating data
US9118348B2 (en) Decoding apparatus, storage apparatus, and decoding method
JP5884031B2 (ja) 復号装置及び復号方法
US10951234B2 (en) Non-linear LLR look-up tables
JP4048571B2 (ja) 情報再生装置および再生方法
US20030101410A1 (en) Method and apparatus for detecting and correcting errors in a magnetic recording channel of a mass storage system
US7130257B2 (en) Recording/reproducing apparatus having a substituting part substituting for burst errors and a method of substituting for burst errors
JP4103152B2 (ja) 情報再生装置および再生方法
JP4501960B2 (ja) ビタビ検出器、及び、情報再生装置
US20070274419A1 (en) Apparatus and method of detecting error symbol, and disk drive apparatus using the same
US20070205922A1 (en) MTR encoding method, MTR decoding method, MTR encoder, MTR decoder, and magnetic recording device
JP2001135036A (ja) データ復号装置及び方法
JP4443518B2 (ja) 復号装置および復号方法
CN101361131A (zh) 具有提高的数据纠错能力的再现数据的方法和设备
JP2007200441A (ja) 符号化装置、復号装置、信号処理装置、および記憶システム
JP4048576B2 (ja) 情報再生装置および再生方法
JPH11328875A (ja) 情報再生装置および再生方法
JP2007200516A (ja) 情報再生装置および情報再生方法
JP2008159229A (ja) 光ディスク記録再生装置、及び光ディスク記録再生方法
JP2008262611A (ja) 復号方法及び復号装置、情報再生装置
JP2009289379A (ja) 光ディスク装置および光ディスク再生方法
JPH10241296A (ja) 情報再生装置および再生方法
JPH10269648A (ja) 情報再生装置および再生方法
JP2006092637A (ja) ディジタル信号復号装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150508

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150929

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151007

R151 Written notification of patent or utility model registration

Ref document number: 5884031

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees