(57)【要約】【課題】ｓｕｍ−ｐｒｏｄｕｃｔ復号に使用するための通信路値を導出する際の演算量を低減する技術を提供する。【解決手段】フレームデータ記憶部４０は、信路を介して、ＬＤＰＣ符号化がなされたデータを入力する。推定部４８は、入力したデータをもとに、通信路の状況を推定する。選択部５４は、推定した通信路の状況に応じて、予め規定した複数の事前値定数であって、かつ通信路における雑音の程度が反映された事前値定数のうちのいずれかを選択する。尤度導出部４４は、選択した事前値定数をもとに、尤度比を導出する。ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、導出した尤度比を使用して、入力したデータに対してｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する。【選択図】図３
2012080282.tif 000002
【特許請求の範囲】
【請求項１】
通信路を介して、符号化がなされたデータを入力する入力部と、
前記入力部において入力したデータをもとに、通信路の状況を推定する推定部と、
前記推定部において推定した通信路の状況に応じて、予め規定した複数の事前値定数であって、かつ通信路における雑音の程度が反映された事前値定数のうちのいずれかを選択する選択部と、
前記選択部において選択した事前値定数をもとに、尤度比を導出する導出部と、
前記導出部において導出した尤度比を使用して、前記入力部において入力したデータに対してｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する復号部と、
を備えることを特徴とする復号装置。
【請求項２】
前記選択部は、前記推定部において推定される通信路の状況が悪化するほど、大きな値の事前値定数を選択することを特徴とする請求項１に記載の復号装置。
【請求項３】
前記推定部は、通信路の状況が悪化している期間を導出し、
前記選択部は、前記推定部において導出される期間が長くなるほど、大きな値の事前値定数を選択することを特徴とする請求項１に記載の復号装置。
【請求項４】
通信路を介して、符号化がなされたデータを入力するステップと、
入力したデータをもとに、通信路の状況を推定するステップと、
推定した通信路の状況に応じて、予め規定した複数の事前値定数であって、かつ通信路における雑音の程度が反映された事前値定数のうちのいずれかを選択するステップと、
選択した事前値定数をもとに、尤度比を導出するステップと、
導出した尤度比を使用して、入力したデータに対してｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行するステップと、
を備えることを特徴とする復号方法。
【請求項５】
前記選択するステップは、推定される通信路の状況が悪化するほど、大きな値の事前値定数を選択することを特徴とする請求項４に記載の復号方法。
【請求項６】
前記推定するステップは、通信路の状況が悪化している期間を導出し、
前記選択するステップは、導出される期間が長くなるほど、大きな値の事前値定数を選択することを特徴とする請求項４に記載の復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号技術に関し、特にＬＤＰＣによる符号化がなされたデータを復号する復号装置および復号方法に関する。
【背景技術】
【０００２】
近年、低Ｓ／Ｎの伝送路でも強力な誤り訂正能力をもつ誤り訂正符号として、ＬＤＰＣ（Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ  Ｃｏｄｅ）が注目され、多くの分野で適用されている。ＬＤＰＣでは、送信側において、疎な検査行列をもとに生成される符号化行列によって、データが符号化される。ここで、疎な検査行列とは、要素が１または０からなる行列であって、１の数が少ない行列である。一方、受信側において、検査行列をもとにして、データの復号とパリティ検査とがなされる。特に、ＢＰ（Ｂｅｌｉｅｆ  Ｐｒｏｐａｇａｔｉｏｎ）法等による繰り返し復号によって復号性能が向上する。
【０００３】
この復号では、検査行列の行方向に復号するチェックノード処理と、列方向に復号する変数ノード処理とを繰り返し実行する。チェックノード処理のひとつとして、Ｇａｌｌａｇｅｒ関数や双曲線関数を用いるｓｕｍ−ｐｒｏｄｕｃｔ復号が知られている。ｓｕｍ−ｐｒｏｄｕｃｔ復号では、伝送路ノイズの分散値から求まる通信路値を事前値として使用する。また、無線通信の場合、フェージングなどによって受信振幅変動が発生する。このような状況下で通信路値を導出するために、復調結果の硬判定値と受信信号をもとにチャネル推定値が導出される（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−５６５９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
復調結果の硬判定値と受信信号をもとにチャネル推定値を推定する場合、受信したデータシンボルごとに二乗演算が必要になり、演算量が多くなる。通信路値を推定するための演算量が多くなると、処理時間が長くなるとともに、消費電力が大きくなる。処理時間が長くなると、フェージングによる受信振幅変動に追従できなくなり、受信品質が悪化してしまう。そのため、通信路値を導出するための演算量は少ない方が好ましい。
【０００６】
本発明はこうした状況に鑑みてなされたものであり、その目的は、ｓｕｍ−ｐｒｏｄｕｃｔ復号に使用するための通信路値を導出する際の演算量を低減する技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様の復号装置は、通信路を介して、符号化がなされたデータを入力する入力部と、入力部において入力したデータをもとに、通信路の状況を推定する推定部と、推定部において推定した通信路の状況に応じて、予め規定した複数の事前値定数であって、かつ通信路における雑音の程度が反映された事前値定数のうちのいずれかを選択する選択部と、選択部において選択した事前値定数をもとに、尤度比を導出する導出部と、導出部において導出した尤度比を使用して、入力部において入力したデータに対してｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する復号部と、を備える。
【０００８】
この態様によると、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行するために、推定した通信路の状況に応じて、予め規定した複数の事前値定数のうちのいずれかを選択するだけなので、演算量を低減できる。
【０００９】
選択部は、推定部において推定される通信路の状況が悪化するほど、大きな値の事前値定数を選択してもよい。この場合、推定される通信路の状況が悪化するほど、大きな値の事前値定数を選択するので、尤度比の計算に事前値定数を使用できる。
【００１０】
推定部は、通信路の状況が悪化している期間を導出し、選択部は、推定部において導出される期間が長くなるほど、大きな値の事前値定数を選択してもよい。この場合、通信路の状況が悪化している期間に適した事前値定数を使用できる。
【００１１】
本発明の別の態様は、復号方法である。この方法は、通信路を介して、符号化がなされたデータを入力するステップと、入力したデータをもとに、通信路の状況を推定するステップと、推定した通信路の状況に応じて、予め規定した複数の事前値定数であって、かつ通信路における雑音の程度が反映された事前値定数のうちのいずれかを選択するステップと、選択した事前値定数をもとに、尤度比を導出するステップと、導出した尤度比を使用して、入力したデータに対してｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行するステップと、を備える。
【００１２】
選択するステップは、推定される通信路の状況が悪化するほど、大きな値の事前値定数を選択してもよい。
【００１３】
推定するステップは、通信路の状況が悪化している期間を導出し、選択するステップは、導出される期間が長くなるほど、大きな値の事前値定数を選択してもよい。
【００１４】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１５】
本発明によれば、ｓｕｍ−ｐｒｏｄｕｃｔ復号に使用するための通信路値を導出する際の演算量を低減できる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施例１に係る通信システムの構成を示す図である。
【図２】図１のＬＤＰＣ符号化部、復号部において使用される検査行列を示す図である。
【図３】図１の復号部の構成を示す図である。
【図４】図４（ａ）−（ｈ）は、図３の復号部の動作概要を説明する図である。
【図５】図３の復号部の動作を模式的に表したタナーグラフを示す図である。
【図６】図３の復号部における外部値比の概要を示す図である。
【図７】図３の復号部における事前値比の概要を示す図である。
【図８】図１の受信装置による静的状態でのＢＥＲ特性を示す図である。
【図９】図１の受信装置によるフェージング状態でのＢＥＲ特性を示す図である。
【図１０】図３の復号部による復号手順を示すフローチャートである。
【図１１】本発明の実施例２に係る復号部による復号手順を示すフローチャートである。
【図１２】図１２（ａ）−（ｈ）は、本発明の実施例３に係る復号部の動作概要を説明する図である。
【図１３】本発明の実施例３に係る復号部による復号手順を示すフローチャートである。
【図１４】本発明の実施例４に係る復号部による復号手順を示すフローチャートである。
【発明を実施するための形態】
【００１７】
（実施例１）
本発明を具体的に説明する前に、まず概要を述べる。本発明の実施例１は、ＬＤＰＣ符号化を実行する送信装置と、送信装置において符号化されたデータ（以下、「符号化データ」という）に対して検査行列をもとに繰り返し復号を実行する受信装置とを含む通信システムに関する。特に、受信装置は、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する。前述のごとく、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムでは、事前値として通信路値が必要になるが、事前値は少ない演算量で高速に導出される方が望ましい。これに対応するために、本実施例に係る通信システム、特に受信装置は、次のように構成される。
【００１８】
受信装置は、受信した信号をもとに通信路の状況を推定する。ここでは、処理を簡易にするために、通信路の状況として、フェージングの影響が小さい状況（以下、「通常の状況」という）であるか、フェージングの影響が大きい状況（以下、「振幅変動が発生している状況」という）であるかが推定される。一方、受信装置は、２種類の事前値定数を予めメモリに記憶する。ひとつが、通常の状況にて使用すべき事前値定数（以下、「通常用定数」という）であり、もうひとつが、振幅変動が発生している状況にて使用すべき事前値定数（以下、「振幅変動有り用定数」という）である。受信装置は、通常の状況であると推定した場合、メモリから通常用定数を抽出し、通常用定数を使用してｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する。受信装置は、振幅変動が発生している状況であると推定した場合、メモリから振幅変動有り用定数を抽出し、振幅変動有り用定数を使用してｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する。
【００１９】
図１は、本発明の実施例１に係る通信システム１００の構成を示す。通信システム１００は、送信装置１０、受信装置１２を含む。送信装置１０は、情報データ生成部２０、ＬＤＰＣ符号化部２２、変調部２４を含む。受信装置１２は、復調部２６、復号部２８、情報データ出力部３０を含む。
【００２０】
情報データ生成部２０は、送信すべきデータを取得し、情報データを生成する。なお、取得したデータがそのまま情報データとされてもよい。情報データ生成部２０は、情報データをＬＤＰＣ符号化部２２へ出力する。ＬＤＰＣ符号化部２２は、情報データ生成部２０から、情報データを入力する。ＬＤＰＣ符号化部２２は、ＬＤＰＣでの検査行列をもとにしたパリティ（以下、「ＬＤＰＣパリティ」という）を情報データに付加する。ＬＤＰＣパリティを付加した情報データが、前述の符号化データに相当する。ＬＤＰＣ符号化部２２は、符号化データを変調部２４に出力する。図２は、ＬＤＰＣ符号化部２２において使用される検査行列を示す。検査行列Ｈｍｎは、ｍ行ｎ列の行列である。ここでは、説明を明瞭にするために、検査行列Ｈｍｎが３行６列であるとするが、これに限定されるものではない。図１に戻る。
【００２１】
変調部２４は、ＬＤＰＣ符号化部２２から符号化データを入力する。変調部２４は、符号化データを変調する。変調方式として、ＰＳＫ（Ｐｈａｓｅ  Ｓｈｉｆｔ  Ｋｅｙｉｎｇ）、ＦＳＫ（Ｆｒｅｑｕｅｎｃｙ  Ｓｈｉｆｔ  Ｋｅｙｉｎｇ）等が使用される。変調部２４は、変調した符号化データを変調信号として送信する。
【００２２】
復調部２６は、変調部２４から通信路、例えば無線伝送路を介して変調信号を受信する。復調部２６は、変調信号を復調する。復調には公知の技術が使用されればよいので、ここでは説明を省略する。復調部２６は、復調結果（以下、「復調データ」という）を復号部２８へ出力する。また、復調部２６は、ＡＧＣ（Ａｕｔｏｍａｔｉｃ  Ｇａｉｎ  Ｃｏｎｔｒｏｌ）を含み、ＡＧＣによって復調データの振幅が一定値に近づくように制御する。復調部２６は、ＡＧＣ制御電圧も復号部２８へ出力する。ここでは、受信した変調信号の振幅が小さくなると、ＡＧＣ制御電圧が大きくなり、受信した変調信号の振幅が大きくなると、ＡＧＣ制御電圧が小さくなる傾向にある。
【００２３】
復号部２８は、復調部２６からの復調データを入力するとともに、復調部２６からのＡＧＣ制御電圧も入力する。復号部２８は、復調データに対して、ＬＤＣＰでの検査行列による復号処理を繰り返し実行する。復号処理として、例えば、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムが実行される。ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムは、次の手順で実行される。
１．初期化：事前値比を初期化し、最大復号繰り返し回数を設定する。
２．チェックノード処理：検査行列の行方向に対して外部値比を更新する。
３．変数ノード処理：検査行列の列方向に対して事前値比を更新する。
４．一時推定語を計算する。
【００２４】
これらの手順の詳細な説明は省略するが、後述のチェックノード処理において、尤度比が使用される。また、尤度比は通信路値から導出される。復号部２８は、ＡＧＣ制御電圧をもとに通信路値を導出するが、詳細は後述する。復号部２８は、復号結果（以下、「復号データ」という）を情報データ出力部３０へ出力する。情報データ出力部３０は、復号部２８からの復号データを入力する。情報データ出力部３０は、復号データをもとに情報データを生成する。なお、復号データがそのまま情報データとされてもよい。情報データ出力部３０は、外符号復号部を含み、例えばＣＲＣ等の外符号を復号してもよい。
【００２５】
この構成は、ハードウエア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００２６】
図３は、復号部２８の構成を示す。復号部２８は、フレームデータ記憶部４０、フレーム構成部４２、尤度導出部４４、ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６、推定部４８、フェージング発生タイミング記憶部５０、事前値定数記憶部５２、選択部５４を含む。
【００２７】
フレーム構成部４２は、図示しない復調部２６からの復調データを入力する。復調データは、通信路を介してのＬＤＰＣ符号化がなされたデータといえる。フレーム構成部４２は、復調データに含まれたフレーム同期信号を検出する。フレーム構成部４２は、フレーム同期信号をもとに、復調データによって形成されるフレームの単位を特定する。例えば、フレームの先頭部分にフレーム同期信号が配置され、かつフレームの期間が固定長である場合、フレーム構成部４２は、フレーム同期信号を検出してから固定長の期間をフレームと特定する。フレーム構成部４２は、フレーム単位の記憶をフレームデータ記憶部４０に指示する。フレームデータ記憶部４０は、フレーム構成部４２と同様に復調データを入力する。フレームデータ記憶部４０は、フレーム構成部４２からの指示に応じて、フレーム単位で復調信号を記憶する。
【００２８】
推定部４８は、図示しない復調部２６からのＡＧＣ制御電圧を入力する。推定部４８は、フェージングなどによる受信振幅変動の発生有無を監視する。つまり、推定部４８は、受信したデータをもとに、通信路の状況を推定する。推定部４８は、受信振幅変動が発生している期間にわたってＨｉｇｈレベルになり、受信振幅変動が発生していない期間にわたってＬｏｗレベルになるような受信振幅変動判定信号を生成し、これをフェージング発生タイミング記憶部５０へ出力する。
【００２９】
ここでは、図４（ａ）−（ｈ）を使用して推定部４８の処理を説明する。図４（ａ）−（ｈ）は、復号部２８の動作概要を説明する図である。すべてに共通して、横軸が時間を示す。図４（ａ）は、図１の復調部２６にて受信される変調信号を示す。ここでは、ｎフレームから（ｎ＋３）フレームまでを示す。図示のごとく、（ｎ＋１）フレームにおいて振幅はほぼ一定であるが、ｎフレーム、（ｎ＋２）フレーム、（ｎ＋３）フレームにおいて振幅が変動している。図４（ｂ）は、図１の復調部２６から出力される復調信号を示す。前述のごとく、復調部２６にはＡＧＣが備えられているので、復調信号の振幅は、すべてのフレームにおいてほぼ一定になっている。
【００３０】
図４（ｃ）は、図１の復調部２６から出力されるＡＧＣ制御電圧を示す。図４（ａ）において振幅が変動している部分に対応して、図４（ｃ）のｎフレーム、（ｎ＋２）フレーム、（ｎ＋３）フレームではＡＧＣ制御電圧が大きくなっている。推定部４８は、ＡＧＣ制御電圧としきい値とを比較し、ＡＧＣ制御電圧がしきい値よりも大きくなっている場合、受信振幅変動が発生していると判定する。このしきい値は、例えば、フェージングの影響が小さい状況、つまり通常の状況でのＡＧＣ制御電圧に対して６ｄＢ加算した値に設定される。図４（ｄ）は、推定部４８から出力される受信振幅変動判定信号を示す。前述のごとく、受信振幅変動が発生している場合、受信振幅変動判定信号は、Ｈｉｇｈレベルに設定され、受信振幅変動が発生していない場合、受信振幅変動判定信号は、Ｌｏｗレベルに設定される。なお、Ｈｉｇｈレベルの発生期間の最初と最後は、「Ｓ１」、「Ｅ１」のように示される。図４（ｅ）−（ｈ）は、後述する。図３に戻る。
【００３１】
フェージング発生タイミング記憶部５０は、推定部４８からの受信振幅変動判定信号を入力する。フェージング発生タイミング記憶部５０は、受信振幅変動判定信号をもとに、受信振幅変動が発生している期間の開始タイミングと終了タイミングとをフレーム単位でテーブルとして記憶する。ここで、開始タイミングと終了タイミングは、フレーム内のタイミングとして示される。また、複数の開始タイミングと終了タイミングとが存在することもある。さらに、フレーム中に受信振幅変動が発生している期間があれば、「振幅変動有り」の情報がフェージング発生タイミング記憶部５０に記憶され、フレーム中に受信振幅変動が発生している期間がなければ、「振幅変動無し」の情報がフェージング発生タイミング記憶部５０に記憶される。図４（ｅ）は、フェージング発生タイミング記憶部５０に記憶されたテーブルを示す。図４（ｆ）は、各フレームに対応した「振幅変動有り」の情報や「振幅変動無し」の情報を示す。図４（ｇ）−（ｈ）は、後述する。図３に戻る。
【００３２】
事前値定数記憶部５２は、複数の事前値定数を予め記憶する。ここでは、ふたつの事前値定数が記憶されており、ひとつが通常用定数であり、もうひとつが振幅変動有り用定数である。前述のごとく、通常用定数は、通常の状況にて使用すべき事前値定数であり、振幅変動有り用定数は、受信振幅変動が発生している状況にて使用すべき事前値定数である。また、通常用定数は、「０．５」であり、振幅変動有り用定数は、「０．５７」であるとする。つまり、通信路の状況が悪化するほど、事前値定数が大きな値になる。
【００３３】
選択部５４は、フェージング発生タイミング記憶部５０に記憶されたテーブルに応じて、事前値定数記憶部５２に記憶された複数の事前値定数のいずれかを選択して、選択した事前値定数を尤度導出部４４へ出力する。つまり、選択部５４は、推定部４８において推定した通信路の状況に応じて、予め規定した複数の事前値定数であって、かつ通信路における雑音の程度が反映された事前値定数のうちのいずれかを選択する。具体的に説明すると、フェージング発生タイミング記憶部５０のテーブルにおいて受信振幅変動が示されている場合、選択部５４は、事前値定数記憶部５２から振幅変動有り用定数を選択する。一方、フェージング発生タイミング記憶部５０のテーブルにおいて、受信振幅変動が示されていない場合、選択部５４は、事前値定数記憶部５２から通常用定数を選択する。そのため、受信振幅変動が示されている期間にわたって振幅変動有り用定数が選択され、残りの期間にわたって通常用定数が選択される。
【００３４】
尤度導出部４４は、選択部５４において選択した事前値定数をもとに、尤度比を導出する。尤度比の計算は、次のようになされる。
尤度比（λｎ）＝２×受信データ（ｙｎ）／事前値定数（σ２）・・・（１）
ここで、受信データは、復調部２６から出力される復調信号に相当する。このように、振幅変動有りのフレームにおいて、尤度導出部４４は、振幅変動有り用定数と通常用定数とを切りかえながら尤度比を計算する。そのため、受信振幅変動中の受信データに対しては振幅変動有り用定数によって尤度計算がなされる。一方、受信振幅変動無しのフレームにおいて、尤度導出部４４は、通常用定数のみを使用して尤度比を計算する。尤度導出部４４は、尤度比をｓｕｍ−ｐｒｏｄｕｃｔ処理部４６へ出力する。
【００３５】
ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、尤度導出部４４からの尤度比を入力する。ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、復調データに対する尤度比を使用して、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する。図４（ｇ）では、各フレームに対してｓｕｍ−ｐｒｏｄｕｃｔ復号処理が実行されている。このｓｕｍ−ｐｒｏｄｕｃｔ復号処理に使用させるための事前値定数は、図４（ｈ）に示される。フレーム単位での受信振幅変動判定結果にしたがってフェージングなどによる受信振幅変動が検出された場合、フェージング発生タイミング記憶部５０に記憶されている情報をもとに、振幅変動有り用定数と通常用定数とが切りかえられて使用される。例えば、１回目の受信振幅変動、つまりＳ１からＥ１までの期間において選択された振幅変動有り用定数が使用され、それ以外の期間では、通常用定数が使用される。図３に戻る。
【００３６】
ここでは、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを説明する。図５は、復号部２８の動作を模式的に表したタナーグラフを示す。タナーグラフでは、ｂ１からｂ６が変数ノードと呼ばれ、ｃ１からｃ３がチェックノードと呼ばれる。ここでは、変数ノードの数をｎとし、ｂｎをｎ番目の変数ノードとする。また、チェックノードの数をｍとし、ｃｍをｍ番目のチェックノードとする。変数ノードｂ１からｂ６には、図３のフレームデータ記憶部４０に蓄えられたデータｙ１からｙ６が接続されている。
【００３７】
チェックノード処理では、チェックノードにつながる変数ノードとの間で、ｃｍからｂｍへの外部値比αｍｎが更新される。αｍｎの計算は、検査行列Ｈｍｎ＝１を満たすすべての組（ｍ、ｎ）について、次のようになされる。
αｍｎ＝｛Πｓｉｇｎ（βｍｎ’）｝ｆ｛Σｆ（｜βｍｎ’｜）｝・・・（２）
ここで、ｆ(ｘ)＝ｌｏｇe｛（ｅｘ＋１）/（ｅｘ−１）｝（Ｇａｌｌａｇｅｒ関数）と定義され、ｎ’はＡ（ｍ）＼ｎ  ：Ａ（ｍ）はチェックノードｍに接続する変数ノード集合で、＼ｎはｎを含まない差集合を示す。また、ｓｉｇｎはシグネチャ関数、｜βｍｎ’｜は絶対値を示す。図６は、復号部２８における外部値比の概要を示す。外部値比α１１は、β１１’から導出される。図３に戻る。
【００３８】
変数ノード処理では、αｍｎから変数ノードにつながるチェックノードとの間で、ｂｎからｃｍへの事前値比βｍｎが更新される。βｍｎの計算は、検査行列Ｈｍｎ＝１を満たすすべての組（ｍ、ｎ）について、次のようになされる。
βｍｎ＝Σαｍ’ｎ＋λｎ・・・・（３）
ここで、λｎは、式（１）によって導出される。また、ｍ’はＢ（ｎ）＼ｍ ：Ｂ（ｎ）は変数ノードｎに接続するチェックノード集合で、＼ｍはｍを含まない差集合を示す。図７は、復号部２８における事前値比の概要を示す。事前値比β１１は、α１’１から導出される。図３に戻る。前述のごとく、ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、チェックノード処理と変数ノード処理を所定回数繰り返した後、一時推定語を計算して終了する。
【００３９】
図８は、受信装置１２による静的状態でのＢＥＲ特性を示す。これは、受信振幅変動が生じていない状況下においてガウス雑音を変化させたとき、つまりＥｓ／Ｎｏを変化させたときのビットエラーレートである。また、事前値定数として、理想値、通常用定数、振幅変動有り用定数がそれぞれ使用される。図示のごとく、スタティック環境下では、Ｅｓ／Ｎｏにかかわらず、事前値定数として通常用定数を使用することによって、理想的な事前値定数を使用した場合の特性とほぼ同じ特性が得られる。
【００４０】
図９は、受信装置１２によるフェージング状態でのＢＥＲ特性を示す。これは、フェージングによって受信振幅変動が生じた状況下において、Ｅｓ／Ｎｏを変化させたときのビットエラーレートである。ガウス雑音と受信振幅変動の影響が同等となるような低Ｅｓ／Ｎｏの領域において、通常用定数と振幅変動有り用定数とのどちらを使用しても、復号特性は同等である。一方、受信振幅変動の影響がガウス雑音の影響よりも大きくなるような高Ｅｓ／Ｎｏの領域において、振幅変動有り用定数を使用した方が、通常用定数を使用するよりも、復号特性が優れている。振幅変動有り用定数を使用したときのビットエラーレートは、理想的な事前値定数を使用したときのビットエラーレートに近い。
【００４１】
事前値定数は、式（１）から明らかなように、受信データがどれだけ事前値比に影響を及ぼすか決める定数である。図８、図９によれば、復号単位であるフレーム内で受信振幅変動が発生している場合に、ガウス雑音の分散量に合わせて事前値定数を変えるよりも、受信振幅変動中に受信したデータに対して事前値定数を大きな値に変えて、事前値比への影響を少なく抑えた方が良好な性能が得られる。
【００４２】
以上の構成による通信システム１００の動作を説明する。図１０は、復号部２８による復号手順を示すフローチャートである。フレームデータ記憶部４０が１フレーム分のデータを受信中である場合（Ｓ１０のＹ）、待機する。フレームデータ記憶部４０が１フレーム分のデータを受信中でなく（Ｓ１０のＮ）、推定部４８が、フレーム内に振幅変動がなかったことを検出した場合（Ｓ１２のＮ）、選択部５４は、通常用定数を読み込んで、尤度導出部４４は、受信データの尤度計算を実行する（Ｓ１４）。
【００４３】
推定部４８が、フレーム内に振幅変動があることを検出した場合（Ｓ１２のＹ）、振幅変動中の受信データでなければ（Ｓ１６のＮ）、選択部５４は、通常用定数を読み込んで、尤度導出部４４は、受信データの尤度計算を実行する（Ｓ１８）。振幅変動中の受信データであれば（Ｓ１６のＹ）、選択部５４は、振幅変動有り用定数を読み込んで、尤度導出部４４は、受信データの尤度計算を実行する（Ｓ２０）。ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、ｓｕｍ−ｐｒｏｄｕｃｔ復号処理を実行する（Ｓ２２）。
【００４４】
本発明の実施例によれば、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行するために、受信振幅変動の有無に応じて、予め規定した複数の事前値定数のうちのいずれかを選択するだけなので、演算量を低減できる。また、事前値定数として、通常用定数と振幅変動有り用定数とのいずれかを選択することによって、伝送路雑音の分散値を求める際の複雑な演算を省略できる。また、通常用定数と振幅変動有り用定数とのいずれかを選択して尤度計算を実行してから復号することによって、フェージングが発生しているか否かにかかわらず、復号特性の悪化を抑制できる。
【００４５】
また、受信振幅変動が発生すると、大きな値の事前値定数を選択するので、尤度比の計算に事前値定数を使用できる。また、演算量が低減されるので、処理を高速化できる。また、演算量が低減されるので、回路規模を縮小できる。また、事前値定数を導出する際の演算量が削減されるので、処理能力が低いＬＳＩ（ＣＰＵ）にもｓｕｍ−ｐｒｏｄｕｃｔ復号処理を実行させることができる。また、受信振幅変動が発生したときに、受信振幅変動中に受信したデータに対して事前値定数を切りかえて使用するので、静的状態に加えて受信振幅変動が発生するような環境でも復号特性の悪化を抑制できる。
【００４６】
（実施例２）
本発明の実施例２は、実施例１と同様に、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する受信装置に関する。その際、予め記憶した複数の事前値定数が選択して使用される。実施例１では、受信振幅変動が発生しているか否かに応じて、ふたつの事前値定数のうちのいずれかが選択される。一方、実施例２では、受信振幅変動が発生している場合に、受信振幅変動が発生している期間がフレーム中に占める比率に応じても、事前値定数がさらに切りかえられる。実施例２に係る通信システム１００は、図１と同様のタイプであり、復号部２８は、図３と同様のタイプである。ここでは、差異を中心に説明する。
【００４７】
フェージング発生タイミング記憶部５０は、受信振幅変動が発生している期間がフレームに含まれる割合を導出する。例えば、図４（ｅ）のｎフレームの場合、受信振幅変動が発生している期間の割合は、受信振幅変動のＳ１とＥ１との差によって導出される。
割合＝｛変動終了位置（Ｅ１）−変動開始位置(Ｓ１)｝／１フレーム時間・・・（４）
つまり、フェージング発生タイミング記憶部５０は、通信路の状況が悪化している期間を導出する。
【００４８】
事前値定数記憶部５２は、複数の事前値定数を予め記憶する。ここでは、３つの事前値定数が記憶されており、それらは、通常用定数、短時間振幅変動有り用定数、長時間振幅変動有り用定数である。ここで、短時間振幅変動有り用定数は、受信振幅変動が発生している期間がフレームに含まれる割合が短い場合、例えば、フレーム期間の１／２よりも短い場合に使用すべき事前値定数である。また、長時間振幅変動有り用定数は、受信振幅変動が発生している期間がフレームに含まれる割合が長い場合、例えば、フレーム期間の１／２以上の場合に使用すべき事前値定数である。具体的には、短時間振幅変動有り用定数は、「０．５３」であり、長時間振幅変動有り用定数は、「０．５７」であるとする。つまり、通信路の状況の悪化期間が長くなるほど、事前値定数が大きな値になる。
【００４９】
選択部５４は、フェージング発生タイミング記憶部５０に記憶されたテーブルに応じて、事前値定数記憶部５２に記憶された複数の事前値定数のいずれかを選択して、選択した事前値定数を尤度導出部４４へ出力する。その際、受信振幅変動が示されている場合に、当該フレームにおいて受信振幅変動が発生している期間の割合が１／２よりも短ければ、選択部５４は、事前値定数記憶部５２から短時間振幅変動有り用定数を選択する。また、受信振幅変動が示されている場合であっても、当該フレームにおいて受信振幅変動が発生している期間の割合が１／２以上であれば、選択部５４は、事前値定数記憶部５２から長時間振幅変動有り用定数を選択する。
【００５０】
以上の構成による通信システム１００の動作を説明する。図１１は、本発明の実施例２に係る復号部２８による復号手順を示すフローチャートである。フレームデータ記憶部４０が１フレーム分のデータを受信中である場合（Ｓ４０のＹ）、待機する。フレームデータ記憶部４０が１フレーム分のデータを受信中でなく（Ｓ４０のＮ）、推定部４８が、フレーム内に振幅変動がなかったことを検出した場合（Ｓ４２のＮ）、選択部５４は、通常用定数を読み込んで、尤度導出部４４は、受信データの尤度計算を実行する（Ｓ４４）。推定部４８が、フレーム内に振幅変動があることを検出した場合（Ｓ４２のＹ）、振幅変動中の受信データでなければ（Ｓ４６のＮ）、選択部５４は、通常用定数を読み込んで、尤度導出部４４は、受信データの尤度計算を実行する（Ｓ４８）。
【００５１】
振幅変動中の受信データであり（Ｓ４６のＹ）、フレーム長／２よりも短い時間において振幅変動していたときの受信データでなければ（Ｓ５０のＮ）、選択部５４は、長時間振幅変動有り用定数を読み込んで、尤度導出部４４は、受信データの尤度計算を実行する（Ｓ５２）。フレーム長／２よりも短い時間において振幅変動していたときの受信データであれば（Ｓ５０のＹ）、選択部５４は、短時間振幅変動有り用定数を読み込んで、尤度導出部４４は、受信データの尤度計算を実行する（Ｓ５４）。ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、ｓｕｍ−ｐｒｏｄｕｃｔ復号処理を実行する（Ｓ５６）。
【００５２】
本発明の実施例によれば、受信振幅変動が発生している期間に応じて、事前値定数のいずれかを選択するので、通信路の状況が悪化している期間に適した事前値定数を使用できる。また、受信振幅変動が発生している期間に応じて、複数の事前値定数のいずれかを選択するので、事前値定数を詳細に設定できる。また、事前値定数が詳細に規定されるので、フェージングの発生状況に応じた事前値定数を使用できる。また、フェージングの発生状況に応じた事前値定数が使用されるので、復号特性の悪化を抑制できる。
【００５３】
（実施例３）
本発明の実施例３は、これまでと同様に、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する受信装置に関する。これまでは、受信振幅変動が発生しているか否かに応じて、予め記憶した複数の事前値定数のいずれかが選択して使用されている。一方、実施例３では、ある程度高いドップラー周波数を有したフェージングの発生を推定し、そのようなフェージングが発生しているか否に応じて、事前値定数が選択して使用される。実施例３に係る通信システム１００は、図１と同様のタイプであり、復号部２８は、図３と同様のタイプである。ここでは、差異を中心に説明する。
【００５４】
推定部４８は、所定の周波数よりも高いドップラー周波数をもつフェージングの発生を監視する。推定部４８は、高いドップラー周波数のフェージングが発生しているか否かの情報をフェージング発生タイミング記憶部５０へ出力する。ここでは、図１２（ａ）−（ｈ）を使用して推定部４８の処理を説明する。図１２（ａ）−（ｈ）は、本発明の実施例３に係る復号部２８の動作概要を説明する図である。図１２（ａ）−（ｄ）は、図４（ａ）−（ｄ）と同様であるので、ここでは説明を省略する。
【００５５】
推定部４８は、受信振幅変動判定信号がＬｏｗレベルからＨｉｇｈレベルに変化した回数をカウントする。これは、受信振幅変動が発生していない状態から発生している状態へ変化した回数であり、当該回数が大きくなるほど、ドップラー周波数が高くなる。推定部４８は、予めしきい値を記憶し、カウントした回数がしきい値以上であれば、「フェージング有り」を決定し、カウントした回数がしきい値よりも低ければ、「フェージング無し」を決定する。図１２（ｅ）では、推定部４８が、各フレームに対してカウントした回数を示す。また、図１２（ｆ）は、図１２（ｅ）に示された回数としきい値との比較結果を示す。ここで、しきい値は「２」に設定される。図３に戻る。
【００５６】
事前値定数記憶部５２は、複数の事前値定数を予め記憶する。ここでは、ふたつの事前値定数が記憶されており、ひとつが通常用定数であり、もうひとつがフェージング用定数である。前述のごとく、フェージング用定数は、所定の周波数よりも高いドップラー周波数をもつフェージングが発生している状況にて使用すべき事前値定数である。フェージング用定数は、これまでの振幅変動有り用定数に対応する。フェージング用定数は、通常用定数よりも大きい値である。つまり、所定のフェージング周波数より高くなると、事前値定数が大きな値になる。
【００５７】
選択部５４は、フェージング発生タイミング記憶部５０に記憶されたテーブルに応じて、事前値定数記憶部５２に記憶された複数の事前値定数のいずれかを選択して、選択した事前値定数を尤度導出部４４へ出力する。具体的に説明すると、フェージング発生タイミング記憶部５０のテーブルにおいてフェージング有りと示されたフレームに対して、選択部５４は、事前値定数記憶部５２からフェージング用定数を選択する。一方、フェージング発生タイミング記憶部５０のテーブルにおいてフェージング無しと示されたフレームに対して、選択部５４は、事前値定数記憶部５２から通常用定数を選択する。ここでは、フレーム単位に選択がなされる。
【００５８】
以上の構成による通信システム１００の動作を説明する。図１３は、本発明の実施例３に係る復号部２８による復号手順を示すフローチャートである。フレームデータ記憶部４０が１フレーム分のデータを受信中である場合（Ｓ７０のＹ）、待機する。フレームデータ記憶部４０が１フレーム分のデータを受信中でない場合（Ｓ７０のＮ）、推定部４８は、ｆａｄｅ＿ｃｏｕｎｔにカウント値を入力する（Ｓ７２）。ドップラー周波数判定によってｆａｄｅ＿ｃｏｕｎｔが２以上でなければ（Ｓ７４のＮ）、選択部５４は、通常用定数を読み込んで（Ｓ７６）、尤度導出部４４は、受信データの尤度計算を実行する。ドップラー周波数判定によってｆａｄｅ＿ｃｏｕｎｔが２以上であれば（Ｓ７４のＹ）、選択部５４は、フェージング用定数を読み込んで（Ｓ７８）、尤度導出部４４は、受信データの尤度計算を実行する。ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、ｓｕｍ−ｐｒｏｄｕｃｔ復号処理を実行する（Ｓ８０）。
【００５９】
本発明の実施例によれば、ドップラー周波数の高いフェージングが発生している場合と、そうでない場合とのそれぞれに対して、互いに異なった事前値定数が使用されるので、ドップラー周波数の高いフェージングの影響を低減できる。また、ドップラー周波数の高いフェージングの影響が低減されるので、復号特性の悪化を抑制できる。また、ドップラー周波数を推定するために、受信振幅変動が生じた回数をカウントするだけなので、推定を簡易に実行できる。また、ドップラー周波数の推定が簡易になされるので、演算量を低減できる。
【００６０】
（実施例４）
本発明の実施例４は、これまでと同様に、ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行する受信装置に関する。実施例３では、しきい値よりも高いドップラー周波数を有したフェージングの発生を推定し、そのようなフェージングが発生しているか否に応じて、事前値定数が選択して使用される。実施例４では、複数段階のしきい値が使用される。実施例４に係る通信システム１００は、図１と同様のタイプであり、復号部２８は、図３と同様のタイプである。ここでは、差異を中心に説明する。
【００６１】
推定部４８は、第１のしきい値以上のドップラー周波数をもつフェージング（以下、「高速フェージング状態」という）の発生、第１のしきい値よりも低く、かつ第２のしきい値以上のフェージング（以下、「低速フェージング状態」という）の発生を監視する。例えば、第１のしきい値は「４」に設定され、第２のしきい値は「２」に設定される。
【００６２】
事前値定数記憶部５２は、３つの事前値定数を記憶しており、第１定数、第２定数、第３定数である。第１定数は、前述の通常用定数に相当する。第２定数は、低速フェージング状態の際にて使用すべき事前値定数であり、第３定数は、高速フェージング状態の際にて使用すべき事前値定数である。ここで、第２定数は、第１定数よりも大きな値であり、第３定数は、第２定数よりも大きな値である。
【００６３】
フェージング発生タイミング記憶部５０のテーブルにおいて高速フェージング状態と示されたフレームに対して、選択部５４は、事前値定数記憶部５２から第３定数を選択する。一方、フェージング発生タイミング記憶部５０のテーブルにおいて低速フェージング状態と示されたフレームに対して、選択部５４は、事前値定数記憶部５２から第２定数を選択する。
【００６４】
以上の構成による通信システム１００の動作を説明する。図１４は、本発明の実施例４に係る復号部２８による復号手順を示すフローチャートである。フレームデータ記憶部４０が１フレーム分のデータを受信中である場合（Ｓ１００のＹ）、待機する。フレームデータ記憶部４０が１フレーム分のデータを受信中でない場合（Ｓ１００のＮ）、推定部４８は、ｆａｄｅ＿ｃｏｕｎｔにカウント値を入力する（Ｓ１０２）。ドップラー周波数判定によってｆａｄｅ＿ｃｏｕｎｔが４以上でなく（Ｓ１０４のＮ）、かつドップラー周波数判定によってｆａｄｅ＿ｃｏｕｎｔが２以上でなければ（Ｓ１０６のＮ）、選択部５４は、第１定数を読み込んで（Ｓ１０８）、尤度導出部４４は、受信データの尤度計算を実行する。
【００６５】
ドップラー周波数判定によってｆａｄｅ＿ｃｏｕｎｔが２以上であれば（Ｓ１０６のＹ）、選択部５４は、第２定数を読み込んで（Ｓ１１０）、尤度導出部４４は、受信データの尤度計算を実行する。ドップラー周波数判定によってｆａｄｅ＿ｃｏｕｎｔが４以上であれば（Ｓ１０４のＹ）、選択部５４は、第３定数を読み込んで（Ｓ１１２）、尤度導出部４４は、受信データの尤度計算を実行する。ｓｕｍ−ｐｒｏｄｕｃｔ処理部４６は、ｓｕｍ−ｐｒｏｄｕｃｔ復号処理を実行する（Ｓ１１４）。
【００６６】
本発明の実施例によれば、フェージングのドップラー周波数に応じて複数の事前値定数が規定されるので、さまざまのドップラー周波数を有したフェージングの影響を低減できる。また、さまざまのドップラー周波数を有したフェージングの影響が低減されるので、想定されるドップラー周波数の範囲が広い場合であっても、復号特性の悪化を抑制できる。
【００６７】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００６８】
本発明の実施例１から４において、通信システム１００は無線通信システムを前提としているので、送信装置１０および受信装置１２は、無線通信装置に含まれる。しかしながらこれに限らず例えば、通信システム１００は有線通信システムを前提としてもよい。その際、送信装置１０および受信装置１２は、有線通信装置に含まれる。本変形例によれば、本発明をさまざまな装置に適用できる。
【００６９】
本発明の実施例１から４において、２つあるいは３つの事前値定数が規定されている。しかしながらこれに限らず例えば、４つ以上の事前値定数が規定されていてもよい。その際、事前値定数の数に応じた数のしきい値も規定される。本変形例によれば、事前値定数を細かく設定できる。
【００７０】
本発明の実施例１から４において、送信装置１０は、ＬＤＰＣ符号化を実行している。しかしながらこれに限らず例えば、送信装置１０は、ＬＤＰＣ符号化以外の符号化であっても、復号の際にｓｕｍ−ｐｒｏｄｕｃｔアルゴリズムを実行可能な符号化を実行してもよい。本変形例によれば、本発明をさまざまな符号化に適用できる。
【符号の説明】
【００７１】
１０  送信装置、  １２  受信装置、  ２０  情報データ生成部、  ２２  ＬＤＰＣ符号化部、  ２４  変調部、  ２６  復調部、  ２８  復号部、  ３０  情報データ出力部、  ４０  フレームデータ記憶部、  ４２  フレーム構成部、  ４４  尤度導出部、  ４６  ｓｕｍ−ｐｒｏｄｕｃｔ処理部、  ４８  推定部、  ５０  フェージング発生タイミング記憶部、  ５２  事前値定数記憶部、  ５４  選択部、  １００  通信システム。
【図１】
2012080282.tif 000003
【図２】
2012080282.tif 000004
【図３】
2012080282.tif 000005
【図４】
2012080282.tif 000006
【図５】
2012080282.tif 000007
【図６】
2012080282.tif 000008
【図７】
2012080282.tif 000009
【図８】
2012080282.tif 000010
【図９】
2012080282.tif 000011
【図１０】
2012080282.tif 000012
【図１１】
2012080282.tif 000013
【図１２】
2012080282.tif 000014
【図１３】
2012080282.tif 000015
【図１４】
2012080282.tif 000016