(57)【特許請求の範囲】
【請求項１】
多値変調方式に適用可能なＬＤＰＣ（Low-Density-Parity-Check）符号生成方法において、
変調シンボルのビット位置毎に受信信号の分布を分類してパリティ検査行列の次数アンサンブル（行の重みと列の重みのアンサンブル）を生成する次数アンサンブル生成ステップと、
ＳＮＲ（Signal  to  Noise  Ratio）しきい値（符号長が十分に長い場合にビット誤り率が急峻に落ちるＳＮＲの値）を探索するための探索範囲の上限および下限を初期化し、さらに、前記探索範囲の上限と下限の平均値に基づき変調シンボルのビット位置毎にＬＬＲの確率密度関数を生成し、前記生成した次数アンサンブルおよび当該生成した確率密度関数を用いた「Density  Evolution」の実行結果に基づき前記探索範囲の上限または下限を更新する処理を繰り返し実行して所望のＳＮＲしきい値を決定するＳＮＲしきい値決定ステップと、
を含み、
前記次数アンサンブル生成ステップおよびＳＮＲしきい値決定ステップを繰り返し実行して複数のＳＮＲしきい値を求め、当該複数のＳＮＲしきい値のうち、値が最小のＳＮＲしきい値を決定した際の次数アンサンブルに基づいて、パリティ検査行列、生成行列を生成する
ことを特徴とするＬＤＰＣ符号生成方法。
【請求項２】
さらに、復号器の尤度計算処理に合わせて、変調シンボルのビット位置毎の受信信号の分布を計算することを特徴とする請求項１に記載のＬＤＰＣ符号生成方法。
【請求項３】
通信中に変調方式が変更された場合、変更前と変更後で誤り確率が大きく異なるビット位置に対応するパリティ検査行列Ｈの列を、周辺の列と入れ替えることを特徴とする請求項１に記載のＬＤＰＣ符号生成方法。
【請求項４】
多値変調方式に対する符号化方式として、ＬＤＰＣ（Low-Density-Parity-Check）符号を採用する通信装置において、
変調シンボルのビット位置毎に受信信号の分布を分類してパリティ検査行列の次数アンサンブル（行の重みと列の重みのアンサンブル）を生成する次数アンサンブル生成機能と、
ＳＮＲ（Signal  to  Noise  Ratio）しきい値（符号長が十分に長い場合にビット誤り率が急峻に落ちるＳＮＲの値）を探索するための探索範囲の上限および下限を初期化し、さらに、前記探索範囲の上限と下限の平均値に基づき変調シンボルのビット位置毎にＬＬＲの確率密度関数を生成し、前記生成した次数アンサンブルおよび当該生成した確率密度関数を用いた「Density  Evolution」の実行結果に基づき前記探索範囲の上限または下限を更新する処理を繰り返し実行して所望のＳＮＲしきい値を決定するＳＮＲしきい値決定機能と、
を有し、
前記次数アンサンブル生成機能およびＳＮＲしきい値決定機能を繰り返し実行して複数のＳＮＲしきい値を求め、当該複数のＳＮＲしきい値のうち、値が最小のＳＮＲしきい値を決定した際の次数アンサンブルに基づいて、パリティ検査行列、生成行列を生成する
ことを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、誤り訂正方式としてＬＤＰＣ符号を採用する通信装置に関するものであり、特に、ＬＤＰＣ符号におけるパリティ検査行列の最適な次数アンサンブルを探索するＬＤＰＣ符号生成方法および通信装置に関するものである。
【背景技術】
【０００２】
下記非特許文献１では、多値変調方式に対する符号化方式として、マルチレベル符号化のレベル毎にＬＤＰＣ（Low-Density-Parity-Check）符号を用いた方式が提案されている。ここでは、レベル毎のＬＤＰＣ符号の最適化方法として、変調シンボルにマッピングされているビットの位置毎に初期値となる確率密度関数を求め、それを用いて「Ｄｅｎｓｉｔｙ  Ｅｖｏｌｕｔｉｏｎ（密度発展法）」により各ビット位置に対するＬＤＰＣ符号の最適な次数アンサンブル（パリティ検査行列の構造を示すものであり、パリティ検査行列の行または列の“１”の数を次数（重み）と表現する）を求めている。【０００３】
【非特許文献１】J.Hou,  Paul  H.Siegel,  Laurence  B.Milstein,  and  Henry  D.Pfister,  “Multilevel  Coding  with  Low-Density  Parity-Check  Component  Codes,２”  Proceedings  of  IEEE  Global  Telecommunications  Conference,  San  Antonio,  TX,  USA,  November  25-29,  2001
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記非特許文献１において提案されているマルチレベル符号化による方式では、変調シンボルにマッピングされるビット位置毎に、符号化器および復号器を用意する必要があり、回路規模が増大してしまう、という問題があった。【０００５】
また、上記マルチレベル符号化による方式では、情報長を変調シンボルにマッピングされるビット数分毎に分割して符号化する必要があるが、一般にＬＤＰＣ符号では、符号長が短くなると、特性が劣化する傾向にあることが知られている。【０００６】
本発明は、上記に鑑みてなされたものであって、回路規模の増大を回避しつつ、１つのＬＤＰＣ符号により多値変調方式に適した符号を生成することが可能なＬＤＰＣ符号生成方法を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明にかかるＬＤＰＣ符号生成方法は、多値変調方式に適用可能なＬＤＰＣ符号生成方法であって、たとえば、変調シンボルのビット位置毎に受信信号の分布を分類した上で、ＳＮＲしきい値（符号長が十分に長い場合にビット誤り率が急峻に落ちるＳＮＲの値）が最小となるようなパリティ検査行列の次数アンサンブル（行の重みと列の重みのアンサンブル）を探索する次数アンサンブル探索ステップと、前記探索結果として得られた次数アンサンブルに基づいて、パリティ検査行列、生成行列を生成する符号生成ステップと、を含むことを特徴とする。
【発明の効果】
【０００８】
本発明にかかるＬＤＰＣ符号生成方法においては、変調シンボルのビット位置毎に受信信号の分布を分類した上で、ＳＮＲしきい値が最小となるようなパリティ検査行列の次数アンサンブルを探索することとし、さらに、当該次数アンサンブルにしたがってパリティ検査行列および生成行列を生成することとしたので、１つのＬＤＰＣ符号で多値変調方式に適した符号化を実現可能な通信システムを構築できる、という効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、ＬＤＰＣ符号化器／復号器を含む通信システムの構成を示す図である。
【図２】図２は、「１６ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」の一例を示す図である。
【図３】図３は、マルチエッジタイプＬＤＰＣ符号の次数アンサンブルの一例を示す図である。
【図４】図４は、実施の形態１の次数アンサンブル探索方法を説明するための図である。
【図５】図５は、実施の形態１の次数アンサンブル探索方法を説明するための図である。
【図６】図６は、ＬＤＰＣ符号化器の構成例を示す図である。
【図７】図７は、ＬＤＰＣ符号化器の構成例を示す図である。
【図８】図８は、実施の形態２の次数アンサンブル探索方法を示すフローチャートである。
【図９】図９は、図８の手順による次数アンサンブルの探索結果の一例を示す図である。
【図１０】図１０は、図８の手順による次数アンサンブルの探索結果の一例を示す図である。
【図１１】図１１は、図３の次数アンサンブルから求めたＳＮＲしきい値と、図８の手順で求めたＳＮＲしきい値と、の比較結果を示す図である。
【図１２】図１２は、実施の形態３のＬＬＲの確率密度関数の計算処理を説明するための図である。
【図１３】図１３は、実施の形態３のＬＬＲの確率密度関数の計算処理を説明するための図である。
【図１４】図１４は、実施の形態３のＬＬＲの確率密度関数の計算処理を説明するための図である。
【図１５】図１５は、実施の形態３のＬＬＲの確率密度関数の計算処理を説明するための図である。
【図１６】図１６は、実施の形態３のＬＬＲの確率密度関数の計算処理を説明するための図である。
【図１７】図１７は、実施の形態３のＬＬＲの確率密度関数の計算処理を説明するための図である。
【図１８】図１８は、ＬＤＰＣ符号化器／復号器を含む通信システムの実施の形態４の構成を示す図である。
【図１９】図１９は、ＬＤＰＣ符号化器の構成例を示す図である。
【図２０】図２０は、実施の形態４のＬＤＰＣ符号生成方法の具体例を示す図である。
【図２１】図２１は、実施の形態５の次数アンサンブルを探索方法を示す図である。
【図２２】図２２は、ＬＤＧＭ構造のパリティ検査行列により符号化を実施する様子の一例を示す図である。
【図２３】図２３は、実施の形態５のパリティ検査行列生成処理を示す図である。
【図２４】図２４は、実施の形態６における符号語Ｃから符号語Ｃ´への変換処理を示す図である。
【図２５】図２５は、実施の形態７における符号語Ｃから符号語Ｃ´への変換処理を示す図である。
【符号の説明】
【００１０】
１  ＬＤＰＣ符号化器
２  変調器
３  通信路
４  復調器
５  ＬＤＰＣ復号器
６  通信路品質推定部
１１，１１ａ  符号化部
１２  通信路種別推定部
１３  次数アンサンブル算出部
１４，１４ａ  ＬＤＰＣ符号生成部
【発明を実施するための最良の形態】
【００１１】
以下に、本発明にかかるＬＤＰＣ符号生成方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。【００１２】
実施の形態１．
まず、本実施の形態のＬＤＰＣ符号生成方法を実現可能な符号化器の通信システム内の位置付けについて説明する。図１は、ＬＤＰＣ符号化器／復号器を含む通信システムの構成を示す図である。図１において、送信側の通信装置は、ＬＤＰＣ符号化器１と変調器２を含む構成とし、受信側の通信装置は、復調器４とＬＤＰＣ復号器５を含む構成とする。【００１３】
ここで、ＬＤＰＣ符号を採用する場合の符号化，復号の流れを簡単に説明する。送信側のＬＤＰＣ符号化器１では、後述する本実施の形態のＬＤＰＣ符号生成方法でｋ×ｎの生成行列Ｇ（ｋ：情報長，ｎ：符号語長）を生成する。そして、情報長ｋのメッセージ（ｍ1，ｍ2，…，ｍk）を受け取り、このメッセージおよび上記生成行列Ｇを用いて、下記（１）式のように、符号語Ｃを生成する。ただし、ＬＤＰＣ用のパリティ検査行列をＨとした場合、生成行列Ｇは、ＧＨT＝０（Ｔは転置行列）、Ｈ（ｃ1，ｃ2，…，ｃn）T＝０を満たす行列となる。
Ｃ＝（ｍ1，ｍ2，…，ｍk）Ｇ
＝（ｃ1，ｃ2，…，ｃn）                    …（１）【００１４】
そして、変調器２では、ＬＤＰＣ符号化器１で生成した符号語Ｃに対して、多値ＰＳＫ，多値ＱＡＭなどの多値数が２以上の変調方式によりデジタル変調を行い、その変調信号を、通信路３を介して受信側に送信する。【００１５】
一方、受信側では、復調器４が、通信路３を介して受け取った変調信号に対して、多値ＰＳＫ，多値ＱＡＭなどのデジタル復調を行い、さらに、ＬＤＰＣ復号器５が、復調結果となる対数尤度比（ＬＬＲ：Log  Likelihood  Ratio）に対して、「ｓｕｍ−ｐｒｏｄｕｃｔアルゴリズム」による繰り返し復号を実施し、推定結果（もとのｍ1，ｍ2，…，ｍkに対応）を出力する。【００１６】
つづいて、多値変調において、変調信号から得られる復調結果の誤り特性について説明する。多値変調では、変調点への“０”、“１”のマッピング方法により、ビット位置毎の誤り確率が異なる。図２に示す「１６ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」の例を用いて説明する。まず、１ｂｉｔ目について注目すると、Ｉ成分を固定した場合に、Ｑ成分の値は全て同じ値となる。従って、誤り確率を考慮する際にはＩ成分のみを考慮することになる。そこで、送信信号として“０”を送信した場合に、受信信号が“０”である確率（正しい信号が得られる確率）および“１”である確率（誤った信号が得られる確率）を求めると、それぞれ下記（２）式、（３）式のようになる。
ｐ（ｙ｜ｘ＝−３）＋ｐ（ｙ｜ｘ＝−１）              …（２）
ｐ（ｙ｜ｘ＝＋１）＋ｐ（ｙ｜ｘ＝＋３）              …（３）
ただし、ｘは送信信号を表し、ｙは受信信号を表し、ｐ（ｙ｜ｘ）は、送信信号がｘのときに通信路３を通して受信した受信信号がｙである確率を示す。【００１７】
つぎに、２ｂｉｔ目について注目すると、送信信号が“０”と“１”で誤り確率が異なるため、それぞれで考える必要がある。すなわち、送信信号として“０”を送信した場合に、受信信号が“０”である確率（正しい信号が得られる確率）および“１”である確率（誤った信号が得られる確率）を求めると、それぞれ下記（４）式、（５）式のようになり、一方で、送信信号として“１”を送信した場合に、受信信号が“１”である確率（正しい信号が得られる確率）および“０”である確率（誤った信号が得られる確率）を求めると、それぞれ下記（４）式、（５）式のようになる。
ｐ（ｙ｜ｘ＝−３）＋ｐ（ｙ｜ｘ＝＋３）              …（４）
ｐ（ｙ｜ｘ＝−１）＋ｐ（ｙ｜ｘ＝＋１）              …（５）【００１８】
また、３ｂｉｔ目，４ｂｉｔ目については、Ｑ成分を固定した場合に、Ｉ成分の値は全て同じ値となるため、１ｂｉｔ目、２ｂｉｔ目と同様に誤り確率を考えることができる。【００１９】
以上のとおり、変調シンボルのビット位置毎に誤り確率が異なるため、それを考慮することで、より性能の高い符号を生成できる可能性がある。【００２０】
つづいて、マルチエッジタイプのＬＤＰＣ符号について説明する。マルチエッジタイプＬＤＰＣ符号は、文献「T.Richardson,  and  R.Urbanke,“Modern  Coding  Theory,”  available  at  http://lthcwww.epfl.ch/papers/ics.ps」により提案されているＬＤＰＣ符号であり、受信信号の分布を分類し、それを符号構成に反映することができる。【００２１】
図３は、上記文献に示されるマルチエッジタイプＬＤＰＣ符号の次数アンサンブル例を示す図である。図３のｂの列において，１列目は消失確率１のＢＥＣ（Binary  Erasure  Channel），２列目はＡＷＧＮ（Additive  White  Gaussian  Noise）ｃｈａｎｎｅｌの次数を示す。なお、ｄの列はバリアブルノードとチェックノード間の各エッジタイプの次数を示し、ｖb,dはｂ，ｄで示されるバリアブルノードの割合を示し、ｕdはｄで示されるチェックノードの割合を示す。【００２２】
この例で示されるような次数アンサンブルに対して、上記文献に記載された「Ｄｅｎｓｉｔｙ  Ｅｖｏｌｕｒｉｏｎ（密度発展法）」の手法で解析を行うことにより、ＳＮＲしきい値（符号長が十分に長い場合にビット誤り率が急峻に落ちるＳＮＲの平均的な値）が求められる。このＳＮＲしきい値が最小となる次数アンサンブルを探索し、その次数アンサンブルに基づいて符号を構成することにより、性能の高い符号を得ることができる。【００２３】
つづいて、上記の説明を前提として、本実施の形態のＬＤＰＣ符号生成方法、詳細には次数アンサンブル探索方法について説明する。図４および図５は、本実施の形態の次数アンサンブル探索方法を説明するための図である。なお、本実施の形態では、具体例として、図２の「１６ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」の例を用いているが、Ｍ値ＱＡＭかつ「Ｇｒａｙ  Ｍａｐｐｉｎｇ」に限るものではなく、Ｍ値ＱＡＭ以外の多値変調、「Ｇｒａｙ  Ｍａｐｐｉｎｇ」以外のマッピング方法についても同様に適用可能である。また、本実施の形態では、通信路がＡＷＧＮの場合について説明しているが、これに限らない。【００２４】
まず、ＬＤＰＣ符号化器１では、変調シンボルのビット位置毎に受信信号の分布を分類した上で、パリティ検査行列の次数アンサンブルを探索する（図４、ステップＳ１）。たとえば、図５に示すように、図３の次数アンサンブルに対して、変調シンボルのビット位置毎にｂの列のＡＷＧＮを分割する。この際、各ビット位置の割合が等しくなるように、すなわち、分割した受信信号の分布に対してｖb,dの和が等しくなるようにする（制約条件）。また、上記制約条件以外に、たとえば、パリティ検査行列Ｈの右斜め上三角の領域を“０”に設定するために次数の割合の一部を固定する、等の制約条件を追加することとしてもよい。なお、１ｂｉｔ目と３ｂｉｔ目、２ｂｉｔ目と４ｂｉｔ目、でまとめている理由については後述する。【００２５】
つぎに、ＬＤＰＣ符号化器１では、ＳＮＲしきい値を探索するための探索範囲を指定するため、探索範囲上限，下限に、予め決められた初期値（探索範囲として十分な範囲と考えられる値）を代入する（ステップＳ２）。そして、ＳＮＲの探索上限と探索下限の平均値を計算する（ステップＳ３）。【００２６】
つぎに、ＬＤＰＣ符号化器１では、上記で計算された平均値（入力ＳＮＲ）を入力として、変調シンボルのビット位置毎にＬＬＲの確率密度関数を生成する（ステップＳ４）。図２に示す「１６ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」の例で、１ｂｉｔ目のＬＬＲは、上記（２）式、（３）式より（６）式のように求められる。そして、送信信号"０"に対する受信信号の確率密度関数を考慮し、上記（６）式のＬＬＲに対して確率密度関数を求める。【００２７】
【数１】
0004755104.tif 000002
【００２８】
また、２ｂｉｔ目については上述した通り、送信信号が“０”と“１”の場合で誤り確率が異なるため、送信信号が“０”の場合は、１ｂｉｔ目と同様にＬＬＲの確率密度関数を求めるが、送信信号が“１”の場合については、図２におけるマッピングの“０”と“１”を置き換えてＬＬＲを求め、ＬＬＲの確率密度関数を求める。そして、その２つの確率密度関数を平均することで２ｂｉｔ目のＬＬＲの確率密度関数を求める。【００２９】
また、３ｂｉｔ目、４ｂｉｔ目については、それぞれ１ｂｉｔ目，２ｂｉｔ目と全く同じ確率密度関数を求めることになるため、ＬＬＲの確率密度関数の分類としては、１，３ｂｉｔ目、２，４ｂｉｔ目で２つに分類する。【００３０】
つぎに、ＬＤＰＣ符号化器１では、ステップＳ１で生成した次数アンサンブル、およびステップＳ４で生成したＬＬＲの確率密度関数、を入力として、「Ｄｅｎｓｉｔｙ  Ｅｖｏｌｕｔｉｏｎ」を実行する（ステップＳ５）。【００３１】
つぎに、ＬＤＰＣ符号化器１では、「Ｄｅｎｓｉｔｙ  Ｅｖｏｌｕｔｉｏｎ」を実行した結果として、繰り返し処理により更新されたＬＬＲの確率密度関数が無限大方向に発散するかどうかを判定する（ステップＳ６）。たとえば、発散する場合は（ステップＳ６，Ｙｅｓ）、ＳＮＲしきい値は上記入力ＳＮＲ（平均値）よりもさらに小さい方向に存在すると判断できるため、ＳＮＲの探索上限を上記入力ＳＮＲで更新する（ステップＳ７）。一方、発散しない場合は（ステップＳ６，Ｎｏ）、ＳＮＲしきい値は上記入力ＳＮＲよりも大きい方向に存在すると判断できるため、ＳＮＲの探索下限を上記入力ＳＮＲで更新する（ステップＳ８）。【００３２】
つぎに、ＬＤＰＣ符号化器１では、ＳＮＲの探索上限からＳＮＲの探索下限を引き、事前に規定した精度以下になった場合（所望の精度に達した場合）に（ステップＳ９，Ｙｅｓ）、ＳＮＲしきい値探索処理ループ（ステップＳ３〜Ｓ９）を抜けて、ＳＮＲの探索上限と探索下限の平均を計算することによりＳＮＲしきい値（ＳＮＲの限界値）を求める（ステップＳ１０）。一方、設定した精度に達していない場合は（ステップＳ９，Ｎｏ）、ＳＮＲしきい値探索処理ループを再度実行する。【００３３】
つぎに、ＬＤＰＣ符号化器１では、上記で求められたＳＮＲしきい値が十分に良好なＳＮＲしきい値であるかどうかを判断する（ステップＳ１０：特定のしきい値以上の値であるか、特定の探索回数に対して最も良好な値であるか、等の判断処理を行う）。たとえば、十分に良好なＳＮＲしきい値が得られている場合は（ステップＳ１０，Ｙｅｓ）、その値をＳＮＲしきい値（符号長が十分に長い場合にビット誤り率が急峻に落ちるＳＮＲの平均的な値）として決定し、ＳＮＲしきい値が最小となる次数アンサンブルを出力する。一方、十分に良好なＳＮＲしきい値が得られていない場合は（ステップＳ１０，Ｎｏ）、ステップＳ１に戻って、別の次数アンサンブルに対するＳＮＲしきい値探索処理（ステップＳ１〜ステップＳ１１）を実行するか、または終了するか、を決める。なお、ステップＳ１に戻って別の次数アンサンブルを生成する場合には、上記の探索過程において、その時点の次数アンサンブルに対して、たとえば、R.Storn等が提案している「Ｄｉｆｆｅｒｅｎｔｉａｌ  Ｅｖｏｌｕｔｉｏｎ（R.Storn,  and  K.Price,  “Differential  Evolution  -  A  simple  and  efficient  adaptive  scheme  for  global  optimization  over  continuous  spaces,”  Technical  Report  TR-95-012,  ICSI）等の最適化手法を使用して、新たな次数アンサンブルを生成する。【００３４】
そして、上記のように得られた次数アンサンブルに基づいて、たとえば、特開２００３−１９８３８３号公報に記載されたユークリット幾何符号を用いた手法によりパリティ検査行列Ｈを生成し、生成行列Ｇを生成する。なお、ＬＤＰＣ符号を生成する際には、変調シンボルのビット位置毎に受信信号の分布を分類していない、たとえば、図３のような従来の次数アンサンブルに基づいて、従来の方法によりパリティ検査行列Ｈを生成し、変調シンボルのビット位置毎に受信信号の分布を分類している図５の次数アンサンブルに基づいて、パリティ検査行列Ｈの列を並び替えることとしてもよい。【００３５】
このように、本実施の形態においては、変調シンボルのビット位置毎に受信信号の分布を分類した上で、ＳＮＲしきい値（符号長が十分に長い場合にビット誤り率が急峻に落ちるＳＮＲの平均的な値）が最小となるような次数アンサンブルを探索することとし、さらに、ＳＮＲしきい値が最小となる次数アンサンブルにしたがってパリティ検査行列および生成行列を生成することとした。これにより、１つのＬＤＰＣ符号で多値変調方式に適した符号化を実現可能な通信システムを構築できる。【００３６】
なお、本実施の形態では、上記方法により生成されたＬＤＰＣ符号を、たとえば、図６のように、ＬＤＰＣ符号化器１内の符号化部１１に直接持たせることとしてもよい。また、たとえば、図７のように、ＬＤＰＣ符号化器１内の通信路種別推定部１２内で、ＡＷＧＮチャネル，レイリーフェージングチャネル等のモデルとなる通信路種別を推定した上で、本実施の形態のＬＤＰＣ符号生成方法により、次数アンサンブル算出部１３、ＬＤＰＣ符号生成部１４にてリアルタイムにＬＤＰＣ符号を生成することとしてもよい。この場合、生成されたパリティ検査行列Ｈ，生成行列Ｇを符号化部１１ａに入力し、さらに、パリティ検査行列Ｈについては符号化部１１ａを通して受信側に送信する。【００３７】
また、本実施の形態のＬＤＰＣ符号生成方法は、マルチエッジタイプＬＤＰＣ符号に限らず、イレギュラーＬＤＰＣ符号の次数アンサンブルに適用することも可能である。下記（７）式、（８）式は、それぞれバリアブルノード，チェックノードの次数配分の生成関数を示している。ただし、λi，ρiはそれぞれ次数ｉのバリアブルノードとチェックノードに属するエッジ（パリティ検査行列Ｈの“１”をエッジと表現する）の比率を表し、ｄlはバリアブルノードの最大次数であり、ｄrはチェックノードの最大次数である。【００３８】
【数２】
0004755104.tif 000003
【００３９】
【数３】
0004755104.tif 000004
【００４０】
そして、上記（７）式、（８）式に対応して、たとえば、変調シンボルのビット位置ｋ毎にλi，ρiを分類したλik，ρikに基づいて、下記（９）式、（１０）式のようにそれぞれバリアブルノード，チェックノードの次数配分の生成関数を表現し、さらに、変調シンボルのビット位置毎にＬＬＲの確率密度関数を分けた上で、本実施の形態のＬＤＰＣ符号生成方法によりＳＮＲが最小となる次数アンサンブルを求め、ＬＤＰＣ符号を生成する。【００４１】
【数４】
0004755104.tif 000005
【００４２】
【数５】
0004755104.tif 000006
【００４３】
実施の形態２．
実施の形態２では、前述の実施の形態１のＬＤＰＣ符号生成方法においてＳＮＲしきい値が十分に小さい次数アンサンブルを検索する際に、処理を２段階に分割することにより、検索に必要な計算時間を短縮する。なお、本実施の形態の通信システムの構成については、前述した実施の形態１の図１と同様である。【００４４】
図８は、実施の形態２の次数アンサンブル探索方法を示すフローチャートである。本実施の形態では、前述の実施の形態１と異なる処理についてのみ説明する。【００４５】
本実施の形態においては、まず、ＬＤＰＣ符号化器１が、変調シンボルのビット位置毎に受信信号の分布を分類しない、従来の手法により、ＳＮＲしきい値が最小となる次数アンサンブルを算出する（図８、ステップＳ２１：たとえば、図３のような従来の次数アンサンブルを求める）。なお、ここでは、上記ステップＳ２１の処理に限らず、たとえば、シンボルのビット位置毎に受信信号の分布を分類しない、既知の次数アンサンブルを、固定的に使用することとしてもよい。【００４６】
つぎに、ＬＤＰＣ符号化器１では、次数毎に、変調シンボルビット位置毎の割合を付与し、その割合をパラメータとして、「Ｄｉｆｆｅｒｅｎｔｉａｌ  Ｅｖｏｌｕｔｉｏｎ」等の最適化手法によりパリティ検査行列の次数アンサンブルを生成する（ステップＳ２２）。このとき、パラメータの制約条件として、次数毎に割合の和が１となるように規定し、また、各ビット位置の割合が等しくなるように決定する。なお、上記以外の制約条件を追加することとしてもよい。【００４７】
上記ステップＳ２２の処理を具体的に図３、図５を用いて説明すると、たとえば、図３でバリアブルノードの１行目の次数に着目し、この「０．５」の割合を、図５に示すように、１行目：「０．５×０．３６」，２行目：「０．５×０．６４」の割合に分割する。なお、１，３ｂｉｔ目のＡＷＧＮ、２，４ｂｉｔ目のＡＷＧＮのバリアブルノードの割合の合計は、それぞれ０．５で等しい。【００４８】
つぎに、前述の実施の形態１と同様の処理でステップＳ２〜Ｓ１０を実行後、ＬＤＰＣ符号化器１では、ＳＮＲしきい値が最小となる次数アンサンブルが得られたかどうかを判定する（ステップＳ２３）。たとえば、ＳＮＲしきい値が最小となる次数アンサンブルが得られた場合は（ステップＳ２３，Ｙｅｓ）、変数ｉを０に初期化し（ステップＳ２４）、得られなかった場合は（ステップＳ２３，Ｎｏ）、変数ｉをインクリメントする（ステップＳ２５）。この手順により、ＳＮＲしきい値が最小となる次数アンサンブルに対して、他の次数アンサンブルと何回にわたって比較したかカウントする。【００４９】
最後に、ＬＤＰＣ符号化器１では、上記変数ｉが設定した規定回数より大きくなった場合に（ステップＳ２６，Ｙｅｓ）、ＳＮＲしきい値が最小となる次数アンサンブルを出力し、規定回数より小さい場合は（ステップＳ２６，Ｎｏ）、ステップＳ２２に戻り、上記変調シンボルのビット位置毎の割合を変えて「Ｄｉｆｆｅｒｅｎｔｉａｌ  Ｅｖｏｌｕｔｉｏｎ」等の最適化手法により新しい次数アンサンブルを生成する。【００５０】
ここで、本実施の形態の数値解析例として、たとえば、図３の次数アンサンブルを固定的に使用し、本実施の形態における図８の手順により「１６ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」、または「６４ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」に対して次数アンサンブルを求めた結果を、図９、図１０に示す。また、本実施の形態における図８の手順を用いずに、図３の次数アンサンブルから求めたＳＮＲしきい値と、本実施の形態の図８の手順で求めたＳＮＲしきい値と、の比較結果を図１１に示す。図示のとおり、いずれの変調方式においても、本実施の形態における図８の手順の方が、図３の次数アンサンブルに対して、ＳＮＲしきい値が最小となる次数アンサンブルを生成できていることがわかる。また、多値数が大きい変調方式では、受信信号の分布をより詳細に分類できるため、本実施の形態における図８の実行による効果は大きい。【００５１】
このように、本実施の形態においては、実施の形態１と比較して、次数アンサンブルの探索処理におけるパラメータの増加による計算量の大幅な増大を回避できるとともに、短時間の解析でＳＮＲしきい値が最小となる次数アンサンブルを探索できる。【００５２】
実施の形態３．
実施の形態３では、前述の実施の形態１または２のＬＤＰＣ符号生成方法において、たとえば、ＬＤＰＣ復号器５におけるＬＬＲ算出処理に合わせて、ＬＬＲの確率密度関数を計算する。なお、本実施の形態の通信システムの構成については、前述した実施の形態１の図１と同様である。【００５３】
図１２〜図１７は、実施の形態３のＬＬＲの確率密度関数の計算処理を説明するための図である。図１２に示すように（黒丸は受信点を表す）、たとえば、ＬＤＰＣ復号器５が、全変調点を考慮してＬＬＲを算出する場合は、本実施の形態のＬＤＰＣ符号生成方法においても、全変調点を考慮してＬＬＲの確率密度関数を生成する。図２に示す「１６ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」の例では、前述の実施の形態１と同様の方法でＬＬＲの確率密度関数を生成する。図１３は、全変調点を用いてＬＬＲを算出する場合の、１，３ｂｉｔ目のＬＬＲの確率密度関数を示す図であり、図１４は、全変調点を用いてＬＬＲを算出する場合の、２，４ｂｉｔ目のＬＬＲの確率密度関数を示す図である。【００５４】
これに対して、図１５に示されるように、ＬＤＰＣ復号器５が、受信点の近傍変調点を用いてＬＬＲを算出する場合は、本実施の形態のＬＤＰＣ符号生成方法においても、各ビットにおける“０”と“１”の近傍変調点を考慮してＬＬＲの確率密度関数を生成する。図１５における実線は１，３ｂｉｔ目の近傍点を表し、点線は２，４ｂｉｔ目の近傍点を表している。たとえば、図２に示す「１６ＱＡＭ  Ｇｒａｙ  Ｍａｐｐｉｎｇ」の１，３ｂｉｔ目の例では、下記（１１）式によりＬＬＲを求め、その確率密度関数を求める。【００５５】
【数６】
0004755104.tif 000007
【００５６】
また、２，４ｂｉｔ目については、下記（１１）式に求めたＬＬＲに対して、実施の形態１と同様の処理で、ＬＬＲの確率密度関数を求める。図１６は、近傍変調点を用いてＬＬＲを算出する場合の、１，３ｂｉｔ目のＬＬＲの確率密度関数を示す図であり、図１７は、近傍変調点を用いてＬＬＲを算出する場合の、２，４ｂｉｔ目のＬＬＲの確率密度関数を示す図である。【００５７】
このように、本実施の形態においては、前述の実施の形態１または２の効果に加えて、さらに、ＬＤＰＣ復号器５におけるＬＬＲ算出処理に合わせて、ＬＬＲの確率密度関数を生成できる。【００５８】
実施の形態４．
実施の形態４では、適応変調方式において変調方式が変更された場合に、実施の形態１のＬＤＰＣ符号生成方法により変更前の変調方式に対して生成したＬＤＰＣ符号を利用する。そして、変更前の変調方式のビット位置毎のＬＬＲ確率密度分布と、変更後の変調方式のビット位置毎のＬＬＲ確率密度分布と、が大きく異なるビット位置については、対象となるパリティ検査行列Ｈの列を入れ替えて、新たな符号を生成する。【００５９】
図１８は、ＬＤＰＣ符号化器／復号器を含む通信システムの実施の形態４の構成を示す図であり、図１の構成に加えて、さらに通信路品質推定部６を備えている。本実施の形態においては、通信路品質測定部６が、通信路品質の劣化または改善を検出した場合に、変調器２に対して変調方式の変更を指示し、変調器２が、その指示に従い、変調方式を適応的に変更する。同時に、通信路品質測定部６では、ＬＤＰＣ符号化器１に対しても、変調方式が変更されたことを通知する。【００６０】
また、ＬＤＰＣ符号化器１では、図１９で示すように、通信路品質測定部１６からの変調方式変更の通知に基づいて、ＬＤＰＣ符号生成部１４ａが、ＬＤＰＣ符号を新たに生成する。この場合、生成されたパリティ検査行列Ｈ，生成行列Ｇを符号化部１１ａに入力し、さらに、パリティ検査行列Ｈについては符号化部１１ａを通して受信側に送信する。【００６１】
図２０は、本実施の形態のＬＤＰＣ符号生成方法の具体例を示す図である。図２０の例では、まず、６４ＱＡＭ（「Ｇｒａｙ  Ｍａｐｐｉｎｇ」）を対象に、前述した実施の形態１と同様の処理によりＬＤＰＣ符号を生成している。そして、通信路品質測定部１６からの変調方式変更の通知に基づいて、たとえば、１６ＱＡＭ（「Ｇｒａｙ  Ｍａｐｐｉｎｇ」）に変調方式を変更している。このような場合、たとえば、６４ＱＡＭの３ｂｉｔ目（４，５，６ｂｉｔ目の誤り率はそれぞれ１，２，３ｂｉｔ目と等価である）は、６ｂｉｔ中最も誤り確率が高いビット位置となるため、変更後の１６ＱＡＭにおける対応ビット位置（３，４ｂｉｔ目の誤り率はそれぞれ１，２ｂｉｔ目と等価である）と比較した場合、変更前と変更後で誤り確率が大きく異なってしまう。そのため、６４ＱＡＭ用に生成したＬＤＰＣ符号をそのまま使用すると、性能が大幅に劣化することが考えられる。そこで、本実施の形態においては、図２０に示すように、誤り確率が大きく異なるビット位置（６４ＱＡＭの３ｂｉｔ目）については、パリティ検査行列Ｈの列を周辺の列と入れ替えて、性能が大幅に劣化しないようなＬＤＰＣ符号を新たに生成する。【００６２】
このように、本実施の形態においては、通信中に変調方式が変更された場合、変更前と変更後で誤り確率が大きく異なるビット位置に対応するパリティ検査行列Ｈの列を、周辺の列と入れ替えることとした。これにより、適応変調方式を採用する通信システムであっても、変更方式毎に個別に実施の形態１と同様のＬＤＰＣ符号生成方法を実行する必要がなくなり、さらに各変調方式に対して性能を大幅に劣化させずに、新たなＬＤＰＣ符号を生成できる。【００６３】
実施の形態５．
つづいて、実施の形態５のＬＤＰＣ符号生成方法について説明する。実施の形態５では、図８，ステップＳ２２において、パリティビットに対応するバリアブルノードの次数を除いて変調シンボルのビット位置毎に割合を付与する処理以外は、前述した実施の形態２と同様である。【００６４】
本実施の形態の処理を、図２１，図２２，図２３を用いて補足説明する。図２１に示すようなＬＤＧＭ（Low-Density  Generation  Matrix）構造を持つ既存のパリティ検査行列Ｈの次数アンサンブルを用意し、パリティビットに対応するバリアブルノードの次数を除き（パリティビットに対応する次数は等確率）、変調シンボルのビット位置毎に割合を付与した上で、変調方式に適した次数アンサンブルを探索する。なお、ＬＤＧＭ構造のパリティ検査行列とは、パリティビットに対応する部分に、たとえば、Dual-Diagonalの構造を持たせることで、パリティビットを逐次に求めることができるパリティ検査行列を指す。なお、図２２は、ＬＤＧＭ構造のパリティ検査行列により符号化を実施する様子の一例を示している。ここでは、演算結果が“０”になるように行単位にパリティを決定する。その結果、入力列“０１１０”に対する符号列は“０１１００１０１”となる。【００６５】
そして、図２３に示すように、得られた次数アンサンブルに従って既存のパリティ検査行列Ｈの列を入れ替えることで、変調方式に適したパリティ検査行列を得る。なお、パリティビットに対応する列は入れ替えない。【００６６】
このように、本実施の形態においては、パリティ検査行列のＬＤＧＭ構造を保ちつつ、変調方式に適したパリティ検査行列を得ることができる。【００６７】
実施の形態６．
つづいて、実施の形態６のＬＤＰＣ符号生成方法について説明する。本実施の形態のＬＤＰＣ符号生成方法を実現可能なＬＤＰＣ符号化器の通信システム内の位置付けについては、前述した実施の形態１と同様である。【００６８】
ここで、本実施の形態における符号化，復号の流れを説明する。送信側のＬＤＰＣ符号化器１では、ＬＤＧＭ構造を持つ後述する既存のパリティ検査行列Ｈにより、符号語Ｃを生成する。さらに、後述する方法により、符号語Ｃの順序を入れ替え、通信路３に送信する符号語Ｃ´を生成する。【００６９】
また、送信側の変調処理、受信側の復調処理および復号処理は、前述した実施の形態１と同様であるが、受信側のＬＤＰＣ復号器５は、後述する本実施の形態のＬＤＰＣ符号生成方法で生成したパリティ検査行列Ｈ´により復号処理を行う。【００７０】
本実施の形態において、復号用に生成するパリティ検査行列Ｈ´の次数アンサンブルの探索方法は、前述した実施の形態２と同様であり、既存の次数アンサンブルにより生成されたパリティ検査行列Ｈの列を並び替えることで、パリティ検査行列Ｈ´を生成する。【００７１】
また、図２４は、符号語Ｃから符号語Ｃ´への変換の具体的イメージを示す図である。本実施の形態では、パリティ検査行列Ｈの列の並び替え方法を記憶し、その並べ替え方法をパリティ検査行列Ｈの列に対応する送信ビット列に対応させることで、符号語Ｃを符号語Ｃ´に変換する。すなわち、本実施の形態では、符号化側でパリティ検査行列の列の入れ替えを行う代わりに、符号語を入れ替える。【００７２】
このように、本実施の形態においては、符号化側が、パリティ検査行列の列の並び替え方に基づいて符号語の順番を入れ替える処理を追加することとした。これにより、符号化に使用するパリティ検査行列のＬＤＧＭ構造を保ちつつ、符号化側では、符号語の順番を入れ替える処理を追加するのみで、変調方式に適した符号語を得ることができる。そして、復号側では、変調方式に適した新たなパリティ検査行列を生成することにより、追加の処理を必要とせずに通常の処理で復号が可能である。【００７３】
実施の形態７．
つづいて、実施の形態７のＬＤＰＣ符号生成方法について説明する。本実施の形態のＬＤＰＣ符号生成方法を実現可能なＬＤＰＣ符号化器の通信システム内の位置付けについては、前述した実施の形態１と同様である。【００７４】
ここで、本実施の形態における符号化および復号の流れを説明する。送信側のＬＤＰＣ符号化器１では、後述するパリティ検査行列Ｈ´´により、符号語Ｃを生成する。さらに、後述する方法により、符号語Ｃの順序を入れ替え、通信路３に送信する符号語Ｃ´を生成する。また、送信側の変調処理、受信側の復調処理および復号処理は、前述した実施の形態１と同様であり、受信側のＬＤＰＣ復号器５では、復調結果に対して、送信側で入れ替えた符号語の順序を元の順序に戻し、パリティ検査行列Ｈ´´を用いて復号処理を行う。【００７５】
まず、パリティ検査行列Ｈ´´を生成する手順、符号語Ｃ´を生成する手順を以下に示す。たとえば、前述した実施の形態２と同様の手順により、次数アンサンブルを探索し、既存のパリティ検査行列Ｈの列を入れ替えることで、パリティ検査行列Ｈ´を生成する。そして、このパリティ検査行列Ｈ´に対して、元のパリティ検査行列Ｈにおいてパリティビットに対応する列を元の位置に戻し、空いた列については、元のパリティ検査行列Ｈでシステムビット（符号器に入力する入力情報列）に対応する列を前詰めで移動することにより、パリティ検査行列Ｈ´´を生成する。なお、既存のパリティ検査行列Ｈの次数アンサンブルについて、パリティビットに対応するバリアブルノードの次数は同一である必要がある。【００７６】
つぎに、符号語Ｃから符号語Ｃ´への変換処理を示す。図２５は、符号語Ｃから符号語Ｃ´への変換の具体的イメージを示す図である。本実施の形態では、上記パリティ検査行列Ｈ´に対してパリティ検査行列Ｈ´´を生成する際に、入れ替えられたパリティビットに対する列の位置を記憶する。そして、パリティ検査行列Ｈ´´にて生成された符号語Ｃについて、上記の処理で戻された元の位置に対応する送信ビットを、上記で記憶した列の位置に挿入することにより、パリティ検査行列Ｈ´に対応するような符号語Ｃ´を生成する。【００７７】
このように、本実施の形態においては、符号化側が、パリティビットに対応する送信ビットを所定の位置に挿入する処理、復号側が、パリティビットに対応する受信ビットを元の位置に戻す処理、をそれぞれ追加することとした。これにより、パリティ検査行列のＬＤＧＭ構造を保ちつつ、変調方式に適した符号語を得ることができる。
【産業上の利用可能性】
【００７８】
以上のように、本発明にかかるＬＤＰＣ符号生成方法は、誤り訂正方式としてＬＤＰＣ符号を採用する通信装置および通信システムに有用であり、特に、ＬＤＰＣ符号におけるパリティ検査行列の最適な次数アンサンブルを生成する符号化器に適している。
【図１】
0004755104.tif 000008
【図２】
0004755104.tif 000009
【図３】
0004755104.tif 000010
【図４】
0004755104.tif 000011
【図５】
0004755104.tif 000012
【図６】
0004755104.tif 000013
【図７】
0004755104.tif 000014
【図８】
0004755104.tif 000015
【図９】
0004755104.tif 000016
【図１０】
0004755104.tif 000017
【図１１】
0004755104.tif 000018
【図１２】
0004755104.tif 000019
【図１３】
0004755104.tif 000020
【図１４】
0004755104.tif 000021
【図１５】
0004755104.tif 000022
【図１６】
0004755104.tif 000023
【図１７】
0004755104.tif 000024
【図１８】
0004755104.tif 000025
【図１９】
0004755104.tif 000026
【図２０】
0004755104.tif 000027
【図２１】
0004755104.tif 000028
【図２２】
0004755104.tif 000029
【図２３】
0004755104.tif 000030
【図２４】
0004755104.tif 000031
【図２５】
0004755104.tif 000032