(57)【要約】【課題】本発明は、高効率な確率伝播を行って演算結果の収束を早めることにより、復号処理の繰り返し回数を削減することが可能な復号装置および復号方法を提供することを目的とする。【解決手段】本発明による復号装置は、処理対象のデータに対して、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに従った行処理および列処理の演算を繰り返し行うことによって、確率情報の値の算出および当該値の更新を行う復号部１と、復号部１において算出あるいは更新された一の確率情報の値である第１の値と処理対象のデータの確率的な信頼度情報の値である第２の値との比較に基づいて第２の値を変化させ、当該変化させた第２の値を第１の値に反映させて第１の値を補正する信頼度可変部２とを備えることを特徴とする。【選択図】図１
2010245736.tif 000002
【特許請求の範囲】
【請求項１】
低密度パリティ検査（Ｌｏｗ−Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ−Ｃｈｅｃｋ：ＬＤＰＣ）符号によって符号化されたデータに対して復号処理を行う復号装置であって、
処理対象の前記データに対して、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに従った行処理および列処理の演算を繰り返し行うことによって、確率情報の値の算出および当該値の更新を行う復号部と、
前記復号部において算出あるいは更新された一の確率情報の値である第１の値と前記処理対象のデータの確率的な信頼度情報の値である第２の値との比較に基づいて前記第２の値を変化させ、当該変化させた第２の値を前記第１の値に反映させて前記第１の値を補正する信頼度可変部と、
を備える、復号装置。
【請求項２】
前記復号部は、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＭｉｎ−Ｓｕｍアルゴリズムを用いることを特徴とする、請求項１に記載の復号装置。
【請求項３】
前記復号部は、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＮｏｒｍａｌｉｚｅｄ＿ＢＰアルゴリズムを用いることを特徴とする、請求項１に記載の復号装置。
【請求項４】
前記復号部は、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＯｆｆｓｅｔ＿ＢＰアルゴリズムを用いることを特徴とする、請求項１に記載の復号装置。
【請求項５】
前記復号部は、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてδ＿Ｍｉｎアルゴリズムを用いることを特徴とする、請求項１に記載の復号装置。
【請求項６】
前記復号部は、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＳｈｕｆｆｌｅｄ＿ＢＰアルゴリズムを用いることを特徴とする、請求項１に記載の復号装置。
【請求項７】
前記復号部は、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えて巡回近似ｍｉｎアルゴリズムを用いることを特徴とする、請求項１に記載の復号装置。
【請求項８】
低密度パリティ検査（Ｌｏｗ−Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ−Ｃｈｅｃｋ：ＬＤＰＣ）符号によって符号化されたデータに対して復号処理を行う復号方法であって、
（ａ）処理対象の前記データに対して、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに従った行処理および列処理の演算を繰り返し行うことによって、確率情報の値の算出および当該値の更新を行う工程と、
（ｂ）前記工程（ａ）において算出あるいは更新された一の確率情報の値である第１の値と前記処理対象のデータの確率的な信頼度情報の値である第２の値との比較に基づいて前記第２の値を変化させ、当該変化させた第２の値を前記第１の値に反映させて前記第１の値を補正する工程と、
を備える、復号方法。
【請求項９】
前記工程（ａ）において、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＭｉｎ−Ｓｕｍアルゴリズムを用いることを特徴とする、請求項８に記載の復号方法。
【請求項１０】
前記工程（ａ）において、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＮｏｒｍａｌｉｚｅｄ＿ＢＰアルゴリズムを用いることを特徴とする、請求項８に記載の復号方法。
【請求項１１】
前記工程（ａ）において、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＯｆｆｓｅｔ＿ＢＰアルゴリズムを用いることを特徴とする、請求項８に記載の復号方法。
【請求項１２】
前記工程（ａ）において、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてδ＿Ｍｉｎアルゴリズムを用いることを特徴とする、請求項８に記載の復号方法。
【請求項１３】
前記工程（ａ）において、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えてＳｈｕｆｆｌｅｄ＿ＢＰアルゴリズムを用いることを特徴とする、請求項８に記載の復号方法。
【請求項１４】
前記工程（ａ）において、前記Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えて巡回近似ｍｉｎアルゴリズムを用いることを特徴とする、請求項８に記載の復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号装置および復号方法に関し、特に、低密度パリティ検査符号により符号化されたデータを復号する復号装置および復号方法に関する。
【背景技術】
【０００２】
低密度パリティ検査（Ｌｏｗ−Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ−Ｃｈｅｃｋ：ＬＤＰＣ）符号（以下、ＬＤＰＣ符号とする）は、１９６２年にＧａｌｌａｇｅｒによって提案された繰り返し処理を用いる誤り訂正符号であり、符号長を長くするに従いＳｈａｎｎｏｎ限界に迫る復号特性が得られ、ターボ符号の復号にて観測されるエラーフロア現象がほとんど生じないという特徴を有する。
【０００３】
ＬＤＰＣ符号の復号は、符号語の各ビットに対応するバリアブルノードとパリティ検査和に対応するチェックノードとを枝で結んだ形状のグラフであるタナーグラフ上において、確率伝播によるメッセージ・パッシング・アルゴリズムによって行うことが可能である。
【０００４】
基本的なメッセージ・パッシング・アルゴリズムとしては、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムが挙げられる。Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムでは、受信信号の確率的な信頼度情報として対数尤度比（Ｌｏｇ  Ｌｉｋｅｌｉｈｏｏｄ  Ｒａｔｉｏ：ＬＬＲ）（以下、ＬＬＲとする）を算出しながら繰り返し演算することによって復号を行っている（例えば、非特許文献１参照）。
【０００５】
Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムでは、正確な演算が行われるため復号性能が高いが、数学関数を用いた演算（実数の加算や関数の評価）が要求されるため計算コストが高くなる。そのため、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムを復号装置に実装する際には、関数の値を保持するためのテーブルを用意するなどして計算コストを下げる必要がある。
【０００６】
Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに対して、実装時の回路構成を簡略化したアルゴリズムとしてＭｉｎ−Ｓｕｍアルゴリズムがある。Ｍｉｎ−Ｓｕｍアルゴリズムでは、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムで用いられる数学関数を近似した簡易な数式を用いて、加算、最小値検出、正負の判定、符号の乗算の４種類の演算のみで行われるため計算コストが小さくなる。しかし、近似の影響によって復号性能が劣化するという欠点がある。
【０００７】
また、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムよりも復号性能が若干劣化するがＭｉｎ−Ｓｕｍアルゴリズムと同程度の計算コストである復号アルゴリズムとして、例えば、Ｎｏｒｍａｌｉｚｅｄ＿ＢＰ（Ｂｌｉｅｆ  Ｐｒｏｐａｇａｔｉｏｎ）アルゴリズムや、Ｏｆｆｓｅｔ＿ＢＰアルゴリズムがある（例えば、非特許文献２参照）。
【０００８】
さらに、Ｍｉｎ−Ｓｕｍアルゴリズムよりも計算量は増加するがＳｕｍ−Ｐｒｏｄｕｃｔアルゴリズムと同程度の複合性能を有する復号アルゴリズムとして、δ−Ｍｉｎアルゴリズムが提案されている（例えば、非特許文献３参照）。
【０００９】
しかし、上記アルゴリズムは、１回の復号処理につき全行処理を終えてから全列処理を行うため、復号処理の繰り返し回数が多くなるに従って、復号処理にかかる遅延時間が大きくなるという問題が生じる。
【００１０】
このような問題に対して、復号処理の繰り返し回数が削減されたＳｈｕｆｆｌｅｄ＿ＢＰアルゴリズムがある。Ｓｈｕｆｆｌｅｄ＿ＢＰアルゴリズムでは、行処理と列処理によって得られる確率情報の算出および更新を１ワードずつ実行する。そのため、確率情報の伝播が効率的に行われて収束が早くなるが、各ノードを保持するメモリが必要であるため、行重みおよび列重みの分だけメモリ量が増加する（例えば、非特許文献４参照）。
【００１１】
これに対して、Ｍｉｎ−Ｓｕｍアルゴリズムを改良して巡回的に任意個数の最小値（最小値から昇順に任意個数までを示す）のＬＬＲの絶対値のみを更新する、すなわち、正確な最小値ではなく近似的な最小値を用いて復号する巡回近似ｍｉｎアルゴリズムが提案されている。巡回近似ｍｉｎアルゴリズムを用いることによって、Ｓｈｕｆｆｌｅｄ＿ＢＰアルゴリズムよりも大幅にメモリ量を縮小することが可能となる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】国際公開ＷＯ２００７／０１８０６６Ａ１号（第９−１図）
【非特許文献】
【００１３】
【非特許文献１】和田山正著、「低密度パリティ検査符号とその復号法  ＬＤＰＣ（Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ）符号／ｓｕｍ−ｐｒｏｄｕｃｔ復号法」、トリケップス、２００２年６月５日、ｐ．７６−９９
【非特許文献２】Ｊｉｎｇｈｕ  Ｃｈｅｎ等、“Ｒｅｄｕｃｅｄ−Ｃｏｍｐｌｅｘｉｔｙ  Ｄｅｃｏｄｉｎｇ  ｏｆ  ＬＤＰＣ  Ｃｏｄｅｓ”、［ｏｎｌｉｎｅ］、［平成２０年１２月２２日検索］、インターネット〈ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ−ｅｅ．ｅｎｇ．ｈａｗａｉｉ．ｅｄｕ／〜ｊｉｎｇｈｕ／ＦＩＬＥＳ／ｔｃｏｍ０２ｖ３ｐ２．ｐｄｆ〉
【非特許文献３】Ｒ．Ｓａｋａｉ等、“Ｌｏｗ  Ｃｏｍｐｌｅｘｉｔｙ  Ｄｅｃｏｄｉｎｇ  Ａｌｇｏｒｉｔｈｍ  ｆｏｒ  ＬＤＰＣ  Ｃｏｄｅｓ  ａｎｄ  Ｉｔｓ  Ｄｉｓｃｒｅｔｉｚｅｄ  Ｄｅｎｓｉｔｙ  Ｅｖｏｌｕｔｉｏｎ”、ＲＣＳ２００５−４２（２００５−７）Ｏｋａｙａｍａ、２００５年７月、ｐ．１３−１８
【非特許文献４】Ｊｕｎｔａｎ  Ｚｈａｎｇ等、“Ｓｈｕｆｆｌｅｄ  Ｂｅｌｉｅｆ  Ｐｒｏｐａｇａｔｉｏｎ  Ｄｅｃｏｄｉｎｇ”、［ｏｎｌｉｎｅ］、［平成１６年９月２８日検索］、インターネット〈ＵＲＬ：ｈｔｔｐ：／／ｌｅｓｔｅｒ．ｕｎｉｖ−ｕｂｓ．ｆｒ：８０８０／〜ｂｏｕｔｉｌｌｏｎ／Ｊｏｕｒｎｅｅ＿ＧＤＲ＿ＬＤＰＣ／Ｆｏｓｓｏｒｉｅｒ１＿ＧＤＲ＿ＬＤＰＣ．ｐｄｆ〉
【発明の概要】
【発明が解決しようとする課題】
【００１４】
上記の復号アルゴリズムを用いた従来の復号装置および復号方法では、高い復号性能を得るために復号処理の繰り返し回数を多くする必要があり、繰り返し回数を多くするに従って復号遅延も大きくなるという問題があった。
【００１５】
本発明は、これらの問題を解決するためになされたものであり、高効率な確率伝播を行って演算結果の収束を早めることにより、復号処理の繰り返し回数を削減することが可能な復号装置および復号方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記の問題を解決するために、本発明による復号装置は、低密度パリティ検査（Ｌｏｗ−Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ−Ｃｈｅｃｋ：ＬＤＰＣ）符号によって符号化されたデータに対して復号処理を行い、処理対象のデータに対して、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに従った行処理および列処理の演算を繰り返し行うことによって、確率情報の値の算出および当該値の更新を行う復号部と、復号部において算出あるいは更新された一の確率情報の値である第１の値と処理対象のデータの確率的な信頼度情報の値である第２の値との比較に基づいて第２の値を変化させ、当該変化させた第２の値を第１の値に反映させて第１の値を補正する信頼度可変部とを備えることを特徴とする。
【発明の効果】
【００１７】
本発明によると、処理対象のデータに対して、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに従った行処理および列処理の演算を繰り返し行うことによって、確率情報の値の算出および当該値の更新を行う復号部と、復号部において算出あるいは更新された一の確率情報の値である第１の値と処理対象のデータの確率的な信頼度情報の値である第２の値との比較に基づいて第２の値を変化させ、当該変化させた第２の値を第１の値に反映させて第１の値を補正する信頼度可変部とを備えるため、高効率な確率伝播を行って演算結果の収束を早めることにより、復号処理の繰り返し回数を削減することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態による復号装置のブロック図である。
【図２】本発明の実施形態による復号装置の動作のフローチャートである。
【発明を実施するための形態】
【００１９】
本発明の実施形態について、図面を用いて以下に説明する。
【００２０】
本発明の実施形態では、ＬＤＰＣ符号の復号アルゴリズムとしてＳｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに適応した復号装置および復号方法を例に説明する。
【００２１】
図１は、本発明の実施形態による復号装置のブロック図である。図１に示すように、本実施形態による復号装置は、ＬＤＰＣ符号によって符号化されたデータに対して復号処理を行い、処理対象のデータに対して、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに従った行処理および列処理の演算を繰り返し行うことによって、確率情報の値の算出および当該値の更新を行う復号部１と、復号部１において算出あるいは更新された一の確率情報の値である第１の値と処理対象のデータの確率的な信頼度情報の値である第２の値との比較に基づいて第２の値を変化させ、当該変化させた第２の値を第１の値に反映させて第１の値を補正する信頼度可変部２とを備えることを特徴とする。また、復号部１は、ＬＬＲ算出部１１、確率情報算出結果保持部１２、行処理部１３、列処理部１４、制御部１５、および復号結果判定部１６を備え、ＬＬＲ算出部１１に入力された入力情報は、復号部１および信頼度可変部２によって復号処理された後に復号結果として復号結果判定部１６から出力される。
【００２２】
次に、本発明の実施形態による復号装置の動作について説明する。
【００２３】
図２は、本発明の実施形態による復号装置の動作のフローチャートである。図２に示すように、ＬＤＰＣ符号化された入力情報（処理対象のデータ）がＬＬＲ算出部１１に入力される（ステップＳ１）。ＬＬＲ算出部１１は、入力された入力情報からＬＬＲ値を算出する（ステップＳ２）。算出されたＬＬＲ値は、確率情報算出結果保持部１２および信頼度可変部２にそれぞれ出力される。ＬＬＲ算出部１１にて算出されたＬＬＲ値は確率情報算出結果保持部１２に初期値として設定され、同時に、復号処理の繰り返し回数は制御部１５にＩ＝１として初期化される（ステップＳ３）。
【００２４】
ステップＳ３の後、行処理部１３では、ＬＤＰＣ符号の検査行列の１行目から順に各行について、式（１）に従って行処理演算を行う（ステップＳ４）。
【００２５】
【数１】
2010245736.tif 000003
【００２６】
式（１）における定義を以下に示す。
【００２７】
ｉ          ：繰り返し数
Ａ（ｍ）    ：検査行列Ｈのｍ行目において、行列成分が１となる列番号ｎの集合
Ａ（ｍ）＼ｎ：集合Ａ（ｍ）から要素ｎを除いた集合
α(i)mn    ：繰り返しｉ回目において、ｍ行目のチェックノードからｎ列目のバリアブルノードへ受け渡す確率情報
β(i)mn    ：繰り返しｉ回目において、ｎ列目のバリアブルノードからｍ行目のチェックノードへ受け渡す確率情報
ここで、式（１）は、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムによる数式であり、他の復号アルゴリズムでは式（１）とは異なる数式となるが、本質的な差異とはならないため他の復号アルゴリズムによる数式であっても適用可能である。
【００２８】
ステップＳ４の後、列処理部１４では、行処理部１３にて行処理された確率情報に基づき、ＬＤＰＣ符号の検査行列の１列目から順に各列について、式（２）に従って列演算処理を行う（ステップＳ５）。列演算処理の結果算出された値は、信頼度可変部２に出力される。このとき、同時に式（３）の演算も行われる。
【００２９】
【数２】
2010245736.tif 000004
【００３０】
【数３】
2010245736.tif 000005
【００３１】
式（２）および式（３）における定義を以下に示す。ただし、前述の定義と同一のものについては記載を省略する。
【００３２】
Ｂ（ｎ）     ：検査行列Ｈのｎ行目において、行列成分が１となる行番号ｍの集合
Ｂ（ｎ）＼ｍ ：集合Ｂ（ｎ）から要素ｍを除いた集合
β(i)n      ：繰り返しｉ回目における事後確率情報
信頼度可変部２において、ＬＬＲ算出部１１にて算出されたＬＬＲ値（第２の値）は、列処理部１４にて式（２）に従って算出された値（第１の値）よりも信頼度が低い。そのため、当該２値が大きく異なる場合は、以下に具体例を示すように、ＬＬＲ算出部１１にて算出されたＬＬＲ値の信頼度を変化（すなわち、演算への影響力を変化）させ、変化させたＬＬＲ値を式（２）によって算出された値に加算して式（４）に示すようにし、確率情報算出結果保持部１２に保持させる（ステップＳ６）。このとき、同時に式（５）の演算も行われる。
【００３３】
【数４】
2010245736.tif 000006
【００３４】
【数５】
2010245736.tif 000007
【００３５】
式（４）および式（５）における定義を以下に示す。ただし、前述の定義と同一のものについては記載を省略する。
【００３６】
λ'n    ：ＬＬＲ算出部１１にて算出されたＬＬＲ値の信頼度を変化させた後のＬＬＲ値
例えば、ＬＬＲ算出部１１から出力されたＬＬＲ値（第２の値）と列処理部１４にて式（２）に従って算出された値（第１の値）とが同じ符号であり、かつ、ＬＬＲ算出部１１から出力されたＬＬＲ値（第２の値）の絶対値が列処理部１４にて式（２）に従って算出された値（第１の値）の絶対値よりも非常に小さい場合は、ＬＬＲ算出部１１から出力されたＬＬＲ値（第２の値）の値を大きくする（すなわち、補正する）。一方、ＬＬＲ算出部１１から出力されたＬＬＲ値（第２の値）と列処理部１４にて式（２）に従って算出された値（第１の値）とが異なる符号であり、かつ、ＬＬＲ算出部１１から出力されたＬＬＲ値（第２の値）の絶対値が列処理部１４にて式（２）に従って算出された値（第１の値）の絶対値よりも非常に大きい場合は、ＬＬＲ算出部１１から出力されたＬＬＲ値の値を小さくする（すなわち、補正する）。
【００３７】
なお、ＬＬＲ値の値を変化させる場合において、固定値を用いてもよく、ＬＬＲ値にある一定数を加減除乗算のいずれか、または複数を組み合わせることにより行ってもよい。また、レジスタによって任意に変化させるようにしてもよい。上記の例は本実施形態の一例を示したものであり、本発明はこれに限られるものではない。なお、上記のＬＬＲ値の変化について、「非常に小さい場合に大きくする」や、「非常に大きい場合に小さくする」動作は、予め規則を定めて動作させてもよい。
【００３８】
復号結果判定部１６では、信頼度可変部２にて式（５）に従って算出された事後確率情報（ただし、信頼度可変部２での補正が行われないときはＬＬＲ算出部１１にて算出された初期ＬＬＲ値を用いて式（５）に従って算出された事後確率情報）を硬判定して復号結果を算出し、算出結果に基づいてパリティ検査を行う。復号結果判定部１６は、「パリティ検査結果が正しい（検査行列と復号系列の内積＝０）」、または、「繰り返し回数が最大値（Ｉ＝Ｉｍａｘ）」の条件を満たすか否かを判定し、いずれかの条件が満たされれば復号処理を終了して復号結果を出力する。また、判定条件が満たされない場合は、繰り返し回数Ｉを１回増やし、ステップＳ４からステップＳ７までの処理を繰り返し実行させる（ステップＳ７）。
【００３９】
以上のことから、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムの列処理において入力情報から算出されるＬＬＲ値の影響力を変化させることによって、従来よりも高効率な確率伝播を行って演算結果の収束を早め、復号処理の繰り返し回数を削減することが可能となる。また、復号処理の繰り返し回数が削減されるため復号遅延も少なくなる。
【００４０】
本発明の実施形態では、ＬＤＰＣ符号の復号アルゴリズムとしてＳｕｍ−Ｐｒｏｄｕｃｔアルゴリズムについて説明したが、Ｓｕｍ−Ｐｒｏｄｕｃｔアルゴリズムに替えて、Ｍｉｎ−Ｓｕｍアルゴリズム、Ｎｏｒｍａｌｉｚｅｄ＿ＢＰアルゴリズム、Ｏｆｆｓｅｔ＿ＢＰアルゴリズム、δ−Ｍｉｎアルゴリズム、Ｓｈｕｆｆｌｅｄ＿ＢＰアルゴリズム、または巡回近似ｍｉｎアルゴリズムのいずれを用いても本実施形態と同様の効果が得られる。
【００４１】
今回開示された実施形態は、全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【００４２】
１  復号部、２  信頼度可変部、１１  ＬＬＲ算出部、１２  確率情報算出結果保持部、１３  行処理部、１４  列処理部、１５  制御部、１６  復号結果判定部。
【図１】
2010245736.tif 000008
【図２】
2010245736.tif 000009