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