JP4571580B2 - 復号器 - Google Patents

復号器 Download PDF

Info

Publication number
JP4571580B2
JP4571580B2 JP2005362341A JP2005362341A JP4571580B2 JP 4571580 B2 JP4571580 B2 JP 4571580B2 JP 2005362341 A JP2005362341 A JP 2005362341A JP 2005362341 A JP2005362341 A JP 2005362341A JP 4571580 B2 JP4571580 B2 JP 4571580B2
Authority
JP
Japan
Prior art keywords
path
state
time
bit
decoder
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.)
Expired - Fee Related
Application number
JP2005362341A
Other languages
English (en)
Other versions
JP2007164923A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005362341A priority Critical patent/JP4571580B2/ja
Priority to US11/394,266 priority patent/US7620882B2/en
Publication of JP2007164923A publication Critical patent/JP2007164923A/ja
Application granted granted Critical
Publication of JP4571580B2 publication Critical patent/JP4571580B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/10009Improvement or modification of read or write signals
    • 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/10009Improvement or modification of read or write signals
    • G11B20/10046Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter
    • G11B20/10055Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter using partial response filtering when writing the signal to the medium or reading it therefrom
    • 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/10009Improvement or modification of read or write signals
    • G11B20/10046Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter
    • G11B20/10055Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter using partial response filtering when writing the signal to the medium or reading it therefrom
    • G11B20/10074EPR4, i.e. extended partial response class 4, polynomial (1-D) *(1+D)2
    • 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/10009Improvement or modification of read or write signals
    • G11B20/10046Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter
    • G11B20/10055Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter using partial response filtering when writing the signal to the medium or reading it therefrom
    • G11B20/10083PR1 or PR(1,1,), i.e. partial response class 1, polynomial 1+D
    • 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/10009Improvement or modification of read or write signals
    • G11B20/10268Improvement or modification of read or write signals bit detection or demodulation methods
    • G11B20/10287Improvement or modification of read or write signals bit detection or demodulation methods using probabilistic methods, e.g. maximum likelihood detectors
    • G11B20/10296Improvement or modification of read or write signals bit detection or demodulation methods using probabilistic methods, e.g. maximum likelihood detectors using the Viterbi algorithm
    • 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/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • 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
    • 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/63Joint error correction and other techniques
    • H03M13/6343Error control coding in combination with techniques for partial response channels, e.g. recording
    • 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/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • G11B2020/144616 to 17 modulation

Description

本発明は、トレリス線図における各状態の遷移を表すパスの中から所定の条件に基づいてパスを選択することにより符号の復号をおこなう復号器、MTR(Maximum Transition Run)符号を用いて符号化され、さらに誤り訂正符号を用いて符号化された符号系列を復号する復号器、および、情報系列を符号化する符号器に関し、特に、符号の拘束長を増加させることなく、所定の制限を満足しないパスを効率的に削除して大きな利得を得ることができる復号器および復号方法に関する。
従来、磁気ディスク装置用のデータ再生技術として、パーシャルレスポンス方式(PR方式,Partial Response方式)と最尤復号法(ML法,Maximum Likelihood法)とを組み合わせたPRML(Partial Response Maximum Likelihood)方式と呼ばれる技術が開発されている(たとえば、非特許文献1を参照)。
パーシャルレスポンス方式とは、既知の符号間干渉を導入して情報の高密度化を実現する技術である。たとえば、パーシャルレスポンス方式の1つであるPR1方式(PR(1,1)方式とも呼ばれる)では、「1」および「0」のビットからなる記録情報系列に対してPR(Partial Response)チャネルにより伝達特性1+D(Dは1ビットの遅延を表す)が与えられる。この場合、記録情報系列は、時刻kのビットと時刻k−1のビットとの和が算出され、「0」、「1」、「2」の3つの値をとる信号系列に変換される。
パーシャルレスポンス方式の伝達特性は、a+bD+cD2+dD3+・・・と拡張することが可能であり、この伝達特性の最高次数に1を加えたものはPR拘束長と呼ばれる。たとえば、PR1方式ではPR拘束長は2となり、PR2方式(PR(1,2,1)方式とも呼ばれる。伝達特性は1+2D+D2である。)ではPR拘束長は3となる。
また、最尤復号法とは、有限の時間内にとりうる状態を定義し、その状態の時間的な遷移において最も確からしい遷移を選択し、選択された遷移に対応する入力系列を復号系列として出力する復号法である。
ここで、PR1方式と最尤復号法とを組み合わせたPR1ML方式に対するビタビ復号法について説明する。図26は、従来のPR1ML方式における状態遷移表であり、図27は、従来のPR1ML方式におけるトレリス線図である。
状態遷移表は、入力信号「0」に対応する状態S0および入力信号「1」に対応する状態S1の遷移と、復号器入力の値(復号期待値とも呼ばれる)との間の対応関係を示す表である。ここで、dk mnは時刻k−1における状態Smから時刻kにおける状態Snに状態が遷移する場合の復号器入力の値を表している。また、トレリス線図は、各状態S0,S1の遷移を線図で表したものである。
ビタビ復号法では、トレリス線図を基にして過去の状態遷移を考慮し、現状態に遷移するパスを比較して、最も確からしいパスを選択する。図28は、従来のビタビ復号法を用いたパス選択処理について説明する図である。
時刻kの状態S0では、図27に示すように、時刻k−1の状態S0および状態S1から遷移するパスが存在する。ビタビ復号法では、この2つのパスにおけるパスメトリック、すなわち2乗ユークリッド距離を算出することにより確からしいパスを選択する。同様の処理は、時刻kの状態S1に対しても実行される。パスの選択処理の終了後、パスメモリは、選択されたパスにおける遷移元の状態S0,S1の情報を保持する。
このようにして、パスが選択されていった場合に、ある時刻でパスが合流(マージ)する。たとえば、図28では、時刻k−5および時刻k−1においてパスが合流している。このようにパスが合流した場合に、それ以前の時刻におけるパスが確定し、パスが一本化されることになる。この一本化されたパスは生き残りパスと呼ばれ、生き残りパスが復号結果として出力される。
つぎに、従来の最尤復号器の機能構成について説明する。図29は、従来の最尤復号器の機能構成を示す図である。この最尤復号器は、BM演算部1、ACS演算部2、パスメモリ3、PMメモリ4を有する。
BM演算部1は、サンプル値(復号器入力にチャネルの雑音が付加された信号)に対するブランチメトリック(Branch Metric,BM)と呼ばれる尤度の算出をおこなう演算部である。
ACS演算部2は、時刻k−1の状態におけるパスメトリックと時刻k−1から時刻kに状態が遷移する場合のブランチメトリックとを加算し、それによって得られた時刻kの状態におけるパスメトリック間の大小比較によりパスを選択するACS(ADD, COMPARE, SELECT)演算をおこなう演算部である。
パスメモリ3は、選択されたパスの情報を記憶するメモリである。1つの状態からは、2つのパスが伸びるので、たとえば、図27に示したトレリス線図において上方にあるパスに「0」を割り当て、下方にあるパスに「1」を割り当てて選択されたパスを特定する。
PMメモリ4は、つぎの時刻におけるACS演算で利用するため、ACS演算部2により算出されたパスメトリックを記憶するメモリである。
このようなビタビ復号法を用いる最尤復号器において、ビットが連続的に遷移する数を制限するMTR(Maximum Transition Run)符号が開発されている。MTR符号を用いると、記録周波数を抑制することができるとともに、高次のPRML方式に特有の連続誤りの発生を防止することができる。
たとえば、PR拘束長が4のPRML方式であるEPR4ML(Extended Partial Response 4 Maximum Likelihood)方式に、符号の3連続遷移「0101」および「1010」を制限する6/7MTR符号を適用した6/7MTR符号化EPR4ML方式がある(たとえば、非特許文献2を参照)。
図30は、6/7MTR符号化EPR4ML方式について説明する図である。図30には、時刻k−1の状態Sm(m=0〜7)から時刻kの状態Sn(n=0〜7)への状態の遷移を表すトレリス線図が、EPR4ML方式および6/7MTR符号化EPR4ML方式のそれぞれに対して示されている。なお、akは、時刻kにおける復号値を表している。
EPR4ML方式では、状態S2から状態S5へと遷移するパスがあるため、3連続遷移「0101」が発生してしまうが、6/7MTR符号化EPR4ML方式では、状態S2から状態S5へと遷移するパス(このパスはビット「1」で表される)が事前状態S2を表すビット列「010」の情報に基づいて削除(パスカット)されるので、3連続遷移の発生を防止することができる。また、パスが削除された場合には、状態S5へつながるパスは1つになり、パスの選択処理はおこなわれない。
同様に、EPR4ML方式では、状態S5から状態S2へと遷移するパスがあるため、3連続遷移「1010」が発生してしまうが、6/7MTR符号化EPR4ML方式では、状態S5から状態S2へと遷移するパス(このパスはビット「0」で表される)が事前状態S2を表すビット列「101」の情報に基づいて削除されるので、3連続遷移の発生を防止することができる。
ここで、連続遷移の制限長はできるだけ短く、かつ、符号化率はできるだけ高い方が望ましいが、実際には理論的な限界が存在する。4連続遷移を制限するMTR符号としては、16/17MTR符号が開発されている(たとえば、非特許文献3を参照)。
このような方法を用いることにより、「010・・・」という信号系列が「101・・・」という信号系列であると誤るパターン、あるいは、「101・・・」という信号系列が「010・・・」という信号系列であると誤るパターンをすべて除去することができ、信号の利得を改善することができるようになる。
大沢,岡本,斎藤,「高密度ディジタル磁気記録のための信号処理技術」,電子情報通信学会論文誌,社団法人電子情報通信学会,C-II Vol.J81-C-II,No.4,pp.393-412,1998年4月. B.Brickner,J.Moon,"Design of a Rate 6/7 Maximum Transition Run Code",IEEE Transactions on Magnetics,Vol.33,No.5,September 1997. T.Nishiya,K.Tsukano,T.Hirai,S.Mita,T.Nara,"Rate 16/17 Maximum Transition Run (3;11) Code on an EEPRML Channel with an Error-Correcting Postprocessor",IEEE Transactions on Magnetics,Vol.35,No.5,September 1999.
しかしながら、上述した従来技術では、長さがLの連続遷移の発生を防止する最尤復号器の状態数は2L以上としなければならないという問題があった。一般に最尤復号器の状態数はPR拘束長に従う。すなわち、長さがLの連続遷移の発生を防止するためには、PR拘束長が連続遷移制限長よりも大きくなるようにして上記状態数に係る条件を満足させる必要があった。たとえば、3連続遷移を禁止するMTR符号では、PR拘束長を4とし、最尤復号器の状態数を2(4-1)=8とする必要があった。
最尤復号器のPR拘束長が増加すると、最尤復号器の回路規模が急激に増大する。たとえば、PR拘束長が1増えると、回路規模が2倍になる。そのため、PR拘束長を増加させることなく、いかに効率的に連続遷移制限長などの制限を満足しないパスを削除して大きな利得を得ることができるかが重要な課題となっている。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、符号の拘束長を増加させることなく、所定の制限を満足しないパスを効率的に削除して大きな利得を得ることができる復号器および符号器を提供することを目的とする。
上述した課題を解決し、目的を達成するため、本発明は、トレリス線図における各状態の遷移を表すパスの中から所定の条件に基づいてパスを選択することにより符号の復号をおこなう復号器であって、時刻kにおけるパスが選択される場合に、時刻(k−(符号の拘束長)+1)より前の時刻において選択されたパスの選択履歴に係る情報として、遷移元の状態を表す状態情報の先頭ビットであって時刻(k−(符号の拘束長)+1)における復号値を示す値を、時刻k−1までに記憶された選択履歴に係る情報に累積して記憶する記憶手段と、前記記憶手段により記憶された情報と時刻k−1から時刻kに状態が遷移する場合の遷移元の状態情報とに基づいてパスの選択対象から除外すべきパスを検出するパス検出手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、前記パス検出手段は、前記記憶手段に記憶された情報におけるビット列と特定のビット列との間で各ビットの一致判定をおこない、当該一致判定の結果に基づいてパスの選択対象から除外すべきパスを検出することを特徴とする。
また、本発明は、上記発明において、前記特定のビット列は、ビットが連続して反転するビット列であることを特徴とする。
また、本発明は、上記発明において、前記特定のビット列は、同一ビットが連続するビット列であることを特徴とする。
また、本発明は、上記発明において、前記パス検出手段は、前記記憶手段に記憶された情報におけるビット列のビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする。
また、本発明は、上記発明において、前記パス検出手段は、前記ビット列において連続して反転するビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする。
また、本発明は、上記発明において、前記パス検出手段は、前記ビット列において連続する同一ビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする。
また、本発明は、上記発明において、前記パス検出手段により検出されたパスに繋がる過去に選択されたパスを変更することによりパスの選択対象から除外すべきパスをパスの選択対象に含め、パスの選択を実行するパス選択手段をさらに備えたことを特徴とする。
また、本発明は、上記発明において、前記パス選択手段によりパスの選択が実行された場合に、選択されたパスの遷移先の状態の尤度情報を、当該パスの遷移元の状態における過去の時点の復号結果に係る尤度情報に基づいて生成する尤度情報生成手段をさらに備えたことを特徴とする。
また、本発明は、MTR(Maximum Transition Run)符号を用いて符号化され、さらに誤り訂正符号を用いて符号化された符号系列を復号する復号器であって、前記符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこなう誤り訂正手段と、前記誤り訂正手段により誤り訂正がなされた後、MTR符号を用いて符号化された符号系列を復号するMTR復号手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、トレリス線図における各状態の遷移を表すパスの中から所定の条件を満足しないパスをパスの選択対象から除外してパスを選択することにより符号系列の復号をおこなうパス選択復号手段をさらに備え、前記誤り訂正手段は、前記パス選択復号手段により復号された符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこなうことを特徴とする。
また、本発明は、情報系列を符号化する符号器であって、情報系列をMTR(Maximum Transition Run)符号を用いて符号化するMTR符号化手段と、前記MTR符号化手段により符号化された符号化系列を誤り訂正符号を用いて符号化する誤り訂正符号化手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、トレリス線図における各状態の遷移を表すパスの中から所定の条件に基づいてパスを選択することにより符号の復号をおこなう復号方法であって、時刻kにおけるパスを選択する場合に、時刻(k−(符号の拘束長)+1)より前の時刻において選択されたパスの選択履歴に係る情報を記憶する記憶工程と、前記記憶工程により記憶された情報と時刻k−1から時刻kに状態が遷移する場合の遷移元の状態の情報とに基づいてパスの選択対象から除外すべきパスを検出するパス検出工程と、を含んだことを特徴とする。
本発明によれば、時刻kにおけるパスが選択される場合に、時刻(k−(符号の拘束長)+1)より前の時刻において選択されたパスの選択履歴に係る情報を記憶し、記憶した情報と時刻k−1から時刻kに状態が遷移する場合の遷移元の状態の情報とに基づいてパスの選択対象から除外すべきパスを検出することとしたので、符号の拘束長を増加させることなく、所定の制限を満足しないパスを効率的に削除して大きな利得を得ることができるという効果を奏する。
また、本発明によれば、記憶した情報におけるビット列と特定のビット列との間で各ビットの一致判定をおこない、当該一致判定の結果に基づいてパスの選択対象から除外すべきパスを検出することとしたので、除外すべきパスを効率的に検出することができるという効果を奏する。
また、本発明によれば、特定のビット列は、ビットが連続して反転するビット列であることとしたので、ビット列のビットの連続遷移数を効率的に制限することができるという効果を奏する。
また、本発明によれば、特定のビット列は、同一ビットが連続するビット列であることとしたので、ビット列の同一ビットの連続数を効率的に制限することができるという効果を奏する。
また、本発明によれば、記憶した情報におけるビット列のビットをカウントすることによりパスの選択対象から除外すべきパスを検出することとしたので、除外すべきパスを効率的に検出することができるという効果を奏する。
また、本発明によれば、ビット列において連続して反転するビットをカウントすることによりパスの選択対象から除外すべきパスを検出することとしたので、ビット列のビットの連続遷移数を効率的に制限することができるという効果を奏する。
また、本発明によれば、ビット列において連続する同一ビットをカウントすることによりパスの選択対象から除外すべきパスを検出することとしたので、ビット列の同一ビットの連続数を効率的に制限することができるという効果を奏する。
また、本発明によれば、検出されたパスに繋がる過去に選択されたパスを変更することによりパスの選択対象から除外すべきパスをパスの選択対象に含め、パスの選択を実行することとしたので、復号結果の候補となる符号語の数が減少するのを防止でき、利得のロスを最小限に抑えることができるという効果を奏する。
また、本発明によれば、パスの選択が実行された場合に、選択されたパスの遷移先の状態の尤度情報を、当該パスの遷移元の状態における過去の時点の復号結果に係る尤度情報に基づいて生成することとしたので、復号結果の候補となる符号語の数が減少するのを防止し、利得のロスを最小限に抑える軟出力復号器を容易に構成することができるという効果を奏する。
また、本発明によれば、符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこない、誤り訂正をおこなった後、MTR符号を用いて符号化された符号系列を復号することとしたので、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に訂正することができ、エラー伝播を抑制することができるという効果を奏する。
また、本発明によれば、トレリス線図における各状態の遷移を表すパスの中から所定の条件を満足しないパスをパスの選択対象から除外してパスを選択することにより符号系列の復号をおこない、復号した符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこなうこととしたので、所定の条件を満足させつつ、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に訂正することができ、エラー伝播を抑制することができるという効果を奏する。
また、本発明によれば、情報系列をMTR符号を用いて符号化し、符号化した符号化系列を誤り訂正符号を用いて符号化することとしたので、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に誤り訂正符号を用いて訂正することができる符号化系列を生成することができるという効果を奏する。
以下に添付図面を参照して、本発明に係る復号器および符号器の好適な実施例を詳細に説明する。
まず、本発明に係る復号処理の概念について説明する。図1は、本発明に係る復号処理の概念について説明する図である。図1には、PR拘束長が4(状態数が8)であり、4連続遷移を禁止する復号処理の例が示されている。
図1に示すように、この復号処理では、図30で説明した方法とは異なり、最尤復号器の遷移パスをすべて存在させる。また、パスメモリは、時刻kにおけるパスが選択される場合に、時刻(k−(PR拘束長)+1)、すなわち、時刻k−3より前の時刻において選択されたパスの選択履歴に係る情報を記憶している。
そして、この復号処理では、各状態S0〜S7に対応するパスメモリのビット値と時刻k−1における事前状態S0〜S7を表すビット値とを監視して、つぎの時刻kにおける状態遷移において禁止パス(図1では、ビット列が「01010」となるパス)を検出し、その禁止パスを削除する。
このように、パスメモリに記憶されたビット値を参照することにより、PR符号の拘束長を増加させることなく、連続遷移制限長を満足しないパスを効率的に削除して大きな利得を得ることができる。
図2は、実施例1に係る最尤復号器の機能構成を示す図である。図2に示すように、この最尤復号器は、BM演算部10、ACS演算部11、パスメモリ12、PMメモリ13、禁止パス検出部14を有する。
BM演算部10は、サンプル値(復号器入力にチャネルの雑音が付加された信号)に対するブランチメトリックと呼ばれる尤度の算出をおこなう演算部である。具体的には、BM演算部10は、時刻kにおいて状態Smから状態Snに状態が遷移する場合のブランチメトリックBMmn(k)を次式により算出する。
Figure 0004571580
ここで、σ2は白色ガウス雑音の分散であり、ykは時刻kにおける復号器入力であり、dk mnは時刻kにおけるykの期待値である。
ACS演算部11は、時刻k−1の状態におけるパスメトリックと時刻k−1から時刻kに状態が遷移する場合のブランチメトリックとを加算し、それによって得られた時刻kの状態におけるパスメトリック間の大小比較によりパスを選択するACS演算をおこなう演算部である。
具体的には、ACS演算部11は、時刻kにおいて状態Snに状態Smおよび状態Sm'から遷移する2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)を次式により算出する。
Figure 0004571580
ここで、PMm(k−1)およびPMm'(k−1)はそれぞれ時刻k−1における状態Smおよび状態Sm'のパスメトリックであり、BMmn(k)およびBMm'n(k)はぞれぞれ状態Smおよび状態Sm'から状態Snに状態が遷移する場合のブランチメトリックである。
そして、ACS演算部11は、2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)の大小関係を比較し、次式に基づいてパスの選択をおこなう。
Figure 0004571580
その際、ACS演算部11は、後に説明するパス選択禁止フラグが有効であるか否かの情報を禁止パス検出部14から取得し、パス選択禁止フラグが有効であるパスがある場合にそのパスをパスの選択対象から除外する。
具体的には、ACS演算部11は、パス選択禁止フラグが有効であるパスのブランチメトリックBMm'n(k)を、次式に示すように非常に大きな値∞に設定し、当該パスが選択されないようにする。
Figure 0004571580
また、ACS演算部11は、パスを選択した場合に、そのパスにより特定される状態遷移の遷移元の状態に対応するパスメモリの内容を遷移先の状態に対応するパスメモリに複製し、さらに、遷移先の状態に対応するパスメモリに、遷移元の状態を表すビットの1ビット目の値を記憶させる。
たとえば、時刻k−1において「01」で表される状態S1のパスメモリに「・・・00111」というビット列が記憶されており、時刻kにおいて状態S1から状態S2への遷移パスが選択された場合には、ACS演算部11は、状態S2のパスメモリに「・・・00111」という状態S0のパスメモリの内容が複製され、さらに、遷移元の状態S1を表すビット「01」の1ビット目の値「0」が記憶されて、状態S2のパスメモリの内容は「・・・001110」となる。
パスメモリ12は、選択されたパスの情報を記憶するメモリである。そして、パスメモリ12に記憶された情報に基づいて生き残りパスが探索され、探索された生き残りパスが復号データとして読み出される。
PMメモリ13は、ACS演算部11により算出されたパスメトリックを記憶するメモリである。PMメモリ13により記憶されたパスメトリックは、つぎの時刻k+1におけるACS演算の実行時に、ACS演算部11により読み出される。
禁止パス検出部14は、特定の禁止パターンとパスメモリの値との間で値の一致検出をビットごとにおこない、全ビットが一致したパスがある場合にそのパスに対応するパス選択禁止フラグを有効にする。
図3は、実施例1に係る禁止パス検出処理について説明する図である。なお、図3は最尤復号器のPR拘束長が3で状態数が4である場合の禁止パス検出処理について示してある。また、図4は、状態数が4の場合の状態遷移表である。ここで、復号器入力dk mnは、現時刻kにおいて事前状態Smから現状態Snに状態が遷移した場合の復号器入力を表している。
図3に示すように、禁止パス検出部14は、パスメモリ12に記憶された値と禁止パターンの各値との間で値が一致するか否かをビットごとに検出する。この一致判定は、ビットごとに排他的論理輪の否定(not EXOR)を算出することにより実行することができる。
そして、禁止パス検出部14は、禁止パターンと事前状態および次状態により構成されるビット列が4連続遷移を有するビット列「10101」または「01010」となる場合に、4連続遷移を発生させる次状態への遷移パス(状態S2→状態S1または状態S1→状態S3)の選択を禁止するため、当該遷移パスに対応するパス選択禁止フラグを有効にする。
図5は、禁止パターンの生成規則について説明する図である。状態数が4の最尤復号器において、MTR符号の禁止パターンが「01010」である場合には、事前状態のビットが「01」であり、次時刻のビットが「0」であるので、パスメモリの禁止パターンは「01」となる。
また、状態数が4の最尤復号器において、MTR符号の禁止パターンが「10101」である場合には、事前状態のビットが「10」であり、次時刻のビットが「1」であるので、パスメモリの禁止パターンは「10」となる。
さらに、図5には、図1に示したような状態数が8の最尤復号器の例が示されている。すなわち、状態数が8の最尤復号器において、MTR符号の禁止パターンが「01010」である場合には、事前状態のビットが「101」であり、次時刻のビットが「0」であるので、パスメモリの禁止パターンは「0」となる。
また、状態数が8の最尤復号器において、MTR符号の禁止パターンが「10101」である場合には、事前状態のビットが「010」であり、次時刻のビットが「1」であるので、パスメモリの禁止パターンは「1」となる。
なお、ここでは、MTR符号の禁止パターンが「01010」または「10101」であり、状態数が4または8の場合について説明したが、パスメモリの禁止パターン長および禁止パスの検出をおこなう状態は、MTR符号の禁止パターンや状態数に応じて変化するので、それらはMTR符号の禁止パターンや状態数に応じて適切に選択される。
上述してきたように、本実施例1では、時刻kにおけるパスが選択される場合に、パスメモリ12が、時刻(k−(符号の拘束長)+1)より前の時刻において選択されたパスの選択履歴に係る情報を記憶し、禁止パス検出部14が、パスメモリ12に記憶された情報と時刻k−1から時刻kに状態が遷移する場合の遷移元の状態の情報とに基づいてパスの選択対象から除外すべきパスを検出することとしたので、符号の拘束長を増加させることなく、所定の制限を満足しないパスを効率的に削除して大きな利得を得ることができる。
また、本実施例1では、禁止パス検出部14が、パスメモリ12に記憶された情報におけるビット列と特定のビット列との間で各ビットの一致判定をおこない、当該一致判定の結果に基づいてパスの選択対象から除外すべきパスを検出することとしたので、除外すべきパスを効率的に検出することができる。
また、本実施例1では、上記特定のビット列は、「1010・・・」あるいは「0101・・・」のようにビットが連続して反転するビット列であることとしたので、ビット列のビットの連続遷移数を効率的に制限することができる。
ところで、上記実施例1では、連続遷移数を制限するMTR符号を用いた場合のパスの削除処理について説明したが、磁化反転間隔を制限するRLL(Run Length Limited)符号において、磁化反転間隔を制限することもできる。そこで、本実施例3では、RLL(Run Length Limited)符号において、磁化反転間隔を制限する場合について説明する。
ここでは、8/9(0,4)RLL符号を用いて説明をおこなう。8/9(0,4)RLL符号では、磁化反転を「1」で表現するNRZI(Non Return to Zero Inverse)変調において、ビット「1」と「1」との間の「0」の個数(ランレングス)が4個以下となるよう制限される。この場合、復号器出力においては、「0」および「1」の連続数が5個以下となるように制限される。
ここで、最尤復号器の機能構成は、図2で説明したものとほぼ同様であり、禁止パス検出部14の機能が実施例1とは異なる。そこで、本実施例2では、禁止パス検出部14の機能の説明をおこなうこととし、実施例1と同様の機能を有する他の機能部の説明は省略する。
図6は、実施例2に係る禁止パス検出処理について説明する図である。本実施例2における禁止パス検出部14は、パスメモリ12に記憶された値と禁止パターンの各値との間で値が一致するか否かをビットごとに検出する。この一致判定は、ビットごとに排他的論理輪の否定(not EXOR)を算出することにより実行することができる。
そして、禁止パス検出部14は、禁止パターンと事前状態および次状態により構成されるビット列が、6個連続ビット列「000000」または「111111」となる場合に、6連続ビット列を発生させる次状態への遷移パス(状態S0→状態S0または状態S3→状態S3)の選択を禁止するため、当該遷移パスに対応するパス選択禁止フラグを有効にする。
そして、ACS演算部11は、パス選択禁止フラグが有効であるか否かの情報を禁止パス検出部14から取得し、パス選択禁止フラグが有効であるパスがある場合にそのパスをACS演算におけるパス選択対象から除外する。
上述してきたように、本実施例2では、禁止パス検出部14が、パスメモリ12に記憶された情報におけるビット列と、同一ビットが連続するビット列との間で各ビットの一致判定をおこない、当該一致判定の結果に基づいてパスの選択対象から除外すべきパスを検出することとしたので、復号器出力におけるビット列の同一ビットの連続数を効率的に制限することができる。
なお、本実施例2では、RLL符号においてビット「1」と「1」との間の「0」の個数(ランレングス)を制限する場合について示したが、MTR符号においても同様にランレングスの制限を考慮することもできる。
また、実施例1および実施例2で説明した禁止パスの一致判定方法を用いることにより、連続的に遷移するビット列や同一ビットが連続するビット列以外にも任意のビット列パターンを除外するよう最尤復号器を容易に構成することができる。さらに、除外するビット列パターンの条件を複数設定することも可能である。
ところで、上記実施例1および2では、禁止パスの一致検出をおこなうこととしたが、パスメモリに記憶されたパスを特定するビット列の遷移数をカウントし、禁止遷移数に達した場合に次時刻における遷移パスを削除することとしてもよい。そこで、本実施例3では、パスメモリに記憶されたパスを特定するビット列の遷移数をカウントする場合について説明する。
図7は、実施例3に係る最尤復号器の機能構成を示す図である。図7に示すように、この最尤復号器は、BM演算部20、ACS演算部21、パスメモリ22、PMメモリ23、ビット値監視部24、禁止パス検出部25を有する。
BM演算部20は、サンプル値(復号器入力にチャネルの雑音が付加された信号)に対するブランチメトリックの算出をおこなう演算部である。具体的には、BM演算部20は、時刻kにおいて状態Smから状態Snに状態が遷移する場合のブランチメトリックBMmn(k)を式(1)により算出する。
ACS演算部21は、時刻k−1の状態におけるパスメトリックと時刻k−1から時刻kに状態が遷移する場合のブランチメトリックとを加算し、それによって得られた時刻kの状態におけるパスメトリック間の大小比較によりパスを選択するACS演算をおこなう演算部である。
また、ACS演算部21は、後に説明するパス選択禁止フラグが有効であるか否かの情報を禁止パス検出部25から取得し、パス選択禁止フラグが有効であるパスがある場合にそのパスを選択対象から除外する。
さらに、ACS演算部21は、パスを選択した場合に、そのパスにより特定される状態遷移の遷移元の状態に対応するパスメモリの内容を遷移先の状態に対応するパスメモリに複製し、さらに、遷移先の状態に対応するパスメモリに、遷移元の状態を表すビットの1ビット目の値を記憶させる。
パスメモリ22は、選択されたパスの情報を記憶するメモリである。そして、パスメモリ22に記憶された情報に基づいて生き残りパスが探索され、探索された生き残りパスが復号データとして読み出される。
PMメモリ23は、ACS演算部21により算出されたパスメトリックを記憶するメモリである。PMメモリ23により記憶されたパスメトリックは、つぎの時刻k+1におけるACS演算の実行時に、ACS演算部21により読み出される。
ビット値監視部24は、パスメモリ22に記憶された最新のビットと、その1時刻前のビットとを監視して、パスメモリ22に記憶されたビット列におけるビット値の遷移数をカウントする処理をおこなう。
図8は、ビット値の遷移数カウント処理について説明する図である。図8には、図4に示した4状態の状態遷移表に従って状態が遷移する場合のパスメモリの内容が示されている。すなわち、状態S1は「01」に対応し、状態S2は「10」に対応する。また、各状態にはビットの遷移数を記憶するカウンタが設けられる。
ビット値監視部24は、ACS演算により状態Sm(m=0,1,2,3)から状態Sn(n=0,1,2,3)に状態が遷移した場合に、遷移元の状態Smのカウンタが保持する符号付きの値を遷移先の状態Snのカウンタに複製する。このカウンタが保持する符号付きの値については以下に詳しく説明する。
続いて、ビット値監視部24は、現時刻において状態Snのパスメモリ22に記憶された最新のビットが、1時刻前のビットと同符号であるか否かを調べる。ここで、ビットの符号は、ビットが「1」である場合に「+」、ビットが「0」である場合に「−」と定義する。
そして、状態Snのパスメモリに記憶された最新のビットが「1」であり、かつ、そのビットが1時刻前のビットと同符号である場合には、ビット値監視部24は、連続遷移数をカウントする状態Snのカウンタの値を初期値「+1」にリセットする。
また、状態Snのパスメモリに記憶された最新のビットが「0」であり、かつ、そのビットが1時刻前のビットと同符号である場合には、ビット値監視部24は、連続遷移数をカウントする状態Snのカウンタの値を初期値「−1」にリセットする。
さらに、状態Snのパスメモリに記憶された最新のビットが「0」であり、かつ、そのビットが1時刻前のビットと異なる符号である場合には、ビット値監視部24は、状態Snのカウンタの値に「+1」を加えた値を新しいカウント値として記憶する。
また、状態Snのパスメモリに記憶された最新のビットが「1」であり、かつ、そのビットが1時刻前のビットと異なる符号である場合には、ビット値監視部24は、状態Snのカウンタの値に「−1」を加えた値を新しいカウント値として記憶する。
図8の例では、時刻k−2において、状態S1のACS演算により状態S2から状態S1への遷移パスが選択され、状態S1のパスメモリには時刻k−3において状態S2のパスメモリが保持する情報が複製され、さらに、状態S2を表すビット「10」の1ビット目の情報「1」が追加されている。
この場合、ビット値監視部24は、遷移元の状態S2のカウンタが保持する符号付きの値(図示せず)を遷移先の状態S1のカウンタに複製する。そして、時刻k−2において状態S1のパスメモリに記憶された最新のビットは「1」、1時刻前のビットは「1」であるので、最新のビットが1時刻前のビットと同符号となり、ビット値監視部24は、状態S1のカウンタを初期値「+1」にリセットする。
時刻k−1においては、状態S2のACS演算により状態S1から状態S2への遷移パスが選択され、状態S2のパスメモリには時刻k−2において状態S1のパスメモリが保持する情報が複製され、さらに、状態S1を表すビット「01」の1ビット目の情報「0」が追加されている。
この場合、ビット値監視部24は、遷移元の状態S1のカウンタが保持する符号付きの値「+1」を遷移先の状態S2のカウンタに複製する。そして、時刻k−1において状態S2のパスメモリに記憶された最新のビットは「0」、1時刻前のビットは「1」であるので、最新のビットが1時刻前のビットと異なる符号となり、ビット値監視部24は、状態S2のカウンタ値に「+1」を加えた値「+2」を新しい状態S2のカウンタ値として記憶する。
図7の説明に戻ると、禁止パス検出部25は、ビット値監視部24によりカウントされたカウント値の情報を取得し、状態S2のカウント値が「+2」である場合には、状態S2から状態S1への遷移パスに対するパス選択禁止フラグを有効にし、時刻kのACS演算において遷移パスの選択候補から当該遷移パスを除外する。これにより、「10101」という4連続遷移が発生しないようにすることができる。
また、状態S1のカウント値が「−2」である場合には、禁止パス検出部25は、状態S1から状態S2への遷移パスに対するパス選択禁止フラグを有効にし、時刻kのACS演算において遷移パスの選択候補から当該遷移パスを除外する。これにより、「01010」という4連続遷移が発生しないようにすることができる。
カウント値が「+2」あるいは「−2」以外の場合には、禁止パス検出部25は、パス選択禁止フラグを無効にする。
図9は、ビット値の遷移数カウント処理を用いて実現されるビタビ復号処理について説明する図である。図9には、誤りを含む再生信号が最尤復号器に入力された場合に4連続遷移となるパスを削除することにより正しい信号に適切に復号される様子が示されている。
図9に示すように、ACS演算部21は、状態S1のカウント値が「−2」である場合に、状態S1から状態S2への遷移パスを削除し、「01010」という4連続遷移が発生しないようにする。
また、ACS演算部21は、状態S2のカウント値が「+2」である場合に、状態S2から状態S1への遷移パスを削除し、「10101」という4連続遷移が発生しないようにする。
上述してきたように、本実施例3では、ビット値監視部24が、パスメモリ22に記憶された情報におけるビット列のビットをカウントすることによりパスの選択対象から除外すべきパスを検出することとしたので、除外すべきパスを効率的に検出することができる。
また、本実施例3では、ビット値監視部24が、ビット列において「1010・・・」あるいは「0101・・・」のように連続して反転するビットをカウントすることによりパスの選択対象から除外すべきパスを検出することとしたので、ビット列のビットの連続遷移数を効率的に制限することができる。
ところで、上記実施例3では、連続遷移数を制限するMTR符号に対してビットの遷移数をカウントすることによりパスの削除をおこなう場合について説明したが、磁化反転間隔を制限するRLL符号においてもビットの連続数をカウントしてパスの削除をおこなうことにより、磁化反転間隔を制限することもできる。そこで、本実施例4では、RLL符号において、ビットの連続数をカウントしてパスの削除をおこなうことにより、磁化反転間隔を制限する場合について説明する。
ここで、最尤復号器の機能構成は、図7で説明したものとほぼ同様であり、ビット値監視部24および禁止パス検出部25の機能が実施例3とは異なる。そこで、本実施例4では、ビット値監視部24および禁止パス検出部25の機能の説明をおこなうこととし、実施例3と同様の機能を有する他の機能部の説明は省略する。
本実施例4のビット値監視部24は、パスメモリ22に記憶された最新のビットと、その1時刻前のビットとを監視して、パスメモリ22に記憶されたビット列におけるビット値の連続数をカウントする処理をおこなう。
図10は、ビット値の連続数カウント処理について説明する図である。図10には、図4に示した4状態の状態遷移表に従って状態が遷移する場合のパスメモリの内容が示されている。すなわち、状態S0は「00」に対応する。
ビット値監視部24は、ACS演算によりある状態Sm(m=0,1,2,3)からある状態Sn(n=0,1,2,3)に状態が遷移した場合に、遷移元の状態Smのカウンタが保持する符号付きの値を遷移先の状態Snのカウンタに複製する。このカウンタが保持する符号付きの値については以下に詳しく説明する。
続いて、ビット値監視部24は、現時刻において状態Snのパスメモリ22に記憶された最新のビットが、1時刻前のビットと異なる符号であるか否かを調べる。ここで、ビットの符号は、ビットが「1」である場合に「+」、ビットが「0」である場合に「−」と定義する。
そして、状態Snのパスメモリに記憶された最新のビットが「0」であり、かつ、そのビットが1時刻前のビットと異なる符号である場合には、ビット値監視部24は、ビットの連続数をカウントする状態Snのカウンタの値を初期値「+1」にリセットする。
また、状態Snのパスメモリに記憶された最新の選択パスが「1」であり、かつ、そのビットが1時刻前のビットと異なる符号である場合には、ビット値監視部24は、ビットの連続数をカウントする状態Snのカウンタの値を初期値「−1」にリセットする。
さらに、状態Snのパスメモリに記憶された最新のビットが「0」であり、かつ、そのビットが1時刻前のビットと同符号である場合には、ビット値監視部24は、状態Snのカウンタの値に「+1」を加えた値を新しいカウント値として記憶する。
また、状態Snのパスメモリに記憶された最新のビットが「1」であり、かつ、そのビットが1時刻前のビットと同符号である場合には、ビット値監視部24は、状態Snのカウンタの値に「−1」を加えた値を新しいカウント値として記憶する。
図10の例では、時刻k−3において、状態S0のACS演算により状態S0から状態S0への遷移パスが選択され、状態S0のパスメモリには時刻k−4において状態S0のパスメモリが保持する情報に、状態S0を表すビット「00」の1ビット目の情報「0」が追加されている。
この場合、状態S0のパスメモリに記憶された最新のビットは「0」、1時刻前のビットは「1」であるので、最新のビットが1時刻前のビットと異なる符号となり、ビット値監視部24は、状態S0のカウンタを初期値「+1」にリセットする。
時刻k−2においては、状態S0のACS演算により状態S0から状態S0への遷移パスが選択され、状態S0のパスメモリには時刻k−3において状態S0のパスメモリが保持する情報に、状態S0を表すビット「00」の1ビット目の情報「0」が追加されている。
この場合、状態S0のパスメモリに記憶された最新のビットは「0」、1時刻前のビットは「0」であるので、最新のビットが1時刻前のビットと同符号となり、ビット値監視部24は、状態S0のカウンタ値に「+1」を加えた値「+2」を新しい状態S0のカウンタ値として記憶する。
時刻k−1においては、状態S0のACS演算により状態S0から状態S0への遷移パスが選択され、状態S0のパスメモリには時刻k−2において状態S0のパスメモリが保持する情報に、状態S0を表すビット「00」の1ビット目の情報「0」が追加されている。
この場合、状態S0のパスメモリに記憶された最新のビットは「0」、1時刻前のビットは「0」であるので、最新のビットが1時刻前のビットと同符号となり、ビット値監視部24は、状態S0のカウンタ値に「+1」を加えた値「+3」を新しい状態S0のカウンタ値として記憶する。
本実施例4の禁止パス検出部25は、ビット値監視部24によりカウントされたカウント値の情報を取得し、状態S0のカウント値が「+3」である場合には、状態S0から状態S0への遷移パスに対するパス選択禁止フラグを有効にし、時刻kのACS演算において遷移パスの選択候補から当該遷移パスを除外する。これにより、「000000」という6個連続ビット列が発生しないようにすることができる。
また、状態S3のカウント値が「−3」である場合には、禁止パス検出部25は、状態S3から状態S3への遷移パスに対するパス選択禁止フラグを有効にし、時刻kのACS演算において遷移パスの選択候補から当該遷移パスを除外する。「111111」という6個連続ビット列が発生しないようにすることができる。
カウント値が「+3」あるいは「−3」以外の場合には、禁止パス検出部25は、パス選択禁止フラグを無効にする。
上述してきたように、本実施例4では、ビット値監視部24が、ビット列において「111・・・」あるいは「000・・・」のように連続する同一ビットをカウントすることによりパスの選択対象から除外すべきパスを検出することとしたので、ビット列の同一ビットの連続数を効率的に制限することができる。
なお、本実施例4では、RLL符号においてビット「1」と「1」との間の「0」の個数(ランレングス)を制限する場合について示したが、MTR符号においても同様にしてランレングスの制限をおこなうこともできる。また、除外するビット列パターンの条件を複数設定することも可能である。
また、上記実施例1〜4では、ビタビ復号法を用いた最尤復号器に対して本発明を適用した場合について説明してきたが、パスメモリあるいはパスメモリと同等な機能を有するメモリを利用した最尤復号器であれば同様に本発明を適用することができる。たとえば、軟入力・軟出力が可能な軟出力ビタビアルゴリズム(SOVA,Soft Output Viterbi Algorithm)を用いた最尤復号器に対して本発明を適用することができる。
ところで、上記実施例1〜4では、PR拘束長が、連続遷移制限長やランレングス制限長などの制限長以下である最尤復号器においてパスを削除する場合について説明したが、パスの削除によりパスメトリックの比較対象となる符号語の数が減少してしまうため、それを防止して利得のロスを最小限に抑えるようにしてもよい。
すなわち、図30に示したような静的なパス削除処理においては、削除されたパス以外のすべてのパスの符号語についてパスメトリックの比較がおこなわれ、最尤復号処理が実行されるが、実施例1〜4で示した動的なパス削除処理においては、過去の時点でパスの削除処理がおこなわれているため、パスメトリックの比較対象となる符号語の数が減少してしまう。そのため、PR拘束長の条件に対しては最尤復号となるが、制限長の条件に対しては最尤復号とはならず、利得のロスが発生する。
そこで、本実施例5では、パスメトリックの比較対象となる符号語の数が減少するのを防止して利得のロスを最小限に抑える場合について説明する。
図11は、実施例5に係る最尤復号器の機能構成を示す図である。図11に示すように、この最尤復号器は、BM演算部30、ACS演算部31、パスメモリ32、PMメモリ33、禁止パス検出部34、Δ値メモリ35を有する。
BM演算部30は、サンプル値(復号器入力にチャネルの雑音が付加された信号)に対するブランチメトリックの算出をおこなう演算部である。具体的には、BM演算部10は、時刻kにおいて状態Smから状態Snに状態が遷移する場合のブランチメトリックBMmn(k)を式(1)により算出する。
ACS演算部31は、時刻k−1の状態におけるパスメトリックと時刻k−1から時刻kに状態が遷移する場合のブランチメトリックとを加算し、それによって得られた時刻kの状態におけるパスメトリック間の大小比較によりパスを選択するACS演算をおこなう演算部である。
図12は、実施例5におけるACS演算処理におけるトレリス線図を示す図であり、図13は、実施例5におけるACS演算処理について説明する図である。図12は、図4に示した4状態の状態遷移表に従って状態が遷移する場合のトレリス線図である。
ACS演算部31は、時刻kにおいて状態Snに状態Smおよび状態Sm'から遷移する2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)を式(2)および式(3)を用いて算出する。
また、ACS演算部31は、2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)の差の絶対値
Figure 0004571580
を算出する。
ただし、ACS演算部31は、後に説明するパス選択禁止フラグが有効であるか否かの情報を禁止パス検出部34から取得し、パス選択禁止フラグが有効であるパスがある場合にそのパスを選択対象から除外する。
この場合、ACS演算部31は、状態Sm'から状態Snへと遷移するパスが選択対象から除外されたものとすると、状態Snに状態Smおよび状態Sm'から遷移する2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)を次式により算出する。
Figure 0004571580
ここで、Δm'(k−1)は時刻k−1において状態Sm'に時刻k−2における2つの状態から遷移する場合の2つの遷移パスのパスメトリックPMm 0(k−2)およびPMm' 1(k−2)の差の絶対値
Figure 0004571580
である。
そして、ACS演算部31は、2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)の大小関係を比較し、式(4)に基づいてパスの選択をおこなう。すなわち、ACS演算部31は、禁止パス検出部34により検出された選択対象から除外すべきパスに繋がる時刻k−3において選択されたパスを変更することにより、パスの選択対象から除外すべきパスをパスの選択対象に含め、パスの選択を実行する。
ここで、選択対象から除外されたパスが選択された場合には、ACS演算部31は、パスメモリ32を更新する際に、除外されたパスの遷移元の状態のパスメモリ32において、時刻k−3に選択された遷移パスを示すビット値を反転させる。
図12および図13には、時刻k−1から時刻kにかけて、「10101」という4連続遷移を発生させる状態S2から状態S1への遷移パスが除外される場合が示されている。
図13に示すように、時刻k−1の状態S2から時刻kの状態S0への遷移パスが時刻kの状態S0におけるACS演算により選択された場合には、その遷移パスは禁止パス検出部34により検出された遷移パスではないので、ACS演算部31は、時刻kの状態S0のパスメモリの更新時に、時刻k−1の状態S2のパスメモリの内容を変更することなく用いる。
一方、時刻k−1の状態S2から時刻kの状態S1への遷移パスが時刻kの状態S1のACS演算において選択された場合には、その遷移パスは禁止パス検出部34により検出された遷移パスであるので、ACS演算部31は、時刻kの状態S1のパスメモリの更新時に、時刻k−1の状態S2のパスメモリの内容「・・・110」において、時刻k−3に選択された遷移パスを示すビット値「0」を反転させる。
図11の説明に戻ると、パスメモリ32は、選択されたパスの情報を記憶するメモリである。そして、パスメモリ32に記憶された情報に基づいて生き残りパスが探索され、探索された生き残りパスが復号データとして読み出される。
PMメモリ33は、ACS演算部31により算出されたパスメトリックを記憶するメモリである。PMメモリ33により記憶されたパスメトリックは、つぎの時刻k+1におけるACS演算の実行時に、ACS演算部31により読み出される。
禁止パス検出部34は、実施例1または実施例2で説明したように、特定の禁止パターンとパスメモリの値との間で値の一致検出をビットごとにおこない、全ビットが一致したパスがある場合にそのパスに対応するパス選択禁止フラグを有効にする。
Δ値メモリ35は、ACS演算部31が式(8)を用いて算出したパスメトリックの差Δn(k)を記憶するメモリである。ACS演算部31は、パスの削除がおこなわれる場合に、Δ値メモリ35に記憶された値を参照し、式(10)を用いてパスメトリックの算出をおこなう。
なお、ここでは、パス選択禁止フラグの設定を実施例1および2で説明したような禁止パターンの一致判定により実行することとしたが、実施例3および4で説明したようにビット数をカウントすることによりパス選択禁止フラグの設定をおこなうこととしてもよい。
図14は、実施例5の変形例に係る最尤復号器の機能構成を示す図である。図14に示すように、この最尤復号器は、BM演算部40、ACS演算部41、パスメモリ42、PMメモリ43、ビット値監視部44、禁止パス検出部45、Δ値メモリ46を有する。
ここで、BM演算部40、パスメモリ42、PMメモリ43、ビット値監視部44、禁止パス検出部45は、図7で説明した最尤復号器のBM演算部20、パスメモリ22、PMメモリ23、ビット値監視部24、禁止パス検出部25と同様のものである。
ACS演算部41は、時刻k−1の状態におけるパスメトリックと時刻k−1から時刻kに状態が遷移する場合のブランチメトリックとを加算し、それによって得られた時刻kの状態におけるパスメトリック間の大小比較によりパスを選択するACS演算をおこなう演算部である。
このACS演算部41は、パス選択禁止フラグが有効であるか否かの情報を禁止パス検出部45から取得し、パス選択禁止フラグが有効であるパスがある場合にそのパスを選択対象から除外する。
その際、ACS演算部41は、Δ値メモリ46に記憶されたパスメトリックの差の情報を用いて、図11で説明した最尤復号器のACS演算部31と同様のACS演算をおこなう。また、Δ値メモリ46は、ACS演算部41が式(8)を用いて算出したパスメトリックの差を記憶するメモリである。
上述してきたように、本実施例5では、ACS演算部31あるいはACS演算部41が、禁止パス検出部34あるいは禁止パス検出部45により検出された選択対象から除外すべきパスに繋がる過去に選択されたパスを変更することにより、パスの選択対象から除外すべきパスをパスの選択対象に含め、パスの選択を実行することとしたので、復号結果の候補となる符号語の数が減少するのを防止でき、利得のロスを最小限に抑えることができる。
ところで、上記実施例5では、ビタビ復号をおこなう最尤復号器において、パスメトリックの比較対象となる符号語の数が減少するのを防止する場合について説明したが、軟出力ビタビアルゴリズム(SOVA)を用いる最尤復号器においても同様に符号語の数が減少するのを防止するようにしてもよい。そこで、本実施例6では、軟出力ビタビアルゴリズムを用いる最尤復号器において符号語の数が減少するのを防止する場合について説明する。
図15は、実施例6に係る最尤復号器の機能構成を示す図であり、図16は、パスの削除を含む場合の尤度算出処理について説明する図であり、図17は、時刻k−1の状態S0および状態S2から時刻kの状態S1に状態が遷移する場合のトレリス線図である。
なお、図16には、図4に示した4状態の状態遷移表に従って状態が遷移する場合、特に、図17に示すように、時刻k−1の状態S0および状態S2から時刻kの状態S1に2つのパスが伸びており、時刻kの状態S1におけるACS演算により2つのパスのうち1つが選択される場合について示している。ただし、処理対象とするパスはこれに限定されず、その他のパスに対しても以下に説明するものと同様の処理を容易に実行することができる。
図15に示すように、この最尤復号器は、BM演算部50、ACS演算部51、パスメモリ52、PMメモリ53、禁止パス検出部54、Δ値メモリ55、尤度更新部56、尤度メモリ57を有する。
BM演算部50は、サンプル値(復号器入力にチャネルの雑音が付加された信号)に対するブランチメトリックを算出するBM演算(図16の(a))をおこなう演算部である。具体的には、BM演算部50は、時刻kにおいて状態Smから状態Snに状態が遷移する場合のブランチメトリックBMmn(k)を式(1)により算出する。
ACS演算部51は、時刻k−1の状態におけるパスメトリックと時刻k−1から時刻kに状態が遷移する場合のブランチメトリックとを加算し、それによって得られた時刻kの状態におけるパスメトリック間の大小比較によりパスを選択するACS演算をおこなう演算部である。
具体的には、ACS演算部51は、時刻kにおいて状態Smに状態Snおよび状態Sm'から遷移する2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)を式(2)および式(3)を用いて算出するADD演算(図16の(b))をおこなう。
ただし、ACS演算部51は、後に説明するパス選択禁止フラグが有効であるか否かの情報を禁止パス検出部54から取得し、パス選択禁止フラグが有効であるパスがある場合にそのパスを選択対象から除外する。
この場合、状態Sm'から状態Snへと遷移するパスが選択対象から除外されたものとすると、ACS演算部51は、状態Snに状態Smおよび状態Sm'から遷移する2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)を式(9)および式(10)を用いて算出するADD演算(図16の(b))をおこなう。
その後、ACS演算部51は、2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)の大小関係を比較し、式(4)に基づいてパスを選択するCOMPARE演算(図16の(c))をおこなう。
また、ACS演算部51は、2つのパスのパスメトリックPMn 0(k)およびPMn 1(k)の差の絶対値を式(8)により算出するΔ値演算(図16の(d))をおこなう。ここで算出されたパスメトリックの差は、次時刻におけるADD演算(図16の(b))において選択対象から除外されるパスがある場合に用いられる。
さらに、ACS演算部51は、COMPARE演算(図16の(c))の結果に基づいて、パスメモリの内容を更新する。図16では、状態S1のパスメモリの内容を更新する場合が示されている。
具体的には、ACS演算部51は、COMPARE演算(図16の(c))の結果が「真」である場合には、状態S1のパスメモリにビット値「0」を追加し、状態S1のパスメモリの内容を更新する。
ここで、COMPARE演算では、式(4)のPMn 0(k)が状態S0から状態S1への遷移パスに対応する状態S1のパスメトリック、PMn 1(k)が状態S2から状態S1への遷移パスに対応する状態S1のパスメトリックを表すとすると、
Figure 0004571580
である場合に、「真」であると判定し、
Figure 0004571580
である場合には、「偽」であると判定する。
また、ACS演算部51は、COMPARE演算(図16の(c))の結果が「偽」である場合には、状態S1のパスメモリにビット値「1」を追加し、パスメモリの内容を更新する。
さらに、ACS演算部51は、パス選択禁止フラグが有効か否か、パス選択禁止フラグが有効である場合は、パス選択禁止フラグが有効であるパスがCOMPARE演算(図16の(c))において選択されたか否かを判定する除外パス選択判定(図16の(e))をおこなう。
図18は、除外パス選択判定における判定基準を示す図である。図18に示すように、ACS演算部51は、パス選択禁止フラグが無効である場合に、判定結果を「decA」とする。
また、ACS演算部51は、パス選択禁止フラグが有効であり、パス選択処理において除外されたパスとは異なるパスが選択された場合には、判定結果を「decB」とする。さらに、ACS演算部51は、パス選択禁止フラグが有効であり、パス選択処理において除外されたパスが選択された場合には、判定結果を「decC」とする。
さらに、ACS演算部51は、除外パス選択判定(図16の(e))の判定結果が「decC」である場合に、実施例5の場合と同様にして、状態S1のパスメモリに新たに追加されたビット値の1時刻前のビット値を反転させ、状態S1のパスメモリの内容を更新する。
図15の説明に戻ると、パスメモリ52(図16のP0〜P3)は、選択されたパスの情報を記憶するメモリである。そして、パスメモリ52に記憶された情報は、禁止パス検出部54および尤度更新部56により参照される。
PMメモリ53は、ACS演算部51により算出されたパスメトリックを記憶するメモリである。PMメモリ53により記憶されたパスメトリックは、つぎの時刻k+1におけるACS演算の実行時に、ACS演算部51により読み出される。
禁止パス検出部54は、実施例1または実施例2で説明したように、特定の禁止パターンとパスメモリの値との間で値の一致検出をビットごとにおこない、全ビットが一致したパスがある場合にそのパスに対応するパス選択禁止フラグを有効にする禁止パス検出(図16の(h))をおこなう。なお、パス選択禁止フラグの設定は、実施例3または実施例4で説明したように、ビットをカウントすることによりおこなうこととしてもよい。
Δ値メモリ55(図16のL0〜L3)は、ACS演算部51が式(8)を用いて算出したパスメトリックの差Δn(k)を記憶するメモリである。ACS演算部51は、パスの削除がおこなわれる場合に、Δ値メモリ35に記憶された値を参照し、式(10)を用いてパスメトリックの算出をおこなう。
尤度更新部56は、尤度メモリ57に記憶された生き残りパスの対数尤度比の情報を更新(図16の(g))する更新部である。
具体的には、尤度更新部56は、ACS演算部51によるCOMPARE演算(図16の(c))および除外パス選択判定(図16の(e))の結果に基づいて、パスメモリ52に状態ごとに記憶されたビット値をビットごとに比較(図16の(f))する。そして、尤度更新部56は、時刻kにおける状態Snの対数尤度比を算出し、算出した対数尤度比を尤度メモリ57に記憶することにより尤度メモリ57の内容を更新する。
図19は、対数尤度比の算出方法について説明する図である。図19に示すように、対数尤度比の算出方法は、COMPARE演算の演算結果(図16の(c))および除外パス選択判定(図16の(e))の判定結果により異なるものとなる。なお、図19において、判定結果が「decA」である場合には、対数尤度比の算出方法は、従来の軟出力ビタビアルゴリズムと同じものとなる。
従来の軟出力ビタビアルゴリズムに関しては、「M.P.C. Fossorier, F. Burkert, S. Lin, J. Hagenauer著, "On the equivalence between SOVA and MAX-Log-MAP decodings", IEEE Commun. Letters, vol. 2, No. 5, May 1998」、「井坂,今井著,"Shannon限界への道標: "Parallel concatenated (Turbo) coding", "Turbo (iterative) decoding"とその周辺",信学技法,IT98−51,1998.12.」などに詳しく説明されている。
すなわち、判定結果が「decA」であり、COMPARE演算(図16の(c))の演算結果が「真」であり、
Figure 0004571580
である場合には、
Figure 0004571580
により時刻kにおける状態S1の対数尤度比が算出される。
ここで、
Figure 0004571580
は、それぞれ時刻j(j<k)における状態S0の情報ビットuj 0の復号値、および、時刻jにおける状態S2の情報ビットuj 2の復号値である。
また、
Figure 0004571580
は、情報ビットuj 0の復号値に対する事後確率の対数尤度比である。
また、判定結果が「decA」であり、COMPARE演算(図16の(c))の演算結果が「真」であり、
Figure 0004571580
である場合には、
Figure 0004571580
により時刻kにおける状態S1の対数尤度比が算出される。
ここで、
Figure 0004571580
は、情報ビットuj 2の復号値に対する事後確率の対数尤度比である。
また、判定結果が「decA」であり、COMPARE演算(図16の(c))の演算結果が「偽」であり、式(12)の関係を満たす場合には、
Figure 0004571580
により時刻kにおける状態S1の対数尤度比が算出される。
また、判定結果が「decA」であり、COMPARE演算(図16の(c))の演算結果が「偽」であり、式(16)の関係を満たす場合には、
Figure 0004571580
により時刻kにおける状態S1の対数尤度比が算出される。
さらに、判定結果が「decB」または「decC」である場合には、COMPARE演算(図16の(c))の演算結果や、式(14)および式(16)の関係を満たすか否かにかかわらず、
Figure 0004571580
により時刻kにおける状態S1の対数尤度比が算出される。
すなわち、この場合には、時刻kにおける状態S1の対数尤度比として、選択候補から除外されなかったパスの遷移元の状態S0に対応する情報ビットuj 0の復号値の対数尤度比が用いられる。
その後、尤度更新部56は、算出した対数尤度比を尤度メモリ57に記憶し、尤度メモリ57の内容を更新する。尤度メモリ57は、尤度更新部56により算出された対数尤度比を記憶するメモリである。この尤度メモリ57に記憶された対数尤度比が軟情報復号データとして出力される。
上述してきたように、本実施例6では、尤度更新部56が、ACS演算部51によりパスの選択が実行された場合に、選択されたパスの遷移先の状態の尤度情報を、式(20)に示したように、当該パスの遷移元の状態における過去の時点の復号結果に係る尤度情報に基づいて生成することとしたので、復号結果の候補となる符号語の数が減少するのを防止し、利得のロスを最小限に抑える軟出力復号器を容易に構成することができる。
ところで、上記実施例1〜6では、所定の制限を満足しないパスを削除する場合について説明してきたが、誤り位置が分散し、長い誤り事象が多く発生する場合には、さらにそれらに対処できるように符号器および復号器を構成することとしてもよい。
たとえば、次世代の信号処理技術の最有力候補としてLDPC(Low Density Parity Check)符号が注目されている。このLDPC符号は、疎な誤り検出用のパリティデータをデータ部に付加して記録媒体への記録処理をおこない、再生時にはパーシャルレスポンス検出とパリティ検査とを軟復号情報を用いて交互に複数回実行することにより復号データの信頼性を高める技術である。
しかし、このLDPC符号には、誤り位置が分散し、長い誤り事象が多く発生するという欠点がある。そのため、LDPC符号とECC(Error Correcting Code)とを単に組み合わせる場合には良好な結果は得られない。
このような欠点を補うため、符号の連続遷移数(1の連続数)を制限するMTR符号を用いることが考えられる。ただし、MTR符号を用いたとしても、長い誤り事象の発生を抑えることができるが、誤り位置が分散するという問題は依然解決されない。
このため、MTR符号化系列に対する復号をおこなう際に、エラーが数個あるだけでエラー伝播が発生し、復号系列の信頼性が低下する。そこで、本実施例7では、長い誤り事象およびエラー伝播の発生を抑え、復号系列の信頼性を高める場合について説明する。
図20は、実施例7に係る記録再生装置の機能構成について説明する図である。この記録再生装置は、MTR符号器60、ECC符号器61、記録再生チャネル62、チャネル検出器63、ECC復号器64、MTR復号器65を有する。
MTR符号器60は、情報系列のMTR符号化をおこなう符号器である。ECC符号器61は、MTR符号器60により符号化された符号系列のECC符号化をおこなう符号器である。記録再生チャネル62は、磁気媒体などにECC符号器61から出力された記録系列を記録し、また、記録系列を再生する磁気記録PR(Partial Response)チャネルである。
チャネル検出器63は、記録再生チャネル62により再生された信号に対して、実施例1〜5で説明したような最尤復号法にしたがって、チャネルの特性に適し、MTR符号による所定の制約を満足しないパスを選択候補から除外しつつ、チャネル検出をおこなう検出器である。なお、ここでは、パスを実施例1〜5で説明したように動的に除外することとしたが、図30で説明したように静的に除外するなど他の方法を用いることとしてもよい。
ECC復号器64は、チャネル検出器63により検出されたチャネル検出系列に含まれる誤り訂正符号(ECC)を用いて誤り訂正をおこなう復号器である。MTR復号器65は、ECC復号器64により誤り訂正がなされた符号系列のMTR復号をおこない、情報系列を出力する復号器である。
このように、この記録再生装置では、ECC復号をおこなった後に、MTR復号をおこなうこととしているので、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に訂正することができ、エラー伝播を抑制することができる。
図21は、記録系列を生成するECC符号器61の構成について説明する図であり、図22は、記録系列の生成処理について説明する図である。
図21に示すように、ECC符号器61は、RS−ECC符号器70、MTR符号器71、マルチプレクサ72を有する。ECC符号器61は、MTR符号器60によりMTR符号化されたMTR符号化系列をRS−ECC符号器70とマルチプレクサ72とに入力する。
RS−ECC符号器70は、図22に示すように、MTR符号化系列をリードソロモンコードを用いてECC符号化し、ECCパリティ系列を生成する符号器である。MTR符号器71は、RS−ECC符号器70により生成されたECCパリティ系列をMTR符号化し、MTR符号化ECCパリティ系列を生成する符号器である。
マルチプレクサ72は、MTR符号器60から受信したMTR符号化系列と、MTR符号器71から受信したMTR符号化ECCパリティ系列とを結合し、記録系列を生成するマルチプレクサである。
また、図23は、チャネル検出系列を復号するECC復号器64の構成について説明する図であり、図24は、チャネル検出系列の復号処理について説明する図である。
図23に示すように、ECC復号器64は、デマルチプレクサ80、MTR復号器81、RS−ECC復号器82を有する。デマルチプレクサ80は、チャネル検出器63により検出されたチャネル検出系列を、MTR符号化系列とMTR符号化ECCパリティ系列とに分け、MTR符号化系列をRS−ECC復号器82に、MTR符号化ECCパリティ系列をMTR復号器に出力するデマルチプレクサである。
MTR復号器81は、図24に示すように、デマルチプレクサ80から受信したMTR符号化ECCパリティ系列をMTR復号してECCパリティ系列を生成し、そのECCパリティ系列をRS−ECC復号器82に出力する復号器である。
RS−ECC復号器82は、デマルチプレクサ80から受信したMTR符号化系列、および、MTR復号器81から受信したECCパリティ系列に対するECC復号をおこなってMTR符号化系列を生成し、そのMTR符号化系列をMTR復号器65に出力する復号器である。
なお、ここでは、ビタビ復号法を用いた最尤復号をおこなう記録再生装置について説明したが、軟出力ビタビアルゴリズム(SOVA)を用いた最尤復号をおこなう記録再生装置についても同様に、MTR復号の実行前にエラー訂正をおこなうことによりMTR復号時のエラー伝播を抑制することができる。
図25は、軟出力ビタビアルゴリズムを用いて最尤復号をおこなう記録再生装置の機能構成について説明する図である。この記録再生装置は、MTR符号器90、ECC符号器91、LDPC符号器92、マルチプレクサ93、記録再生チャネル94、チャネル検出器95、LDPC復号器96、ECC復号器97、MTR復号器98を有する。
MTR符号器90は、情報系列のMTR符号化をおこなう符号器である。ECC符号器91は、MTR符号器90により符号化された符号系列のECC符号化をおこなって記録系列を生成し、生成した記録系列をLDPC符号器92とマルチプレクサ93とに出力する符号器である。
LDPC符号器92は、ECC符号器91により生成された記録系列をLDPC符号化し、LDPC符号化系列を生成してマルチプレクサ93に出力する符号器である。マルチプレクサ93は、ECC符号器91により生成された記録系列と、LDPC符号器92により生成されたLDPC符号化系列とを結合し、チャネル記録系列を生成するマルチプレクサである。
記録再生チャネル94は、磁気媒体などにマルチプレクサ93から出力されたチャネル記録系列を記録し、また、記録系列を再生する磁気記録PRチャネルである。
チャネル検出器95は、記録再生チャネル62により再生された信号に対して、実施例6で説明したような方法にしたがって、チャネルの特性に適し、MTR符号による所定の制約を満足しないパスを選択候補から除外しつつチャネル検出をおこなう検出器である。なお、ここでは、パスを実施例6で説明したように動的に除外することとしたが、図30で説明したように静的に除外するなど他の方法を用いることとしてもよい。
LDPC復号器96は、チャネル検出器95との間でやり取りされる尤度情報の更新を所定の回数おこなうことによりチャネル検出されたチャネル検出系列の復号をおこない、その結果得られたLDPC復号系列をECC復号器97に出力する復号器である。
ECC復号器97は、LDPC復号器96から受信したLDPC復号系列に含まれる誤り訂正符号(ECC)を用いて誤り訂正をおこなう復号器である。MTR復号器98は、ECC復号器97により誤り訂正がなされた符号系列のMTR復号をおこない、情報系列を出力する復号器である。
このように、軟出力ビタビアルゴリズムを用いて最尤復号をおこなう記録再生装置においても、ECC復号をおこなった後に、MTR復号をおこなうことにより、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に訂正することができ、エラー伝播を抑制することができる。
上述してきたように、本実施例7では、ECC復号器64,97が、符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこない、MTR復号器65,98が、ECC復号器64,97により誤り訂正がおこなわれた後、MTR符号を用いて符号化された符号系列を復号することとしたので、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に訂正することができ、エラー伝播を抑制することができる。
また、本実施例7では、チャネル検出器95およびLDPC復号器96が、トレリス線図における各状態の遷移を表すパスの中から所定の条件を満足しないパスをパスの選択対象から除外してパスを選択することにより符号系列の復号をおこない、ECC復号器97が、復号した符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこなうこととしたので、所定の条件を満足させつつ、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に訂正することができ、エラー伝播を抑制することができる。
また、本実施例7では、MTR復号器60,90が、情報系列をMTR符号を用いて符号化し、ECC符号器61,91が、MTR復号器60,90により符号化された符号化系列を誤り訂正符号を用いて符号化することとしたので、MTR復号時のエラー伝播の原因となるエラーをMTR復号の実行前に誤り訂正符号を用いて訂正することができる符号化系列を生成することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。たとえば、本発明は磁気ディスク装置用の復号器に適用されるだけでなく、光ディスク記憶装置や通信用の復号器に適用することとしてもよい。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した復号器の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、復号器の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
さらに、復号器にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(付記1)トレリス線図における各状態の遷移を表すパスの中から所定の条件に基づいてパスを選択することにより符号の復号をおこなう復号器であって、
時刻kにおけるパスが選択される場合に、時刻(k−(符号の拘束長)+1)より前の時刻において選択されたパスの選択履歴に係る情報を記憶する記憶手段と、
前記記憶手段により記憶された情報と時刻k−1から時刻kに状態が遷移する場合の遷移元の状態の情報とに基づいてパスの選択対象から除外すべきパスを検出するパス検出手段と、
を備えたことを特徴とする復号器。
(付記2)前記パス検出手段は、前記記憶手段に記憶された情報におけるビット列と特定のビット列との間で各ビットの一致判定をおこない、当該一致判定の結果に基づいてパスの選択対象から除外すべきパスを検出することを特徴とする付記1に記載の復号器。
(付記3)前記特定のビット列は、ビットが連続して反転するビット列であることを特徴とする付記2に記載の復号器。
(付記4)前記特定のビット列は、同一ビットが連続するビット列であることを特徴とする付記2に記載の復号器。
(付記5)前記パス検出手段は、前記記憶手段に記憶された情報におけるビット列のビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする付記1に記載の復号器。
(付記6)前記パス検出手段は、前記ビット列において連続して反転するビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする付記5に記載の復号器。
(付記7)前記パス検出手段は、前記ビット列において連続する同一ビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする付記5に記載の復号器。
(付記8)前記パス検出手段により検出されたパスに繋がる過去に選択されたパスを変更することによりパスの選択対象から除外すべきパスをパスの選択対象に含め、パスの選択を実行するパス選択手段をさらに備えたことを特徴とする付記1〜7のいずれか1つに記載の復号器。
(付記9)前記パス選択手段によりパスの選択が実行された場合に、選択されたパスの遷移先の状態の尤度情報を、当該パスの遷移元の状態における過去の時点の復号結果に係る尤度情報に基づいて生成する尤度情報生成手段をさらに備えたことを特徴とする付記8に記載の復号器。
(付記10)MTR(Maximum Transition Run)符号を用いて符号化され、さらに誤り訂正符号を用いて符号化された符号系列を復号する復号器であって、
前記符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこなう誤り訂正手段と、
前記誤り訂正手段により誤り訂正がなされた後、MTR符号を用いて符号化された符号系列を復号するMTR復号手段と、
を備えたことを特徴とする復号器。
(付記11)トレリス線図における各状態の遷移を表すパスの中から所定の条件を満足しないパスをパスの選択対象から除外してパスを選択することにより符号系列の復号をおこなうパス選択復号手段をさらに備え、前記誤り訂正手段は、前記パス選択復号手段により復号された符号系列に含まれる誤り訂正符号を用いて誤り訂正をおこなうことを特徴とする付記10に記載の復号器。
(付記12)情報系列を符号化する符号器であって、
情報系列をMTR(Maximum Transition Run)符号を用いて符号化するMTR符号化手段と、
前記MTR符号化手段により符号化された符号化系列を誤り訂正符号を用いて符号化する誤り訂正符号化手段と、
を備えたことを特徴とする符号器。
(付記13)トレリス線図における各状態の遷移を表すパスの中から所定の条件に基づいてパスを選択することにより符号の復号をおこなう復号方法であって、
時刻kにおけるパスを選択する場合に、時刻(k−(符号の拘束長)+1)より前の時刻において選択されたパスの選択履歴に係る情報を記憶する記憶工程と、
前記記憶工程により記憶された情報と時刻k−1から時刻kに状態が遷移する場合の遷移元の状態の情報とに基づいてパスの選択対象から除外すべきパスを検出するパス検出工程と、
を含んだことを特徴とする復号方法。
以上のように、本発明に係る復号器および符号器は、符号の拘束長を増加させることなく、所定の制限を満足しないパスを効率的に削除して大きな利得を得ることが必要な復号システムおよび符号化システムに対して有用である。
本発明に係る復号処理の概念について説明する図である。 実施例1に係る最尤復号器の機能構成を示す図である。 実施例1に係る禁止パス検出処理について説明する図である。 状態数が4の場合の状態遷移表である。 禁止パターンの生成規則について説明する図である。 実施例2に係る禁止パス検出処理について説明する図である。 実施例3に係る最尤復号器の機能構成を示す図である。 ビット値の遷移数カウント処理について説明する図である。 ビット値の遷移数カウント処理を用いて実現されるビタビ復号処理について説明する図である。 ビット値の連続数カウント処理について説明する図である。 実施例5に係る最尤復号器の機能構成を示す図である。 実施例5におけるACS演算処理におけるトレリス線図を示す図である。 実施例5におけるACS演算処理について説明する図である。 実施例5の変形例に係る最尤復号器の機能構成を示す図である。 実施例6に係る最尤復号器の機能構成を示す図である。 パスの削除を含む場合の尤度算出処理について説明する図である。 時刻k−1の状態S0および状態S2から時刻kの状態S1に状態が遷移する場合のトレリス線図である。 除外パス選択判定における判定基準を示す図である。 対数尤度比の算出方法について説明する図である。 実施例7に係る記録再生装置の機能構成について説明する図である。 記録系列を生成するECC符号器61の構成について説明する図である。 記録系列の生成処理について説明する図である。 チャネル検出系列を復号するECC復号器64の構成について説明する図である。 チャネル検出系列の復号処理について説明する図である。 軟出力ビタビアルゴリズムを用いて最尤復号をおこなう記録再生装置の機能構成について説明する図である。 従来のPR1ML方式における状態遷移表である。 従来のPR1ML方式におけるトレリス線図である。 従来のビタビ復号法を用いたパス選択処理について説明する図である。 従来の最尤復号器の機能構成を示す図である。 6/7MTR符号化EPR4ML方式について説明する図である。
符号の説明
1,10,20,30,40,50 BM演算部
2,11,21,31,41,51 ACS演算部
3,12,22,32,42,52 パスメモリ
4,13,23,33,43,53 PMメモリ
14,25,34,45,54 禁止パス検出部
24,44 ビット値監視部
35,46,55 Δ値メモリ
56 尤度更新部
57 尤度メモリ
60,71,90 MTR符号器
61,91 ECC符号器
62,94 記録再生チャネル
63,95 チャネル検出器
64,97 ECC復号器
65,81,98 MTR復号器
70 RS−ECC符号器
72,93 マルチプレクサ
80 デマルチプレクサ
82 RS−ECC復号器
92 LDPC符号器
96 LDPC復号器

Claims (6)

  1. トレリス線図における各状態の遷移を表すパスの中から所定の条件に基づいてパスを選択することにより符号の復号をおこなう復号器であって、
    遷移元の状態を表す状態情報を記憶する状態情報記憶手段と、
    時刻kにおけるパスが選択される場合に、時刻(k−(符号の拘束長)+1)より前の時刻において選択されたパスの選択履歴に係る情報として、前記状態情報記憶手段に記憶される遷移元の状態を表す状態情報の先頭ビットであって時刻(k−(符号の拘束長)+1)における復号値を示す値を、時刻k−1までに記憶された選択履歴に係る情報に累積して記憶する選択履歴累積情報記憶手段と、
    前記選択履歴累積情報記憶手段により記憶された情報におけるビット列と特定のビット列との間で各ビットの一致判定をおこなった当該一致判定の結果と、前記状態情報記憶手段に記憶された状態情報であって時刻k−1から時刻kに状態が遷移する場合の遷移元の状態情報とに基づいて、または、前記選択履歴累積情報記憶手段に記憶された情報におけるビット列のビットをカウントした当該カウントの結果と、前記状態情報記憶手段に記憶された状態情報であって時刻k−1から時刻kに状態が遷移する場合の遷移元の状態情報とに基づいて、パスの選択対象から除外すべきパスを検出するパス検出手段と、
    を備えたことを特徴とする復号器。
  2. 前記特定のビット列は、ビットが連続して反転するビット列であることを特徴とする請求項に記載の復号器。
  3. 前記特定のビット列は、同一ビットが連続するビット列であることを特徴とする請求項に記載の復号器。
  4. 前記パス検出手段は、前記選択履歴累積情報記憶手段に記憶された情報におけるビット列のビットをカウントする場合には、該ビット列において連続して反転するビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする請求項に記載の復号器。
  5. 前記パス検出手段は、前記選択履歴累積情報記憶手段に記憶された情報におけるビット列のビットをカウントする場合には、該ビット列において連続する同一ビットをカウントすることによりパスの選択対象から除外すべきパスを検出することを特徴とする請求項に記載の復号器。
  6. 前記パス検出手段により検出されたパスに繋がる過去に選択されたパスを変更することによりパスの選択対象から除外すべきパスをパスの選択対象に含め、パスの選択を実行するパス選択手段をさらに備えたことを特徴とする請求項1〜のいずれか1つに記載の復号器。
JP2005362341A 2005-12-15 2005-12-15 復号器 Expired - Fee Related JP4571580B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005362341A JP4571580B2 (ja) 2005-12-15 2005-12-15 復号器
US11/394,266 US7620882B2 (en) 2005-12-15 2006-03-30 Decoder and decoding method for decoding a code by selecting a path out of paths in a trellis diagram

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005362341A JP4571580B2 (ja) 2005-12-15 2005-12-15 復号器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008259535A Division JP2009048765A (ja) 2008-10-06 2008-10-06 復号器および符号器

Publications (2)

Publication Number Publication Date
JP2007164923A JP2007164923A (ja) 2007-06-28
JP4571580B2 true JP4571580B2 (ja) 2010-10-27

Family

ID=38247652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005362341A Expired - Fee Related JP4571580B2 (ja) 2005-12-15 2005-12-15 復号器

Country Status (2)

Country Link
US (1) US7620882B2 (ja)
JP (1) JP4571580B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8165291B2 (en) * 2006-08-24 2012-04-24 Lsi Corporation Random seed stability with fuses
JP4939607B2 (ja) * 2006-09-18 2012-05-30 富士通株式会社 無線通信システム、その無線通信システムの構成方法および受信機
US7961797B1 (en) * 2006-10-10 2011-06-14 Marvell International Ltd. Nonlinear viterbi complexity reduction
US8341506B2 (en) * 2007-03-30 2012-12-25 HGST Netherlands B.V. Techniques for correcting errors using iterative decoding
JP4501960B2 (ja) * 2007-05-15 2010-07-14 日本電気株式会社 ビタビ検出器、及び、情報再生装置
US20100031130A1 (en) * 2008-08-04 2010-02-04 Legend Silicon Corp. Forward error correction (fec) and variable length code (vlc) joint decoding
US8413029B2 (en) * 2009-01-16 2013-04-02 Lsi Corporation Error correction capability adjustment of LDPC codes for storage device testing
JP6155959B2 (ja) 2013-08-19 2017-07-05 富士通株式会社 復号化装置、及び、復号化方法
US9419656B2 (en) * 2014-07-29 2016-08-16 Intel IP Corporation Decoder and method for decoding an encoded sequence of bits
US20170359146A1 (en) * 2016-06-13 2017-12-14 Qualcomm Incorporated Enhanced lva decoding using iterative comparison trellis construction

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000332619A (ja) * 1999-05-20 2000-11-30 Hitachi Ltd 符号化方法およびこれを用いた記録再生装置
JP2002008325A (ja) * 2000-04-14 2002-01-11 Hitachi Ltd 情報記録再生方法およびこれを用いた情報記録再生回路装置
JP2003504778A (ja) * 1999-06-30 2003-02-04 シーゲイト テクノロジー エルエルシー Mtr拘束及びパリティ拘束の組み合わせを有するパーシャル・レスポンス・チャネル

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3451662B2 (ja) * 1993-07-29 2003-09-29 ソニー株式会社 ディジタルデータの磁気再生装置
US5537424A (en) * 1994-08-12 1996-07-16 International Business Machines Corporation Matched spectral null codes with partitioned systolic trellis structures
US5838697A (en) * 1995-12-15 1998-11-17 Oki Electric Industry Co., Ltd. Bit error counting method and counting technical field
JPH11110921A (ja) * 1997-10-03 1999-04-23 Sony Corp 符号化装置および復号化装置
JP2000341136A (ja) * 1999-05-27 2000-12-08 Sony Corp 復号装置及びデータの復号方法
US7177353B2 (en) * 2000-03-10 2007-02-13 Broadcom Corporation Architecture for very high-speed decision feedback sequence estimation
JP4198904B2 (ja) 2001-06-11 2008-12-17 富士通株式会社 記録再生装置、信号復号回路、エラー訂正方法、及び反復型復号器
TW530464B (en) * 2002-05-07 2003-05-01 Mediatek Inc Survive path memory circuit and Viterbi decoder with the circuit
US7380199B2 (en) * 2004-05-25 2008-05-27 Agere Systems Inc. Method and apparatus for precomputation and pipelined selection of branch metrics in a reduced-state Viterbi detector
US7669110B2 (en) * 2005-09-30 2010-02-23 Agere Systems Inc. Trace-ahead method and apparatus for determining survivor paths in a Viterbi detector

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000332619A (ja) * 1999-05-20 2000-11-30 Hitachi Ltd 符号化方法およびこれを用いた記録再生装置
JP2003504778A (ja) * 1999-06-30 2003-02-04 シーゲイト テクノロジー エルエルシー Mtr拘束及びパリティ拘束の組み合わせを有するパーシャル・レスポンス・チャネル
JP2002008325A (ja) * 2000-04-14 2002-01-11 Hitachi Ltd 情報記録再生方法およびこれを用いた情報記録再生回路装置

Also Published As

Publication number Publication date
US7620882B2 (en) 2009-11-17
US20070168843A1 (en) 2007-07-19
JP2007164923A (ja) 2007-06-28

Similar Documents

Publication Publication Date Title
JP4571580B2 (ja) 復号器
JP5127189B2 (ja) エラー検出コードに基づくエラーの検出と訂正方法、及びそれに適した装置
US8578254B1 (en) Modified trace-back using soft output Viterbi algorithm (SOVA)
US7409622B1 (en) System and method for reverse error correction coding
JP4432781B2 (ja) 誤り訂正復号器
US20080040651A1 (en) Encoding apparatus, decoding apparatus, encoding method, decoding method, and storage device
JP2002033670A (ja) 確率依存グラフにおいて汎用の符号を復号化するための方法および装置
US8370730B2 (en) Soft output viterbi detector with error event output
EP2418796B1 (en) Bitwise reliability indicators from survivor bits in Viterbi decoders
KR20050083974A (ko) 러닝 최소 메시지 전달 저밀도 패리티 검사 디코딩
JP2010009719A (ja) 復号器及び記録再生装置
JP2008035527A (ja) ハードウェア共用および直列和積アーキテクチャを用いる低密度パリティ検査復号の方法および装置
US20090276685A1 (en) Data decoding apparatus, magnetic disk apparatus, and data decoding method
JP5472715B2 (ja) 符号化方法および装置、並びに復号方法および装置
JP2008118327A (ja) ビタビ復号方法
JP2004342188A (ja) 記録媒体再生装置、復号方法、復号処理プログラム、および、プログラム記録媒体
US6614858B1 (en) Limiting range of extrinsic information for iterative decoding
JP3837742B2 (ja) 復号装置および復号方法、記録再生装置、プログラム格納媒体、並びに、プログラム
JP2001127647A (ja) 並列連接符号の復号器、復号方法及び復号プログラムを記録した記録媒体
Moon et al. Cyclic redundancy check code based high-rate error-detection code for perpendicular recording
JP4088133B2 (ja) リードチャネル復号器、リードチャネル復号方法およびリードチャネル復号プログラム
JP2004201323A (ja) 複雑度を減らしたコードテーブルを使用する復調装置及びその方法
JP2009295237A (ja) 復号化装置、復号化方法および記録再生装置
JP2009048765A (ja) 復号器および符号器
WO2013136523A1 (ja) パリティ検査行列作成方法、符号化装置及び記録再生装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080704

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080805

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090421

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091215

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100212

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: 20100810

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100812

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130820

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees