説明

再生装置および再生方法

【課題】 1つのLDPCデコーダを用いて複数のチャンネルのLDPC符号の反復復号を時分割に行う場合の、各チャンネルへの反復有限回数の割り当てを最適化して、エラーレートを低下させる。
【解決手段】 1つのLDPCデコーダ32を時分割に用いて複数のチャンネルの反復復号を行う場合に、前回の反復復号で反復回数Rが少ないチャンネルから先に反復復号を行うように制御する。これにより、より多くの反復回数を必要とする傾向のあるチャンネルの反復復号に、より多くの反復有限回数uを割り当てることができ、ブロックエラーの発生確率を低減することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記録媒体から複数のチャンネルの信号を再生する再生装置および再生方法に係り、特にLDPC符号を復号して再生を行う再生装置および再生方法に関するものである。
【背景技術】
【0002】
低密度パリティ検査符号(Low Density Parity Check codes)(以下、LDPC符号という)が脚光を浴びつつある。LDPC符号は、ターボ符号等と同様に、符号長を長くしていくにしたがって、シャノン限界に近い性能が得られることがわかりつつある。また、LDPC符号は、最小距離が符号長に比例するという性質があることから、その特徴として、ブロック誤り確率特性がよく、さらに、ターボ符号等の復号特性において観測される、いわゆるエラーフロア現象が殆ど生じないことも利点として挙げられる。
【0003】
LDPC符号は、そのLDPC符号を定義するパリティ検査行列(parity check matrix)が疎なものであることを最大の特徴とするものである。ここで、疎な行列とは、行列のコンポーネントの"1"の個数が非常に少なく構成されるものである。このようなLDPC符号による符号化においては、検査行列Hに基づいて生成行列Gを生成し、この生成行列Gを2元の情報メッセージに対して乗算することによって符号語を生成することで実現される。具体的には、LDPC符号による符号化を行う符号化装置は、まず、検査行列Hの転置行列HTとの間に、式GHT=0が成立する生成行列Gを算出する。
【0004】
一方、LDPC符号の復号法には、sum-productアルゴリズムと称されるものがある。sum-productアルゴリズムは、事後確率に関する計算を「変数ノード処理」と「チェックノード処理」と呼ばれる2つの処理に分け、その間で反復処理を繰り返すことで推定精度の高いビット系列を判定する。事後確率とは、受信信号が既知であるという前提に基づく各符号語に関する条件付き確率である。sum-productアルゴリズムは、この事後確率を漏れなく計算する手法であるビット単位最大事後確率復号法を近似したもので、疎な行列を用いることで近似計算の効率を飛躍的に高めたものである。
【0005】
sum-productアルゴリズムでは、反復復号の反復回数を重ねるに従って推定精度が向上し、符号の誤りが訂正できたことになる。一般的に、反復回数には上限が定められる。これは、sum-productアルゴリズムでは、反復回数を重ねればパリティ検索条件を満たすビット列が得られるという収束性が保証されないためである。
【0006】
このようなsum-productアルゴリズムによるLDPC符号の復号法を、テープ状の磁気記録媒体に対する記録再生を行う装置でのデータ再生のようにリアルタイム性が要求されるシステムに用いた場合、反復回数の上限は時間的にさらに厳しい制約のもとに決められる必要があり、反復回数の上限を超えてもパリティ検索条件を満たすビット列が得られない場合には誤り訂正エラーとして、反復復号は強制終了とされる。
【0007】
また、特許文献1には、LDPC符号の反復復号において、処理効率や消費電力の面から最適な反復回数を決定するために、1フレームの反復復号に割り当て可能な許容時間、1フレーム中の符号ブロック数、および各符号ブロックのサイズに基づいて、各符号ブロックの最大反復回数を決定する技術が開示されている。
【特許文献1】特開2007−6382号参照
【発明の開示】
【発明が解決しようとする課題】
【0008】
sum-productアルゴリズムによるLDPC符号の復号法を、テープ状の磁気記録媒体に対してマルチチャンネルで記録再生を行う磁気記録再生装置のデータ再生に用いた場合、チャンネル毎にLDPC符号の復号を行うLDPCデコーダを設けて、各チャンネルのLDPC符号を並列して行うか、もしくは、1つのチャンネルのLDPC復号が終了したなら次のチャンネルのLDPC復号を開始するといったように、1つのLDPCデコーダを時分割に用いて各チャンネルの反復復号を時分割に行うことが考えられる。
【0009】
コスト面を優先したとき、1つのLDPCデコーダを時分割に用いて複数のチャンネルのLDPC復号を時分割に行う構成が採用される。しかしながら、この場合には次のような問題がある。
【0010】
1つのLDPCデコーダを時分割に用いて複数のチャンネルのLDPC復号を時分割に行う場合、例えば、簡単な例として、2チャンネルのLDPC復号を時分割に行う場合、先行するチャンネルのLDPC復号でパリティ検索条件を満たすビット列が得られるまでに多くの回数の反復処理を要し、システムで決められた反復最大回数を全て消費したり、その大部分を消費してしまった場合、次のチャンネルのLDPC復号が実行不能になったり、実行できたとしても反復処理を十分な回数実行できないためにLDPC復号が強制終了となり、誤り訂正エラーとなってしまうおそれがある。
【0011】
そこで、システムで決められた反復最大回数をチャンネル数で均等に割った回数を、個々のチャンネルのLDPC復号に分配して割り当てることが考えられる。しかしながら、この方法では、チャンネル毎のLDPC復号での反復処理に割り当てられる反復最大回数が1/(チャンネル数)に制限されることによって、システムで決められた反復最大回数の利用効率が低下し、エラーレートが上がる。
【0012】
本発明は、かかる実情に鑑み、1つのLDPCデコーダを用いて複数のチャンネルのLDPC符号の反復復号を時分割に行う場合の、各チャンネルへの反復有限回数の割り当てを最適化することができ、エラーレートを低下させることのできる再生装置及び再生方法を提供しようとするものである。
【課題を解決するための手段】
【0013】
上記の課題を解決するために、本発明の再生装置は、複数のチャンネルの信号を再生する再生装置であって、前記チャンネル毎に、LDPC(Low Density Parity Check)符号により符号化された、LDPC符号長分のビット列をブロックとして、このブロックのビット毎の軟判定を行う軟判定手段と、前記チャンネル毎に、前記軟判定手段により得られた前記ブロック単位の軟判定結果を保持する保持手段と、前記ブロック単位の軟判定結果を入力として、反復復号により推定ビット列を求める復号手段と、前記チャンネル毎の反復復号終了時の反復回数をもとに、次のブロックの反復復号のチャンネル間での優先順位を決定し、この優先順位に従って前記各チャンネルの反復復号が行われるように、前記保持手段から前記復号手段への前記各チャンネルの前記ブロック単位の軟判定結果の入力を制御する制御手段とを具備する。
【0014】
本発明において、制御手段は、チャンネル毎の反復復号終了時の反復回数をもとに、次のブロックの反復復号のチャンネル間での優先順位を決定し、この優先順位に従って各チャンネルの反復復号が行われるように各チャンネルの前記ブロック単位の軟判定結果の入力を制御することで、1つのLDPCデコーダを用いて複数のチャンネルのLDPC符号の反復復号を時分割に行う場合の、各チャンネルへの反復有限回数の割り当てを最適化することができ、エラーレートを低下させることができる。
【0015】
本発明の再生装置において、前記軟判定手段は、前記ビット単位の事後確率の対数尤度比を前記軟判定結果として求めるものであってもよい。
【0016】
本発明の再生装置において、前記制御手段は、反復復号終了時の反復回数が少ないチャンネルほど、次のブロックの反復復号が優先して行われるようにチャンネル間での優先順位を決定することとしてもよい。これにより、最初のチャンネルの反復復号が少ない反復回数で終了する確率が高くなり、次のチャンネルの反復復号に多くの反復回数を割り当てることができ、ブロックエラーの発生確率を低減することができる。すなわち、LDPC符号の反復復号時の反復回数は、再生信号の品質が悪くてSN比が小さいほど増える。再生信号の品質は記録ヘッドや再生ヘッドの特性等に大きく依存するので、特定のチャンネルの反復復号時の反復回数が他のチャンネルのそれよりも多くなる状態が続く傾向がある。したがって、前回反復回数が少なかった方のチャンネルから先に反復復号を行うことによって、次のチャンネルの反復復号に、より多くの反復有限回数を割り当てることができる確率が高くなる。
【0017】
また、本発明の再生装置において、前記復号手段は、複数のチャンネルの反復復号時の反復回数の上限制限を有するものである。リアルタイムなデータ再生が要求される場合、反復回数の上限は時間的な制約を考慮して決められる。本発明は、このように反復回数の上限制限が存在する場合の、各チャンネルへの反復有限回数の割り当てを最適化することによって、エラーレートを低下させることができるものである。
【0018】
本発明において、前記復号手段は、事後確率に関する計算を変数ノード処理とチェックノード処理の2つの処理に分け、その間で反復処理を行うものである。この方法は、sum-productアルゴリズムと称されるものであり、反復処理を繰り返すことで推定精度の高いビット系列を判定することができる。事後確率とは、受信信号が既知であるという前提に基づく各符号語に関する条件付き確率である。sum-productアルゴリズムは、この事後確率を漏れなく計算する手法であるビット単位最大事後確率復号方を近似したもので、疎な行列を用いることで近似計算の効率を飛躍的に高めたものである。
【0019】
本発明の別の観点に基づく再生方法は、複数のチャンネルの信号を再生する方法であって、前記チャンネル毎に、LDPC(Low Density Parity Check)符号により符号化された、LDPC符号長分のビット列をブロックとして、このブロックのビット毎の軟判定を行うステップと、前記ブロック単位の軟判定結果を入力として、反復復号により推定ビット列を求めるステップと、前記チャンネル毎の反復復号終了時の反復回数をもとに、次のブロックの反復復号のチャンネル間での優先順位を決定し、この優先順位に従って前記各チャンネルの反復復号が行われるように制御するステップとを具備する。
【0020】
本発明によれば、チャンネル毎の反復復号終了時の反復回数をもとに、次のブロックの反復復号のチャンネル間での優先順位を決定し、この優先順位に従って各チャンネルの反復復号が行われるように制御することで、1つのLDPCデコーダを用いて複数のチャンネルのLDPC符号の反復復号を時分割に行う場合の、各チャンネルへの反復有限回数の割り当てを最適化することができ、エラーレートを低下させることができる。
【発明の効果】
【0021】
本発明によれば、1つのLDPCデコーダを用いて複数のチャンネルのLDPC符号の反復復号を時分割に行う場合の、各チャンネルへの反復有限回数の割り当てを最適化することができ、エラーレートを低下させることができる。
【発明を実施するための最良の形態】
【0022】
以下、本発明の実施の形態を図面を用いて詳細に説明する。
【0023】
図1および図2は、本発明の再生装置を、テープ状の磁気記録媒体に対して記録または再生を行う磁気記録再生装置に採用した場合の実施の形態の構成を示す図であり、図1はその磁気記録再生装置における記録装置の構成を示す図、図2はその磁気記録再生装置における再生装置の構成を示す図である。
【0024】
この実施形態の磁気記録再生装置は、テープ状の磁気記録媒体に複数の記録ヘッドで複数のチャンネルの信号を記録し、かつそのテープ状の磁気記録媒体から複数の再生ヘッドで各チャンネルの信号を再生する装置である。この実施形態では、チャンネル数が2である場合について説明するが、本発明においてチャンネル数は複数であればよい。
【0025】
まず、図1を参照して記録装置の構成を説明する。同図に示すように、記録装置は、データ分配部10、ヘッダ付加部11A,11B、LDPC符号化部12A,12B、SYNCパターン付加部13A,13B、記録アンプ14A,14B、記録ヘッド15A,15Bを備える。ここで、ヘッダ付加部11A,11B、LDPC符号化部12A,12B、SYNCパターン付加部13A,13B、記録アンプ14A,14B、記録ヘッド15A,15Bは、それぞれ、チャンネル毎に設けられている。
【0026】
データ分配部10は、ユーザデータをチャンネル数分のデータに分配して、チャンネル毎のヘッダ付加部11A,11Bに供給する。
【0027】
ヘッダ付加部11A,11Bは、チャンネル毎に分けられたユーザデータに再生制御のために必要な各種の付加情報をヘッダとして付加する。
【0028】
LDPC符号化部12A,12Bは、ヘッダが付加されたデータをLDPC符号化してLDPC符号語を生成する。
【0029】
SYNCパターン付加部13A,13Bは、LDPC符号化部12A,12Bより得られた符号語の先頭にブロック検出のためのSYNCパターンを付加する。
【0030】
記録アンプ14A,14Bは、SYNCパターン付加部13A,13Bより出力された記録符号列をもとに記録ヘッド15A,15Bを駆動する。記録ヘッド15A,15Bはテープ状の磁気記録媒体16に信号を記録する。
【0031】
次に、本実施形態の磁気記録再生装置の記録装置の動作を示す。まず、ユーザデータがデータ分配部10に入力され、チャンネル数分のデータに分配されてチャンネル毎のヘッダ付加部11A,11Bに供給される。以降、チャンネル毎の動作が以下のように行われる。
【0032】
ヘッダ付加部11A,11Bにて、データ分配部10より供給されたユーザデータに対して、当該ユーザデータの再生制御のために必要な各種の付加情報がヘッダとして付加される。次に、LDPC符号化部12A,12Bにて、ヘッダが付加されたデータはLDPCの符号長N分のビット数に符号化される。このLDPC符号化は、例えば、パリティ符号を定義する検査行列Hから、GHT=0を満足する生成行列Gを求め、ヘッダが付加されたデータに生成行列Gを乗じることなどによって行われる。ここで、パリティ符号を定義する検査行列HはM行×N列の"0"と"1"の要素からなる行列で、かつ疎なものであることを特徴とするものである。疎な行列とは、行列の要素"1"の個数が非常に少なく構成されるものである。符号化により得られるビット数はLDPCの符号長Nであり、このLDPC符号長N分のビット列を1ブロックとする。
【0033】
次に、ブロックの先頭に、SYNCパターン付加部13A,13BによってSYNCパターンが付加されて1ブロックの記録ビット列が得られる。
【0034】
図3に、この1ブロックの記録ビット列の構成を示す。このように1ブロックの記録ビット列の先頭にはブロック検出のためのSYNCパターンが付加され、このSYNCパターンの後に、ヘッダが付加されたユーザデータを符号化した1ブロック分のビット列である符号語が付加される。符号語は、ヘッダが付加されたユーザデータのメッセージ・ビット列と検査ビット列とで構成される。
【0035】
この後は、記録アンプ14A,14Bにて、記録ビット列をもとに記録ヘッド15A,15Bが駆動されることによって、テープ状の磁気記録媒体16に信号が記録される。
【0036】
次に、図2を参照して再生装置の構成を説明する。同図に示すように、再生装置は、再生ヘッド21A,21B、再生アンプ22A,22B、ADコンバータ23A,23B、HPF(High Pass Filter)24A,24B、プレフィルタ25A,25B、デジタル位相同期回路26A,26B、適応型等化フィルタ27A,27B、軟判定検出器28A,28B、SYNC検出器29A,29B、バッファ30A,30B、セレクタ31、LDPCデコーダ32、データ処理部33、バッファ・セレクタ制御部34を備えている。ここで、再生ヘッド21A,21B、再生アンプ22A,22B、ADコンバータ23A,23B、HPF(High Pass Filter)24A,24B、プレフィルタ25A,25B、デジタル位相同期回路26A,26B、適応型等化フィルタ27A,27B、軟判定検出器28A,28B、SYNC検出器29A,29B、バッファ30A,30Bは、それぞれ、チャンネル毎に設けられ、セレクタ31、LDPCデコーダ32、データ処理部33、バッファ・セレクタ制御部34はそれぞれ1つずつ設けられている。
【0037】
再生ヘッド21A,21Bは、磁気記録媒体16に記録された信号を読み出すヘッドである。再生アンプ22A,22Bは、再生ヘッド21A,21Bの出力を後段の回路にて処理可能なレベルに増幅する。ADコンバータ23A,23Bは、再生アンプ22A,22Bより出力されたアナログ再生信号をデジタル値に変換する。HPF24A,24Bは、ADコンバータ23A,23Bの出力から後段の処理にとって不要な低周波成分を除去する。プレフィルタ25A,25Bは、HPF24A,24Bを通過した再生信号に対して位相同期のための等化処理を行う。デジタル位相同期回路26A,26Bは、ADコンバータ23A,23Bによって非同期にサンプリングされた再生信号から位相同期のとれたデータ系列を生成する。適応型等化フィルタ27A,27Bは、後段の軟判定検出器28A,28Bから出力される誤差信号をもとに、自身のフィルタのタップ係数を最適な値に更新して、入力信号を所定の目標等化特性に等化する。
【0038】
軟判定検出器28A,28Bには、例えば、事後確率検出器等が用いられる。事後確率検出器は、入力値yを基にビット毎の事後確率P0=P(x=0|Y=y),P1=P(x=1|Y=y)を計算し、その対数尤度比(LLR:Log-Likelihood Ratio)λ=log(P1/P0)を出力する。ここでxは記録ビットであり、例えば、"0"か"1"のいずれかの値をとる。
【0039】
なお、事後確率検出器は、トレリス線図を用いて前後複数の入力値からLLRを求めるものであってもよい。トレリス線図とは、入力されるビット系列に従って、符号器が状態を変化させていく過程で生成する符号列を表すものである。
【0040】
SYNC検出器29A,29Bは、軟判定検出器28A,28Bによって判定されたLLRからブロックの先頭のSYNCパターンを検出して、バッファ30A,30Bに最新の1ブロック分のLLRが保持されるように制御を行う。
【0041】
バッファ30A,30Bは、チャンネル毎に1ブロック分のLLRを保持する。バッファ30A,30Bへのブロック単位のLLRの書き込みはSYNC検出器29A,29Bによって制御され、読み出しはバッファ・セレクタ制御部34によって制御される。
【0042】
セレクタ31は、バッファ・セレクタ制御部34による制御の下、LDPCデコーダ32へブロック単位のLLRを供給するバッファ30A,30Bを選択する。
【0043】
LDPCデコーダ32は、セレクタ31を介して入力されたブロック単位のLLRを入力としてLDPC符号の反復復号を行う回路である。LDPCデコーダ32は、チャンネル毎の反復復号終了時の反復回数をバッファ・セレクタ制御部34に出力する。
【0044】
バッファ・セレクタ制御部34は、LDPCデコーダ32より入力されたチャンネル毎の反復復号終了時の反復回数を保持するレジスタを有し、このレジスタに保持されたチャンネル毎の反復復号終了時の反復回数をもとに、次のブロックの各チャンネル間での反復復号の優先順位を決定し、この優先順位に従って各チャンネルの反復復号が順次行われるように、バッファ30A,30Bからの読み出し及びセレクタ31の制御を行う。
【0045】
データ処理部33は、LDPCデコーダ32にて得られた推定符号語からチャンネル毎のデータを復元し、これらのデータを連結して記録データを復元する処理を行う回路である。
【0046】
次に、LDPCデコーダ32によるLDPC符号の反復復号の詳細を説明する。この実施形態では、sum-productアルゴリズムによりLDPC符号の反復復号を行うものとする。sum-productアルゴリズムでは、事後確率に関する計算を「変数ノード処理」と「チェックノード処理」と呼ばれる2つの処理に分け、その間で反復処理を行うことで、推定精度の高いビット系列を判定する。
【0047】
図4はLDPC符号のパリティ検査行列Hのノード表現を示す図である。LDPCのパリティ検査行列H(N行×M列)は、N個の変数ノード、M個のチェックノード、枝(edge)で表現される。枝は、パリティ検査行列Hの第m行・第n列の要素hmnが"1"であるとき変数ノードnとチェックノードmとを結ぶものである。
【0048】
図5はLDPCデコーダ32によるLDPC符号の反復復号のフローチャートである。LDPCデコーダ32は、SYNC検出器29A,29BからのSYNC検出信号をもとにブロックの先頭を検出し、図6に示すように、1ブロック分のビット毎の対数尤度比(LLR)であるL1,L2,…,LnをN個の変数ノードに順にセットする(ステップS101)。
【0049】
次に、LDPCデコーダ32は、チェックノードから変数ノードへのメッセージAmnおよび反復回数Rをそれぞれ初期化し(ステップS102)、さらに反復復号の反復有限回数uをセットする(ステップS103)。
【0050】
この後、ステップS104、ステップS105、ステップS106、ステップS107をスルーして、反復回数Rをインクリメントした後(ステップS108)、初回の反復処理を次のように行う。
【0051】
LDPCデコーダ32は、変数ノード処理として、変数ノードnからチェックノードmに与えるメッセージBmnを次式により計算する(ステップS109)。図7はメッセージBmnの計算方法を示す図である。
【0052】
【数1】

【0053】
ここで、B(n)\mは変数ノードnにつながるチェックノードの集合B(n)からチェックノードmを除いたものであり、図7においてm’と表記する。図7のAm’nは、そのチェックノードm’で計算された変数ノートnへのメッセージである。メッセージAm’nの初期値は0であるから、変数ノードnからチェックノードmへの初回のメッセージBmnはLnとなる。
【0054】
次に、LDPCデコーダ32は、チェックノードmから変数ノードnへのメッセージAmnを次式により計算する(ステップS110)。図8はメッセージAmnの計算方法を示す図である。
【0055】
【数2】

【0056】
ここで、関数f(x)はGallagerの関数で、f(x)=ln((exp(x)+1)/(exp(x)−1))である。A(m)\nは、チェックノードmにつながる変数ノードの集合A(m)から変数ノードnを除いたものであり、n’と表記する。図8中のBmn’は、その変数ノードn’で計算されたチェックノートmへのメッセージである。
【0057】
次に、LDPCデコーダ32は、ステップS103に戻って、対数事後確率比の近似値Knの計算を次式により行う。
【0058】
【数3】

【0059】
なお、LSIに実装する場合、メッセージAmn、メッセージBmn、関数f(x)の計算には近似式が使われる。
【0060】
LDPCデコーダ32は、上記のメッセージAmn、メッセージBmn、対数事後確率比の近似値Knの各計算が終了したところで、対数事後確率比の近似値Knをもとに推定復号語C'nを求める(ステップS105)。ここで、C'はCサーカムフレックス の代用表記である。この推定復号語C'nの判定は次のように行われる。LDPCデコーダ32は、対数事後確率比の近似値Knが0以上ならば推定復号語C'nを"0"と判定し、対数事後確率比の近似値Knが0未満ならば推定復号語C'nを"1"と判定する。
【0061】
次に、LDPCデコーダ32は、今回得られた推定復号語C'nに関して、C'nHT =0のパリティ検査条件を満たすかどうかを判定する(ステップS106)。ここで、HTはLDPCのパリティ検査行列Hの転置行列である。推定復号語C'nがパリティ検査条件を満たすならば、LDPCデコーダ32は、今回得られた推定復号語C'nをデータ処理部33に出力するとともに、反復復号終了時の反復回数Rをバッファ・セレクタ制御部34に出力して復号を終了する(ステップS111)。
【0062】
ここで、メッセージBmn、メッセージAmn、対数事後確率比の近似値Kn、推定復号語C'nを計算し、この推定復号語C'nがパリティ検査条件を満たすかどうかを判定するまでの処理を「1回の反復処理」と呼ぶ。この反復処理の回数が反復回数Rである。
【0063】
LDPCデコーダ32は、ステップS106での判定の結果、推定復号語C'nがパリティ検査条件を満たす場合には、今回得られた推定復号語C'nを復号結果としてデータ処理部33に出力して反復復号を終了することとしたが、推定復号語C'nがパリティ検査条件を満たさない場合、現在の反復回数Rが反復有限回数uに達したかどうかを判定する(ステップS107)。現在の反復回数Rが反復有限回数uに達していない場合には、LDPCデコーダ32は、反復回数Rをインクリメントした後(ステップS108)、次の反復処理を行う。
【0064】
以後、LDPCデコーダ32は、生成された推定復号語C'nがパリティ検査条件を満たすことが判定されるか、あるいは、現在の反復回数Rが反復有限回数uに達する直前まで、反復処理を繰り返す。LDPCデコーダ32は、ステップS107で現在の反復回数Rが反復有限回数uに達したことを判定した場合、つまり反復処理をu回繰り返しても推定復号語C'nがパリティ検査条件を満たすことがなかった場合には、現在処理中のブロックをエラーブロックとして復号処理を強制終了する(ステップS112)。
【0065】
本実施形態の磁気記録再生装置では、1つのLDPCデコーダ32を時分割に用いて複数のチャンネルの反復復号を時分割に行うこととしている。
【0066】
次に、1つのLDPCデコーダ32を時分割に用いて複数のチャンネルの反復復号を時分割に行う場合の制御について説明する。なお、ここでは、2チャンネルの場合を想定して説明することとする。この場合、LDPCデコーダ32はチャンネル周波数の2倍以上のレートで復号を行える回路とする必要がある。
【0067】
図9は1つのLDPCデコーダ32を時分割に用いて2つのチャンネルの反復復号を時分割に行う場合のバッファ・セレクタ制御部34による制御のフローチャートである。
【0068】
ここで、2つのチャンネルにおいて一方のチャンネルを「第1のチャンネル」、他方のチャンネルを「第2のチャンネル」と称す。バッファ・セレクタ制御部34は、第1のチャンネルの反復復号の優先順位が格納される第1の優先順位レジスタ、第2のチャンネルの反復復号の優先順位が格納される第2の優先順位レジスタ、第1のチャンネルの最新の反復復号の終了時の反復回数が格納される第1の反復回数レジスタ、第2のチャンネルの最新の反復復号の終了時の反復回数が格納される第2の反復回数レジスタを有している。
【0069】
バッファ・セレクタ制御部34は、まず、各チャンネルの優先順位レジスタにそれぞれの初期値をセットする。例えば、第1の優先順位レジスタに初期値として優先順位1をセットし、第2の優先順位レジスタに初期値として優先順位2をセットする。これにより、復号開始時には第1のチャンネルの反復復号から開始され、第1のチャンネルの反復復号の終了後に直ちに第2のチャンネルの反復復号が開始されるように設定がされる。
【0070】
この後、バッファ・セレクタ制御部34は、各チャンネルのバッファ30A,30Bにそれぞれ1ブロック分以上のデータ(LLR)がたまったことを検出すると(ステップS201のYES)、優先順位1に設定されたチャンネル、すなわち今回は第1のチャンネルのバッファ30Aのデータ(LLR)を選択するようにセレクタ31に選択信号を出力する(ステップS202)。セレクタ31はバッファ・セレクタ制御部34からの選択信号に基づいて、第1のチャンネルのバッファ30Aのデータ(LLR)を選択してLDPCデコーダ32に供給する。これにより、LDPCデコーダ32にて、バッファ30Aから読み出された1ブロック分のデータ(LLR)に対する反復復号が既述の手順で行われる。
【0071】
複数のチャンネル間で最初に選択されたチャンネルの反復復号においては、バッファ30A,30Bにそれぞれ1ブロック分のデータ(LLR)が全て出力されるのに要する時間内に可能な反復の最大回数を全チャンネル数で割った回数Uが反復有限回数uとしてLDPCデコーダ32にセットされる。なお、Uの値はシステムに予め記憶されている。反復有限回数uのセットは、LDPCデコーダ32がバッファ・セレクタ制御部34から反復有限回数uの通知を受けて行うようにしてもよいし、LDPCデコーダ32がバッファ・セレクタ制御部34から複数のチャンネル間で最初に選択されたチャンネルであるか2番目に選択されたチャンネルであるかの通知を受け、最初に選択されたチャンネルであることの通知の場合に、Uの値を反復有限回数uとしてセットするようにしてもよい。
【0072】
LDPCデコーダ32は、1ブロックの反復復号を終了すると(ステップS203のYES)、そのブロックの反復復号終了時の反復回数Rをバッファ・セレクタ制御部34に通知する。バッファ・セレクタ制御部34は、LDPCデコーダ32より通知された反復回数Rを、優先順位1のチャンネルに対応する反復回数レジスタ、すなわち今回は第1のチャンネルに対応する第1の反復回数レジスタに格納する(ステップS204)。ここで、第1の反復回数レジスタに格納された反復回数Rを「反復回数R1」とする。
【0073】
続いて、バッファ・セレクタ制御部34は、優先順位2に設定されたチャンネルすなわち今回は第2のチャンネルのバッファ30Bのデータ(LLR)を選択するようにセレクタ31に選択信号を出力する(ステップS205)。セレクタ31はバッファ・セレクタ制御部34からの選択信号に基づいてバッファ30Bのデータ(LLR)を選択してLDPCデコーダ32に供給する。これにより、LDPCデコーダ32にて、バッファ30Bから読み出された1ブロック分のデータ(LLR)に対する反復復号が既述の手順で行われる。
【0074】
複数のチャンネル間で2番目に選択されたチャンネルの反復復号においては、バッファ30A,30Bにそれぞれ1ブロック分のデータ(LLR)が全て出力されるのに要する時間内に可能な反復の最大回数(チャンネル数が2場合は2U)から、最初に選択されたチャンネルの反復復号終了時の反復回数Rを引いた回数(2U−R)が反復有限回数uとしてLDPCデコーダ32にセットされる。このときの反復有限回数uのセットも、LDPCデコーダ32がバッファ・セレクタ制御部34から反復有限回数uの通知を受けて行うようにしてもよいし、LDPCデコーダ32がバッファ・セレクタ制御部34から複数のチャンネル間で最初に選択されたチャンネルであるか2番目に選択されたチャンネルであるかの通知を受け、2番目に選択されたチャンネルであることの通知の場合に、2U−Rの値を反復有限回数uとしてセットするようにしてもよい。
【0075】
LDPCデコーダ32は、1ブロックの反復復号を終了すると(ステップS206のYES)、そのブロックの反復復号終了時の反復回数Rをバッファ・セレクタ制御部34に通知する。バッファ・セレクタ制御部34は、LDPCデコーダ32より通知された反復回数Rを、優先順位2のチャンネルに対応する反復回数レジスタ、すなわち今回は第2のチャンネルに対応する第2の反復回数レジスタに格納する(ステップS207)。ここで、第2の反復回数レジスタに格納された反復回数Rを「反復回数R2」とする。
【0076】
次に、バッファ・セレクタ制御部34は、第1の反復回数レジスタに格納された反復回数R1と第2の反復回数レジスタに格納された反復回数R2とを比較して、R1<R2の関係を満たしているかどうかを判定する(ステップS208)。R1<R2の関係を満たしている場合には、第1の優先順位レジスタに、第1のチャンネルの反復復号の優先順位B1として1をセットし、第2の優先順位レジスタに第2のチャンネルの反復復号の優先順位B2として2をセットする(ステップS209)。すなわち、各チャンネルの優先順位レジスタの内容は初期値のままとする。R1<R2の関係を満たしていない場合には、逆に第1の優先順位レジスタに、第1のチャンネルの反復復号の優先順位B1として2をセットし、第2の優先順位レジスタに第2のチャンネルの反復復号の優先順位B2として1をセットする(ステップS210)。
【0077】
次回の2チャンネルのブロックに対する反復復号時のバッファ・セレクタ制御部34による制御は、各チャンネルの優先順位レジスタに改めてセットされた優先順位B1,B2に基づいて行われる。すなわち、次回の複数チャンネルのブロックに対して時分割に行われる反復復号は、前回の反復復号終了時の反復回数が少なかった方のチャンネルから先に行われることになる。
【0078】
図10は2チャンネル間での反復復号の順位の制御に関するタイミングチャートの例である。この例では、反復復号開始時には第1のチャンネル(ch1)のバッファ30Aに保持されたブロック(block1)の反復復号から開始され、ブロック(block1)の反復復号終了後、直ちに第2のチャンネル(ch2)のバッファ30Bに保持されたブロック(block2)の反復復号が行われる。このとき、第1のチャンネル(ch1)のブロック(block1)に対して10回の反復処理が行われ、第2のチャンネル(ch2)のブロック(block2)に対して3回の反復処理が行われたので、R1=10、R2=3である。これは、R1<R2の関係を満たしていないので、次回は第2のチャンネル(ch2)のバッファ30Bに保持されたブロック(block4)の反復復号から開始され、ブロック(block4)の反復復号終了後、直ちに第1のチャンネル(ch1)のバッファ30Aに保持されたブロック(block3)の反復復号が行われる。
【0079】
今回の2チャンネルの反復復号では、結果的に、ブロック(block4)に対して3回の反復処理が行われ、ブロック(block3)に対して(2U−3)回の反復処理が行われている。このように、最初のチャンネルの反復復号が少ない反復回数で終了したならば、次のチャンネルの反復復号に多くの反復回数を割り当てることができ、ブロックエラーの発生確率を低減することができる。
【0080】
一般に、LDPC符号の反復復号時の反復回数は、再生信号の品質が悪くてSN比が小さいほど増える。再生信号の品質は記録ヘッドや再生ヘッドの特性等に大きく依存するので、特定のチャンネルの反復復号時の反復回数が他のチャンネルのそれよりも多くなる状態が続く傾向がある。したがって、前回反復回数が少なかった方のチャンネルから先に反復復号を行うことによって、次のチャンネルの反復復号に、より多くの反復有限回数uを割り当てることができる確率が高くなる。
【0081】
以上、チャンネル数が2である場合を説明したが、チャンネル数が3以上である場合においても、各チャンネルの中から前回の反復回数が少なかったチャンネルから順に反復復号を行えばよく、本発明が適用可能である。勿論、この場合には、LDPCデコーダ32がチャンネル周波数の3倍以上のレートで復号できる回路であることが前提となる。
【0082】
以上説明したように、本実施形態によれば、1つのLDPCデコーダ32を時分割に用いて複数のチャンネルの反復復号を行う場合に、前回の反復復号で反復回数Rが少ないチャンネルから先に反復復号を行うように制御することによって、より多くの反復回数を必要とする傾向のあるチャンネルの反復復号に、より多くの反復有限回数uを割り当てることができ、ブロックエラーの発生確率を低減することができる。
【0083】
本発明は、上述の実施形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々更新を加え得ることは勿論である。
【図面の簡単な説明】
【0084】
【図1】本発明の実施形態にかかる磁気記録再生装置における記録装置の構成を示すブロック図である。
【図2】本発明の実施形態にかかる磁気記録再生装置における再生装置の構成を示すブロック図である。
【図3】図1の記録装置によって記録媒体に記録された1ブロックの記録ビット列の構成を示す図である。
【図4】LDPC符号のパリティ検査行列Hのノード表現を示す図である。
【図5】LDPCデコーダによるLDPC符号の反復復号のフローチャートである。
【図6】1ブロック分のビット毎の対数尤度比(LLR)を変数ノードにセットした図である。
【図7】変数ノードnからチェックノードmに与えられるメッセージBmnの計算を示す図である。
【図8】チェックノードmから変数ノードnに与えられるメッセージAmnの計算を示す図である。
【図9】1つのLDPCデコーダを時分割に用いて2チャンネルの反復復号を時分割に行う場合のバッファ・セレクタ制御部の制御に関するフローチャートである。
【図10】2チャンネル間での反復復号の順位の制御に関するタイミングチャートの例である。
【符号の説明】
【0085】
21A,21B 再生ヘッド
23A,23B ADコンバータ
24A,24B HPF(High Pass Filter)
25A,25B プレフィルタ
26A,26B デジタル位相同期回路
27A,27B 適応型等化フィルタ
28A,28B 軟判定検出器
29A,29B SYNC検出器
30A,30B バッファ
31 セレクタ
32 LDPCデコーダ
33 データ処理部
34 バッファ・セレクタ制御部

【特許請求の範囲】
【請求項1】
複数のチャンネルの信号を再生する再生装置であって、
前記チャンネル毎に、LDPC(Low Density Parity Check)符号により符号化された、LDPC符号長分のビット列をブロックとして、このブロックのビット毎の軟判定を行う軟判定手段と、
前記チャンネル毎に、前記軟判定手段により得られた前記ブロック単位の軟判定結果を保持する保持手段と、
前記ブロック単位の軟判定結果を入力として、反復復号により推定ビット列を求める復号手段と、
前記チャンネル毎の反復復号終了時の反復回数をもとに、次のブロックの反復復号のチャンネル間での優先順位を決定し、この優先順位に従って前記各チャンネルの反復復号が行われるように、前記保持手段から前記復号手段への前記各チャンネルの前記ブロック単位の軟判定結果の入力を制御する制御手段と
を具備することを特徴とする再生装置。
【請求項2】
請求項1に記載の再生装置であって、
前記軟判定手段は、前記ビット単位の事後確率の対数尤度比を前記軟判定結果として求めることを特徴とする再生装置。
【請求項3】
請求項1に記載の再生装置であって、
前記制御手段は、反復復号終了時の反復回数が少ないチャンネルほど、次のブロックの反復復号が優先して行われるようにチャンネル間での優先順位を決定することを特徴とする再生装置。
【請求項4】
請求項1に記載の再生装置であって、
前記復号手段は、複数のチャンネルの反復復号時の反復回数の上限制限を有することを特徴とする再生装置。
【請求項5】
請求項1に記載の再生装置であって、
前記復号手段は、事後確率に関する計算を変数ノード処理とチェックノード処理の2つの処理に分け、その間で反復処理を行うことを特徴とする再生装置。
【請求項6】
複数のチャンネルの信号を再生する方法であって、
前記チャンネル毎に、LDPC(Low Density Parity Check)符号により符号化された、LDPC符号長分のビット列をブロックとして、このブロックのビット毎の軟判定を行うステップと、
前記ブロック単位の軟判定結果を入力として、反復復号により推定ビット列を求めるステップと、
前記チャンネル毎の反復復号終了時の反復回数をもとに、次のブロックの反復復号のチャンネル間での優先順位を決定し、この優先順位に従って前記各チャンネルの反復復号が行われるように制御するステップと
を具備することを特徴とする再生方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2009−89312(P2009−89312A)
【公開日】平成21年4月23日(2009.4.23)
【国際特許分類】
【出願番号】特願2007−259680(P2007−259680)
【出願日】平成19年10月3日(2007.10.3)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】