(57)【要約】【課題】ＬＤＰＣ符号のｍｉｎ−ｓｕｍ復号において、良好な復号性能を確保しつつ演算回数を低減する技術を提供する。【解決手段】推定部４０は、入力したデータをもとに、通信路の状況を推定する。テーブル記憶部４２は、正規化定数パターンを複数種類記憶する。選択部４４は、推定部４０において推定した通信路の状況に応じて、テーブル記憶部４２に記憶した複数種類の正規化定数パターンのうちのいずれかを選択する。ＬＤＰＣ復号部５０は、選択部４４において選択した正規化定数パターンを使用して、入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行する。【選択図】図３
2013070133.tif 000002
【特許請求の範囲】
【請求項１】
通信路を介して、符号化がなされたデータを入力する入力部と、
前記入力部において入力したデータをもとに、通信路の状況を推定する推定部と、
ｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数が複数まとめられた正規化定数パターンを複数種類記憶する記憶部と、
前記推定部において推定した通信路の状況に応じて、前記記憶部に記憶した複数種類の正規化定数パターンのうちのいずれかを選択する選択部と、
前記選択部において選択した正規化定数パターンを使用して、前記入力部において入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行する復号部とを備え、
前記選択部は、選択した正規化定数パターンに含まれる複数の正規化定数のうちの１つの正規化定数を、前記復号部において実行されるｍｉｎ−ｓｕｍアルゴリズムの繰り返し回数に応じて随時切りかえながら選択し、
前記復号部は、前記選択部が切りかえながら選択した正規化定数を使用することを特徴とする復号装置。
【請求項２】
通信路を介して、符号化がなされたデータを入力する入力部と、
前記入力部において入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行する復号部と、
前記復号部における復号結果の品質を導出する導出部と、
前記導出部において導出した品質をもとに、予め規定した複数の正規化定数であって、かつ前記復号部において実行されるｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数のうちのいずれかを選択する選択部とを備え、
前記復号部は、前記選択部が選択した正規化定数を使用することを特徴とする復号装置。
【請求項３】
前記導出部は、前記復号部におけるｍｉｎ−ｓｕｍアルゴリズムの繰り返し毎に、復号結果の品質を導出し、
前記選択部は、前記復号部におけるｍｉｎ−ｓｕｍアルゴリズムの繰り返し毎に、正規化定数のうちのいずれかを選択することを特徴とする請求項２に記載の復号装置。
【請求項４】
前記入力部において入力したデータをもとに、通信路の状況を推定する推定部をさらに備え、
前記選択部は、前記復号部がｍｉｎ−ｓｕｍアルゴリズムを最初に実行する際、前記推定部において推定した通信路の状況に応じて、正規化定数のうちのいずれかを選択することを特徴とする請求項２または３に記載の復号装置。
【請求項５】
前記導出部は、復号結果の品質として、ｍｉｎ−ｓｕｍアルゴリズムでの事後値比をもとにした各ビットの信頼度の絶対値平均を導出することを特徴とする請求項２から４のいずれかに記載の復号装置。
【請求項６】
前記導出部は、復号結果の品質として、誤り率を導出することを特徴とする請求項２から４のいずれかに記載の復号装置。
【請求項７】
通信路を介して、符号化がなされたデータを入力するステップと、
入力したデータをもとに、通信路の状況を推定するステップと、
ｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数が複数まとめられた正規化定数パターンを複数種類記憶したメモリから、推定した通信路の状況に応じて、複数種類の正規化定数パターンのうちのいずれかを選択するステップと、
選択した正規化定数パターンを使用して、入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップとを備え、
前記選択するステップは、選択した正規化定数パターンに含まれる複数の正規化定数のうちの１つの正規化定数を、ｍｉｎ−ｓｕｍアルゴリズムの繰り返し回数に応じて随時切りかえながら選択し、
前記ｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップは、前記選択するステップが切りかえながら選択した正規化定数を使用することを特徴とする復号方法。
【請求項８】
通信路を介して、符号化がなされたデータを入力するステップと、
入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップと、
復号結果の品質を導出するステップと、
導出した品質をもとに、予め規定した複数の正規化定数であって、かつｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数のうちのいずれかを選択するステップとを備え、
前記ｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップは、前記選択するステップが選択した正規化定数を使用することを特徴とする復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号技術に関し、特にＬＤＰＣによる符号化がなされたデータを復号する復号装置および復号方法に関する。
【背景技術】
【０００２】
近年、低Ｓ／Ｎの伝送路でも強力な誤り訂正能力をもつ誤り訂正符号として、ＬＤＰＣ（Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ  Ｃｏｄｅ）が注目され、多くの分野で適用されている。ＬＤＰＣでは、送信側において、疎な検査行列をもとに生成される符号化行列によって、データが符号化される。ここで、疎な検査行列とは、要素が１または０からなる行列であって、１の数が少ない行列である。一方、受信側において、検査行列をもとにして、データの復号とパリティ検査とがなされる。特に、ＢＰ（Ｂｅｌｉｅｆ  Ｐｒｏｐａｇａｔｉｏｎ）法等による繰り返し復号によって復号性能が向上することが知られている。
【０００３】
この復号では、検査行列の行方向に復号するチェックノード処理と、列方向に復号する変数ノード処理とを繰り返し実行する。チェックノード処理のひとつとして、Ｇａｌｌａｇｅｒ関数や双曲線関数を用いるｓｕｍ−ｐｒｏｄｕｃｔ復号が知られている。また、ｓｕｍ−ｐｒｏｄｕｃｔ復号を簡略化した復号方法が、ｍｉｎ−ｓｕｍ復号である。ｍｉｎ−ｓｕｍ復号は、複雑な関数を用いることなく、比較演算、和演算等の簡単な処理だけでチェックノード処理を行うことが可能であり、処理の簡略化、高速化のために広く用いられている。ｍｉｎ−ｓｕｍ復号でのチェックノード処理で外部値を更新する際の正規化補正において、最適な正規化定数を設定することによって、ｓｕｍ−ｐｒｏｄｕｃｔ復号に近い特性が得られることが知られている。
【０００４】
この正規化定数は検査行列や符号化率などの違いによって最適値が変わってくるので、システム毎に予め最適となる値を求めておいて使用するのが一般的である（例えば、特許文献１参照）。ＬＤＰＣとは異なる符号方式を繰り返し復号する場合、繰り返し復号回数に応じて復号演算の重み係数を変えるような方式が提案されている。復号演算の重み係数を変えることによって、そのときの状態に適した復号が実現される（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−５６５９７号公報
【特許文献２】特開平７−２０２７２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ｍｉｎ−ｓｕｍ復号の特性は正規化定数に大きく依存している。そこで、正規化定数を繰り返し復号回数に応じて変化させても、正規化定数の変化が、通信路の状態に適さないときに特性が悪化してしまう。そのため、ｍｉｎ−ｓｕｍ復号においては正規化定数として固定値が使用されていた。
【０００７】
本発明はこうした状況に鑑みてなされたものであり、その目的は、ＬＤＰＣ符号のｍｉｎ−ｓｕｍ復号において、良好な復号性能を確保しつつ演算回数を低減する技術を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある態様の復号装置は、通信路を介して、符号化がなされたデータを入力する入力部と、入力部において入力したデータをもとに、通信路の状況を推定する推定部と、ｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数が複数まとめられた正規化定数パターンを複数種類記憶する記憶部と、推定部において推定した通信路の状況に応じて、記憶部に記憶した複数種類の正規化定数パターンのうちのいずれかを選択する選択部と、選択部において選択した正規化定数パターンを使用して、入力部において入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行する復号部とを備える。選択部は、選択した正規化定数パターンに含まれる複数の正規化定数のうちの１つの正規化定数を、復号部において実行されるｍｉｎ−ｓｕｍアルゴリズムの繰り返し回数に応じて随時切りかえながら選択し、復号部は、選択部が切りかえながら選択した正規化定数を使用する。
【０００９】
この態様によると、ｍｉｎ−ｓｕｍアルゴリズムにおいて、通信路の状況に応じた正規化定数を選択しながら繰り返し復号を実行するので、良好な復号性能を確保しつつ演算回数を低減できる。
【００１０】
本発明の別の態様もまた、復号装置である。この装置は、通信路を介して、符号化がなされたデータを入力する入力部と、入力部において入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行する復号部と、復号部における復号結果の品質を導出する導出部と、導出部において導出した品質をもとに、予め規定した複数の正規化定数であって、かつ復号部において実行されるｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数のうちのいずれかを選択する選択部とを備える。復号部は、選択部が選択した正規化定数を使用する。
【００１１】
この態様によると、ｍｉｎ−ｓｕｍアルゴリズムにおいて、復号結果の品質に応じた正規化定数を選択しながら繰り返し復号を実行するので、良好な復号性能を確保しつつ演算回数を低減できる。
【００１２】
導出部は、復号部におけるｍｉｎ−ｓｕｍアルゴリズムの繰り返し毎に、復号結果の品質を導出し、選択部は、復号部におけるｍｉｎ−ｓｕｍアルゴリズムの繰り返し毎に、正規化定数のうちのいずれかを選択してもよい。この場合、繰り返し毎に正規化定数のうちのいずれかを選択するので、正規化定数を詳細に設定できる。
【００１３】
入力部において入力したデータをもとに、通信路の状況を推定する推定部をさらに備えてもよい。選択部は、復号部がｍｉｎ−ｓｕｍアルゴリズムを最初に実行する際、推定部において推定した通信路の状況に応じて、正規化定数のうちのいずれかを選択してもよい。この場合、ｍｉｎ−ｓｕｍアルゴリズムを最初に実行する際、通信路の状況に応じて正規化定数のうちのいずれかを選択するので、通信路の状況に適した初期値を使用できる。
【００１４】
導出部は、復号結果の品質として、ｍｉｎ−ｓｕｍアルゴリズムでの事後値比をもとにした各ビットの信頼度の絶対値平均を導出してもよい。この場合、事後値比をもとにした各ビットの信頼度の絶対値平均を導出するので、復号結果の品質を高精度に導出できる。
【００１５】
導出部は、復号結果の品質として、誤り率を導出してもよい。この場合、誤り率を導出するので、復号結果の品質を高精度に導出できる。
【００１６】
本発明のさらに別の態様は、復号方法である。この方法は、通信路を介して、符号化がなされたデータを入力するステップと、入力したデータをもとに、通信路の状況を推定するステップと、ｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数が複数まとめられた正規化定数パターンを複数種類記憶したメモリから、推定した通信路の状況に応じて、複数種類の正規化定数パターンのうちのいずれかを選択するステップと、選択した正規化定数パターンを使用して、入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップとを備える。選択するステップは、選択した正規化定数パターンに含まれる複数の正規化定数のうちの１つの正規化定数を、ｍｉｎ−ｓｕｍアルゴリズムの繰り返し回数に応じて随時切りかえながら選択し、ｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップは、選択するステップが切りかえながら選択した正規化定数を使用する。
【００１７】
本発明のさらに別の態様もまた、復号方法である。この方法は、通信路を介して、符号化がなされたデータを入力するステップと、入力したデータに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップと、復号結果の品質を導出するステップと、導出した品質をもとに、予め規定した複数の正規化定数であって、かつｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数のうちのいずれかを選択するステップとを備える。ｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行するステップは、選択するステップが選択した正規化定数を使用する。
【００１８】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１９】
本発明によれば、ＬＤＰＣ符号のｍｉｎ−ｓｕｍ復号において、良好な復号性能を確保しつつ演算回数を低減できる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施例１に係る通信システムの構成を示す図である。
【図２】図１のＬＤＰＣ符号化部、復号部において使用される検査行列を示す図である。
【図３】図１の復号部の構成を示す図である。
【図４】図３のテーブル記憶部に記憶された正規化定数テーブルのデータ構造を示す図である。
【図５】図３の復号部の動作を模式的に表したタナーグラフを示す図である。
【図６】図３の復号部における外部値比の概要を示す図である。
【図７】図３の復号部における事前値比の概要を示す図である。
【図８】図１の受信装置によるＣＮＲ＝１５．５ｄＢでのＢＥＲ特性を示す図である。
【図９】図１の受信装置によるＣＮＲ＝１８．０ｄＢでのＢＥＲ特性を示す図である。
【図１０】図３の復号部による復号手順を示すフローチャートである。
【図１１】本発明の実施例２に係る復号部の構成を示す図である。
【図１２】図１１のテーブル記憶部に記憶された正規化定数テーブルのデータ構造を示す図である。
【図１３】図１１の復号部による復号手順を示すフローチャートである。
【図１４】本発明の実施例３に係る復号部の構成を示す図である。
【図１５】図１４のテーブル記憶部に記憶された正規化定数テーブルのデータ構造を示す図である。
【図１６】図１４の復号部による復号手順を示すフローチャートである。
【発明を実施するための形態】
【００２１】
（実施例１）
本発明を具体的に説明する前に、まず概要を述べる。本発明の実施例１は、ＬＤＰＣ符号化を実行する送信装置と、送信装置において符号化されたデータ（以下、「符号化データ」という）に対して検査行列をもとに繰り返し復号を実行する受信装置とを含む通信システムに関する。特に、受信装置は、ｍｉｎ−ｓｕｍアルゴリズムを実行する。前述のごとく、ｍｉｎ−ｓｕｍ復号は正規化定数への依存度が大きいので、正規化定数を繰り返し回数に応じて変更させる場合、高精度な正規化定数が必要とされる。そのため、これまでは正規化定数として固定値が使用されていた。しかしながら、良好な復号性能を確保しつつ演算回数を低減するためには、正規化定数を繰り返し回数に応じて変更させることが望ましい。
【００２２】
これに対応するために、本実施例に係る受信装置は、次の処理を実行する。受信装置は、複数の正規化定数をまとめた正規化定数パターンを複数種類予め記憶する。受信装置は、受信した信号の通信路の状態として、ＣＮＲ（Ｃａｒｒｉｅｒ ｔｏ Ｎｏｉｓｅ Ｒａｔｉｏ）を測定し、測定結果をもとにいずれかの正規化定数パターンを選択する。受信装置は、正規化ｍｉｎ−ｓｕｍアルゴリズムの繰り返し復号の繰り返し回数に応じて、選択した正規化定数パターンに含まれた複数の正規化定数を順に選択して使用する。
【００２３】
図１は、本発明の実施例１に係る通信システム１００の構成を示す。通信システム１００は、送信装置１０、受信装置１２を含む。送信装置１０は、情報データ生成部２０、ＬＤＰＣ符号化部２２、変調部２４を含む。受信装置１２は、復調部２６、復号部２８、情報データ出力部３０を含む。
【００２４】
情報データ生成部２０は、送信すべきデータを取得し、情報データを生成する。なお、取得したデータがそのまま情報データとされてもよい。情報データ生成部２０は、情報データをＬＤＰＣ符号化部２２へ出力する。ＬＤＰＣ符号化部２２は、情報データ生成部２０から、情報データを入力する。ＬＤＰＣ符号化部２２は、ＬＤＰＣでの検査行列をもとにしたパリティ（以下、「ＬＤＰＣパリティ」という）を情報データに付加する。ＬＤＰＣパリティを付加した情報データが、前述の符号化データに相当する。ＬＤＰＣ符号化部２２は、符号化データを変調部２４に出力する。図２は、ＬＤＰＣ符号化部２２、復号部２８において使用される検査行列を示す。図２は、ＬＤＰＣ符号化部２２において使用される検査行列を示す。検査行列は、７行１８列であるとするが、これに限定されるものではない。図１に戻る。
【００２５】
変調部２４は、ＬＤＰＣ符号化部２２から符号化データを入力する。変調部２４は、符号化データを変調する。変調方式として、ＰＳＫ（Ｐｈａｓｅ  Ｓｈｉｆｔ  Ｋｅｙｉｎｇ）、ＦＳＫ（Ｆｒｅｑｕｅｎｃｙ  Ｓｈｉｆｔ  Ｋｅｙｉｎｇ）等が使用される。変調部２４は、変調した符号化データを変調信号として送信する。
【００２６】
復調部２６は、変調部２４から通信路、例えば無線伝送路を介して変調信号を受信する。復調部２６は、変調信号を復調する。復調には公知の技術が使用されればよいので、ここでは説明を省略する。復調部２６は、復調結果（以下、「復調データ」という）を復号部２８へ出力する。
【００２７】
復号部２８は、復調部２６からの復調データを入力する。復号部２８は、復調データに対して、ＬＤＣＰでの検査行列による復号処理を繰り返し実行する。復号処理として、例えば、ｍｉｎ−ｓｕｍアルゴリズムが実行される。ｍｉｎ−ｓｕｍアルゴリズムは、次の手順で実行される。
１．初期化：事前値比を初期化し、最大復号繰り返し回数を設定する。
２．チェックノード処理：検査行列の行方向に対して外部値比を更新する。
３．変数ノード処理：検査行列の列方向に対して事前値比を更新する。
４．一時推定語を計算する。
【００２８】
これらの手順の詳細な説明は省略するが、後述のチェックノード処理において、正規化定数が使用される。復号部２８は、復号結果（以下、「復号データ」という）を情報データ出力部３０へ出力する。情報データ出力部３０は、復号部２８からの復号データを入力する。情報データ出力部３０は、復号データをもとに情報データを生成する。なお、復号データがそのまま情報データとされてもよい。
【００２９】
この構成は、ハードウエア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００３０】
図３は、復号部２８の構成を示す。復号部２８は、推定部４０、テーブル記憶部４２、選択部４４、フレーム構成部４６、フレームデータ記憶部４８、ＬＤＰＣ復号部５０、外符号復号部５２を含む。
【００３１】
フレーム構成部４６は、図示しない復調部２６からの復調データを入力する。復調データは、通信路を介してのＬＤＰＣ符号化がなされたデータといえる。フレーム構成部４６は、復調データに含まれたフレーム同期信号を検出する。フレーム構成部４６は、フレーム同期信号をもとに、復調データによって形成されるフレームの単位を特定する。例えば、フレームの先頭部分にフレーム同期信号が配置され、かつフレームの期間が固定長である場合、フレーム構成部４６は、フレーム同期信号を検出してから固定長の期間をフレームと特定する。フレーム構成部４６は、フレーム単位の記憶をフレームデータ記憶部４８に指示する。フレームデータ記憶部４８は、フレーム構成部４６と同様に復調データを入力する。フレームデータ記憶部４８は、フレーム構成部４６からの指示に応じて、フレーム単位で復調信号を記憶する。
【００３２】
推定部４０は、復調データをもとに、通信路の状況を推定する。ここでは、通信路値として、例えばＣＮＲが測定され、このような通信路値は１フレーム分の復調データの分散量に相当する。推定部４０は測定したＣＮＲ値を選択部４４に出力する。
【００３３】
テーブル記憶部４２は、ｍｉｎ−ｓｕｍアルゴリズムでのチェックノード処理において事前値比をもとに外部値比を更新させる際に使用すべき正規化定数が複数まとめられた正規化定数パターンを複数種類記憶する。図４は、テーブル記憶部４２に記憶された正規化定数テーブルのデータ構造を示す。図示のごとく、通信路値欄２００、正規化定数パターン番号欄２０２、正規化定数パターン欄２０４が含まれる。通信路値のＣＮＲ値が１４ｄＢ未満の場合には、正規化定数パターン番号１の正規化定数パターンが指定され、１４ｄＢ以上で１７ｄＢ未満の場合には、正規化定数パターン番号２の正規化定数パターンが指定され、１７ｄＢ以上の場合には、正規化定数パターン番号３の正規化定数パターンが指定される。さらに、各正規化定数パターンには、１０個の正規化定数が含まれている。図４における左端の正規化定数が、最初の繰り返し復号に使用され、右端の正規化定数が、最後の繰り返し復号に使用される。そのため、各正規化定数パターンにおいて、繰り返し回数が進むほど、正規化定数の値が大きくなる。図３に戻る。
【００３４】
選択部４４は、推定部４０において測定したＣＮＲ値に応じて、テーブル記憶部４２に記憶した複数種類の正規化定数パターンのうちのいずれかを選択する。例えば、推定部４０においてＣＮＲ値が１８ｄＢと測定された場合、選択部４４は、テーブル記憶部４２から正規化定数パターン番号３の正規化定数パターンを選択する。その結果、｛０．７０，０．７５，０．８５，０．９０，０．９０，０．９０，０．９０，０．９０，０．９０，０．９０｝の正規化定数が選択される。ここで、選択部４４は、ＬＤＰＣ復号部５０において実行されるｍｉｎ−ｓｕｍアルゴリズムの繰り返し回数に応じて、選択した正規化定数パターンの中から、正規化定数を切りかえながら選択する。選択部４４は、選択した正規化定数をＬＤＰＣ復号部５０に出力する。
【００３５】
ＬＤＰＣ復号部５０は、フレームデータ記憶部４８からの復調データを入力するとともに、選択部４４からの正規化定数を入力する。ＬＤＰＣ復号部５０は、選択部４４において選択した正規化定数パターンを使用して、復調データに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行する。特に、ＬＤＰＣ復号部５０は、選択部４４が切りかえながら選択した正規化定数を使用する。例えば、ＬＤＰＣ復号部５０は、繰り返し復号の１回目に正規化定数「０．７０」を使用し、２回目に正規化定数「０．７５」を使用し、３回目に正規化定数「０．８５」を使用する。つまり、ＬＤＰＣ復号部５０は、正規化定数パターンの先頭から順番に繰り返し復号を行う毎に、正規化定数を変更しながら復号を行っていく。
【００３６】
ここでは、ｍｉｎ−ｓｕｍアルゴリズムを説明する。図５は、復号部２８の動作を模式的に表したタナーグラフを示す。タナーグラフでは、ｂ１からｂ１８が変数ノードと呼ばれ、ｃ１からｃ７がチェックノードと呼ばれる。ここでは、変数ノードの数をｎとし、ｂｎをｎ番目の変数ノードとする。また、チェックノードの数をｍとし、ｃｍをｍ番目のチェックノードとする。変数ノードｂ１からｂ１８には、図３のフレームデータ記憶部４８に蓄えられたメッセージビットｍ１からｍ１１とパリティビットｐ１からｐ７が接続されている。
【００３７】
チェックノード処理では、チェックノードにつながる変数ノードとの間で、ｃｍからｂｎへの外部値比αｍｎが更新される。αｍｎの計算は、検査行列Ｈｍｎ＝１を満たすすべての組（ｍ、ｎ）について、次のようになされる。
αｍｎ＝ａ（（Πｓｉｇｎ（βｍｎ’））・ｍｉｎ｜βｍｎ’｜・・・（１）
ここで、ｎ’はＡ（ｍ）＼ｎ  ：Ａ（ｍ）はチェックノードｍに接続する変数ノード集合で、＼ｎはｎを含まない差集合を示す。また、ｓｉｇｎはシグネチャ関数、ｍｉｎ｜βｍｎ’｜は絶対値の最小値選択を示す。ここで、ａは正規化定数である。図６は、復号部２８における外部値比の概要を示す。外部値比α１１は、β１１’から導出される。図３に戻る。
【００３８】
変数ノード処理では、αｍｎから変数ノードにつながるチェックノードとの間で、ｂｎからｃｍへの事前値比βｍｎが更新される。βｍｎの計算は、検査行列Ｈｍｎ＝１を満たすすべての組（ｍ、ｎ）について、次のようになされる。
βｍｎ＝Σαｍ’ｎ＋λｎ・・・・（２）
ここで、λｎは、メッセージビットｍ１からｍ１１とパリティビットｐ１からｐ７に等しい。また、ｍ’はＢ（ｎ）＼ｍ：Ｂ（ｎ）は変数ノードｎに接続するチェックノード集合で、＼ｍはｍを含まない差集合を示す。図７は、復号部２８における事前値比の概要を示す。事前値比β１１は、α１’１から導出される。図３に戻る。
【００３９】
チェックノード処理、変数ノード処理を行った後、ＬＤＰＣ復号部５０は、式（３）、（４）を用いて一時推定語を計算し、パリティ検査を実行する。パリティ検査が条件を満たすか、予め設定した最大繰り返し復号回数になるまで繰り返し復号処理がなされることによって、ＬＤＰＣ復号は終了する。
Ｌｎ＝Σαｍ’ｎ＋λｎ・・・・（３）
Ｘｎ＝０（Ｌｎ≧０）  ｏｒ  １（Ｌｎ＜０）・・・・（４）
なお、前述のごとく、チェックノード処理における正規化定数ａが、繰り返し回数に応じて変更されていく。ＬＤＰＣ復号部５０は、復号結果を外符号復号部５２に出力する。外符号復号部５２は、例えばＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）等の外符号復号を行った後、図１の情報データ出力部３０に出力する。
【００４０】
図８は、受信装置１２によるＣＮＲ＝１５．５ｄＢでのＢＥＲ特性を示す。ここでは、図示のごとく、正規化定数を「０．６５」に固定した場合と、正規化定数テーブルを使用した場合とが比較される。正規化定数テーブルを使用した場合、伝送路の状態が悪くＣＮＲ値が低いときに、繰り返し復号の最初に小さい値の正規化定数を使用することによって、外部値の更新量を抑えながら復号し、後半で大きい値の正規化定数を使用することによって、収束度が高められる。その結果、固定の正規化定数を使用した場合よりも、正規化定数テーブルを使用した場合の方において、特性が向上する。
【００４１】
図９は、受信装置１２によるＣＮＲ＝１８．０ｄＢでのＢＥＲ特性を示す。ここでも、図示のごとく、正規化定数を「０．６５」に固定した場合と、正規化定数テーブルを使用した場合とが比較される。正規化定数テーブルを使用した場合、伝送路の状態がよくＣＮＲ値が高いときに、最初から正規化定数を大きめな値に設定し、繰り返し回数の増加とともに、その値をさらに大きくしながら復号がなされる。その結果、固定の正規化定数を使用した場合よりも、正規化定数テーブルを使用した場合の方において、特性が向上する。
【００４２】
以上の構成による通信システム１００の動作を説明する。図１０は、復号部２８による復号手順を示すフローチャートである。推定部４０は、データ受信時の通信路値（ＣＮＲ）を計算する（Ｓ１０）。フレームデータ記憶部４８が１フレーム分のデータを受信中であれば（Ｓ１２のＹ）、ステップ１０に戻る。フレームデータ記憶部４８が１フレーム分のデータを受信中でなければ（Ｓ１２のＮ）、選択部４４は、推定部４０でのデータ受信時の通信路値（ＣＮＲ値）を読み込む（Ｓ１４）。
【００４３】
ＣＮＲが１７．０ｄＢ以上でなく（Ｓ１６のＮ）、１４．０ｄＢ以上でなければ（Ｓ１８のＮ）、選択部４４は、正規化定数パターン番号１の正規化定数パターンを読み込む（Ｓ２０）。１４．０ｄＢ以上であれば（Ｓ１８のＹ）、選択部４４は、正規化定数パターン番号２の正規化定数パターンを読み込む（Ｓ２２）。ＣＮＲが１７．０ｄＢ以上であれば（Ｓ１６のＹ）、選択部４４は、正規化定数パターン番号３の正規化定数パターンを読み込む（Ｓ２４）。選択部４４は、読み込んだ正規化定数パターンを正規化定数毎にＬＤＰＣ復号部５０に出力する（Ｓ２６）。ＬＤＰＣ復号部５０は、正規化定数を変更しながら復号を行っていく（Ｓ２８）。
【００４４】
本発明の実施例によれば、ｍｉｎ−ｓｕｍアルゴリズムにおいて、ＣＮＲ値に応じた正規化定数パターンに含まれた正規化定数を選択しながら繰り返し復号を実行するので、良好な復号性能を確保しつつ演算回数を低減できる。また、繰り返し復号を行う毎に正規化定数を変更するので、正規化定数を一定の値で復号を行うよりも良好な性能を確保しつつ、繰り返し復号回数が低減されるので、演算量を削減できる。また、ｍｉｎ−ｓｕｍアルゴリズムにおいて、繰り返し復号回数に応じて正規化定数を変化させて収束度を高め、正規化定数パターンをＣＮＲ値に合わせて選択することによって、良好な性能を確保しつつ、繰り返し復号回数を低減できる。
【００４５】
（実施例２）
本発明の実施例２は、実施例１と同様に、ｍｉｎ−ｓｕｍアルゴリズムを実行する受信装置に関する。実施例１に係る受信装置では、ＣＮＲに応じた正規化定数パターンを選択し、正規化定数パターンにしたがって正規化定数を変化させている。実施例２に係る受信装置も正規化定数を変化させる。しかしながら、その受信装置は、繰り返し復号の１回が終了する毎に、各ビットの信頼度の絶対値平均（以下、「信頼度」という）を導出し、信頼度に応じて次回の正規化定数を決定する。つまり、信頼度をもとに、繰り返し復号の１回毎に正規化定数が決定される。実施例２に係る通信システム１００は、図１と同様のタイプである。ここでは、差異を中心に説明する。
【００４６】
図１１は、本発明の実施例２に係る復号部２８の構成を示す。復号部２８は、テーブル記憶部４２、選択部４４、ビット信頼度導出部５４、フレーム構成部４６、フレームデータ記憶部４８、ＬＤＰＣ復号部５０、外符号復号部５２を含む。
【００４７】
ビット信頼度導出部５４は、ＬＤＰＣ復号部５０における復号結果の品質を導出する。ここで、ビット信頼度導出部５４は、ｍｉｎ−ｓｕｍアルゴリズムの繰り返し毎に、復号結果の品質を導出する。特に、復号結果の品質として、ｍｉｎ−ｓｕｍアルゴリズムでの事後値比をもとにした各ビットの信頼度の絶対値平均、つまり前述の信頼度が導出される。ビット信頼度導出部５４での処理をさらに詳細に説明する。ビット信頼度導出部５４は、正規化ｍｉｎ−ｓｕｍアルゴリズムにて一時推定語を計算する際の（３）式の事後値比を使用して、各ビットの信頼度の絶対値平均を復号フレーム単位で次のように導出する。
Ｌａｖｇ＝Σ｜Σαｍ’ｎ＋ λｎ｜／ｎ・・・・（５）
【００４８】
（５）式のビット信頼度の絶対値平均は、推定語の信頼度が高い場合に大きな値となり、推定語の信頼度が低い場合に小さな値となる。このビット信頼度の絶対値平均を繰り返し復号毎に求めることによって、繰り返し復号の各回の復号状態が確認できるようになり、この値に応じて次回復号を行う際に使用する正規化定数が決定される。テーブル記憶部４２は、正規化定数を複数記憶する。図１２は、テーブル記憶部４２に記憶された正規化定数テーブルのデータ構造を示す。図示のごとく、ビット信頼度絶対値平均欄２１０、正規化定数欄２１２が含まれる。このように、ビット信頼度の絶対値平均に応じて使用すべき正規化定数がテーブル化されている。図１１に戻る。
【００４９】
選択部４４は、ビット信頼度導出部５４において導出した信頼度をもとに、テーブル記憶部４２に記憶された複数の正規化定数のうちのいずれかを選択する。ここで、選択部４４は、ＬＤＰＣ復号部５０におけるｍｉｎ−ｓｕｍアルゴリズムの繰り返し毎に、正規化定数のうちのいずれかを選択する。選択部４４は、選択した正規化定数をＬＤＰＣ復号部５０に出力する。ＬＤＰＣ復号部５０は、選択部４４が選択した正規化定数を使用して、復号データに対してｍｉｎ−ｓｕｍアルゴリズムを繰り返し実行する。
【００５０】
以上の構成による通信システム１００の動作を説明する。図１３は、復号部２８による復号手順を示すフローチャートである。ＬＤＰＣ復号部５０は、正規化定数に初期値「０．６５」を設定して復号を行う（Ｓ４０）。ビット信頼度導出部５４は、ビット信頼度の絶対値平均を計算する（Ｓ４２）。選択部４４は、ビット信頼度の絶対値平均を読み込む（Ｓ４４）。絶対値の平均が１４．０以上でなく（Ｓ４６のＮ）、１０．０以上でなく（Ｓ４８のＮ）、６．０以上でなければ（Ｓ５０のＮ）、選択部４４は、正規化定数「０．５５」を読み込む（Ｓ５２）。
【００５１】
６．０以上であれば（Ｓ５０のＹ）、選択部４４は、正規化定数「０．６０」を読み込む（Ｓ５４）。１０．０以上であれば（Ｓ４８のＹ）、選択部４４は、正規化定数「０．７０」を読み込む（Ｓ５６）。１４．０以上であれば（Ｓ４６のＹ）、選択部４４は、正規化定数「０．８０」を読み込む（Ｓ５８）。選択部４４は、読み込んだ正規化定数をＬＤＰＣ復号部５０に出力する（Ｓ６０）。ＬＤＰＣ復号部５０は、正規化定数を変更して復号を行う（Ｓ６２）。繰り返し復号中であれば（Ｓ６４のＹ）、ステップ４２に戻る。繰り返し復号中でなければ（Ｓ６４のＮ）、処理は終了される。
【００５２】
本発明の実施例によれば、ｍｉｎ−ｓｕｍアルゴリズムにおいて、信頼度に応じた正規化定数を選択しながら繰り返し復号を実行するので、良好な復号性能を確保しつつ演算回数を低減できる。また、繰り返し毎に正規化定数のうちのいずれかを選択するので、正規化定数を詳細に設定できる。また、事後値比をもとにして、各ビットの信頼度の絶対値平均を導出するので、復号結果の品質を高精度に導出できる。また、通信路の状況が悪いためにビット信頼度の絶対値平均が低い場合に、小さめな正規化定数を使って復号を行っており、通信路の状況がよいためにビット信頼度の絶対値平均が高い場合に、大きめの正規化定数を使って復号を行うので、繰り返し復号の収束度を向上できる。
【００５３】
（実施例３）
本発明の実施例３は、これまで同様に、ｍｉｎ−ｓｕｍアルゴリズムを実行する受信装置に関する。実施例２に係る受信装置は、繰り返し復号の１回が終了する毎に、信頼度を導出し、信頼度に応じて次回の正規化定数を決定している。一方、実施例３に係る受信装置は、信頼度の代わりにビット誤り率を導出して、正規化定数を決定するためにビット誤り率を使用する。実施例３に係る通信システム１００は、図１と同様のタイプである。ここでは、差異を中心に説明する。
【００５４】
図１４は、本発明の実施例３に係る復号部２８の構成を示す。復号部２８は、テーブル記憶部４２、選択部４４、誤り率導出部５６、フレーム構成部４６、フレームデータ記憶部４８、ＬＤＰＣ復号部５０、外符号復号部５２を含む。
【００５５】
誤り率導出部５６は、復号結果の品質として、誤り率を導出する。ＬＤＰＣ復号部５０での復号前のデータと復号後のデータを比較し、復号の前後でデータが異なる誤り訂正ビット数を導出し、次のようにビット誤り率を計測する。
ビット誤り率＝誤り訂正ビット数／１フレーム分のビット数・・・・（６）
なお、ビット誤り率の計測は復号毎になされ、誤り率導出部５６は、その結果を選択部４４に出力する。
【００５６】
テーブル記憶部４２は、前述のごとく、正規化定数を複数記憶する。図１５は、テーブル記憶部４２に記憶された正規化定数テーブルのデータ構造を示す。図示のごとく、ビット誤り率欄２２０、正規化定数欄２２２が含まれる。このように、ビット誤り率に応じて使用すべき正規化定数がテーブル化されている。図１４に戻る。選択部４４は、誤り率導出部５６において導出したビット誤り率をもとに、テーブル記憶部４２に記憶された複数の正規化定数のうちのいずれかを選択する。
【００５７】
以上の構成による通信システム１００の動作を説明する。図１６は、復号部２８による復号手順を示すフローチャートである。ＬＤＰＣ復号部５０は、正規化定数に初期値「０．６５」を設定して復号を行う（Ｓ８０）。誤り率導出部５６は、ビット誤り率（ＢＥＲ）を計測する（Ｓ８２）。選択部４４は、ビット誤り率を読み込む（Ｓ８４）。ＢＥＲが１．０Ｅ−２以上でなく（Ｓ８６のＮ）、１．０Ｅ−３以上でなく（Ｓ８８のＮ）、１．０Ｅ−４以上でなければ（Ｓ９０のＮ）、選択部４４は、正規化定数「０．８０」を読み込む（Ｓ９２）。
【００５８】
１．０Ｅ−４以上であれば（Ｓ９０のＹ）、選択部４４は、正規化定数「０．７０」を読み込む（Ｓ９４）。１．０Ｅ−３以上であれば（Ｓ８８のＹ）、選択部４４は、正規化定数「０．６０」を読み込む（Ｓ９６）。１．０Ｅ−２以上であれば（Ｓ８６のＹ）、選択部４４は、正規化定数「０．５５」を読み込む（Ｓ９８）。選択部４４は、読み込んだ正規化定数をＬＤＰＣ復号部５０に出力する（Ｓ１００）。ＬＤＰＣ復号部５０は、正規化定数を変更して復号を行う（Ｓ１０２）。繰り返し復号中であれば（Ｓ１０４のＹ）、ステップ８２に戻る。繰り返し復号中でなければ（Ｓ１０４のＮ）、処理は終了される。
【００５９】
本発明の実施例によれば、誤り率を導出するので、復号結果の品質を高精度に導出できる。また、通信路の状態が悪くビット誤り率が高い場合に小さめな正規化定数を使って復号を行い、通信路の状態がよくビット誤り率が低い場合、あるいは繰り返し復号によってビット誤り率が低くなってきた場合に、大きめの正規化定数を使って復号を行うので、繰り返し復号の収束度を高めることができる。また、良好な性能を確保しつつ、繰り返し復号回数を低減でき、演算量を削減できる。
【００６０】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００６１】
本発明の実施例１から３において、通信システム１００は無線通信システムを前提としているので、送信装置１０および受信装置１２は、無線通信装置に含まれる。しかしながらこれに限らず例えば、通信システム１００は有線通信システムを前提としてもよい。その際、送信装置１０および受信装置１２は、有線通信装置に含まれる。本変形例によれば、本発明をさまざまな装置に適用できる。
【００６２】
本発明の実施例１において、通信路値に対して３種類の正規化定数パターンが設定されている。しかしながらこれに限らず例えば、３種類とは異なった種類数の正規化定数パターンが設定されてもよい。また、ひとつの正規化定数パターンに含まれた正規化定数の数が１０個以外であってもよい。本変形例によれば、通信システム１００の設計の自由度を向上できる。
【００６３】
本発明の実施例２、３において、ビット信頼度の絶対値平均やビット誤り率に対して４種類の正規化定数が設定されている。しかしながらこれに限らず例えば、４種類とは異なった種類数の正規化定数が設定されてもよい。本変形例によれば、通信システム１００の設計の自由度を向上できる。
【００６４】
本発明の実施例２、３において、ＬＤＰＣ復号部５０は、正規化定数の初期値として固定値を使用している。しかしながらこれに限らず例えば、ＬＤＰＣ復号部５０は、通信路の状況に応じた正規化定数を初期値として設定してもよい。例えば、図３の推定部４０が復号部２８に含まれ、推定部４０は、復調データをもとに、ＣＮＲ値を測定する。また、テーブル記憶部４２は、ＣＮＲ値と正規化定数とを対応づけた初期値用のテーブルも記憶し、選択部４４は、推定部４０において測定したＣＮＲ値に応じて、正規化定数のうちのいずれかを選択してもよい。本変形例によれば、ｍｉｎ−ｓｕｍアルゴリズムを最初に実行する際、ＣＮＲ値に応じて正規化定数のうちのいずれかを選択するので、通信路の状況に適した初期値を使用できる。
【符号の説明】
【００６５】
１０  送信装置、  １２  受信装置、  ２０  情報データ生成部、  ２２  ＬＤＰＣ符号化部、  ２４  変調部、  ２６  復調部、  ２８  復号部、  ３０  情報データ出力部、  ４０  推定部、  ４２  テーブル記憶部、  ４４  選択部、  ４６  フレーム構成部、  ４８  フレームデータ記憶部、  ５０  ＬＤＰＣ復号部、  ５２  外符号復号部、  ５４  ビット信頼度導出部、  ５６  誤り率導出部、  １００  通信システム。
【図１】
2013070133.tif 000003
【図２】
2013070133.tif 000004
【図３】
2013070133.tif 000005
【図４】
2013070133.tif 000006
【図５】
2013070133.tif 000007
【図６】
2013070133.tif 000008
【図７】
2013070133.tif 000009
【図８】
2013070133.tif 000010
【図９】
2013070133.tif 000011
【図１０】
2013070133.tif 000012
【図１１】
2013070133.tif 000013
【図１２】
2013070133.tif 000014
【図１３】
2013070133.tif 000015
【図１４】
2013070133.tif 000016
【図１５】
2013070133.tif 000017
【図１６】
2013070133.tif 000018