(57)【要約】  本出願は、符号化方法、装置、通信デバイス、および通信システムを開示する。方法は、低密度パリティチェックLDPC行列を使用することによって入力ビット系列を符号化するステップを含み、LDPC行列の基底グラフは、m行およびn列の行列によって表され、mは、5以上の整数であり、nは、27以上の整数であり、基底グラフは、少なくとも部分行列Aおよび部分行列Bを含み、部分行列Aは、5行および22列の行列であり、部分行列Bは、5行および5列の行列であり、部分行列Bは、重みが3である列、および二重対角構造を有する部分行列B'を含む。本出願の符号化方法、装置、通信デバイス、および通信システムによれば、複数の長さの情報ビット系列の符号化の要件が、サポートされ得る。
2020518145.tif 000002
【特許請求の範囲】
【請求項１】
低密度パリティチェックLDPC行列に基づいて入力系列を符号化するステップを含み、
前記LDPC行列の基底グラフが、m行およびn列の行列によって表され、mが、5以上の整数であり、nが、27以上の整数であり、
前記基底グラフが、少なくとも部分行列Aおよび部分行列Bを含み、
前記部分行列Aが、5行および22列の行列であり、
前記部分行列Bが、5行および5列の行列であり、前記部分行列Bが、重みが3である列、および二重対角構造を有する部分行列B'を含む、符号化方法。
【請求項２】
低密度パリティチェックLDPC行列に基づいて入力系列を復号するステップを含み、
前記LDPC行列の基底グラフが、m行およびn列の行列によって表され、mが、5以上の整数であり、nが、27以上の整数であり、
前記基底グラフが、少なくとも部分行列Aおよび部分行列Bを含み、
前記部分行列Aが、5行および22列の行列であり、
前記部分行列Bが、5行および5列の行列であり、前記部分行列Bが、重みが3である列、および二重対角構造を有する部分行列B'を含む、復号方法。
【請求項３】
前記部分行列Aにおいて、1つの列が重み5を有し、1つの列が重み4を有し、20個の列が重み3を有する請求項1または2に記載の方法。
【請求項４】
低密度パリティチェックLDPC行列に基づいて入力系列を符号化するステップを含み、
前記LDPC行列の基底グラフが、m行およびn列の行列によって表され、mが、5以上の整数であり、nが、27以上の整数であり、
前記基底グラフが、少なくとも部分行列Aおよび部分行列Bを含み、
前記部分行列Aが、5行および22列の行列であり、
前記部分行列Bが、5行および5列の行列であり、前記部分行列Aおよび前記部分行列Bを含む行列において、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する、符号化方法。
【請求項５】
低密度パリティチェックLDPC行列に基づいて入力系列を復号するステップを含み、
前記LDPC行列の基底グラフが、m行およびn列の行列によって表され、mが、5以上の整数であり、nが、27以上の整数であり、
前記基底グラフが、少なくとも部分行列Aおよび部分行列Bを含み、
前記部分行列Aが、5行および22列の行列であり、
前記部分行列Bが、5行および5列の行列であり、前記部分行列Aおよび前記部分行列Bを含む行列において、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する、復号方法。
【請求項６】
前記部分行列Aおよび前記部分行列Bに基づいて生成された前記行列において、1つの行が、1以上および5以下の重みを有し、その他の4つの行が、17以上および21以下の重みを有する、請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記部分行列Aおよび前記部分行列Bに基づいて生成された前記行列において、1つの行が重み3を有し、その他の4つの行が重み19を有する、請求項1から6のいずれか一項に記載の方法。
【請求項８】
前記部分行列Aおよび前記部分行列Bに基づいて生成された前記行列において、1つの行が、
【数１】
2020518145.tif 000023
であり、
その他の4つの行が、それぞれ、以下の行、すなわち、
【数２】
2020518145.tif 000024
、
【数３】
2020518145.tif 000025
、
【数４】
2020518145.tif 000026
、および
【数５】
2020518145.tif 000027
である、請求項1から7のいずれか一項に記載の方法。
【請求項９】
前記部分行列Aおよび前記部分行列Bに基づいて生成された前記行列が、次の行列、すなわち、
【数６】
2020518145.tif 000028
のすべての行またはすべての列を含む、請求項1から8のいずれか一項に記載の方法。
【請求項１０】
前記基底グラフが、部分行列C、部分行列D、および部分行列Eをさらに含み、
前記部分行列Cが、5行およびmD列のオールゼロ行列であり、
前記部分行列Dが、mD行および27列の行列であり、
前記部分行列Eが、mD行およびmD列の単位行列であり、
mDが、整数であり、0≦mD≦41である、請求項1から9のいずれか一項に記載の方法。
【請求項１１】
前記部分行列Aおよび前記部分行列Bを含む前記行列において、1つの行が、
【数７】
2020518145.tif 000029
であり、
その他の4つの行が、それぞれ、以下の行、すなわち、
【数８】
2020518145.tif 000030
、
【数９】
2020518145.tif 000031
、
【数１０】
2020518145.tif 000032
、および
【数１１】
2020518145.tif 000033
である、請求項1から7のいずれか一項に記載の方法。
【請求項１２】
前記部分行列Aおよび前記部分行列Bを含む前記行列が、次の行列、すなわち、
【数１２】
2020518145.tif 000034
のすべての行またはすべての列を含む請求項11に記載の方法。
【請求項１３】
符号化または復号のための基底グラフおよび基底行列のうちの少なくとも一方が、前記LDPC行列の前記基底グラフおよび基底行列のうちの少なくとも一方に対して行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる、請求項1から12のいずれか一項に記載の方法。
【請求項１４】
出力系列d = {d0, d1, d2,..., dN-1}を得るために入力系列c = {c0, c1, c2,..., cK-1}を符号化するステップであって、KおよびNが、0よりも大きな整数である、ステップを含み、
前記出力系列dが、前記入力系列cのK0ビットおよびパリティ系列wの1つまたは複数のパリティビットを含み、K0が、整数であり、0≦K0≦Kであり、
検査系列wおよび前記入力系列cが、式
【数１３】
2020518145.tif 000035
を満たし、
cT = [c0, c1, c2, ..., cK-1]Tであり、cTが、前記入力系列cのビットを含むベクトルの転置ベクトルであり、
【数１４】
2020518145.tif 000036
であり、wTが、前記パリティ系列wのビットを含むベクトルの転置ベクトルであり、0Tが、列ベクトルであり、0Tのすべての要素の値が、0であり、
Hが、低密度パリティチェックLDPC行列であり、Hの基底グラフが、HBGおよびHBG,EXTを含み、
【数１５】
2020518145.tif 000037
であり、
【数１６】
2020518145.tif 000038
が、サイズmc×ncのオールゼロ行列を表し、
【数１７】
2020518145.tif 000039
が、サイズnc×ncの単位行列であり、mc = 5であり、0≦nc≦41であり、HBGの行数が、46以下および5以上であり、HBGの列数が、27に等しいか、またはmc = 4であり、0≦nc≦42であり、HBGの行数が、46以下および5以上であり、HBGの列数が、26に等しい、情報処理方法。
【請求項１５】
HBGの前記列数が27に等しい場合、各行内の非ゼロ要素がある列のインデックスが、Table 7(表7)に示される、請求項14に記載の方法。
【請求項１６】
HBGの前記列数が26に等しい場合、各行内の非ゼロ要素がある列のインデックスが、Table 6(表6)に示される、請求項14に記載の方法。
【請求項１７】
LDPC行列の基底グラフおよびリフティングファクタに基づいて入力系列を符号化/復号するステップを含み、
前記LDPC行列の前記基底グラフが、m行およびn列の行列によって表され、mが、5以上の整数であり、nが、27以上の整数であり、前記基底グラフが、少なくとも、5行および27列のコア行列を含み、前記コア行列が、重みが19である4つの行および重みが3である1つの行を含み、
重みが19である第1の行内の非ゼロ要素がある列が、0、1、2、3、5、6、9、10、11、12、13、15、16、18、19、20、21、22、および23であり、
重みが19である第2の行内の非ゼロ要素がある列が、0、2、3、4、5、7、8、9、11、12、14、15、16、17、19、21、22、23、および24であり、
重みが19である第3の行内の非ゼロ要素がある列が、0、1、2、4、5、6、7、8、9、10、13、14、15、17、18、19、20、24、および25であり、
重みが19である第4の行内の非ゼロ要素がある列が、0、1、3、4、6、7、8、10、11、12、13、14、16、17、18、20、21、22、および25であり、
重みが3である列内の非ゼロ要素がある列が、0、1、および26であり、
前記数字が、列インデックスであり、0が、前記基底グラフの第1の列を示し、1が、前記基底グラフの第2の列を示し、2が、前記基底グラフの第3の列を示し、...、23が、前記基底グラフの第24の列を示し、24が、前記基底グラフの第25の列を示し、25が、前記基底グラフの第26の列を示し、26が、前記基底グラフの第27の列を示す、情報処理方法。
【請求項１８】
前記基底グラフおよびシフト値に基づいて前記LDPC行列の基底行列を取得するステップを含み、
LDPC行列の基底グラフおよびリフティングファクタに基づいて入力系列を符号化/復号する前記ステップが、
前記基底行列および前記リフティングファクタに基づいて前記入力系列を符号化/復号するステップを含む、請求項17に記載の方法。
【請求項１９】
請求項1から18のいずれか一項に記載の方法を実行するように構成された装置。
【請求項２０】
プロセッサ、メモリ、および前記メモリに記憶され、前記プロセッサ上で実行され得る命令を含み、前記命令が実行されるときに、請求項1から18のいずれか一項に記載の方法を実行させられる通信装置。
【請求項２１】
請求項19に記載の装置または請求項20に記載の通信装置を含む端末。
【請求項２２】
請求項1に記載の装置または請求項20に記載の通信装置を含む基地局。
【請求項２３】
請求項21に記載の端末および請求項22に記載の基地局を含む通信システム。
【請求項２４】
命令を含み、前記命令がコンピュータ上で実行されるときに、前記コンピュータが請求項1から18のいずれか一項に記載の方法を実行させられるコンピュータ可読ストレージ媒体。
【請求項２５】
コンピュータプログラム製品であって、前記コンピュータプログラム製品がコンピュータ上で実行されるときに、前記コンピュータが請求項1から18のいずれか一項に記載の方法を実行させられるコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願の実施形態は、通信の分野に関し、特に、情報処理方法および通信装置に関する。
【背景技術】
【０００２】
低密度パリティ検査(low density parity check、LDPC)符号は、疎検査行列を有する線形ブロック符号の一種であり、柔軟な構造と、低い復号の複雑さとによって特徴付けられる。LDPC符号を復号することは部分的に並列的な反復復号アルゴリズムを使用するので、LDPC符号は、通常のターボ符号よりも高いスループットを有する。LDPC符号は、チャネルの送信の信頼性および電力の利用を向上させるために通信システムにおいて誤り訂正符号として使用され得る。さらに、LDPC符号は、宇宙通信、光ファイバ通信、パーソナル通信システム、ADSL、磁気記録デバイスなどにおいて広く使用され得る。LDPC符号は、第5世代モバイル通信のチャネル符号化モードの1つとして現在考えられている。
【０００３】
実際の応用においては、異なる特殊な構造によって特徴付けられるLDPC行列が、使用され得る。特殊な構造によって特徴付けられるLDPC行列Hは、準巡回(quasi cycle、QC)構造を有するLDPC基底行列(base matrix)を拡張することによって取得され得る。QC-LDPCは、高い並列性を有するハードウェアに好適であり、比較的高いスループットを提供する。チャネル符号化に好適であるLDPC行列を設計することが可能である。
【発明の概要】
【課題を解決するための手段】
【０００４】
本出願の実施形態は、複数の長さの情報ビット系列の符号化および復号をサポートし、システムの柔軟な符号長の要件および符号化率の要件を満たすための情報処理方法、通信装置、および通信システムを提供する。
【０００５】
第1の態様によれば、符号化方法およびエンコーダが提供され、エンコーダは、低密度パリティ検査LDPC行列を使用することによって入力系列を符号化する。
【０００６】
第2の態様によれば、復号方法およびデコーダが提供され、デコーダは、低密度パリティ検査LDPC行列を使用することによって入力系列を復号する。
【０００７】
第1の態様または第2の態様の第1の実装においては、LDPC行列の基底グラフ(base graph)が、m行およびn列の行列によって表され、mは、5以上の整数であり、nは、27以上の整数である。基底グラフは、少なくとも部分行列Aおよび部分行列Bを含む。部分行列Aは、5行および22列の行列である。部分行列Bは、5行および5列の行列であり、部分行列Bは、重みが3である列、および二重対角(bi-diagonal)構造を有する部分行列B'を含む。
【０００８】
任意で、部分行列Aにおいては、1つの列が重み5を有し、1つの列が重み4を有し、その他の20列が重み3を有する。
【０００９】
任意で、部分行列Bにおいては、1つの列が重み3を有し、3つの列が重み2を有する。
【００１０】
上述の実装に基づいて、部分行列Bは、重みが1である1つの列をさらに含む。
【００１１】
第1の態様または第2の態様の第2の実装においては、LDPC行列の基底グラフが、m行およびn列の行列によって表され、mは、5以上の整数であり、nは、27以上の整数である。基底グラフは、少なくとも部分行列Aおよび部分行列Bを含む。部分行列Aは、5行および22列の行列であり、部分行列Bは、5行および5列の行列である。部分行列Aおよび部分行列Bを含む行列において、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する。
【００１２】
任意で、部分行列Aおよび部分行列Bを含む行列においては、1つの行が、1以上および5以下の重みを有し、その他の4つの行が、17以上および21以下の重みを有する。
【００１３】
たとえば、部分行列Aおよび部分行列Bを含む行列においては、1つの行が重み3を有し、その他の4つの行が重み19を有する。この場合、部分行列Aおよび部分行列Bを含む行列は、基底グラフ30aの行0から行4までの5つの行および列0から列26までの行列のブロックの行または列を含んでもよい。行は、互いに交換され得、列も、互いに交換され得る。たとえば、基底グラフ30aの部分行列Aおよび部分行列Bを含む行列のブロックにおいては、基底グラフ80aのコア行列を得るために、行3と行0とが、互いに交換され得、行2と行1とが、互いに交換され得、列23と列25とが、互いに交換され得る。
【００１４】
上述の実装に基づいて、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、たとえば、基底行列30b-1、30b-2、30b-3、30b-4、および30b-5、および30b-6、30b-7、30b-8、30b-9、および30b-10のいずれか1つによって表され得る。
【００１５】
LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のいずれか1つに対して列の置換、行の置換、または行の置換および列の置換を実行することによって得られた行列によって表され得る。たとえば、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のいずれか1つの行または列を含み得る。
【００１６】
上述の実装に基づいて、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、基底行列80b-1、80b-2、80b-3、80b-4、80b-5、または80b-6のいずれか1つによって表され得る。80b-4は、基底行列30b-3に対して行の置換および列の置換を実行することによって得られる行列であり、80b-5は、基底行列30b-4に対して行の置換および列の置換を実行することによって得られる行列であり、80b-6は、基底行列30b-5に対して行の置換および列の置換を実行することによって得られる行列である。
【００１７】
異なるブロック長をサポートするために、LDPC符号は、異なるリフティングファクタ(lifting factor)Zを必要とする。上述の実装に基づいて、可能な実装において、異なるリフティングファクタZに対応する基底行列が、その異なるリフティングファクタZに基づいて使用される。
【００１８】
たとえば、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-1であり得、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-2であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-3であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-4であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-5であり得る。
【００１９】
別の可能な実装においては、
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-1であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-2であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-3であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-4であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-5であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図に示される基底行列80b-6であり得る。
【００２０】
別の可能な実装において、部分行列Aは、組み込みパンクチャ(built-in puncture)ビットの2つの列をさらに含み得る。
【００２１】
さらに、柔軟な符号化率を得るために、対応するサイズの部分行列C、部分行列D、および部分行列Eが、異なる符号化率を得るためにコア行列に基づいて追加され得る。
【００２２】
部分行列Cは、5行およびmD列のオールゼロ行列であり、
部分行列Dは、mD行および27列の行列であり、
部分行列Eは、mD行およびmD列の単位行列であり、
mDは、整数であり、0≦mD≦41である。
【００２３】
部分行列Dは、行列FのmD個の行を含み、行列Fは、41個の行および27個の列を有し、行列Fの行の重みは、それぞれ、7、7、9、8、7、7、8、6、6、5、6、5、5、6、5、5、5、5、4、4、4、5、4、5、4、4、4、4、3、4、4、4、4、3、3、4、4、3、3、3、および4である。
【００２４】
可能な実装において、行列Fは、基底グラフ30aの行5から行45までおよび列0から列26までを含む行列である。
【００２５】
可能な実装において、行列Fのシフト行列は、基底行列30c-1、30c-2、30c-3、30c-4、または30c-5のいずれか1つによって表され得る。
【００２６】
別の可能な実装においては、図8aに示される基底グラフの行列80aを得るために、基底グラフ30aの行17と行19とは、互いに交換され得、列39と列41とは、互いに交換され得る。別の例として、部分行列Dは、行列FのmD個の行を含み、行の置換は、mD個の行の間で実行されなくても、または行の置換は、mD個の行のうちの1つまたは複数の間で実行されてもよく、部分行列Eは、引き続き対角構造を有する。たとえば、基底グラフ80aを得るために、部分行列Dは、行列FのmD個の行を含み、行列Fの行12と行14が互いに交換され、部分行列Eは、引き続き対角構造を有する。
【００２７】
異なるブロック長をサポートするために、LDPC符号は、異なるリフティングファクタZを必要とする。上述の実装に基づいて、可能な実装において、異なるリフティングファクタZに対応する基底行列が、異なるリフティングファクタZに基づいて使用される。たとえば、
可能な実装においては、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、基底行列の部分行列Dは、30c-1に示されるシフト行列のmD個の行を含み得、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、基底行列の部分行列Dは、30c-2に示されるシフト行列のmD個の行を含み得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底行列の部分行列Dは、30c-3に示されるシフト行列のmD個の行を含み得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底行列の部分行列Dは、30c-4に示されるシフト行列のmD個の行を含み得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底行列の部分行列Dは、30c-5に示されるシフト行列のmD個の行を含み得る。
【００２８】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【００２９】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、80c-1に示され得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、80c-2に示され得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、80c-3に示され得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、80c-4に示され得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、80c-5に示され得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、80c-6に示され得る。
【００３０】
第1の実装のLDPC行列の基底グラフおよび基底行列は、ブロック長が352から8448ビットである符号ブロックの性能要件を満たすことができる。
【００３１】
上述の態様または態様の可能な実装のいずれか1つに基づいて、別の可能な実装において、方法は、リフティングファクタZを決定するステップをさらに含む。たとえば、リフティングファクタZの値は、入力系列の長さKに基づいて決定される。たとえば、入力系列の長さがKである場合、22*Z≧Kを満たすリフティングファクタの中の最小値が、システムにおいて定義された複数のリフティングファクタから決定され得る。
【００３２】
送信端の通信デバイスに関して、LDPC行列を使用することによって入力系列を符号化することは、
リフティングファクタZに対応するLDPC行列を使用することによって入力系列を符号化することを含む。
【００３３】
受信端の通信デバイスに関して、LDPC行列を使用することによって入力系列を復号することは、
リフティングファクタZに対応するLDPC行列を使用することによって入力系列を復号することを含む。
【００３４】
上述の態様または態様の可能な実装のいずれか1つに基づいて、別の可能な実装において、LDPC行列の基底行列は、メモリに記憶され得る。
【００３５】
上述の態様または態様の可能な実装のいずれか1つに基づいて、別の可能な実装において、LDPC行列の基底グラフは、メモリに記憶され、LDPC行列の基底行列の非ゼロ要素のシフト値は、メモリに記憶され得る。
【００３６】
上述の可能な実装に基づいて、可能な設計においては、LDPCの符号化または復号のための基底グラフおよび基底行列のうちの少なくとも一方が、LDPC行列の基底グラフおよび基底行列のうちの少なくとも一方に対して行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる。
【００３７】
第3の態様によれば、通信装置が提供され、装置は、上述の方法の設計の第1の態様の可能な実装のいずれか1つを実行するように構成されたソフトウェアモジュールおよび/またはハードウェア構成要素を含み得る。
【００３８】
可能な設計において、第3の態様において提供される通信装置は、第1の態様において説明されたエンコーダ、決定ユニット、および処理ユニットを含む。決定ユニットは、入力系列を符号化するために必要とされるリフティングファクタZを決定するように構成される。処理ユニットは、リフティングファクタZに対応するLDPC行列を使用することによって入力系列を符号化するように構成される。
【００３９】
任意で、通信装置は、トランシーバをさらに含み、トランシーバは、符号化された情報データに対応する信号を送信するように構成される。
【００４０】
第4の態様によれば、通信装置が提供され、装置は、上述の方法の設計の第2の態様の可能な実装のいずれか1つを実行するように構成されたモジュールを含み得る。モジュールは、ソフトウェアおよび/またはハードウェアであり得る。
【００４１】
可能な設計において、第4の態様において提供される通信装置は、第2の態様において説明されたデコーダ、取得ユニット、および処理ユニットを含む。取得ユニットは、LDPC符号の軟判定値(soft value)およびリフティングファクタZを取得するように構成される。処理ユニットは、情報ビット系列を得るために、リフティングファクタZに対応する基底行列HBに基づいてLDPC符号の軟判定値を復号するように構成される。
【００４２】
通信装置は、トランシーバをさらに含み、トランシーバは、LDPC符号を含む信号を受信するように構成される。
【００４３】
第5の態様によれば、1つまたは複数のプロセッサを含む通信装置が、提供される。
【００４４】
可能な設計において、1つまたは複数のプロセッサは、第1の態様のエンコーダの機能を実装し得る。別の可能な設計において、第1の態様のエンコーダは、プロセッサの一部であり得、プロセッサは、第1の態様のエンコーダの機能に加えてその他の機能を実装し得る。
【００４５】
可能な設計において、1つまたは複数のプロセッサは、第2の態様のデコーダの機能を実装し得る。別の可能な設計において、第2の態様のデコーダは、プロセッサの一部であり得る。
【００４６】
任意で、通信装置は、トランシーバおよびアンテナをさらに含み得る。
【００４７】
任意で、通信装置は、トランスポートブロックのCRCを生成するように構成された構成要素、符号ブロックのセグメンテーションおよびCRC検査のために使用される構成要素、インターリーブのために使用されるインターリーバ、変調処理のために使用される変調器などをさらに含み得る。
【００４８】
任意で、通信装置は、復調のために使用される復調器、デインターリーブのために使用されるデインターリーバ、レートデマッチングのために使用される構成要素などをさらに含み得る。これらの構成要素の機能は、1つまたは複数のプロセッサによって実装され得る。
【００４９】
可能な設計において、これらの構成要素の機能は、1つまたは複数のプロセッサによって実装され得る。
【００５０】
第6の態様によれば、本出願の実施形態は、通信システムを提供し、システムは、第3の態様において説明された通信装置、および第4の態様において説明された通信装置を含む。
【００５１】
第7の態様によれば、本出願の実施形態は、通信システムを提供し、システムは、第5の態様において説明された1つまたは複数の通信装置を含む。
【００５２】
別の態様によれば、本出願の実施形態は、コンピュータストレージ媒体を提供し、コンピュータストレージ媒体は、プログラムを記憶し、プログラムが実行されると、コンピュータに、上述の態様において説明された方法を実行させる。
【００５３】
本出願の別の態様によれば、命令を含むコンピュータプログラム製品が提供される。命令がコンピュータ上で実行されると、コンピュータは上述の態様の方法を実行する。
【００５４】
本出願の実施形態の情報処理方法、装置、通信デバイス、および通信システムによれば、システムの柔軟な符号長および符号化率の要件が、符号化性能およびエラーフロアの観点で満たされ得る。
【図面の簡単な説明】
【００５５】
【図１】LDPC符号の基底グラフ、基底行列、および巡回置換行列の概略図を示している。
【図２】LDPC符号の基底グラフの概略構造図である。
【図３ａ】本出願の実施形態によるLDPC符号の基底グラフの概略図である。
【図３ｂ−１】本出願の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｂ−２】本出願の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−１】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−２】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−３】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−４】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−５】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−６】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−７】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−８】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−９】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−１０】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−１１】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図４】本出願の実施形態によって提供される概略的な性能の図である。
【図５】本出願の別の実施形態によって提供される概略的な性能の図である。
【図６】本出願の実施形態による情報処理装置の概略ブロック図である。
【図７】本出願の実施形態による通信システムの概略ブロック図である。
【図８ａ】本出願の別の実施形態によるLDPC符号の基底グラフの概略図である。
【図８ｂ−１】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｂ−２】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−１】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−２】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−３】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−４】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−５】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−６】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−７】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−８】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−９】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−１０】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図９】本出願の実施形態によるLDPC符号の概略的な性能の図である。
【図１０】本出願の別の実施形態によるLDPC符号の概略的な性能の図である。
【図１１ａ】本出願のさらに別の実施形態によるLDPC符号の基底グラフの概略図である。
【図１１ｂ】図11aにおいて提供されるLDPC符号の基底グラフに基づく基底行列の概略図である。
【図１２】本出願のさらに別の実施形態による基底グラフの概略図である。
【発明を実施するための形態】
【００５６】
理解を容易にするために、本出願のいくつかの用語が、以下で説明される。
【００５７】
本出願において、用語「ネットワーク」および「システム」は、多くの場合、交換可能に使用され、「装置」および「デバイス」も、多くの場合、交換可能に使用される。これらの用語の意味は、当業者によって理解される。「通信装置」は、(ベースバンドチップ、デジタル信号処理チップ、もしくは汎用チップなどの)チップ、端末、基地局、または任意のその他のネットワーキングデバイスであってもよい。
【００５８】
端末は、通信機能を有するデバイスである。端末は、ワイヤレスモデムに接続され、ワイヤレス通信機能を有するハンドヘルドデバイス、車載デバイス、ウェアラブルデバイス、コンピューティングデバイス、または任意のその他の処理デバイスであってよい。端末は、ユーザ機器、移動局、加入者ユニット、局、セルラー電話、携帯情報端末、ワイヤレスモデム、ワイヤレス通信デバイス、ハンドヘルドデバイス、ラップトップコンピュータ、コードレス電話、および無線ローカルループ局など、異なるネットワークにおいて異なる名前で呼ばれ得る。説明を容易にするために、これらのデバイスは、本出願においては単に端末と呼ばれる。
【００５９】
基地局(base station、BS)は、基地局デバイスとも呼ばれることもあり、ワイヤレス通信機能を提供するために無線アクセスネットワーク内に配置されるデバイスである。基地局は、異なるワイヤレスアクセスシステムにおいて異なる名前で呼ばれる場合がある。たとえば、ユニバーサル移動体通信システム(Universal Mobile Telecommunications System、UMTS)ネットワークの基地局は、ノードB(NodeB)と呼ばれ、LTEネットワークの基地局は、進化型ノードB(evolved NodeB、eNBまたはeNodeB)と呼ばれ、新無線(new radio、NR)ネットワークの基地局は、送受信点(transmission reception point、TRP)または次世代ノードB(generation nodeB、gNB)と呼ばれる。その他のネットワークの基地局は、その他の名前で呼ばれ得る。これは、本出願において限定されない。
【００６０】
以下で、本出願の実施形態の技術的な解決策を添付の図面を参照して説明する。
【００６１】
LDPC符号は、パリティチェック行列Hによって表され得る。パリティチェック行列H符号は、基底グラフ(base graph)およびシフト(shift)値を使用することにより取得され得る。基底グラフは、m行およびn列の行列であり、m*n個の行列要素(entry)を含む。各行列要素の値は、0か1のどちらかである。値が0である要素は、ゼロ要素と呼ばれ、Z行*Z列のオールゼロ行列(zero matrix)によって置き換えられ得る。値が1である要素は、非ゼロ要素と呼ばれ、Z行*Z列の巡回置換行列(circulant permutation matrix)によって置き換えられ得る。つまり、基底グラフの各要素は、1つのオールゼロ行列または1つの巡回置換行列を表す。図1の10aは、m = 4およびn = 20である、QC構造(QC structure)を有するLDPC符号の例示的な基底グラフの要素を示している。本明細書において、基底グラフおよび行列の行インデックスおよび列インデックスは、0から番号が付けられているが、これは、単に説明を容易にするためのものであることに留意されたい。たとえば、列0は、基底グラフまたは行列の第1の列を示し、列1は、基底グラフおよび行列の第2の列を示しており、行0は、基底グラフおよび行列の第1の行を示し、行1は、基底グラフおよび行列の第2の行を示しており、以下同様である。
【００６２】
行インデックスおよび列インデックスは、代替的に、1から番号を付けてもよく、この場合には、本明細書において示される行インデックスおよび列インデックスは、対応する行インデックスおよび列インデックスを得るために1ずつ増やされることは理解されるであろう。たとえば、行インデックスおよび列インデックスに1から番号が付けられる場合、列1は、基底グラフおよび行列の第1の列を示し、列2は、基底グラフおよび行列の第2の列を示しており、行1は、基底グラフおよび行列の第1の行を示し、行2は、基底グラフおよび行列の第2の行を示しており、以下同様である。
【００６３】
基底グラフの行iおよび列jの要素の値が1であり、その要素がシフト値Pi,jを割り振られ、Pi,jが0以上の整数である場合、基底グラフの行iおよび列jの、値が1である要素は、Pi,jに対応するZ*Z巡回置換行列によって置き換えられる。Pi,jに対応する巡回置換行列は、サイズZ*Zの単位行列を右にPi,j回循環シフトすることによって得られる行列に等しい。LDPC符号のパリティチェック行列を得るために、値が0である基底グラフの各要素はサイズZ*Zのオールゼロ行列によって置き換えられ、値が1である各要素は、要素のシフト値に対応するサイズZ*Zの巡回置換行列によって置き換えられる。シフト値の位置が、基底グラフに示され得、基底グラフの非ゼロ要素が、そのシフト値に対応する。Zは、正の整数、リフティング(lifting)ファクタであるか、またはリフティングサイズ(lifting size)もしくはlifting factorと呼ばれる場合がある。Zは、システムによってサポートされる符号ブロックサイズおよび情報データのサイズに基づいて決定され得る。パリティチェック行列Hは、(m*Z)*(n*Z)のサイズを有することが分かる。たとえば、リフティングファクタZが4である場合、各ゼロ要素が、サイズ4*4の1つのオールゼロ行列11aによって置き換えられる。P2,3が2である場合、基底グラフの行2および列3の非ゼロ要素が、サイズ4*4の巡回置換行列11dによって置き換えられ、行列11dは、サイズ4*4の単位行列11bを右に2回循環シフトすることによって得られる。P2,4が0である場合、行2および列4の非ゼロ要素が、単位行列11bによって置き換えられる。単なる例が本明細書において説明され、例は限定をなさないことに留意されたい。
【００６４】
Pi,jの値は、リフティングファクタZに応じて決まり得る。同じ位置の、値が1である基底グラフの要素に関して、Pi,jは、異なるリフティングファクタZに関して異なり得る。実装を容易にするために、m*n基底行列が定義され得る。基底行列の要素は、基底グラフの要素と1対1に対応する。基底グラフのゼロ要素は、基底行列において同じ位置を有し、要素は、-1によって示される。基底グラフにおいて値が1である行iおよび列jの非ゼロ要素は、基底行列において同じ位置を有し、要素は、Pi,jによって示され得、Pi,jは、0以上の正の整数である。本出願のこの実施形態において、基底行列は、基底グラフの行列のシフト行列とも呼ばれることがある。
【００６５】
図1は、基底グラフ10aに対応する基底行列10bを示す。
【００６６】
通常、LDPC符号の基底グラフまたは基底行列は、組み込みパンクチャ(built-in puncture)ビットのp列をさらに含み得、pは、0から2までの範囲の整数であり得る。これらの列は、符号化において使用され得るが、列に対応するシステムビットは、送信されない。LDPC符号の基底行列の符号化率は、R = (n - m)/(n - p)を満たす。4行および20列(4*20)の基底行列が組み込みパンクチャビットの2列を含む場合、符号化率は、(20 - 4)/(20 - 2) = 8/9である。
【００６７】
ワイヤレス通信システムにおいて使用されるLDPC符号は、QC-LDPC符号であり、QC-LDPC符号のパリティビットの一部は、二重対角構造またはraptor-like構造を有し、その結果、符号化が、簡素化され得、漸増冗長性ハイブリッド再送(incremental redundancy hybrid repeat)が、サポートされ得る。QC-LDPC符号のためのデコーダにおいては、通常、QC-LDPCシフトネットワーク(QC-LDPC shift network、QSN)、Banyanネットワーク、またはBenesネットワークが、情報の循環シフトを実装するために使用される。
【００６８】
raptor-like構造を有するQC-LDPC符号の基底グラフは、m行およびn列を有する行列であり、基底グラフは、通常、5つの部分行列A、B、C、D、およびEを含み得る。行列の重みは、非ゼロ要素の量によって決定される。行の重み(行重み)は、行内の非ゼロ要素の量であり、列の重み(列重み)は、列内の非ゼロ要素の量である。以下は、図2の200に示される。
【００６９】
部分行列Aは、mA行およびnA列の行列であり、部分行列Aは、mA*nAのサイズを有する。各列は、LDPC符号のうちのZ個のシステムビットに対応し、システムビットは、情報ビットと呼ばれることもある。
【００７０】
部分行列Bは、mA行およびmA列の平方行列であり、部分行列Bは、mA*mAのサイズを有する。各列は、LDPC符号のうちのZ個のパリティビットに対応する。図2の20aに示されるように、部分行列Bは、二重対角構造を有する部分行列B'および重みが3である行列の列(略して、重み3列)を含み、重み3列は、部分行列B'の左側にある。図2の20bまたは20cに示されるように、部分行列Bは、重みが1の行列の列(略して、重み1行列列)をさらに含み得、重み1行列列は、部分行列Bの最初のまたは最後の列にあり得、重み1行列列の非ゼロ要素は、部分行列Bの最後の行にあり、その結果、部分行列Bの最後の行の重みは、1である。
【００７１】
概して、部分行列Aおよび部分行列Bに基づいて生成される行列は、高符号化率の符号化をサポートするために使用され得るコア行列である。
【００７２】
部分行列Cは、オールゼロ行列であり、部分行列Cは、mA×(n-(mA+nA))のサイズを有する。
【００７３】
部分行列Eは、単位行列であり、部分行列Eは、(m - mA)×(m - mA)のサイズを有する。
【００７４】
部分行列Dは、(m - mA)×(nA + mA)のサイズを有し、部分行列Dは、低符号化率のためのパリティビットを生成するために使用され得る。
【００７５】
基底グラフは数学的に表され、Cがオールゼロ行列であり、Eが単位行列であるので、可能な実装においては、部分行列Aおよび部分行列Bを含む行列、または部分行列A、部分行列B、および部分行列Dを含む行列が、符号化または復号のための行列の基底グラフを単に表すために使用され得ることは理解されるであろう。
【００７６】
部分行列B、部分行列C、および部分行列Eの構造が比較的規定されているので、部分行列Aおよび部分行列Dの構造が、LDPC符号の符号化および復号の性能に影響を与える要因の1つになる。
【００７７】
raptor-like構造を有するLDPC行列が符号化のために使用されるとき、可能な実装においては、部分行列Aおよび部分行列Bを含む行列の部分、すなわち、コア行列が、部分行列Bに対応する1つまたは複数のパリティビットを得るために最初に符号化され得、それから、行列全体が、部分行列Eに対応する1つまたは複数のパリティビットを得るために符号化される。部分行列Bが二重対角構造を有する部分行列B'および重み1行列列を含み得るので、符号化中、二重対角構造に対応する1つまたは複数のパリティビットが、最初に取得され得、それから、重み1行列列に対応する1つまたは複数のパリティビットが、取得され得る。
【００７８】
以下で、例示的な符号化の実装を与える。部分行列Aおよび部分行列Bを含むコア行列がHcoreであると仮定して、重み1行列列と、列内の非ゼロ要素がある行とが、行列Hcore-dualを得るためにHcoreから削除される。パリティビットに関するHcore-dual内の部分は、He = [He1 He2]によって表され、He1は、重み3行列列であり、He2は、二重対角構造を有する。LDPC符号の行列の定義によれば、Hcore-dual・[S Pe]T = 0であり、Sは、入力系列であり、情報ビットを含むベクトルであり、Peは、パリティビットを含むベクトルであり、[S Pe]Tは、入力系列SおよびPeを含む転置行列を示す。したがって、Hcore-dualに対応するパリティビットが、入力系列SおよびHcore-dualに基づいてまず計算され得、入力系列Sは、すべての情報ビットを含む。それから、部分行列B内の重み1行列列に対応するパリティビットが、Hcore-dualに対応する得られたパリティビットおよび入力系列Sに基づいて計算される。この場合、部分行列Bに対応するすべてのパリティビットが取得され得る。その後、部分行列Eに対応するパリティビットが、すべての情報ビットおよびすべてのパリティビットを得るために、入力系列Sと部分行列Bに対応するパリティビットとに基づいて、部分行列Dを使用することによって符号化することにより得られる。系列は、符号化を実行することによって得られたすべての情報ビットおよびすべてのパリティビット、つまり、LDPC符号系列を含む。
【００７９】
任意で、LDPC符号化は、短縮(shortening)動作およびパンクチャ(puncturing)動作をさらに含み得る。短縮されたビットおよびパンクチャされたビットは、送信されない。
【００８０】
短縮は、通常、最後の情報ビットから実行され、異なる方法で実行され得る。たとえば、短縮されたビットの量が、s0であり、入力系列Sの最後のs0ビットが、入力系列S'を得るために、知られているビットに設定され、たとえば、0もしくはnullまたは別の値に設定され得、それから、入力系列S'が、LDPC行列を使用することによって符号化される。別の例として、入力系列Sの最後の(s0 mod Z)ビットが、入力系列S'を得るために、知られているビットに設定され、たとえば、0もしくはnullまたは別の値に設定され得、部分行列Aの最後の
【００８１】
【数１】
2020518145.tif 000003
【００８２】
列が、LDPC行列H'を得るために削除され、入力系列S'が、LDPC行列H'を使用することによって符号化されるか、または部分行列Aの最後の
【００８３】
【数２】
2020518145.tif 000004
【００８４】
列が、入力系列S'の符号化に参加しない。符号化の後、短縮されたビットは、送信されない。
【００８５】
パンクチャは、1つもしくは複数の組み込みパンクチャビット、または入力系列内の1つもしくは複数のパリティビットに対して実行され得る。また、通常、パリティビットをパンクチャすることは、パリティビットの最後の1ビットからである。代替的に、パンクチャは、システムの予め設定されたパンクチャパターンに基づいて実行され得る。可能な実装においては、入力系列が最初に符号化され、それから、パンクチャされる必要があるビットの量pに基づいて、パリティビットの最後のpビットが選択されるか、またはシステムの予め設定されたパンクチャパターンに基づいてpビットが選択され、pビットは送信されない。別の可能な実装において、パンクチャされたビットに対応する行列内のp列およびこれらの列内の非ゼロ要素があるp行が、やはり決定され得、行および列は、符号化において使用されず、したがって、対応するパリティビットは、生成されない。
【００８６】
本明細書において説明される符号化の実装は、例として使用されるに過ぎないことに留意されたい。当業者に知られているその他の符号化の実装が、本出願において提供される基底グラフおよび/または基底行列に基づいて使用され得、符号化の実装は、本明細書において限定されない。本出願の復号は、複数の復号方法、たとえば、min-sum(MS)復号方法またはbelief propagation復号方法において実行され得る。MS復号方法は、Flood MS復号方法と呼ばれることがある。たとえば、入力系列が、初期化され、1回または複数回の反復が、実行される。硬判定検出が、反復の後に実行され、硬判定の結果が、検査される。復号結果が検査方程式を満たす場合、復号が成功し、反復が終了し、判定結果が出力される。復号結果が検査方程式を満たさない場合、反復回数の最大量以内で反復が再び実行され、検査がまだ失敗する場合、反復回数の最大量が達せられるとき、復号は失敗する。MS復号の原理は、当業者によって理解され、詳細は、本明細書において説明されない。
【００８７】
復号方法は、本明細書において例として使用されるに過ぎず、当業者に知られているその他の復号方法が、本出願において提供される基底グラフおよび/または基底行列に基づいて使用され得、復号方法は、本出願において限定されないことに留意されたい。
【００８８】
LDPC符号は、基底グラフおよび基底行列に基づいて取得され得、LDPC符号の性能の上限は、基底グラフまたは基底行列に対して密度発展を実行することによって決定され得る。LDPC符号のエラーフロア(error floor)は、基底行列のシフト値に基づいて決定される。符号化および復号の性能を改善することならびにエラーフロアを低減することは、基底グラフおよび基底行列を設計する目的の一部である。符号長は、ワイヤレス通信システムにおいて柔軟である。符号ブロックは、40ビットもしくは1280ビットなどの短いブロック長を有し得るか、または符号ブロックは、5000ビットもしくは8448ビットなどの長いブロック長を有し得る。図3a、図3b、および図3cは、LDPC符号の基底グラフおよび基底行列の例であり、例は、最大8448ビットのブロック長を有する符号ブロックの性能要件を満たすことができる。図8a、図8b、および図8cは、別のLDPC符号の基底グラフおよび基底行列の例を与える。図11aおよび図11bは、別のLDPC符号の基底グラフおよび基底行列の例を与える。説明および理解を容易にするために、行インデックスおよび列インデックスが、図3a、図3b、および図3cの最も上側および最も左側にそれぞれ示される。図4および図5は、2つの異なる符号化率の、図3aおよび図3cに示されるLDPC符号の性能の概略図をそれぞれ与える。図3aは、LDPC符号の基底グラフ30aの例を示す。図において、最も上の行の0から67が、列インデックスを示し、最も左の列の0から45は、行インデックスを示す。具体的には、基底グラフは、46行および68列を有する。
【００８９】
部分行列Aは、システムビットに対応し、5行および22列を有し、基底グラフ30aの行0から行4までおよび列0から列21までの要素を含む。
【００９０】
部分行列Bは、パリティビットに対応し、5行および5列を有し、基底グラフ30aの行0から行4までおよび列22から列26までの要素を含む。
【００９１】
部分行列Aおよび部分行列Bは、LDPC符号の基底グラフの中のコア行列を形成し、具体的には、5行および27列の行列を形成し、高符号化率の符号化のために使用され得る。たとえば、部分行列Aおよび部分行列Bを含むコア行列においては、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する。
【００９２】
部分行列Aは、組み込みパンクチャビットの2列を含み得、パンクチャの後、コア行列によってサポートされ得る符号化率は、22/(27-2) = 0.88である。部分行列Aにおいては、1つの列が重み5を有し、1つの列が重み4を有し、その他の20列が重み3を有する。たとえば、組み込みパンクチャビットの2つの列の重みは、それぞれ、5および4であり得る。
【００９３】
部分行列Bの最後の行(行4)の重みと最後の列(部分行列Bの列4、つまり、コア行列の列26)の重みとの両方は、1である。部分行列Bは、1つの重み3列を含み、具体的には、部分行列Bの列0(コア行列の列22)の重みは、3である。部分行列Bの列1から列3まで(コア行列の列23から列25まで)および部分行列Bの行0から行3までは、二重対角構造を形成する。
【００９４】
基底グラフ30aのコア行列は、重みが19である4つの行および重みが3である1つの行を含む。部分行列Aおよび部分行列Bを含むコア行列の行の重みは、19、19、19、19、および3である。コア行列の行は交換され得、たとえば、行0と行2とが互いに交換され、行1と行3とが互いに交換されることに留意されたい。重みが3である行は、基底グラフ30aのコア行列の列0から26までの行4であり得、重みが19である行は、それぞれ、基底グラフ30aのコア行列の列0から26までの行0から行3までであり得る。これらの行は、互いに交換され得、列も、互いに交換され得る。たとえば、コア行列の列8と列25とが、互いに交換され得、列10と列26とが、互いに交換され得る。たとえば、コア行列の行3と行0とが、互いに交換され得、行2と行1とが、互いに交換され得る。部分行列Bの二重対角構造を保つために、これに基づいて、図8aに示される基底グラフ80aのコア行列、つまり、80aの行0から行5までおよび列0から列26までを含む行列を得るために、列23と列25とが、互いに交換され得る。単なる例が本明細書において提供されることに留意されたい。実際の応用においては、行の置換および列の置換が、システムの要件に基づいて柔軟に設計され得る。
【００９５】
Table 1(表1)は、基底グラフ80aのための列の置換の例を示す。説明を容易にするために、コア行列の27個の列の、列の置換によって得られる系列が、本明細書において与えられる。列インデックスは、置換の後の行列の列インデックスであり、0から番号を振られる。置換前の列インデックスは、置換の前の行列の列インデックスである。Table 1(表1)に示されるように、置換前の行列の列8および列10は、列25および列26に移され、置換前の行列の列9は、列8に移され、置換前の行列の列11から列21までは、列9から列19までに移され、置換前の行列の列25および列26は、列20および列21までに移される。このようにして、特定の符号化率および特定の符号長の性能が、改善され得る。たとえば、図9は、Table 1(表1)に示される基底行列に基づく性能の概略図である。性能は、2/3の符号化率、1E-2のBLER、および672から960までの範囲の符号長の場合に改善される。図10は、Table 1(表1)に示される基底行列に基づく性能の概略図である。性能は、2/3の符号化率、1E-2のBLER、および1952から2624までの範囲の符号長の場合に改善される。
【００９６】
【表１】
2020518145.tif 000005
【００９７】
行列において、行は、互いに交換され得、列も、互いに交換され得、行の置換は、行列の列の重みを変えず、列の置換は、行列の行の重みを変えないので、行列の非ゼロ要素の量は、不変であることが理解されるであろう。行の置換および列の置換の後の基底グラフ80aの行の重みは、不変である。性能は、行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる基底グラフに関して影響を受けない。
【００９８】
本出願において、性能が影響を受けないことは、影響が許容可能であり、全体として許容範囲内に収まることを意味することに留意されたい。たとえば、性能は、一部のシナリオまたは一部の範囲において許容可能な範囲内で低下するが、一部のシナリオまたは一部の範囲において改善されるので全体としてほとんど影響を受けない。
【００９９】
基底グラフ30aのコア行列および基底グラフ80aのコア行列が、例として使用される。行の置換が基底グラフ30aに対して実行された後、行の順序が変わる点を除いて、基底グラフ80aのコア行列は、基底グラフ30aのコア行列の列を引き続き含み、1つの行は、重み3を有し、その他の4つの行は、重み19を有する。列の置換が基底グラフ30aに対して実行され、たとえば、列5と列7とが互いに交換される場合、基底グラフ30aのものであり、列の置換を実行することによって得られるコア行列が基底グラフ30aのコア行列の列を引き続き含むことが分かる。列の順序が変わる点を除いて、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する。本明細書において与えられるのは単なる例であり、例は限定をなさないことに留意されたい。
【０１００】
LDPC符号の所与の基底グラフまたは所与の基底行列に関して、行列要素へのいくつかの変更の性能への影響は、通常、許容可能である。たとえば、実装においては、基底グラフ30aのコア行列に基づいていくつかの変更がなされ得る。たとえば、1つの行が、1以上および5以下の重みを有し、その他の4つの行が、17以上および21以下の重みをそれぞれ有する。たとえば、1つの行が、重み2を有し、その他の4つの行が、重み18を有するか、または1つの行が、重み4を有し、その他の4つの行が、重み17、18、19、および19をそれぞれ有する。本出願において提供される解決策を参照すると、いくつかの行の重みが1もしくは2だけ増やされるかまたは減らされ得、これは本出願において限定されないことが理解されるであろう。
【０１０１】
部分行列Aは、組み込みパンクチャビットの列の要素以外の要素がゼロ要素である1つの行も含み得る。さらに、コア行列または基底グラフの行列の行の重みを最小化するために、行は、通常、部分行列Bの重みが1である行と同じである。たとえば、基底グラフ30aまたは80aに示されるように、組み込みパンクチャビットの2つの列が存在し、具体的には、列0および列1は組み込みパンクチャビットの列である。行4において、列0および列1の要素は、非ゼロ要素であり、列2から列25までの要素は、ゼロ要素であり、列26の要素は、非ゼロ要素であり、行4の重みは、3である。行4は、コア行列の中でおよび基底グラフの行列全体の中でさえも最小の重みを有する。そのような設定は、符号化および復号の性能を改善することができる。
【０１０２】
異なるブロック長をサポートするために、LDPC符号は、異なるリフティングファクタZを必要とする。たとえば、リフティングファクタZは、以下の値、すなわち、16、18、20、22、24、26、28、30、32、36、40、44、48、52、56、60、64、72、80、88、96、104、112、120、128、144、160、176、192、208、224、240、256、288、320、352、もしくは384のうちの1つまたは複数であり得る。異なるブロック長の場合にLDPC符号の性能を保証するために、異なるリフティングファクタZに対応する基底行列が、異なるリフティングファクタZに基づいて使用され得る。図3bは、基底グラフ30aのコア行列の複数の基底行列の例を示す。基底行列は、基底グラフ30aのコア行列およびリフティングファクタZに基づいて得られる。基底グラフ30aの行iおよび列jの非ゼロ要素は、基底行列の行iおよび列jのシフト値Pi,jを有し、基底グラフ30aのゼロ要素は、シフト行列において-1またはnullによって表される。
【０１０３】
可能な実装においては、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bの基底行列30b-1に示され得るか、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bの基底行列30b-2に示され得るか、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bの基底行列30b-3に示され得るか、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bの基底行列30b-4に示され得るか、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図の基底行列30b-5に示され得る。
【０１０４】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１０５】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-6であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-7であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-8であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-3であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bの30b-4に示される基底行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図に示される基底行列30b-5であり得る。
【０１０６】
上述の実装に基づいて、別の可能な実装においては、性能をさらに改善するために、基底グラフが、より多くの基底行列に対応し得、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分が、異なる基底行列に対応し得る。たとえば、
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-6であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-7であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-8であり得、または
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-9もしくは30b-10であり得、または
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-3であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3bに示される基底行列30b-4であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図に示される基底行列30b-5であり得る。
【０１０７】
図8bは、基底グラフ80aのコア行列の複数の基底行列の例を示す。基底行列は、基底グラフ80aのコア行列およびリフティングファクタZに基づいて得られる。基底グラフ80aの行iおよび列jの非ゼロ要素は、基底行列の行iおよび列jのシフト値Pi,jであり、基底グラフ80aのゼロ要素は、シフト行列において-1またはnullによって表される。
【０１０８】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１０９】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-1であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-2であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-3であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-4であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-5であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図に示される基底行列80b-6であり得る。
【０１１０】
上述の実装に基づいて、別の可能な実装においては、性能をさらに改善するために、基底グラフが、より多くの基底行列に対応し得、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分が、異なる基底行列に対応し得る。たとえば、
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-1であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-2であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-3であり得、または
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-7もしくは80b-8であり得、または
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-4であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-5であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図に示される基底行列80b-6であり得る。
【０１１１】
別の可能な実装において、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8bに示される基底行列80b-9であり得る。リフティングファクタZが複数の方法で分類され得るので、リフティングファクタZのグループのために使用される基底行列が、それに応じて性能の観点で考慮され得る。
【０１１２】
たとえば、リフティングファクタZの値は、入力系列の長さKに基づいて決定される。たとえば、入力系列の長さがKである場合、22*Z≧Kを満たすリフティングファクタの中の最小値が、システムにおいて定義された複数のリフティングファクタから決定され得、行列のリフティングファクタの値として使用され得る。さらに、対応する基底行列が、決定されたリフティングファクタに基づいて選択され得る。Table 2(表2)は、基底行列とリフティングファクタとの間の対応の例を示す。システムにおいて定義された複数のリフティングファクタは、8つのグループ、つまり、8つの集合に分類され、集合のインデックスは、1から8までである。それに対応して、8つの基底行列PCM1からPCM8が存在する。
【０１１３】
【表２】
2020518145.tif 000006
【０１１４】
たとえば、基底行列80b-9は、PCM8として使用され得、この場合、リフティングファクタZは、15、30、60、120、または240のいずれか1つであり、80b-9は、基底行列として使用され得、それに対応して、基底行列は、LDPCのパリティチェック行列を得るためにリフティングファクタZを使用することによってリフト(lift)される。さらに、Zが24以上であるとき、基底行列80b-9は、比較的高い性能を有する。
【０１１５】
同様に、基底行列内で、行は互いに交換され得、列も互いに交換され得る。行の置換または列の置換のうちの少なくとも1つが基底グラフに対して実行される場合、同じ置換が、対応する基底行列に対しても実行される。
【０１１６】
上述の実装において、80b-1は、基底行列30b-6に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-2は、基底行列30b-7に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-3は、基底行列30b-8に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-4は、基底行列30b-3に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-5は、基底行列30b-4に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-6は、基底行列30b-5に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-7は、基底行列30b-9に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-8は、基底行列30b-10に対して行の置換および列の置換を実行することによって得られる基底行列であることが知られ得る。
【０１１７】
確かに、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、もしくは30b-10のいずれか1つの行または列を含み得、つまり、列の置換、または行の置換、または行の置換および列の置換を実行することによって得られる行列が、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のいずれか1つに対して実行されることは理解されるであろう。
【０１１８】
柔軟な符号化率を得るために、対応するサイズの部分行列C、部分行列D、および部分行列Eが、異なる符号化率を得るためにコア行列に基づいて追加され得る。部分行列Cがオールゼロ行列であり、部分行列が単位行列であるので、部分行列Cおよび部分行列Eのサイズは、符号化率に基づいて決定され、部分行列Cおよび部分行列Eの構造は、比較的決まっている。主に、コア行列および部分行列Dが、符号化および復号の性能に影響を与える。行および列が、対応するC、D、およびEを形成するためにコア行列に基づいて追加され、その結果、異なる符号化率が取得され得る。たとえば、基底グラフ30aのコア行列または基底グラフ80aのコア行列が、コア行列として使用され得、対応する部分行列C、D、およびEが、異なる符号化率のための符号化または復号の要件を満たすために追加される。
【０１１９】
部分行列Dの列数は、部分行列Aおよび部分行列Bの列数の合計であり、部分行列Dの行数が、主に、符号化率に関連する。基底グラフ30aが、例として使用される。対応する部分行列Dの列数mDは、(nA + mA) = 27列である。LDPC符号によってサポートされる符号化率がRmである場合、LDPC符号の基底グラフまたは基底行列のサイズは、m*nであり、n = nA/Rm + p、およびm = n - nA = nA/Rm + p - nAである。最低符号化率Rmが1/3であり、組み込みパンクチャビットの列の量pが2である場合、基底グラフ30aの例においては、n = 68であり、m = 46であり、部分行列Dの行数mDは最大でm - mA = 46 - 5 = 41までであり得、0≦mD≦41である。
【０１２０】
説明を容易にするために、41行および27列の行列Fが定義され得る。この場合、部分行列Dは、行列FのmD個の行を含み得、対応するサイズの部分行列D、部分行列A、部分行列B、および部分行列Eは、符号化率が22/(25 + mD)であるLDPC符号のものである基底グラフを形成する。基底グラフ30aにおいては、mD = 41であり、部分行列Dは、それに対応して、41個の行および27個の列を含む。具体的には、部分行列Dが、行列Fであり、LDPC符号によってサポートされる対応する符号化率は、22/66 = 1/3である。基底グラフ30aの行5から行45までおよび列0から列26までを含む行列が行列Fであることが、知られ得る。
【０１２１】
例として図30aに示される行列Fの行重みは、順に、7、7、9、8、7、7、8、6、6、5、6、5、5、6、5、5、5、5、4、4、4、5、4、5、4、4、4、4、3、4、4、4、4、3、3、4、4、3、3、3、および4である。
【０１２２】
部分行列Eは単位行列であるから、基底グラフ30aの行の重みは、8、8、10、9、8、8、9、7、7、6、7、6、6、7、6、6、6、6、5、5、5、6、5、6、5、5、5、5、4、5、5、5、5、4、4、5、5、4、4、4、および5である。
【０１２３】
本出願においては、基底グラフの同じ列の2つの隣接する行に最大で1つの非ゼロ要素が存在するので、2つの行は、互いに直交する。
【０１２４】
可能な実装において、行列Fは、準直交(quasi-orthogonal)構造を有する行列であり得る。行列Fの組み込みパンクチャビットの列以外の列を含む行列のブロックにおいては、同じ列内のどの2つの隣接する行にも最大で1つの非ゼロ要素しか存在せず、つまり、行列Fの組み込みパンクチャビットの列以外の列を含む行列のブロックは、直交構造を有する。基底グラフ30aの例において、行列Fは、行5から行45までおよび列0から列26までを含む行列であり、列0および列1は、組み込みパンクチャビットの列である。行5から行45までおよび列2から列26までを含む行列のブロックにおいて、行5および行6は、互いに直交しており、行6および行7は、互いに直交しており、行23および行24は、互いに直交しており、行32および行33は、互いに直交しており、以下同様である。mD = 15である場合、LDPC符号の基底グラフの部分行列Dは、15個の行および27個の列を有する。部分行列Dは、基底グラフ30aの行列Fの行0から行14まで、つまり、基底グラフ30aの行5から行19まで、および列0から列26までを含む行列であり得る。LDPC符号によってサポートされる対応する符号化率は、22/40 = 0.55である。この符号化率において、LDPC符号の基底グラフは、基底グラフ30aの行0から行19までおよび列0から列41までを含む行列に対応する。部分行列Eは、15行および15列の単位行列であり、部分行列Cは、5行および15列のオールゼロ行列である。
【０１２５】
mD = 19である場合、LDPC符号の基底グラフの部分行列Dは、19個の行および27個の列を有する。部分行列Dは、基底グラフ30aの行列Fの行0から行18まで、つまり、基底グラフ30aの行5から行23まで、および列0から列26までを含む行列であり得る。LDPC符号によってサポートされる対応する符号化率は、22/44 = 1/2である。この符号化率において、LDPC符号の基底グラフは、基底グラフ30aの行0から行23までおよび列0から列41までを含む行列に対応する。部分行列Eは、19行および19列の単位行列であり、部分行列Cは、5行および19列のオールゼロ行列である。
【０１２６】
これは、mDが別の値である場合にも当てはまり、詳細は、説明されない。
【０１２７】
LDPC符号の基底グラフおよび基底行列において、行が互いに交換され得、列も互いに交換され得ることに留意されたい。たとえば、図8aに示される基底グラフの行列80aを得るために、基底グラフ30aの行17と行19とは、互いに交換され得、列39と列41とは、互いに交換され得る。別の例として、部分行列Dは、行列FのmD個の行を含み、行の置換は、mD個の行の間で実行されないか、または行の置換は、mD個の行のうちの1つまたは複数の間で実行され得、部分行列Eは、引き続き、対角構造を有し、行の置換もしくは列の置換は、部分行列Eに対して実行されない。たとえば、基底グラフ80aを得るために、行列Fの行12と行14とが、互いに交換され、部分行列Dは、部分行列FのmD個の行を含み、部分行列Eは、引き続き対角構造を有する。行の置換の前に、行列Fは、準直交行列であり、置換の後に、行列Fは、引き続き準直交行列である。たとえば、基底グラフ80aにおいて、行列Fは、行5から行45までおよび列0から列26までを含む行列であり、列0および列1は、組み込みパンクチャビットの列である。行5から行45までおよび列2から列26までを含む行列のブロックにおいて、行5および行6は、互いに直交しており、行29および行30は、互いに直交しており、以下同様である。基底グラフまたは基底行列が部分行列Dを含む場合、コア行列の列が互いに交換されるとき、部分行列Dの対応する列も、互いに交換される必要があることは理解されるであろう。たとえば、コア行列の列23および列25が互いに交換される場合、それに対応して、部分行列Dの列23および列25も、互いに交換される必要がある。単なる例が本明細書において提供され、例は限定をなさない。
【０１２８】
本出願の実施形態において、部分行列Dは、準直交構造を有し、具体的には、組み込みパンクチャビットの列以外の各列の2つの隣接する行は、直交している。たとえば、本出願の実施形態による基底グラフ30a、基底グラフ80a、基底グラフ170a、および図12内で与えられた部分行列Dにおいて、列0および列1は、組み込みパンクチャビットの列であり、その他の列の各々の2つの隣接する行は、直交している。組み込みパンクチャビットの列は、その他の列であり得ることに留意されたい。これは、本明細書において限定されない。
【０１２９】
別の可能な実装においては、準直交構造を有する行列Fが、少なくとも2つの直交する行を含み得、少なくとも2つの直交する行の中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。たとえば、mD>30の場合、LDPC符号によってサポートされる対応する符号化率は、2/5未満であり、行列Fの最後の11行、つまり、行列Fの行30から行40までおよび列0から列26までを含む部分行列は、直交し得る。具体的には、行列Fにおいて、行0から行29までの中の2つの隣接する行の組み込みパンクチャビットの列以外の列には最大で1つの非ゼロ要素しか存在せず、行30から行40までの中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。
【０１３０】
別の例として、行列Fの行26から行40までおよび列0から列26までを含む部分行列は、直交し得る。具体的には、行列Fにおいて、行0から行25までの中の2つの隣接する行の組み込みパンクチャビットの列以外の列には最大で1つの非ゼロ要素しか存在せず、行26から行40までの中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。図11aに示される基底グラフ170aにおいて、行列Fは、基底グラフの行5から行45までおよび列0から列26までを含む行列であり、行列Fは、準直交構造を有し、行列Fの行26から行40までは、直交しており、行26から行40までの中の2つの隣接する行の各列には、最大で1つの非ゼロ要素しか存在しない。
【０１３１】
基底グラフ170aのコア行列は、基底グラフ80aのコア行列と同じである。各符号化率における部分行列Dに関して、部分行列Dの性能に影響を与えることなく、各行の1つもしくは2つの非ゼロ要素または1つもしくは2つのゼロ要素に変更がなされ得る。
【０１３２】
別の例として、mD>20の場合、行列Fの最後の21行、つまり、行列Fの行25から行45までおよび列0から列26までを含む部分行列は、直交し得る。具体的には、行列Fにおいて、行0から行19までの中の2つの隣接する行の組み込みパンクチャビットの列以外の列には最大で1つの非ゼロ要素しか存在せず、行20から行40までの中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。図11aに示される基底グラフ170aのコア行列は、基底グラフ80aのコア行列と同じである。行5から行45までが、準直交構造を満たすか、または行5から行25までが、準直交構造を満たし、行25から行45までが、準直交構造を満たす。
【０１３３】
図12に示される基底グラフのコア行列は、基底グラフ80aのコア行列と同じであり、コア行列の行5から行45までは、準直交構造を有する。
【０１３４】
図3cに示される基底行列30cは、基底グラフ30aの基底行列の例である。基底グラフ30aの行iおよび列jの非ゼロ要素は、基底行列30cにおいて同じ位置を有し、非ゼロ要素の値は、シフト値Pi,jである。部分行列Dは、行列Fのシフト行列のmD個の行を含む。図3cに示される基底行列30cに関しては、mD = 41であり、mDは異なる符号化率に基づいて選択され得る。部分行列Dに対応するシフト行列は、行列Fのシフト行列である。本明細書において、行列Fのシフト行列は、行列Fの行iおよび列jの非ゼロ要素をシフト値Pi,jによって置き換えることによって得られ、ゼロ要素は、シフト行列において-1またはnullによって表される。単なる例が本明細書において提供され、基底グラフは80a、180aなどであり得、基底グラフは本明細書において1つずつ説明されないことに留意されたい。
【０１３５】
可能な実装において、行列Fのシフト行列は、行列30c-1から30c-10までのいずれか1つの行または列を含み得る。たとえば、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、行列30c-1であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、行列30c-2であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、行列30c-3であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、行列30c-4であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、行列30c-5であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。
【０１３６】
基底行列30cの部分行列Dは、異なる符号化率のものであり、基底グラフ30aに対応する基底行列を得るために、行列Fの各シフト行列のmD個の行によって置き換えられる。mD = 41である場合、基底行列30cの行5から行45までおよび列0から列26までを含む行列は、基底グラフ30aに対応する46行および68列の各基底行列を得るために行列Fの各シフト行列によって置き換えられる。この場合、符号化率は1/3である。
【０１３７】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１３８】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、行列30c-6であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、行列30c-7であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、行列30c-8であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、行列30c-3であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、行列30c-4であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、行列30c-5であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。
【０１３９】
上述の実装に基づいて、別の可能な実装においては、性能をさらに高めるために行列Fのシフト行列に関するより多くの選択肢が存在する。たとえば、行列Fのシフト行列は、行列30c-9であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または行列30c-10であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。たとえば、リフティングファクタは、以下のように設計され得る。
【０１４０】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、行列30c-6であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、行列30c-7であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、行列30c-8であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、行列Fのシフト行列は、行列30c-9であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または行列30c-10であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、行列30c-3であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、行列30c-4であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、行列30c-5であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。
【０１４１】
別の可能な実装において、行列Fのシフト行列は、行列80c-1から80c-9までのいずれか1つの行または列を含み得る。たとえば、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１４２】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、行列80c-1であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、行列80c-2であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、行列80c-3であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、行列80c-4であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、行列80c-5であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、行列80c-6であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。
【０１４３】
上述の実装に基づいて、別の可能な実装においては、性能をさらに高めるために、リフティングファクタZがより細かい粒度で設計され得、したがって、行列Fのシフト行列に関するより多くの選択肢が存在する。たとえば、行列Fのシフト行列は、行列80c-7であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または行列80c-8であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。たとえば、リフティングファクタは、以下のように設計され得る。
【０１４４】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、行列80c-1であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、行列80c-2であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、行列80c-3であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、行列Fのシフト行列は、行列80c-7であるかもしくは行列80c-7に対して行/列の置換を実行することによって得られた行列であり得、または行列80c-8であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、行列80c-4であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、行列80c-5であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、行列80c-6であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。
【０１４５】
別の可能な実装においては、リフティングファクタZが15、30、60、120、または240のうちのいずれか1つである場合、行列Fのシフト行列は、行列80c-9であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。さらに、Zが24以上であるとき、行列Fのシフト行列の性能は、シフト行列が80c-9であるときに比較的高い。
【０１４６】
同様に、基底行列内で、行は互いに交換され得、列も互いに交換され得る。行の置換または列の置換のうちの少なくとも1つが基底グラフに対して実行される場合、同じ置換が、対応する基底行列に対しても実行される。
【０１４７】
上述の実装において、80c-1は、基底行列30c-6に対して行の置換を実行することによって得られた行列であり、80c-2は、30c-7に対して行の置換を実行することによって得られた行列であり、80c-3は、30c-8に対して行の置換を実行することによって得られた行列であり、80c-4は、30c-3に対して行の置換を実行することによって得られた行列であり、80c-5は、30c-4に対して行の置換を実行することによって得られた行列であり、80c-6は、30c-5に対して行の置換を実行することによって得られた行列であり、80c-7は、30c-9に対して行の置換を実行することによって得られた行列であり、80c-8は、30c-10に対して行の置換を実行することによって得られた行列であることが知られ得る。
【０１４８】
基底行列80cの部分行列Dは、異なる符号化率のものであり、基底グラフ80aに対応する基底行列を得るために、行列Fの各シフト行列のmD個の行によって置き換えられる。mD = 41である場合、基底行列80cの行5から行45までおよび列0から列26までを含む行列は、基底グラフ80aに対応する46行および68列の各基底行列を得るために行列Fの各シフト行列によって置き換えられる。この場合、符号化率は1/3である。
【０１４９】
基底グラフおよび基底行列において行が互いに交換され得、列が互いに交換され得るので、可能な実装においては、基底グラフ30aのコア行列が、基底グラフのコア行列、つまり、部分行列Aおよび部分行列Bを含む部分として使用され得、基底グラフの部分行列Dが、基底グラフ30aの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得ることに留意されたい。それに対応して、基底行列のコア行列は、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のうちの1つであり得、対応する部分行列Dは、以下の行列、すなわち、30c-3、30c-4、30c-5、30c-6、30c-7、30c-8、30c-9、または30c-10のいずれか1つのmD個の行を含み得る。コア行列および対応する部分行列Dは、リフティングファクタに基づいて選択され得る。
【０１５０】
別の可能な実装においては、基底グラフ80aのコア行列が、基底グラフのコア行列、つまり、部分行列Aおよび部分行列Bを含む部分として使用され得、基底グラフの部分行列Dが、基底グラフ80aの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得る。それに対応して、基底行列のコア行列は、80b-1、80b-2、80b-3、80b-4、80b-5、80b-6、80-7、80b-8、または80b-9のうちの1つであり得、対応する部分行列Dは、以下の行列、すなわち、80c-1、80c-2、80c-3、80c-4、80c-5、80c-6、80c-7、80c-8、または80c-9のいずれか1つのmD個の行を含み得る。コア行列および対応する部分行列Dは、リフティングファクタに基づいて選択され得る。
【０１５１】
別の可能な実装においては、基底グラフ80aのコア行列が、基底グラフのコア行列、つまり、部分行列Aおよび部分行列Bを含む部分として使用され得、基底グラフの部分行列Dが、基底グラフ170aに示されるように、基底グラフ170aの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得る。それに対応して、基底行列は、図17bの基底行列170b-1の行5から行45までおよび行0から行4までの中のmD個の行を含み得る。
【０１５２】
別の可能な実装においては、基底グラフ80aのコア行列が、基底グラフのコア行列として使用され得、基底グラフの部分行列Dが、図12に示されるように、図12に示される基底グラフの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得る。
【０１５３】
本出願において、準直交構造は、2つの隣接する行にのみ限定されず、準直交構造を満たす行列は、複数のグループを含むように設計され得、各グループは、少なくとも2つの行、たとえば、3つの行または4つの行を含み、各グループに含まれる行は、準直交していることが理解されるであろう。
【０１５４】
図5aおよび図5bに示される性能曲線の図において、LDPC1は、LDPC符号が基底グラフ30aに対応する基底行列に基づいて符号化することによって得られることを示し、LDPC2は、比較のために共通のLDPC符号を示す。水平座標は、情報ビット系列の長さを示し、長さの単位は、ビットである。垂直座標は、シンボル信号対雑音比(symbol signal-to-noise ratio)(Es/N0)である。性能曲線は、BLERがそれぞれ0.01および0.0001であるときの、異なる情報ビット系列長の場合の、LDPC1およびLDPC2に関するシンボル信号対雑音比の性能を示す。図5aにおいて、符号化率Rは8/9であり、図5bにおいて、符号化率Rは1/3である。同じBLERにおいて、LDPC1のシンボル信号対雑音比は、異なる情報ビット系列長の場合、LDPC2のシンボル信号対雑音比未満であり、つまり、LDPC1の性能は、LDPC2の性能よりも高いことが知られ得る。
【０１５５】
本出願の実施形態において提供される符号化方法において、エンコーダは、LDPC行列を使用することによって入力系列を符号化する。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフであり得、LDPC行列の基底行列HBは、上述の例のいずれかの基底行列であり得る。エンコーダの入力系列は、情報ビット系列であり得、または以下の処理、すなわち、CRCの付加もしくは充填ビット(filler bit)の挿入のうちの少なくとも1つの後に得られた情報ビット系列であり得る。
【０１５６】
方法は、リフティングファクタZを決定するステップをさらに含む。リフティングファクタZの値は、入力系列の長さKに基づいて決定され得る。情報ビット系列は、符号ブロック(code block)と呼ばれることもあり、トランスポートブロックに対して符号ブロック分割を実行することによって取得され得る。情報ビット系列の長さがKcである場合、22*Z≧Kcを満たすリフティングファクタの最小値が、システムにおいて定義された複数のリフティングファクタから決定され得る。Kc = 3800であり、システムにおいて定義されたリフティングファクタが16、18、20、22、24、26、28、30、32、36、40、44、48、52、56、60、64、72、80、88、96、104、112、120、128、144、160、176、192、208、224、240、256、288、320、352、および384を含む場合、Zは176であると決定され得る。単なる例が本明細書において提供され、例は限定をなさないことに留意されたい。
【０１５７】
可能な設計においては、入力系列の長さがK = Kb・Zであり、つまり、Z = K/Kbであるように入力系列を得るために、情報ビット系列に対して充填(filling)が実行され得る。たとえば、充填ビットの値は、null、0、またはシステムにおいて合意されたその他の値であり得る。符号化の後、これらの充填ビットは、識別可能であり、送信されず、これは、本出願において限定をなさない。
【０１５８】
エンコーダがLDPC行列Hを使用することによって入力系列を符号化することは、リフティングファクタZに対応するLDPC行列を使用することによって入力系列を符号化することであり得る。
【０１５９】
可能な実装において、入力系列は、c = {c0, c1, c2, ..., cK-1}であり、入力系列cの長さは、Kであり、エンコーダが入力系列cを符号化した後に得られた出力系列は、d = {d0, d1, d2, ..., dN-1}である。Kは、0よりも大きな整数であり、Kは、リフティングファクタZの整数倍であり得る。
【０１６０】
出力系列dは、入力系列cのK0ビットおよびパリティ系列wのパリティビットを含み、K0は、0よりも大きく、K以下である整数であり、パリティ系列wの長さは、N - K0であり、w = {w0, w1, w2, ..., wN-K0-1}である。
【０１６１】
パリティ系列wおよび入力系列cは、式(1)を満たす。
【０１６２】
【数３】
2020518145.tif 000007
【０１６３】
式中、cT = [c0, c1, c2, ..., cK-1]Tであり、cTは、入力系列のビットを含むベクトルの転置ベクトルであり、wT = [w0, w1, w2, ..., wN-K0-1]Tであり、wTは、パリティ系列のビットを含むベクトルの転置ベクトルであり、0Tは、列ベクトルであり、0Tのすべての要素の値は、0である。
【０１６４】
Hは、上述の実施形態において説明されたいずれかに基底グラフに従って得られたLDPC行列であり、Hの基底グラフは、m個の行およびn個の列を有し、上述の実施形態、たとえば、30a、80a、170a、および図12において説明されたいずれかの基底グラフであり得る。
【０１６５】
設計において、Hの基底グラフは、組み込みパンクチャビットのp個の列を含み、pは、0以上の整数であり、組み込みパンクチャビットのp個の列に対応する情報ビットは、出力されず、出力系列は、組み込みパンクチャビットのp個の列に対応する情報ビットを含まない。この場合、K0 = K - p・Zである。たとえば、p = 2である場合、K0 = K - 2・Zであり、パリティ系列wの長さは、N + 2・Z - Kである。組み込みパンクチャビットのp個の列が符号化に関わる場合、K0 = Kであり、パリティ系列wの長さは、N - Kである。
【０１６６】
それに対応して、Hは、M個の行および(N + p・Z)個の列またはM個の行およびN個の列を有し得、Hの基底グラフは、M/Z個の行および
【０１６７】
【数４】
2020518145.tif 000008
【０１６８】
個の列を有する。
【０１６９】
LDPC行列Hの基底グラフは、[HBG HBG,EXT]によって表され得、
【０１７０】
【数５】
2020518145.tif 000009
【０１７１】
であり、
【０１７２】
【数６】
2020518145.tif 000010
【０１７３】
は、サイズmc×ncのオールゼロ行列を表し、
【０１７４】
【数７】
2020518145.tif 000011
【０１７５】
は、サイズnc×ncの単位行列を表す。
【０１７６】
可能な設計においては、
【０１７７】
【数８】
2020518145.tif 000012
【０１７８】
が上述の実施形態の基底グラフの部分行列Cであり、
【０１７９】
【数９】
2020518145.tif 000013
【０１８０】
が上述の実施形態の部分行列Eである場合、
【０１８１】
【数１０】
2020518145.tif 000014
【０１８２】
であり、式中、A、B、およびDは、それぞれ、上述の実施形態の基底グラフの部分行列A、部分行列B、および部分行列Dであり、mc = 5であり、0≦nc≦41であり、HBGの行数は、46以下および5以上であり、HBGの列数は、27に等しい。
【０１８３】
別の可能な設計においては、列26が重み1行列列であり、列26の非ゼロ要素が行5にあるので、
【０１８４】
【数１１】
2020518145.tif 000015
【０１８５】
は、上述の実施形態の基底グラフの列26の最初の4行および上述の実施形態の部分行列Cの最初の4行を含み得、
【０１８６】
【数１２】
2020518145.tif 000016
【０１８７】
は、上述の実施形態の基底グラフの部分行列E、列26の行5から行46まで、および部分行列Cの最後の行を含み得、mc = 4であり、0≦nc≦42であり、HBGは、上述の実施形態の基底グラフの部分行列A、部分行列B、および部分行列Dを含む部分から最後の列が削除された後に得られる行列であり、HBGの行数は、46以下および5以上であり、HBGの列数は、26に等しい。任意で、符号化率がさらに高められる必要がある場合、HBGは、4つの行、すなわち、行0から行3までを有し得る。
【０１８８】
それに対応して、LDPC行列Hは、H = [H1 H2]によって表され得る。
【０１８９】
H1は、HBGの各ゼロ要素がサイズZ*Zのオールゼロ行列によって置き換えられ、各非ゼロ要素がサイズZ*Zの巡回置換行列hi,jによって置き換えられた後に取得され得る。巡回置換行列hi,jは、サイズZ*Zの単位行列を右にPi,j回循環シフトすることによって得られ、I(Pi,j)によって表されることがあり、iは、行インデックスであり、jは、列インデックスである。可能な設計においては、Pi,j = mod(Vi,j, Z)であり、Vi,jは、Zに対応するリフティングファクタの集合のインデックスに対応する基底行列の行iおよび列jの非ゼロ要素である。
【０１９０】
H2は、HBG,EXTの各ゼロ要素がZ*Zのオールゼロ行列によって置き換えられ、各非ゼロ要素がZ*Zの単位行列によって置き換えられた後に取得され得る。
【０１９１】
エンコーダは、符号化および出力を複数の方法で実行し得る。上述の実施形態において説明された図12に示される基底グラフ、基底グラフ80a、または基底グラフ170aのいずれか1つが、以下で説明のための例として使用される。基底グラフは、最大46行および最大68列を有し、組み込みパンクチャビットの2つの列を含む。説明を容易にするために、最も多くの行および最も多くの列を有する基底グラフは、本出願においては完全基底グラフと呼ばれることがある。
【０１９２】
方法1:
【０１９３】
できるだけ多くのパリティビットが得られるように、完全基底グラフに基づいて符号化が実行される。この場合、m = 46であり、n = 68であり、これは、上述の基底グラフのいずれか1つの行0から行45までおよび列0から列67までに対応する。
【０１９４】
それに対応して、LDPC行列Hに関してM = 46・Zである。出力系列が組み込みパンクチャビットの列に対応する情報ビットを含む場合、N = 68・Zであるか、または出力系列が組み込みパンクチャビットの列に対応する2・Z個の情報ビットを含まない場合、N = 66・Zである。
【０１９５】
その後の処理中に、送信される必要がある1つまたは複数の情報ビットおよび1つまたは複数のパリティビットが、エンコーダによって生成された出力系列から決定され得る。
【０１９６】
方法2:
【０１９７】
完全基底グラフの一部の行および一部の列に基づいて符号化が実行される。行および列は、送信される必要がある符号化率、情報ビット量およびパリティビットの量などに基づいて、符号化のために完全基底グラフから選択され得る。
【０１９８】
たとえば、符号化率は8/9であり、m = 5であり、n = 27であり、つまり、上述の基底グラフのいずれか1つの行0から行4までおよび列0から列26までに基づいて符号化が実行される。
【０１９９】
それに対応して、LDPC行列Hに関してM = 5・Zである。出力系列が組み込みパンクチャビットの列に対応する情報ビットを含む場合、N = 27・Zであるか、または出力系列が組み込みパンクチャビットの列に対応する情報ビットを含まない場合、N = 25・Zである。
【０２００】
別の例として、符号化率は1/3であり、m = 46であり、n = 68である。
【０２０１】
この方法においては、Hの基底グラフのサイズが、5≦m≦46および27≦n≦68を満たし、それに対応して、LDPC行列Hに関して、5・Z≦M≦46・Zおよび27・Z≦N≦68・Zであることが知られ得る。
【０２０２】
可能な設計において、上述のいずれかの基底グラフの第26列は重み1行列列であり、コア行列の重み1行列列に対してパンクチャが実行され得、その結果、コア行列がそれに応じて1行および1列だけ小さくされ、m = 4であり、n = 26であり、つまり、上述のいずれかの基底グラフの行0から行3までおよび列0から列25までに基づいて符号化が実行される。この方法において、より高い符号化率を得ることができる。したがって、基底グラフのサイズは、4≦m≦46および26≦n≦68を満たし、それに対応して、LDPC行列Hに関して、4・Z≦M≦46・Zおよび26・Z≦N≦68・Zである。
【０２０３】
上述の実装において、LDPC行列Hの基底行列HBは、上述の実施形態において説明されたいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。基底行列HBの基底グラフは、少なくとも、部分行列Aおよび部分行列Bを含み、部分行列C、部分行列D、および部分行列Eをさらに含み得る。部分行列に関しては、上述の実施形態の説明を参照するものとし、詳細は本明細書において再び説明されない。確かに、基底行列HBは、基底グラフが上述の実施形態に示される基底グラフに準拠する別の基底行列であり得、基底行列HBは、本出願においてそれらに限定されない。
【０２０４】
可能な実装において、LDPC符号の基底行列HBは、メモリに記憶され得、エンコーダは、入力系列を符号化するために、リフティングファクタZに対応するLDPC行列を得る。
【０２０５】
別の可能な実装においては、LDPC符号の複数の基底行列HBが存在し、基底行列HBが行列構造に基づいて記憶される場合、比較的大きな記憶空間が占有されるので、LDPC符号の基底グラフが、メモリに記憶され得、各基底行列の非ゼロ要素のシフト値が、行ごとまたは列ごとに記憶され得、そして、LDPC行列が、基底グラフと、リフティングファクタZに対応する基底行列のシフト値とに基づいて取得され得る。
【０２０６】
基底グラフは、各基底行列の非ゼロ要素の位置を示し得る。別の可能な実装において、基底グラフを記憶することは、基底グラフの非ゼロ要素の位置を記憶することであり得る。非ゼロ要素の位置は、非ゼロ要素のある行および列、たとえば、各行の非ゼロ要素のある列の位置、または各列の非ゼロ要素のある行の位置によって示され得る。別の可能な実装において、基底グラフを記憶することは、基底グラフのゼロ要素の位置を記憶することであり得る。同様に、ゼロ要素の位置は、ゼロ要素がある行および列、たとえば、各行のゼロ要素がある列の位置、または各行のゼロ要素がある行の位置によっても示され得、非ゼロ要素の対応する位置は、ゼロ要素の位置を除外することによって取得され得る。単なる例が本明細書において提供され、例は本出願において限定をなさないことに留意されたい。
【０２０７】
設計において、基底グラフまたは基底行列に関連するパラメータは、表に表され得る。たとえば、関連するパラメータまたは表が、1つまたは複数のメモリに記憶され得る。基底グラフもしくは基底行列の行インデックス、または非ゼロ要素がある列などの関連するパラメータが、基底グラフまたは基底行列を得るためにメモリから読まれる。任意で、各行の重みおよび各行の非ゼロ要素のシフト値が、さらに記憶され得る。
【０２０８】
図11aが、以下で説明のための例として使用される。本出願において提供される別の基底グラフまたは基底行列に関しては、同様の設計を参照されたい。
【０２０９】
たとえば、基底グラフ80a、基底グラフ170a、または図12のコア行列が、Table 3(表3)に表され得る。
【０２１０】
【表３】
2020518145.tif 000017
【０２１１】
たとえば、LDPC行列の基底グラフは、Table 3(表3)に示されるコア行列の部分を含み得る。LDPC行列の基底グラフの別の部分が、基底グラフ80a、基底グラフ170a、または図12、または本出願において説明される別の構造、または別の行列構造に示され得、これは、本出願において限定されない。
【０２１２】
基底グラフ170aが、別の例として使用される。基底グラフの最初の24行に関連するパラメータが、Table 4(表4)に示され得る。その他の行に関連するパラメータは、同様であり、紙幅の制限のため、Table 4(表4)に挙げられない。
【０２１３】
【表４】
2020518145.tif 000018
【０２１４】
単なる例が本明細書において提供され、例は限定をなさないことに留意されたい。本出願において提供される別の基底グラフまたは基底行列の関連するパラメータも、同様の表に表され得る。基底グラフ170a、Table 3(表3)、およびTable 4(表4)は、基底グラフおよび基底行列の設計を理解することを助けるように意図されることが理解されるであろう。表現形式は、基底グラフ170aまたはTable 3(表3)もしくはTable 4(表4)の表現形式だけに限定されない。別の可能な変形を含んでもよい。
【０２１５】
実装においては、列インデックス、列重み、および非ゼロ要素がある行、またはゼロ要素がある行、たとえば、Table 5(表5)の形式が使用され得る。
【０２１６】
【表５】
2020518145.tif 000019
【０２１７】
実装において、Table 3(表3)、Table 4(表4)、またはTable 5(表5)のパラメータ「行重み」または「列重み」は、省略され得る。行または列の非ゼロ要素の量は、行もしくは列の中で非ゼロ要素がある列または行から知られ得る。したがって、行重みまたは列重みも、知られる。
【０２１８】
実装において、Table 3(表3)もしくはTable 4(表4)の「行内の非ゼロ要素の列インデックス」のパラメータ値またはTable 5(表5)の「列内の非ゼロ要素の行インデックス」のパラメータ値は、パラメータ値の中で非ゼロ要素のある列または非ゼロ要素のある行が取り出され得るならば昇順でソートされ得ない。
【０２１９】
実装において、Table 3(表3)またはTable 4(表4)は、「非ゼロ要素のシフト値」の列をさらに含み得、「非ゼロ要素のシフト値」の列のパラメータ値は、「行内の非ゼロ要素の列インデックス」のパラメータ値と1対1に対応している。Table 5(表5)は、「非ゼロ要素のシフト値」の列をさらに含み得、「非ゼロ要素のシフト値」の列のパラメータ値は、「列内の非ゼロ要素の行インデックス」のパラメータ値と1対1に対応している。
【０２２０】
設計においては、記憶空間を節約するために、基底グラフの比較的決まった構造を有する部分の非ゼロ要素の位置は、位置が記憶されることなく行インデックスまたは列インデックスに基づいて計算され得る。たとえば、部分行列Eは、対角行列であり、行列の対角上にのみ非ゼロ要素を含む。部分行列Eの非ゼロ要素のある列の位置が、行インデックスに基づいて計算され得るか、または非ゼロ要素がある行の位置が、列インデックスに基づいて計算され得る。基底グラフ80a、基底グラフ170a、または図12の基底グラフのいずれか1つの例において、行meの非ゼロ要素の列インデックスは、me+Kbであり、me≧4であり、Kb = 22である。たとえば、行7の非ゼロ要素がある列は、列29である。別の例として、部分行列Bの二重対角構造B'が、基底グラフ80a、基底グラフ170a、または図12に示される基底グラフのいずれか1つの行0から行3までおよび列23から列25までにある。二重対角構造B'の非ゼロ要素のある列の列インデックスが、行インデックスに基づいて計算され得るか、または非ゼロ要素がある行の行インデックスが、列インデックスに基づいて計算され得る。行mBの非ゼロ要素の位置は、列mB+Kbおよび列mB+Kb+1を含み、0<mB<3である。行mBの非ゼロ要素の位置は、列mB+Kbであり、mB = 0またはmB = 3である。別の例として、部分行列Bの重み1行列列、つまり、基底グラフ80a、基底グラフ170a、または図12の基底グラフのいずれか1つの列26に関して、行mBの非ゼロ要素の位置は、列mB+Kbであり、mB = 4である。
【０２２１】
Table 6(表6)は、図12の行に関連するパラメータを示す。列0から列25までの中の非ゼロ要素がある列の位置が記憶され得る一方、列26から列68までの中の非ゼロ要素がある列の位置は記憶されず、つまり、部分行列Eおよび部分行列Bの重み1行列列の非ゼロ要素がある列は記憶されない。Table 6(表6)は、列インデックスが26であるHBGを表すために使用され得る。
【０２２２】
【表６】
2020518145.tif 000020
【０２２３】
Table 7(表7)は、図12の行に関連するパラメータを示す。列0から列26までの中の非ゼロ要素がある列の位置が記憶され得る一方、列27から列68までの中の非ゼロ要素がある列の位置は記憶されず、つまり、部分行列Eの非ゼロ要素がある列は記憶されない。Table 7(表7)は、列インデックスが27であるHBGを表すために使用され得る。
【０２２４】
【表７】
2020518145.tif 000021
【０２２５】
上述の設計において、「行重み」の列は任意である。可能な設計において、基底グラフの各行または各列の1および0は、2進数であると考えられ得、2進数を10進数または16進数で記憶することは、記憶空間を節約することができる。上述の基底グラフのいずれか1つが、例として使用される。最初の26列または最初の27列の非ゼロ要素の位置は、各行に4つの16進数で記憶され得る。たとえば、行0の最初の26列が11110110 01111101 10111111 00である場合、行0の非ゼロ要素の位置は、0xF6、0x7D、0xBF、および0x00と表記され得る。具体的には、8列ごとに、1つの16進数を形成する。8桁を得るために最後の2列または3列を0で埋め、その結果、対応する16進数が得られる。これは、別の行にも当てはまり、詳細は、本明細書において再び説明されない。
【０２２６】
情報ビット系列が符号化されるべきであるとき、基底行列HBは、符号化のために使用されるLDPC行列Hを得るためにZに基づいてリフトされ得る。サイズZ*Zの巡回置換行列hi,jが、基底行列HBの各非ゼロ要素Pi,jに関して決定され、hi,jは、単位行列をPi,j回循環シフトすることによって得られた巡回置換行列である。パリティチェック行列Hを得るために、非ゼロ要素Pi,jは、hi,jによって置き換えられ、基底行列HBのゼロ要素は、サイズZ*Zのオールゼロ行列によって置き換えられる。
【０２２７】
可能な設計においては、リフティングファクタZに関して、基底行列HBの行iおよび列jの要素Pi,jが、(2)に示される関係を満たし得る。
【０２２８】
【数１３】
2020518145.tif 000022
【０２２９】
式中、Vi,jは、リフティングファクタZを含むリフティングファクタの集合の基底行列の行iおよび列jの要素のシフト値、またはリフティングファクタZを含むリフティングファクタの集合の中の最大のリフティングファクタに対応する基底行列の行iおよび列jの非ゼロ要素のシフト値であり得る。
【０２３０】
Table 2(表2)に示される基底行列のインデックスとリフティングファクタZの集合との間の対応が、例として使用される。Z = 13であり、Zの基底行列の行iおよび列jの要素Pi,jは(2)を満たす。
【０２３１】
Vi,jは、PCM7によって示される基底行列の行iおよび列jの非ゼロ要素のシフト値である。Z = 13に関して、シフト値Vi,j modulo Zを取ることによってモジュロ演算が実行され、Z = 13であり、Vi,jはPCM7によって示される基底行列の行iおよび列jの非ゼロ要素のシフト値である。
【０２３２】
単なる例が本明細書において提供され、例は本出願において限定をなさないことに留意されたい。
【０２３３】
基底グラフ80aまたは基底グラフ170aが、例として使用される。基底行列HBが決定された後、基底行列の列22から列25までに対応する1つまたは複数のパリティビットが、入力系列と行0から行3までおよび列0から列25まで、つまり、Hcore-dualとを使用することによってまず取得され得、列26、つまり、重み1行列列に対応する1つまたは複数のパリティビットが、入力系列とHcore-dualに対応する1つまたは複数のパリティビットとに基づいて取得され得、それから、部分行列Eに対応する1つまたは複数のパリティビットを得るために、入力系列と、列22から列26までに対応する1つまたは複数のパリティビットと、部分行列Dとに基づいて、符号化が、実行され得る。このようにして、符号化が完了される。LDPC符号の符号化プロセスに関しては、上述の実装の説明を参照するものとし、詳細は本明細書において再び説明されない。
【０２３４】
通信システムにおいて、LDPC符号は、上述の方法で符号化が実行された後に取得され得る。LDPC符号が得られた後、通信装置は、以下の動作、すなわち、LDPC符号に対してレートマッチングを実行する動作、レートマッチングの後に得られたLDPC符号に対して、インターリーブ方式に基づいてインターリーブを実行する動作、ビット系列Xを得るために、インターリーブの後に得られたLDPC符号を、変調方式に基づいて変調する動作、またはビット系列Xを送信する動作のうちの1つまたは複数をさらに実行し得る。
【０２３５】
本出願の別の実施形態において提供される復号方法において、デコーダは、LDPC行列を使用することによって入力系列を復号する。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフであり得、LDPC行列の基底行列HBは、上述の例のいずれかの基底行列であり得る。デコーダの入力系列は、LDPC符号の軟判定値系列であり得る。
【０２３６】
方法は、リフティングファクタZを決定することをさらに含む。受信端の通信デバイスは、LDPC符号を含む信号を受信し、信号内のLDPC符号の軟判定値系列を取得し、対応するリフティングファクタZを決定し得る。
【０２３７】
デコーダがLDPC行列Hを使用することによって入力系列を復号することは、リフティングファクタZに対応するLDPC行列Hを使用することによってLDPC符号の軟判定値系列を復号することであり得る。
【０２３８】
復号は符号化の逆のプロセスであるので、LDPC行列HおよびLDPC行列Hの基底グラフの説明に関しては、上述の符号化の実施形態を参照されたい。復号は、完全基底グラフに基づいて実行され得るか、または復号は、完全基底グラフの一部の行もしくは一部の列に基づいて実行され得る。
【０２３９】
LDPC行列Hの基底行列HBは、上述の実施形態において説明されたいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。基底行列HBの基底グラフは、少なくとも、部分行列Aおよび部分行列Bを含み、部分行列C、部分行列D、および部分行列Eをさらに含み得る。部分行列に関しては、上述の実施形態の説明を参照するものとし、詳細は本明細書において再び説明されない。確かに、基底行列HBは、基底グラフが上述の実施形態に示される基底グラフに準拠する別の基底行列であり得、基底行列HBは、本出願においてそれらに限定されない。
【０２４０】
可能な設計において、LDPC符号の基底行列HBはメモリに記憶され得、リフティングファクタZに対応するLDPC行列が得られた後、LDPC符号の軟判定値が復号され得る。
【０２４１】
別の可能な実装においては、LDPC符号の複数の基底行列が存在し、基底行列が行列構造に基づいて記憶される場合、比較的大きな記憶空間が占有されるので、LDPC符号の基底グラフが、メモリに記憶され得、各基底行列の非ゼロ要素のシフト値が、行ごとまたは列ごとに記憶され得、そして、LDPC行列が、基底グラフと、リフティングファクタZに対応する基底行列のシフト値とに基づいて取得され得る。
【０２４２】
基底グラフは、上述の符号化の実施形態において説明された様々な方法で記憶され得る。
【０２４３】
単なる例が本明細書において提供され、例は限定をなさないことに留意されたい。
【０２４４】
復号は、符号化の逆のプロセスであり、復号中に使用される基底行列HBは、符号化方法の実施形態の基底行列と同じ特徴を有する。LDPC行列Hを得るために基底行列HBをリフトすることに関しては、やはり符号化方法の実施形態を参照されたい。
【０２４５】
通信システムにおいては、復号方法の前に、通信装置が、以下の動作、すなわち、LDPC符号を含む信号を受信する動作、またはLDPC符号の軟判定値を得るために信号に対して復調、デインターリーブ、もしくはレートデマッチングを実行する動作のうちの1つまたは複数をさらに実行し得る。
【０２４６】
可能な実装においては、以下のうちの1つまたは複数が記憶され得る。
(a)上述の実装において説明されたいずれかの基底行列HBを得るために使用されるパラメータであって、基底行列HBは、パラメータに基づいて取得され得、たとえば、パラメータが、以下、すなわち、基底グラフおよび/もしくは基底行列の行インデックス、行重み、列インデックス、または列重み、基底グラフおよび/もしくは基底行列の非ゼロ要素の位置、基底行列のシフト値、非ゼロ要素のシフト値ならびに対応する位置、補償値、リフティングファクタ、リフティングファクタの集合、基底行列の基底グラフ、または符号化率のうちの1つもしくは複数を含むパラメータ、
(b)上述の実装において説明されたいずれかの基底行列HB、
(c)基底行列HBからリフトされた行列、
(d)上述の実装において説明されたいずれかの基底行列HBに対して行/列の置換を実行することによって得られた基底行列であって、本出願においては、行/列の置換が、行の置換、または列の置換、または行の置換および列の置換である、基底行列、あるいは
(e)行/列の置換を実行することによって得られた基底行列からリフトされた行列。
【０２４７】
可能な実装において、入力系列は、符号化または復号中に以下の方法のうちの1つまたは複数で低密度パリティチェックLDPC行列を使用することによって符号化または復号され得る。
【０２４８】
上述の(a)において説明されたパラメータに基づいて基底行列HBを取得し、取得された基底行列HBに基づいて符号化もしくは復号を実行するか、または取得された基底行列HBに基づいて行/列の置換を実行し、行/列の置換を実行することによって得られた基底行列に基づいて符号化もしくは復号を実行し、符号化もしくは復号が、本明細書の基底行列に基づいて実行され、任意で、符号化もしくは復号が、基底行列のリフトされた行列に基づいて実行され得る、
(b)もしくは(d)に記憶された基底行列(記憶された基底行列HBもしくは基底行列HBに行/列の置換を実行することによって得られた記憶された基底行列)に基づいて符号化もしくは復号を実行するか、または記憶された基底行列に対して行/列の置換を実行し、行/列の置換を実行することによって得られた基底行列に基づいて符号化もしくは復号を実行し、符号化もしくは復号が、本明細書の基底行列に基づいて実行され、任意で、符号化もしくは復号が、基底行列のリフトされた行列に基づいて実行され得るか、あるいは
(c)または(e)に基づいて符号化または復号を実行する。
【０２４９】
本出願のリフトすることは、行列が変換されるかまたは処理された後にリフトされた行列を取得することであり得、リフトする方法は、本出願において限定されない。実装において、リフトすることは、行列に対して補償処理を実行することであり得る。たとえば、基底行列の0以上のそれぞれのシフト値が、補償された行列を得るために補償値だけ増やされるかまたは減らされる。別の実装において、リフトすることは、リフトされた行列を得るために行列の行および列をリフトすることであり得る。別の実装において、リフトすることは、行列の非ゼロ値を変換することであり得る。
【０２５０】
本出願の記憶することは、1つまたは複数のメモリに記憶することであり得る。1つもしくは複数のメモリは、別々に配置され得るか、またはエンコーダ、デコーダ、プロセッサ、チップ、通信装置、もしくは端末に統合され得る。1つまたは複数のメモリの一部は、別々に配置され得、その他のメモリは、デコーダ、プロセッサ、チップ、通信装置、または端末に統合され得る。メモリの種類は、ストレージ媒体の任意の形態であり得、種類は、本出願において限定されない。
【０２５１】
図6は、通信装置600の概略構造図である。装置600は、上述の方法の実施形態において説明された方法を実施するように構成される。上述の方法の実施形態の説明を参照されたい。通信装置600は、チップ、基地局、端末、または別のネットワークデバイスであり得る。
【０２５２】
通信装置600は、1つまたは複数のプロセッサ601を含む。プロセッサ601は、汎用プロセッサ、専用プロセッサなどであり得る。たとえば、プロセッサ601は、ベースバンドプロセッサまたは中央演算処理装置であり得る。ベースバンドプロセッサは、通信プロトコルおよび通信データに関する処理を実行するように構成され得る。中央演算処理装置は、(基地局、端末、またはチップなどの)通信装置を制御し、ソフトウェアプログラムを実行し、ソフトウェアプログラムのデータを処理するように構成され得る。
【０２５３】
可能な設計において、通信装置600は、1つまたは複数のプロセッサ601を含む。1つまたは複数のプロセッサ601は、上述のエンコーダの機能を実装し得る。別の可能な設計において、エンコーダは、プロセッサ601の一部であり得、プロセッサ601は、エンコーダの機能に加えてその他の機能を実装し得る。
【０２５４】
通信装置600は、LDPC行列を使用することによって入力系列を符号化する。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフ、または上述のいずれかの基底グラフに対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底グラフであり得る。LDPC行列の基底行列HBは、上述の実施形態のいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。エンコーダの入力系列は、情報ビット系列であり得る。
【０２５５】
可能な設計において、1つまたは複数のプロセッサ601は、上述のデコーダの機能を実装し得る。別の可能な設計において、デコーダは、プロセッサ601の一部であり得る。
【０２５６】
通信装置600は、LDPC行列を使用することによって入力系列を復号するように構成される。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフ、または上述のいずれかの基底グラフに対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底グラフであり得る。LDPC行列の基底行列HBは、上述の例のいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。デコーダの入力系列は、軟判定値系列であり得る。
【０２５７】
任意で、設計において、プロセッサ601は、命令603も含み得る。命令は、上述の方法の実施形態において説明された方法を通信装置600に実行させるためにプロセッサ上で実行され得る。
【０２５８】
別の可能な設計において、通信装置600は、回路も含み得、回路は、上述の方法の実施形態のエンコーダ、デコーダ、またはエンコーダおよびデコーダの機能を実装し得る。
【０２５９】
任意で、通信装置600は、1つまたは複数のメモリ602を含み得る。メモリは、命令604を記憶し、命令は、上述の方法の実施形態において説明された方法を通信装置600に実行させるためにプロセッサ上で実行され得る。任意で、メモリは、データをさらに記憶し得る。任意で、プロセッサも、命令および/またはデータを記憶し得る。プロセッサおよびメモリは、別々に配置され得るか、または一緒に統合され得る。任意で、1つまたは複数のメモリ602は、基底行列に関連するパラメータ、たとえば、シフト値、基底グラフ、基底グラフからリフトされた行列、基底行列の行、またはリフティングファクタを記憶し得る。任意で、1つまたは複数のメモリ602は、基底行列または基底行列からリフトされた行列を記憶し得る。
【０２６０】
任意で、通信装置600は、トランシーバ605およびアンテナ606をさらに含み得る。プロセッサ601は、処理ユニットと呼ばれることもあり、通信装置(端末または基地局)を制御する。トランシーバ605は、トランシーバユニットまたはトランシーバ回路と呼ばれることもあり、アンテナ606を使用することによって通信装置の送受信機能を実装するように構成される。
【０２６１】
任意で、通信装置600は、トランスポートブロックのCRCを生成するように構成された構成要素、符号ブロックのセグメンテーションおよびCRC検査のために使用される構成要素、インターリーブのために使用されるインターリーバ、変調処理のために使用される変調器などをさらに含み得る。これらの構成要素の機能は、1つまたは複数のプロセッサ601によって実装され得る。
【０２６２】
任意で、通信装置600は、復調のために使用される復調器、デインターリーブのために使用されるデインターリーバ、レートデマッチングのために使用される構成要素などをさらに含み得る。これらの構成要素の機能は、1つまたは複数のプロセッサ601によって実装され得る。
【０２６３】
図7は、通信システム700の概略図である。通信システム700は、通信デバイス70および通信デバイス71を含む。通信デバイス70および通信デバイス71は、互いから情報データを受信し、互いに情報データを送信する。通信デバイス70および通信デバイス71は、通信装置600であり得、または通信デバイス70および通信デバイス71は、それぞれ通信装置600を含み、情報データを受信し、送信する。たとえば、通信デバイス70は、端末であり得、それに対応して、通信デバイス71は、基地局であり得る。別の例として、通信デバイス70は、基地局であり、それに対応して、通信デバイス71は、端末であり得る。
【０２６４】
当業者は、本出願の実施形態に挙げられている様々な例示的論理ブロック(illustrative logical block)およびステップ(step)が電子的なハードウェア、コンピュータソフトウェア、またはそれらの組合せを使用することによって実装され得ることをさらに理解するであろう。機能がハードウェアを使用することによって実装されるのか、またはソフトウェアを使用することによって実装されるのかは、特定の用途、およびシステム全体の設計の要件に応じて決まる。当業者は、説明された機能をそれぞれの特定の用途のために実装するために様々な方法を用い得るが、実装は、本出願の実施形態の範囲外であると考えられるべきでない。
【０２６５】
本出願の実施形態において説明された様々な例示的論理ユニットおよび回路は、汎用プロセッサ、デジタル信号プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは別のプログラミング可能な論理装置、ディスクリートゲートもしくはトランジスタ論理、ディスクリートハードウェア構成要素、またはそれらの任意の組合せの設計を使用することによって説明された機能を実装するまたは動作させ得る。汎用プロセッサは、マイクロプロセッサであり得る。任意で、汎用プロセッサは、任意の通常のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであり得る。プロセッサは、デジタル信号プロセッサおよびマイクロプロセッサ、複数のマイクロプロセッサ、デジタル信号プロセッサコアを有する1つもしくは複数のマイクロプロセッサ、または任意のその他の同様の構成などのコンピューティング装置の組合せによって実装され得る。
【０２６６】
本出願の実施形態において説明された方法またはアルゴリズムのステップは、ハードウェア、プロセッサによって実行される命令、またはそれらの組合せに直接埋め込まれ得る。メモリは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、取り外し可能な磁気ディスク、CD-ROM、または当技術分野の任意のその他の形態のストレージ媒体であり得る。たとえば、メモリは、プロセッサがメモリから情報を読み、メモリに情報を書くことができるようにプロセッサに接続され得る。任意で、メモリは、プロセッサに統合され得る。プロセッサおよびメモリは、ASIC内に配置され得、ASICは、(基地局または端末などの)通信装置内に配置され得る。任意で、プロセッサおよびメモリは、通信装置の異なる構成要素内に配置され得る。
【０２６７】
上述の実装の説明によって、当業者は、本出願がハードウェア、ファームウェア、またはそれらの組合せによって実装され得ることをはっきりと理解するであろう。本出願がソフトウェアプログラムによって実装されるとき、本出願は、コンピュータプログラム製品の形態ですべてまたは部分的に実装され得る。コンピュータプログラム製品は、1つまたは複数のコンピュータ命令を含む。コンピュータ命令がコンピュータにロードされ、実行されるとき、本出願の実施形態による手順または機能が、すべてまたは部分的に生成される。本出願がソフトウェアプログラムによって実装されるとき、上述の機能は、コンピュータ可読媒体に記憶されるか、またはコンピュータ可読媒体において1つもしくは複数の命令もしくは符号として送信され得る。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または別のプログラミング可能な装置であり得る。コンピュータ命令は、コンピュータ可読ストレージ媒体に記憶され得るか、またはあるコンピュータ可読ストレージ媒体から別のコンピュータ可読ストレージ媒体に送信され得る。コンピュータ可読媒体は、コンピュータストレージ媒体および通信媒体を含み、通信媒体は、コンピュータプログラムがある場所から別の場所に送信されることを可能にする任意の媒体を含む。ストレージ媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。以下は、例を与えるが、限定を課さない。コンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROM、または別の光ディスク(disc)ストレージもしくはディスク(disk)ストレージ媒体、または別の磁気ストレージデバイス、または期待されるプログラムコードを命令もしくはデータ構造の形態で運ぶかもしくは記憶することができ、コンピュータによってアクセスされ得る任意のその他の媒体を含み得る。加えて、任意の接続が、コンピュータ可読媒体として適切に定義され得る。たとえば、ソフトウェアが同軸ケーブル、光ファイバ/ケーブル、より線対、デジタル加入者線(DSL)、または赤外線、ラジオ波、およびマイクロ波などのワイヤレス技術を使用することによってウェブサイト、サーバ、または別の遠隔のソースから送信される場合、同軸ケーブル、光ファイバ/ケーブル、より線対、DSL、または赤外線、ラジオ波、およびマイクロ波などのワイヤレス技術は、それらが属する媒体の定義に含まれる。たとえば、本出願によって使用されるディスク(Disk)またはディスク(disc)は、コンパクトディスク(CD: compact disc)、レーザーディスク（登録商標）(laser disc（登録商標）)、光ディスク(optical disc)、デジタルバーサタイルディスク(DVD: digital versatile disc)、フロッピー（登録商標）ディスク(floppy disk)、およびブルーレイ（登録商標）ディスク(Blu-ray（登録商標） disc)を含み、ディスク(disk)は、概して、磁気的な手段によってデータをコピーし、ディスク(disc)は、レーザーの手段によって光学的にデータをコピーする。上述の組合せも、コンピュータ可読媒体の保護範囲に含まれるべきである。
【０２６８】
本出願において、「/」は、および/またはを示す。たとえば、符号化/復号は、符号化、復号、または符号化および復号を示す。
【０２６９】
要約すると、上で説明されたことは、本出願の技術的な解決策の好ましい実施形態であるに過ぎず、本出願の保護範囲を限定するように意図されていない。本出願の趣旨および原理から逸脱することなくなされたあらゆる修正、均等な置き換え、または改善は、本出願の保護範囲内に入る。
【符号の説明】
【０２７０】
10a  基底グラフ
10b  基底行列
11a  オールゼロ行列
11b  単位行列
11d  巡回置換行列
30a  基底グラフ
30b-1  基底行列
30b-2  基底行列
30b-3  基底行列
30b-4  基底行列
30b-5  基底行列
30b-6  基底行列
30b-7  基底行列
30b-8  基底行列
30b-9  基底行列
30b-10  基底行列
30c  基底行列
30c-1  行列
30c-2  行列
30c-3  行列
30c-4  行列
30c-5  行列
30c-6  行列
30c-7  行列
30c-8  行列
30c-9  行列
30c-10  行列
70  通信デバイス
71  通信デバイス
80a  基底グラフ
80b-1  基底行列
80b-2  基底行列
80b-3  基底行列
80b-4  基底行列
80b-5  基底行列
80b-6  基底行列
80b-7  基底行列
80b-8  基底行列
80b-9  基底行列
80c-1  行列
80c-2  行列
80c-3  行列
80c-4  行列
80c-5  行列
80c-6  行列
80c-7  行列
80c-8  行列
80c-9  行列
170a  基底グラフ
170b-1  基底行列
180a  基底グラフ
200  列の重み(列重み)
600  通信装置
601  プロセッサ
602  メモリ
603  命令
604  命令
605  トランシーバ
606  アンテナ
700  通信システム
A、B、B'、C、D、E  部分行列
c  入力系列
cT、wT  転置ベクトル
d  出力系列
F  行列
H  LDPC行列
H'  LDPC行列
HB  基底行列
Hcore、Hcore-dual、HBG  行列
hi,j  巡回置換行列
i  行、行インデックス
j  列、列インデックス
0T  列ベクトル
p  ビットの量、列の量
Rm  符号化率、最低符号化率
Pi,j  シフト値、非ゼロ要素、要素
Pe  ベクトル
PCM1〜PCM8  基底行列
S、S'  入力系列
s0  短縮されたビットの量
[S Pe]T  転置行列
Vi,j  シフト値
w  パリティ系列
X  ビット系列
Z  リフティングファクタ
【図１】
2020518145.tif 000040
【図２】
2020518145.tif 000041
【図３ａ】
2020518145.tif 000042
【図３ｂ−１】
2020518145.tif 000043
【図３ｂ−２】
2020518145.tif 000044
【図３ｃ−１】
2020518145.tif 000045
【図３ｃ−２】
2020518145.tif 000046
【図３ｃ−３】
2020518145.tif 000047
【図３ｃ−４】
2020518145.tif 000048
【図３ｃ−５】
2020518145.tif 000049
【図３ｃ−６】
2020518145.tif 000050
【図３ｃ−７】
2020518145.tif 000051
【図３ｃ−８】
2020518145.tif 000052
【図３ｃ−９】
2020518145.tif 000053
【図３ｃ−１０】
2020518145.tif 000054
【図３ｃ−１１】
2020518145.tif 000055
【図４】
2020518145.tif 000056
【図５】
2020518145.tif 000057
【図６】
2020518145.tif 000058
【図７】
2020518145.tif 000059
【図８ａ】
2020518145.tif 000060
【図８ｂ−１】
2020518145.tif 000061
【図８ｂ−２】
2020518145.tif 000062
【図８ｃ−１】
2020518145.tif 000063
【図８ｃ−２】
2020518145.tif 000064
【図８ｃ−３】
2020518145.tif 000065
【図８ｃ−４】
2020518145.tif 000066
【図８ｃ−５】
2020518145.tif 000067
【図８ｃ−６】
2020518145.tif 000068
【図８ｃ−７】
2020518145.tif 000069
【図８ｃ−８】
2020518145.tif 000070
【図８ｃ−９】
2020518145.tif 000071
【図８ｃ−１０】
2020518145.tif 000072
【図９】
2020518145.tif 000073
【図１０】
2020518145.tif 000074
【図１１ａ】
2020518145.tif 000075
【図１１ｂ】
2020518145.tif 000076
【図１２】
2020518145.tif 000077
【手続補正書】
【提出日】令和1年10月4日(2019.10.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報を符号化するための方法であって、
符号化された系列を得るために基底行列およびリフティングファクタZに基づいて入力系列を符号化するステップであって、前記入力系列が、Kビットを含む、ステップを含み、
前記基底行列が、m個の行およびn個の列を含み、mおよびnが、整数であり、5≦m≦46であり、nが、整数27≦n≦68であり、前記基底行列が、下記の行および列、すなわち、
i=0, j = 0, 1, 2, 3, 5, 6, 9, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22,または23;
i=1, j = 0, 2, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 16, 17, 19, 21, 22, 23,または24;
i=2, j = 0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 17, 18, 19, 20, 24,  または25;
i=3, j = 0, 1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22,または25;
i=4, j = 0, 1,または26
に非ゼロ要素を含み、iが、行インデックスを表し、jが、列インデックスを表し、0≦i<mであり、0≦j<nである、方法。
【請求項２】
前記リフティングファクタZが、22*Z≧Kを満たす複数のリフティングファクタのうちの最小のリフティングファクタである請求項1に記載の方法。
【請求項３】
前記基底行列および前記リフティングファクタZに基づいて前記入力系列を符号化するステップが、
前記基底行列および前記リフティングファクタZに従って低密度パリティ検査(LDPC)行列Hを取得するステップと、
前記符号化された系列を得るために前記LDPC行列Hを使用して前記入力系列を符号化することと
を含む請求項1または2に記載の方法。
【請求項４】
前記入力系列が、c = {c0, c1, c2, ..., cK-1}であり、前記符号化された系列が、d = {d0, d1, d2, ..., dN-1}であり、KおよびNが、両方とも正の整数であり、N = 66・Zである請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記符号化された系列dが、前記入力系列cから取られたK0個のビット、およびパリティ系列w={w0, w1, w2, ..., wN-K0-1}のN-K0個のパリティビットを含み、K0が、0より大きく、K以下の整数であり、
前記パリティ系列wおよび前記入力系列cが、
【数１】
2020518145.tif 000078
を満たし、
式中、cT=[c0, c1, c2, ..., cK-1]Tであり、wT=[w0, w1, w2, ..., wN-K0-1]Tであり、0Tが、列ベクトルであり、0Tのすべての要素の値が、0である請求項4に記載の方法。
【請求項６】
K0 = K - 2・Zである請求項5に記載の方法。
【請求項７】
前記基底行列において、非ゼロ要素ではない要素が、ゼロ要素であり、
各ゼロ要素が、前記LDPC行列HのサイズZ*Zのすべてゼロの行列に対応し、
各非ゼロ要素Vi,jが、前記LDPC行列HのサイズZ*Zの巡回置換行列I(Pi,j)に対応し、
Pi,jが、ゼロ以上の整数のシフト値であり、Pi,j = mod(Vi,j, Z)である請求項1から6のいずれか一項に記載の方法。
【請求項８】
前記基底行列が、下記の行および列、すなわち、
i = 5, j = 0, 1, 3, 12, 16, 21, 22,または27;
i = 6, j = 0, 6, 10, 11, 13, 17, 18, 20,または28;
i = 7, j = 0, 1, 4, 7, 8, 14,または29;
i = 8, j = 0, 1, 3, 12, 16, 19, 21, 22, 24,または30;
i = 9, j = 0, 1, 10, 11, 13, 17, 18, 20,または31;
i = 10, j = 1, 2, 4, 7, 8, 14,または32;
i = 11, j = 0, 1, 12, 16, 21, 22, 23,または33;
i = 12, j = 0, 1, 10, 11, 13, 18,または34;
i = 13, j = 0, 3, 7, 20, 23,または35;
i = 14, j = 0, 12, 15, 16, 17, 21,または36;
i = 15, j = 0, 1, 10, 13, 18, 25,または37;
i = 16, j = 1, 3, 11, 20, 22,または38;
i = 17, j = 0, 14, 16, 17, 21,または39;
i = 18, j = 1, 12, 13, 18, 19,または40;
i = 19, j = 0, 1, 7, 8, 10,または41;
i = 20, j = 0, 3, 9, 11, 22,または42;
i = 21, j = 1, 5, 16, 20, 21,または43;
i = 22, j = 0, 12, 13, 17,または44;
i = 23, j = 1, 2, 10, 18,または45;
i = 24, j = 0, 3, 4, 11, 22,または46;
i = 25, j = 1, 6, 7, 14,または47;
i = 26, j = 0, 2, 4, 15,または48;
i = 27, j = 1, 6, 8,または49;
i = 28, j = 0, 4, 19, 21,または50;
i = 29, j = 1, 14, 18, 25,または51;
i = 30, j = 0, 10, 13, 24,または52;
i = 31, j = 1, 7, 22, 25,または53;
i = 32, j = 0, 12, 14, 24,または54;
i = 33, j = 1, 2, 11, 21,または55;
i = 34, j = 0, 7, 15, 17,または56;
i = 35, j = 1, 6, 12, 22,または57;
i = 36, j = 0, 14, 15, 18,または58;
i = 37, j = 1, 13, 23,または59;
i = 38, j = 0, 9, 10, 12,または60;
i = 39, j = 1, 3, 7, 19,または61;
i = 40, j = 0, 8, 17,または62;
i = 41, j = 1, 3, 9, 18,または63;
i = 42, j = 0, 4, 24,または64;
i = 43, j = 1, 16, 18, 25,または65;
i = 44, j = 0, 7, 9, 22,または66;
i = 45, j = 1, 6, 10,または67
に非ゼロ要素をさらに含む請求項1から7のいずれか一項に記載の方法。
【請求項９】
前記基底行列および前記リフティングファクタZに基づいて前記入力系列を符号化する前記ステップが、
置換された行列および前記リフティングファクタZに基づいて前記入力系列を符号化することを含み、
前記置換された行列が、前記基底行列に対して行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる請求項1から8のいずれか一項に記載の方法。
【請求項１０】
復号された系列を得るために基底行列およびリフティングファクタZに基づいて入力系列を復号するステップであって、前記入力系列が、1つまたは複数の軟判定値を含む、ステップを含み、
前記基底行列が、m個の行およびn個の列を含み、mおよびnが、整数であり、5≦m≦46であり、nが、整数27≦n≦68であり、前記基底行列が、下記の行および列、すなわち、
i=0, j = 0, 1, 2, 3, 5, 6, 9, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22,または23;
i=1, j = 0, 2, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 16, 17, 19, 21, 22, 23,または24;
i=2, j = 0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 17, 18, 19, 20, 24,または25;
i=3, j = 0, 1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22,または25;
i=4, j = 0, 1,または26
に非ゼロ要素を含み、iが、行インデックスを表し、jが、列インデックスを表し、0≦i<mであり、0≦j<nである復号方法。
【請求項１１】
前記リフティングファクタZが、22*Z≧Kを満たす複数のリフティングファクタのうちの最小のリフティングファクタである請求項10に記載の方法。
【請求項１２】
前記基底行列および前記リフティングファクタZに基づいて前記入力系列を復号する前記ステップが、
前記基底行列および前記リフティングファクタZに従って低密度パリティ検査(LDPC)行列Hを取得することと、
前記復号された系列を得るために前記LDPC行列Hを使用して前記入力系列を復号することと
を含む請求項10または11に記載の方法。
【請求項１３】
前記基底行列において、非ゼロ要素ではない要素が、ゼロ要素であり、
各ゼロ要素が、前記LDPC行列HのサイズZ*Zのすべてゼロの行列に対応し、
各非ゼロ要素Vi,jが、前記LDPC行列HのサイズZ*Zの巡回置換行列I(Pi,j)に対応し、
Pi,jが、ゼロ以上の整数のシフト値であり、Pi,j = mod(Vi,j, Z)である請求項10から12のいずれか一項に記載の方法。
【請求項１４】
前記基底行列が、下記の行および列、すなわち、
i = 5, j = 0, 1, 3, 12, 16, 21, 22,または27;
i = 6, j = 0, 6, 10, 11, 13, 17, 18, 20,または28;
i = 7, j = 0, 1, 4, 7, 8, 14,または29;
i = 8, j = 0, 1, 3, 12, 16, 19, 21, 22, 24,または30;
i = 9, j = 0, 1, 10, 11, 13, 17, 18, 20,または31;
i = 10, j = 1, 2, 4, 7, 8, 14,または32;
i = 11, j = 0, 1, 12, 16, 21, 22, 23,または33;
i = 12, j = 0, 1, 10, 11, 13, 18,または34;
i = 13, j = 0, 3, 7, 20, 23,または35;
i = 14, j = 0, 12, 15, 16, 17, 21,または36;
i = 15, j = 0, 1, 10, 13, 18, 25,または37;
i = 16, j = 1, 3, 11, 20, 22,または38;
i = 17, j = 0, 14, 16, 17, 21,または39;
i = 18, j = 1, 12, 13, 18, 19,または40;
i = 19, j = 0, 1, 7, 8, 10,または41;
i = 20, j = 0, 3, 9, 11, 22,または42;
i = 21, j = 1, 5, 16, 20, 21,または43;
i = 22, j = 0, 12, 13, 17,または44;
i = 23, j = 1, 2, 10, 18,または45;
i = 24, j = 0, 3, 4, 11, 22,または46;
i = 25, j = 1, 6, 7, 14,または47;
i = 26, j = 0, 2, 4, 15,または48;
i = 27, j = 1, 6, 8,または49;
i = 28, j = 0, 4, 19, 21,または50;
i = 29, j = 1, 14, 18, 25,または51;
i = 30, j = 0, 10, 13, 24,または52;
i = 31, j = 1, 7, 22, 25,または53;
i = 32, j = 0, 12, 14, 24,または54;
i = 33, j = 1, 2, 11, 21,または55;
i = 34, j = 0, 7, 15, 17,または56;
i = 35, j = 1, 6, 12, 22,または57;
i = 36, j = 0, 14, 15, 18,または58;
i = 37, j = 1, 13, 23,または59;
i = 38, j = 0, 9, 10, 12,または60;
i = 39, j = 1, 3, 7, 19,または61;
i = 40, j = 0, 8, 17,または62;
i = 41, j = 1, 3, 9, 18,または63;
i = 42, j = 0, 4, 24,または64;
i = 43, j = 1, 16, 18, 25,または65;
i = 44, j = 0, 7, 9, 22,または66;
i = 45, j = 1, 6, 10,または67
に非ゼロ要素をさらに含む請求項10から13のいずれか一項に記載の方法。
【請求項１５】
前記基底行列および前記リフティングファクタZに基づいて前記入力系列を復号する前記ステップが、
置換された行列および前記リフティングファクタZに基づいて前記入力系列を復号することを含み、
前記置換された行列が、前記基底行列に対して行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる請求項10から14のいずれか一項に記載の方法。
【請求項１６】
リフティングファクタZを決定するように構成された決定ユニットと、
符号化された系列を得るために基底行列およびリフティングファクタZに基づいて入力系列を符号化するように構成された処理ユニットであって、前記入力系列が、Kビットを含む、処理ユニットと
を含み、
前記基底行列が、m個の行およびn個の列を含み、mおよびnが、整数であり、5≦m≦46であり、nが、整数27≦n≦68であり、前記基底行列が、下記の行および列、すなわち、
i=0, j = 0, 1, 2, 3, 5, 6, 9, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22,または23;
i=1, j = 0, 2, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 16, 17, 19, 21, 22, 23,または24;
i=2, j = 0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 17, 18, 19, 20, 24,または25;
i=3, j = 0, 1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22,または25;
i=4, j = 0, 1, 26
に非ゼロ要素を含み、iが、行インデックスを表し、jが、列インデックスを表し、0≦i<mであり、0≦j<nである装置。
【請求項１７】
前記リフティングファクタZが、22*Z≧Kを満たす複数のリフティングファクタのうちの最小のリフティングファクタである請求項16に記載の装置。
【請求項１８】
前記処理ユニットが、
前記基底行列および前記リフティングファクタZに従って低密度パリティ検査(LDPC)行列Hを取得し、
前記符号化された系列を得るために前記LDPC行列Hを使用して前記入力系列を符号化するように構成される請求項16または17に記載の装置。
【請求項１９】
前記入力系列が、c = {c0, c1, c2, ..., cK-1}であり、前記符号化された系列が、d = {d0, d1, d2, ..., dN-1}であり、KおよびNが、両方とも正の整数であり、N = 66・Zである請求項16から18のいずれか一項に記載の装置。
【請求項２０】
前記符号化された系列dが、前記入力系列cから取られたK0個のビット、およびパリティ系列w={w0, w1, w2, ..., wN-K0-1}のN-K0個のパリティビットを含み、K0が、0より大きく、K以下の整数であり、
前記パリティ系列wおよび前記入力系列cが、
【数２】
2020518145.tif 000079
を満たし、
式中、cT=[c0, c1, c2, ..., cK-1]Tであり、wT=[w0, w1, w2, ..., wN-K0-1]Tであり、0Tが、列ベクトルであり、0Tのすべての要素の値が、0である請求項19に記載の装置。
【請求項２１】
K0 = K - 2・Zである請求項20に記載の装置。
【請求項２２】
前記基底行列において、非ゼロ要素ではない要素が、ゼロ要素であり、
各ゼロ要素が、前記LDPC行列HのサイズZ*Zのすべてゼロの行列に対応し、
各非ゼロ要素Vi,jが、前記LDPC行列HのサイズZ*Zの巡回置換行列I(Pi,j)に対応し、
Pi,jが、ゼロ以上の整数のシフト値であり、Pi,j = mod(Vi,j, Z)である請求項16から21のいずれか一項に記載の装置。
【請求項２３】
前記基底行列が、下記の行および列、すなわち、
i = 5, j = 0, 1, 3, 12, 16, 21, 22,または27;
i = 6, j = 0, 6, 10, 11, 13, 17, 18, 20,または28;
i = 7, j = 0, 1, 4, 7, 8, 14,または29;
i = 8, j = 0, 1, 3, 12, 16, 19, 21, 22, 24,または30;
i = 9, j = 0, 1, 10, 11, 13, 17, 18, 20,または31;
i = 10, j = 1, 2, 4, 7, 8, 14,または32;
i = 11, j = 0, 1, 12, 16, 21, 22, 23,または33;
i = 12, j = 0, 1, 10, 11, 13, 18,または34;
i = 13, j = 0, 3, 7, 20, 23,または35;
i = 14, j = 0, 12, 15, 16, 17, 21,または36;
i = 15, j = 0, 1, 10, 13, 18, 25,または37;
i = 16, j = 1, 3, 11, 20, 22,または38;
i = 17, j = 0, 14, 16, 17, 21,または39;
i = 18, j = 1, 12, 13, 18, 19,または40;
i = 19, j = 0, 1, 7, 8, 10,または41;
i = 20, j = 0, 3, 9, 11, 22,または42;
i = 21, j = 1, 5, 16, 20, 21,または43;
i = 22, j = 0, 12, 13, 17,または44;
i = 23, j = 1, 2, 10, 18,または45;
i = 24, j = 0, 3, 4, 11, 22,または46;
i = 25, j = 1, 6, 7, 14,または47;
i = 26, j = 0, 2, 4, 15,または48;
i = 27, j = 1, 6, 8,または49;
i = 28, j = 0, 4, 19, 21,または50;
i = 29, j = 1, 14, 18, 25,または51;
i = 30, j = 0, 10, 13, 24,または52;
i = 31, j = 1, 7, 22, 25,または53;
i = 32, j = 0, 12, 14, 24,または54;
i = 33, j = 1, 2, 11, 21,または55;
i = 34, j = 0, 7, 15, 17,または56;
i = 35, j = 1, 6, 12, 22,または57;
i = 36, j = 0, 14, 15, 18,または58;
i = 37, j = 1, 13, 23,または59;
i = 38, j = 0, 9, 10, 12,または60;
i = 39, j = 1, 3, 7, 19,または61;
i = 40, j = 0, 8, 17,または62;
i = 41, j = 1, 3, 9, 18,または63;
i = 42, j = 0, 4, 24,または64;
i = 43, j = 1, 16, 18, 25,または65;
i = 44, j = 0, 7, 9, 22,または66;
i = 45, j = 1, 6, 10,または67
に非ゼロ要素を含む請求項16から22のいずれか一項に記載の装置。
【請求項２４】
前記処理ユニットが、
置換された行列および前記リフティングファクタZに基づいて前記入力系列を符号化するように構成され、
前記置換された行列が、前記基底行列に対して行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる請求項16から23のいずれか一項に記載の装置。
【請求項２５】
前記基底行列、または前記リフティングファクタZ、または前記置換された行列が、1つまたは複数のメモリから取り出される請求項24に記載の装置。
【請求項２６】
リフティングファクタZを決定するように構成された決定ユニットと、
復号された系列を得るために基底行列およびリフティングファクタZに基づいて入力系列を復号するように構成された処理ユニットであって、前記入力系列が、1つまたは複数の軟判定値を含む、処理ユニットと
を含み、
前記基底行列が、m個の行およびn個の列を含み、mおよびnが、整数であり、5≦m≦46であり、nが、整数27≦n≦68であり、前記基底行列が、下記の行および列、すなわち、
i=0, j = 0, 1, 2, 3, 5, 6, 9, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22,または23;
i=1, j = 0, 2, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 16, 17, 19, 21, 22, 23,または24;
i=2, j = 0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 17, 18, 19, 20, 24,または25;
i=3, j = 0, 1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22,または25;
i=4, j = 0, 1, 26
に非ゼロ要素を含み、iが、行インデックスを表し、jが、列インデックスを表し、0≦i<mであり、0≦j<nである装置。
【請求項２７】
前記リフティングファクタZが、22*Z≧Kを満たす複数のリフティングファクタのうちの最小のリフティングファクタである請求項26に記載の装置。
【請求項２８】
前記処理ユニットが、
前記基底行列および前記リフティングファクタZに従って低密度パリティ検査(LDPC)行列Hを取得し、
前記復号された系列を得るために前記LDPC行列Hを使用して前記入力系列を復号するように構成される請求項26または27に記載の装置。
【請求項２９】
前記基底行列において、非ゼロ要素ではない要素が、ゼロ要素であり、
各ゼロ要素が、前記LDPC行列HのサイズZ*Zのすべてゼロの行列に対応し、
各非ゼロ要素Vi,jが、前記LDPC行列HのサイズZ*Zの巡回置換行列I(Pi,j)に対応し、
Pi,jが、ゼロ以上の整数のシフト値であり、Pi,j = mod(Vi,j, Z)である請求項26から28のいずれか一項に記載の装置。
【請求項３０】
前記基底行列が、下記の行および列、すなわち、
i = 5, j = 0, 1, 3, 12, 16, 21, 22,または27;
i = 6, j = 0, 6, 10, 11, 13, 17, 18, 20,または28;
i = 7, j = 0, 1, 4, 7, 8, 14,または29;
i = 8, j = 0, 1, 3, 12, 16, 19, 21, 22, 24,または30;
i = 9, j = 0, 1, 10, 11, 13, 17, 18, 20,または31;
i = 10, j = 1, 2, 4, 7, 8, 14,または32;
i = 11, j = 0, 1, 12, 16, 21, 22, 23,または33;
i = 12, j = 0, 1, 10, 11, 13, 18,または34;
i = 13, j = 0, 3, 7, 20, 23,または35;
i = 14, j = 0, 12, 15, 16, 17, 21,または36;
i = 15, j = 0, 1, 10, 13, 18, 25,または37;
i = 16, j = 1, 3, 11, 20, 22,または38;
i = 17, j = 0, 14, 16, 17, 21,または39;
i = 18, j = 1, 12, 13, 18, 19,または40;
i = 19, j = 0, 1, 7, 8, 10,または41;
i = 20, j = 0, 3, 9, 11, 22,または42;
i = 21, j = 1, 5, 16, 20, 21,または43;
i = 22, j = 0, 12, 13, 17,または44;
i = 23, j = 1, 2, 10, 18,または45;
i = 24, j = 0, 3, 4, 11, 22,または46;
i = 25, j = 1, 6, 7, 14,または47;
i = 26, j = 0, 2, 4, 15,または48;
i = 27, j = 1, 6, 8,または49;
i = 28, j = 0, 4, 19, 21,または50;
i = 29, j = 1, 14, 18, 25,または51;
i = 30, j = 0, 10, 13, 24,または52;
i = 31, j = 1, 7, 22, 25,または53;
i = 32, j = 0, 12, 14, 24,または54;
i = 33, j = 1, 2, 11, 21,または55;
i = 34, j = 0, 7, 15, 17,または56;
i = 35, j = 1, 6, 12, 22,または57;
i = 36, j = 0, 14, 15, 18,または58;
i = 37, j = 1, 13, 23,または59;
i = 38, j = 0, 9, 10, 12,または60;
i = 39, j = 1, 3, 7, 19,または61;
i = 40, j = 0, 8, 17,または62;
i = 41, j = 1, 3, 9, 18,または63;
i = 42, j = 0, 4, 24,または64;
i = 43, j = 1, 16, 18, 25,または65;
i = 44, j = 0, 7, 9, 22,または66;
i = 45, j = 1, 6, 10,または67
に非ゼロ要素をさらに含む請求項26から29のいずれか一項に記載の装置。
【請求項３１】
前記基底行列、または前記リフティングファクタZ、または置換された行列が、前記1つまたは複数のメモリから取り出される請求項30に記載の装置。
【請求項３２】
請求項16から25のいずれか一項に記載の装置を含む通信デバイス。
【請求項３３】
符号化された入力系列を含む信号を送信するように構成されたトランシーバをさらに含む請求項32に記載の通信デバイス。
【請求項３４】
レートマッチングされた系列を得るために前記符号化された入力系列に対してレートマッチングを実行するように構成された構成要素と、
インターリーブされた系列を得るために前記レートマッチングされた系列に対してインターリーブを実行するように構成された構成要素と、
変調された系列を得るために前記インターリーブされた系列に対して変調を実行するように構成された構成要素と
をさらに含み、
前記トランシーバが、前記変調された系列を含む信号を送信するように特に構成される請求項32または33に記載の通信デバイス。
【請求項３５】
請求項26から31のいずれか一項に記載の装置を含む通信デバイス。
【請求項３６】
入力系列を含む信号を受信するように構成されたトランシーバをさらに含む請求項35に記載の通信デバイス。
【請求項３７】
復調された系列を得るために前記入力系列に対して復調を実行するように構成された構成要素と、
デインターリーブされた系列を得るために前記復調された系列に対してデインターリーブを実行するように構成された構成要素と、
前記1つまたは複数の軟判定値を得るために前記デインターリーブされた系列に対してデレートマッチングを実行するように構成された構成要素と
をさらに含む請求項35または36に記載の通信デバイス。
【請求項３８】
請求項1から15のいずれか一項に記載の方法を実行するように構成された装置。
【請求項３９】
プロセッサ、メモリ、および前記メモリに記憶され、前記プロセッサ上で実行され得る命令を含み、前記命令が実行されるときに、請求項1から15のいずれか一項に記載の方法を実行させられる通信装置。
【請求項４０】
請求項16から31のいずれか一項もしくは請求項38に記載の装置または請求項20に記載の通信装置を含む端末。
【請求項４１】
請求項16から31のいずれか一項もしくは請求項38に記載の装置または請求項20に記載の通信装置を含む基地局。
【請求項４２】
請求項40に記載の端末および請求項22に記載の基地局を含む通信システム。
【請求項４３】
命令を含み、前記命令がコンピュータ上で実行されるときに、前記コンピュータが請求項1から15のいずれか一項に記載の方法を実行させられるコンピュータ可読記憶媒体。
【請求項４４】
請求項1から15のいずれか一項に記載の方法をコンピュータに実行させるプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本出願の実施形態は、通信の分野に関し、特に、情報処理方法および通信装置に関する。
【背景技術】
【０００２】
低密度パリティ検査(low density parity check、LDPC)符号は、疎検査行列を有する線形ブロック符号の一種であり、柔軟な構造と、低い復号の複雑さとによって特徴付けられる。LDPC符号を復号することは部分的に並列的な反復復号アルゴリズムを使用するので、LDPC符号は、通常のターボ符号よりも高いスループットを有する。LDPC符号は、チャネルの送信の信頼性および電力の利用を向上させるために通信システムにおいて誤り訂正符号として使用され得る。さらに、LDPC符号は、宇宙通信、光ファイバ通信、パーソナル通信システム、ADSL、磁気記録デバイスなどにおいて広く使用され得る。LDPC符号は、第5世代モバイル通信のチャネル符号化モードの1つとして現在考えられている。
【０００３】
実際の応用においては、異なる特殊な構造によって特徴付けられるLDPC行列が、使用され得る。特殊な構造によって特徴付けられるLDPC行列Hは、準巡回(quasi cycle、QC)構造を有するLDPC基底行列(base matrix)を拡張することによって取得され得る。QC-LDPCは、高い並列性を有するハードウェアに好適であり、比較的高いスループットを提供する。チャネル符号化に好適であるLDPC行列を設計することが可能である。
【発明の概要】
【課題を解決するための手段】
【０００４】
本出願の実施形態は、複数の長さの情報ビット系列の符号化および復号をサポートし、システムの柔軟な符号長の要件および符号化率の要件を満たすための情報処理方法、通信装置、および通信システムを提供する。
【０００５】
第1の態様によれば、符号化方法およびエンコーダが提供され、エンコーダは、低密度パリティ検査(LDPC)行列を使用することによって入力系列を符号化する。
【０００６】
第2の態様によれば、復号方法およびデコーダが提供され、デコーダは、低密度パリティ検査(LDPC)行列を使用することによって入力系列を復号する。
【０００７】
第1の態様または第2の態様の第1の実装においては、LDPC行列の基底グラフ(base graph)が、m行およびn列の行列によって表され、mは、5以上の整数であり、nは、27以上の整数である。基底グラフは、少なくとも部分行列Aおよび部分行列Bを含む。部分行列Aは、5行および22列の行列である。部分行列Bは、5行および5列の行列であり、部分行列Bは、重みが3である列、および二重対角(bi-diagonal)構造を有する部分行列B'を含む。
【０００８】
任意で、部分行列Aにおいては、1つの列が重み5を有し、1つの列が重み4を有し、その他の20列が重み3を有する。
【０００９】
任意で、部分行列Bにおいては、1つの列が重み3を有し、3つの列が重み2を有する。
【００１０】
上述の実装に基づいて、部分行列Bは、重みが1である1つの列をさらに含む。
【００１１】
第1の態様または第2の態様の第2の実装においては、LDPC行列の基底グラフが、m行およびn列の行列によって表され、mは、5以上の整数であり、nは、27以上の整数である。基底グラフは、少なくとも部分行列Aおよび部分行列Bを含む。部分行列Aは、5行および22列の行列であり、部分行列Bは、5行および5列の行列である。部分行列Aおよび部分行列Bを含む行列において、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する。
【００１２】
任意で、部分行列Aおよび部分行列Bを含む行列においては、1つの行が、1以上および5以下の重みを有し、その他の4つの行が、17以上および21以下の重みを有する。
【００１３】
たとえば、部分行列Aおよび部分行列Bを含む行列においては、1つの行が重み3を有し、その他の4つの行が重み19を有する。この場合、部分行列Aおよび部分行列Bを含む行列は、図3aに示される基底グラフ30aの行0から行4までの5つの行および列0から列26までの行列のブロックの行または列を含んでもよい。行は、互いに交換され得、列も、互いに交換され得る。たとえば、基底グラフ30aの部分行列Aおよび部分行列Bを含む行列のブロックにおいては、図8aに示される基底グラフ80aのコア行列を得るために、行3と行0とが、互いに交換され得、行2と行1とが、互いに交換され得、列23と列25とが、互いに交換され得る。
【００１４】
上述の実装に基づいて、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、たとえば、図3b-1に示される基底行列30b-1、30b-2、30b-3、30b-4、および30b-5、および図3b-2に示される30b-6、30b-7、30b-8、30b-9、および30b-10のいずれか1つによって表され得る。
【００１５】
LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のいずれか1つに対して列の置換、行の置換、または行の置換および列の置換を実行することによって得られた行列によって表され得る。たとえば、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のいずれか1つの行または列を含み得る。
【００１６】
上述の実装に基づいて、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-1、80b-2、80b-3、80b-4、80b-5、または図8b-2に示される80b-6のいずれか1つによって表され得る。80b-4は、基底行列30b-3に対して行の置換および列の置換を実行することによって得られる行列であり、80b-5は、基底行列30b-4に対して行の置換および列の置換を実行することによって得られる行列であり、80b-6は、基底行列30b-5に対して行の置換および列の置換を実行することによって得られる行列である。
【００１７】
異なるブロック長をサポートするために、LDPC符号は、異なるリフティングファクタ(lifting factor)Zを必要とする。上述の実装に基づいて、可能な実装において、異なるリフティングファクタZに対応する基底行列が、その異なるリフティングファクタZに基づいて使用される。
【００１８】
たとえば、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-1であり得、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-2であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-3であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-4であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-5であり得る。
【００１９】
別の可能な実装においては、
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-1であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-2であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-3であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-4であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-5であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-2に示される基底行列80b-6であり得る。
【００２０】
別の可能な実装において、部分行列Aは、組み込みパンクチャ(built-in puncture)ビットの2つの列をさらに含み得る。
【００２１】
さらに、柔軟な符号化率を得るために、対応するサイズの部分行列C、部分行列D、および部分行列Eが、異なる符号化率を得るためにコア行列に基づいて追加され得る。
【００２２】
部分行列Cは、5行およびmD列のオールゼロ行列であり、
部分行列Dは、mD行および27列の行列であり、
部分行列Eは、mD行およびmD列の単位行列であり、
mDは、整数であり、0≦mD≦41である。
【００２３】
部分行列Dは、行列FのmD個の行を含み、行列Fは、41個の行および27個の列を有し、行列Fの行の重みは、それぞれ、7、7、9、8、7、7、8、6、6、5、6、5、5、6、5、5、5、5、4、4、4、5、4、5、4、4、4、4、3、4、4、4、4、3、3、4、4、3、3、3、および4である。
【００２４】
可能な実装において、行列Fは、基底グラフ30aの行5から行45までおよび列0から列26までを含む行列である。
【００２５】
可能な実装において、行列Fのシフト行列は、図3c-2に示される基底行列30c-1、図3c-3に示される30c-2、図3c-4に示される30c-3、図3c-5に示される30c-4、または図3c-6に示される30c-5のいずれか1つによって表され得る。
【００２６】
別の可能な実装においては、図8aに示される基底グラフの行列80aを得るために、基底グラフ30aの行17と行19とは、互いに交換され得、列39と列41とは、互いに交換され得る。別の例として、部分行列Dは、行列FのmD個の行を含み、行の置換は、mD個の行の間で実行されなくても、または行の置換は、mD個の行のうちの1つまたは複数の間で実行されてもよく、部分行列Eは、引き続き対角構造を有する。たとえば、基底グラフ80aを得るために、部分行列Dは、行列FのmD個の行を含み、行列Fの行12と行14が互いに交換され、部分行列Eは、引き続き対角構造を有する。
【００２７】
異なるブロック長をサポートするために、LDPC符号は、異なるリフティングファクタZを必要とする。上述の実装に基づいて、可能な実装において、異なるリフティングファクタZに対応する基底行列が、異なるリフティングファクタZに基づいて使用される。たとえば、
可能な実装においては、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、基底行列の部分行列Dは、図3c-2に示されるシフト行列30c-1のmD個の行を含み得、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、基底行列の部分行列Dは、図3c-3に示されるシフト行列30c-2のmD個の行を含み得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底行列の部分行列Dは、図3c-4に示されるシフト行列30c-3のmD個の行を含み得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底行列の部分行列Dは、図3c-5に示されるシフト行列30c-4のmD個の行を含み得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底行列の部分行列Dは、図3c-6に示されるシフト行列30c-5のmD個の行を含み得る。
【００２８】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【００２９】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、図8c-2に示される80c-1であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、図8c-3に示される80c-2であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、図8c-4に示される80c-3であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、図8c-5に示される80c-4であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、図8c-6に示される80c-5であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、図8c-7に示される80c-6であり得る。
【００３０】
第1の実装のLDPC行列の基底グラフおよび基底行列は、ブロック長が352から8448ビットである符号ブロックの性能要件を満たすことができる。
【００３１】
上述の態様または態様の可能な実装のいずれか1つに基づいて、別の可能な実装において、方法は、リフティングファクタZを決定するステップをさらに含む。たとえば、リフティングファクタZの値は、入力系列の長さKに基づいて決定される。たとえば、入力系列の長さがKである場合、22*Z≧Kを満たすリフティングファクタの中の最小値が、システムにおいて定義された複数のリフティングファクタから決定され得る。
【００３２】
送信端の通信デバイスに関して、LDPC行列を使用することによって入力系列を符号化することは、
リフティングファクタZに対応するLDPC行列を使用することによって入力系列を符号化することを含む。
【００３３】
受信端の通信デバイスに関して、LDPC行列を使用することによって入力系列を復号することは、
リフティングファクタZに対応するLDPC行列を使用することによって入力系列を復号することを含む。
【００３４】
上述の態様または態様の可能な実装のいずれか1つに基づいて、別の可能な実装において、LDPC行列の基底行列は、メモリに記憶され得る。
【００３５】
上述の態様または態様の可能な実装のいずれか1つに基づいて、別の可能な実装において、LDPC行列の基底グラフは、メモリに記憶され、LDPC行列の基底行列の非ゼロ要素のシフト値は、メモリに記憶され得る。
【００３６】
上述の可能な実装に基づいて、可能な設計においては、LDPCの符号化または復号のための基底グラフおよび基底行列のうちの少なくとも一方が、LDPC行列の基底グラフおよび基底行列のうちの少なくとも一方に対して行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる。
【００３７】
第3の態様によれば、通信装置が提供され、装置は、上述の方法の設計の第1の態様の可能な実装のいずれか1つを実行するように構成されたソフトウェアモジュールおよび/またはハードウェア構成要素を含み得る。
【００３８】
可能な設計において、第3の態様において提供される通信装置は、第1の態様において説明されたエンコーダ、決定ユニット、および処理ユニットを含む。決定ユニットは、入力系列を符号化するために必要とされるリフティングファクタZを決定するように構成される。処理ユニットは、リフティングファクタZに対応するLDPC行列を使用することによって入力系列を符号化するように構成される。
【００３９】
任意で、通信装置は、トランシーバをさらに含み、トランシーバは、符号化された情報データに対応する信号を送信するように構成される。
【００４０】
第4の態様によれば、通信装置が提供され、装置は、上述の方法の設計の第2の態様の可能な実装のいずれか1つを実行するように構成されたモジュールを含み得る。モジュールは、ソフトウェアおよび/またはハードウェアであり得る。
【００４１】
可能な設計において、第4の態様において提供される通信装置は、第2の態様において説明されたデコーダ、取得ユニット、および処理ユニットを含む。取得ユニットは、LDPC符号の軟判定値(soft value)およびリフティングファクタZを取得するように構成される。処理ユニットは、情報ビット系列を得るために、リフティングファクタZに対応する基底行列HBに基づいてLDPC符号の軟判定値を復号するように構成される。
【００４２】
通信装置は、トランシーバをさらに含み、トランシーバは、LDPC符号を含む信号を受信するように構成される。
【００４３】
第5の態様によれば、1つまたは複数のプロセッサを含む通信装置が、提供される。
【００４４】
可能な設計において、1つまたは複数のプロセッサは、第1の態様のエンコーダの機能を実装し得る。別の可能な設計において、第1の態様のエンコーダは、プロセッサの一部であり得、プロセッサは、第1の態様のエンコーダの機能に加えてその他の機能を実装し得る。
【００４５】
可能な設計において、1つまたは複数のプロセッサは、第2の態様のデコーダの機能を実装し得る。別の可能な設計において、第2の態様のデコーダは、プロセッサの一部であり得る。
【００４６】
任意で、通信装置は、トランシーバおよびアンテナをさらに含み得る。
【００４７】
任意で、通信装置は、トランスポートブロックの巡回冗長検査(CRC)を生成するように構成された構成要素、符号ブロックのセグメンテーションおよびCRC検査のために使用される構成要素、インターリーブのために使用されるインターリーバ、変調処理のために使用される変調器などをさらに含み得る。
【００４８】
任意で、通信装置は、復調のために使用される復調器、デインターリーブのために使用されるデインターリーバ、レートデマッチングのために使用される構成要素などをさらに含み得る。これらの構成要素の機能は、1つまたは複数のプロセッサによって実装され得る。
【００４９】
可能な設計において、これらの構成要素の機能は、1つまたは複数のプロセッサによって実装され得る。
【００５０】
第6の態様によれば、本出願の実施形態は、通信システムを提供し、システムは、第3の態様において説明された通信装置、および第4の態様において説明された通信装置を含む。
【００５１】
第7の態様によれば、本出願の実施形態は、通信システムを提供し、システムは、第5の態様において説明された1つまたは複数の通信装置を含む。
【００５２】
別の態様によれば、本出願の実施形態は、コンピュータストレージ媒体を提供し、コンピュータストレージ媒体は、プログラムを記憶し、プログラムが実行されると、コンピュータに、上述の態様において説明された方法を実行させる。
【００５３】
本出願の別の態様によれば、命令を含むコンピュータプログラム製品が提供される。命令がコンピュータ上で実行されると、コンピュータは上述の態様の方法を実行する。
【００５４】
本出願の実施形態の情報処理方法、装置、通信デバイス、および通信システムによれば、システムの柔軟な符号長および符号化率の要件が、符号化性能およびエラーフロアの観点で満たされ得る。
【図面の簡単な説明】
【００５５】
【図１】LDPC符号の基底グラフ、基底行列、および巡回置換行列の概略図を示している。
【図２】LDPC符号の基底グラフの概略構造図である。
【図３ａ】本出願の実施形態によるLDPC符号の基底グラフの概略図である。
【図３ｂ−１】本出願の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｂ−２】本出願の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−１】本出願の別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図３ｃ−２】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−３】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−４】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−５】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−６】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−７】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−８】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−９】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３ｃ−１０】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図３Ｃ−１１】本出願の別の実施形態によるLDPC符号の基底行列の概略図である。
【図４】本出願の実施形態によって提供される概略的な性能の図である。
【図５】本出願の別の実施形態によって提供される概略的な性能の図である。
【図６】本出願の実施形態による情報処理装置の概略ブロック図である。
【図７】本出願の実施形態による通信システムの概略ブロック図である。
【図８ａ】本出願の別の実施形態によるLDPC符号の基底グラフの概略図である。
【図８ｂ−１】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｂ−２】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−１】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−２】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−３】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−４】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−５】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−６】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−７】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−８】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−９】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図８ｃ−１０】本出願のさらに別の実施形態によるLDPC符号の基底行列の概略図を示している。
【図９】本出願の実施形態によるLDPC符号の概略的な性能の図である。
【図１０】本出願の別の実施形態によるLDPC符号の概略的な性能の図である。
【図１１ａ】本出願のさらに別の実施形態によるLDPC符号の基底グラフの概略図である。
【図１１ｂ】図11aにおいて提供されるLDPC符号の基底グラフに基づく基底行列の概略図である。
【図１２】本出願のさらに別の実施形態による基底グラフの概略図である。
【発明を実施するための形態】
【００５６】
理解を容易にするために、本出願のいくつかの用語が、以下で説明される。
【００５７】
本出願において、用語「ネットワーク」および「システム」は、多くの場合、交換可能に使用され、「装置」および「デバイス」も、多くの場合、交換可能に使用される。これらの用語の意味は、当業者によって理解される。「通信装置」は、(ベースバンドチップ、デジタル信号処理チップ、もしくは汎用チップなどの)チップ、端末、基地局、または任意のその他のネットワーキングデバイスであってもよい。
【００５８】
端末は、通信機能を有するデバイスである。端末は、ワイヤレスモデムに接続され、ワイヤレス通信機能を有するハンドヘルドデバイス、車載デバイス、ウェアラブルデバイス、コンピューティングデバイス、または任意のその他の処理デバイスであってよい。端末は、ユーザ機器、移動局、加入者ユニット、局、セルラー電話、携帯情報端末、ワイヤレスモデム、ワイヤレス通信デバイス、ハンドヘルドデバイス、ラップトップコンピュータ、コードレス電話、および無線ローカルループ局など、異なるネットワークにおいて異なる名前で呼ばれ得る。説明を容易にするために、これらのデバイスは、本出願においては単に端末と呼ばれる。
【００５９】
基地局(base station、BS)は、基地局デバイスとも呼ばれることもあり、ワイヤレス通信機能を提供するために無線アクセスネットワーク内に配置されるデバイスである。基地局は、異なるワイヤレスアクセスシステムにおいて異なる名前で呼ばれる場合がある。たとえば、ユニバーサル移動体通信システム(Universal Mobile Telecommunications System、UMTS)ネットワークの基地局は、ノードB(NodeB)と呼ばれ、LTEネットワークの基地局は、進化型ノードB(evolved NodeB、eNBまたはeNodeB)と呼ばれ、新無線(new radio、NR)ネットワークの基地局は、送受信点(transmission reception point、TRP)または次世代ノードB(generation nodeB、gNB)と呼ばれる。その他のネットワークの基地局は、その他の名前で呼ばれ得る。これは、本出願において限定されない。
【００６０】
以下で、本出願の実施形態の技術的な解決策を添付の図面を参照して説明する。
【００６１】
LDPC符号は、パリティチェック行列Hによって表され得る。パリティチェック行列H符号は、基底グラフ(base graph)およびシフト(shift)値を使用することにより取得され得る。基底グラフは、m行およびn列の行列であり、m*n個の行列要素(entryとも呼ばれる)を含む。各行列要素の値は、0か1のどちらかである。値が0である要素は、ゼロ要素と呼ばれ、Z行*Z列のオールゼロ行列(zero matrix)によって置き換えられ得る。値が1である要素は、非ゼロ要素と呼ばれ、Z行*Z列の巡回置換行列(circular permutation matrix)によって置き換えられ得る。つまり、基底グラフの各要素は、1つのオールゼロ行列または1つの巡回置換行列を表す。図1の10aは、m = 4およびn = 20である、QC構造(QC structure)を有するLDPC符号の例示的な基底グラフの要素を示している。
【００６２】
本明細書において、基底グラフおよび行列の行インデックスおよび列インデックスは、0から番号が付けられているが、これは、単に説明を容易にするためのものであることに留意されたい。たとえば、列0は、基底グラフまたは行列の第1の列を示し、列1は、基底グラフおよび行列の第2の列を示しており、行0は、基底グラフおよび行列の第1の行を示し、行1は、基底グラフおよび行列の第2の行を示しており、以下同様である。
【００６３】
行インデックスおよび列インデックスは、代替的に、1から番号を付けてもよく、この場合には、本明細書において示される行インデックスおよび列インデックスは、対応する行インデックスおよび列インデックスを得るために1ずつ増やされることは理解されるであろう。たとえば、行インデックスおよび列インデックスに1から番号が付けられる場合、列1は、基底グラフおよび行列の第1の列を示し、列2は、基底グラフおよび行列の第2の列を示しており、行1は、基底グラフおよび行列の第1の行を示し、行2は、基底グラフおよび行列の第2の行を示しており、以下同様である。
【００６４】
基底グラフの行iおよび列jの要素の値が1であり、その要素がシフト値Pi,jを割り振られ、Pi,jが0以上の整数である場合、基底グラフの行iおよび列jの、値が1である要素は、Pi,jに対応するZ*Z巡回置換行列によって置き換えられる。Pi,jに対応する巡回置換行列は、サイズZ*Zの単位行列を右にPi,j回循環シフトすることによって得られる行列に等しい。LDPC符号のパリティチェック行列を得るために、値が0である基底グラフの各要素はサイズZ*Zのオールゼロ行列によって置き換えられ、値が1である各要素は、要素のシフト値に対応するサイズZ*Zの巡回置換行列によって置き換えられる。シフト値の位置が、基底グラフに示され得、基底グラフの非ゼロ要素が、そのシフト値に対応する。
【００６５】
Zは、正の整数、リフティング(lifting)ファクタであるか、またはリフティングサイズ(lifting size)もしくはlifting factorと呼ばれる場合がある。Zは、システムによってサポートされる符号ブロックサイズおよび情報データのサイズに基づいて決定され得る。m行*n列の基底グラフの場合、パリティチェック行列Hは、(m*Z)*(n*Z)のサイズを有することが分かる。たとえば、リフティングファクタZが4である場合、基底グラフ10aの各ゼロ要素が、サイズ4*4の1つのオールゼロ行列11aによって置き換えられる。P2,3が2である場合、基底グラフの行2および列3の非ゼロ要素が、サイズ4*4の巡回置換行列11dによって置き換えられ、行列11dは、サイズ4*4の単位行列11bを右に2回循環シフトすることによって得られる。P2,4が0である場合、行2および列4の非ゼロ要素が、単位行列11bによって置き換えられる。単なる例が本明細書において説明され、例は限定をなさないことに留意されたい。
【００６６】
Pi,jの値は、リフティングファクタZに応じて決まり得る。同じ位置の、値が1である基底グラフの要素に関して、Pi,jは、異なるリフティングファクタZに関して異なり得る。実装を容易にするために、m*n基底行列が定義され得る。基底行列の要素は、基底グラフの要素と1対1に対応する。基底グラフのゼロ要素は、基底行列において同じ位置を有し、要素は、-1によって示される。基底グラフにおいて値が1である行iおよび列jの非ゼロ要素は、基底行列において同じ位置を有し、要素は、Pi,jによって示され得、Pi,jは、0以上の正の整数である。本出願のこの実施形態において、基底行列は、基底グラフの行列のシフト行列とも呼ばれることがある。
【００６７】
図1は、基底グラフ10aに対応する基底行列10bを示す。
【００６８】
通常、LDPC符号の基底グラフまたは基底行列は、組み込みパンクチャ(built-in puncture)ビットのp列をさらに含み得、pは、0から2までの範囲の整数であり得る。これらの列は、符号化において使用され得るが、列に対応するシステムビットは、送信されない。LDPC符号の基底行列の符号化率は、R = (n - m)/(n - p)を満たす。4行および20列(4*20)の基底行列が組み込みパンクチャビットの2列を含む場合、符号化率は、(20 - 4)/(20 - 2) = 8/9である。
【００６９】
ワイヤレス通信システムにおいて使用されるLDPC符号は、QC-LDPC符号であり、QC-LDPC符号のパリティビットの一部は、二重対角構造またはraptor-like構造を有し、その結果、符号化が、簡素化され得、漸増冗長性ハイブリッド再送(incremental redundancy hybrid repeat)が、サポートされ得る。QC-LDPC符号のためのデコーダにおいては、通常、QC-LDPCシフトネットワーク(QC-LDPC shift network、QSN)、Banyanネットワーク、またはBenesネットワークが、情報の循環シフトを実装するために使用される。
【００７０】
raptor-like構造を有するQC-LDPC符号の基底グラフは、m行およびn列を有する行列であり、基底グラフは、通常、5つの部分行列A、B、C、D、およびEを含み得る。行列の重みは、非ゼロ要素の量によって決定される。行の重み(行重み)は、行内の非ゼロ要素の量であり、列の重み(列重み)は、列内の非ゼロ要素の量である。以下は、図2の200に示される。
【００７１】
部分行列Aは、mA行およびnA列の行列であり、部分行列Aは、mA*nAのサイズを有する。各列は、LDPC符号のうちのZ個のシステムビットに対応し、システムビットは、情報ビットと呼ばれることもある。
【００７２】
部分行列Bは、mA行およびmA列の平方行列であり、部分行列Bは、mA*mAのサイズを有する。各列は、LDPC符号のうちのZ個のパリティビットに対応する。図2の20aに示されるように、部分行列Bは、二重対角構造を有する部分行列B'および重みが3である行列の列(略して、重み3列)を含み、重み3列は、部分行列B'の左側にある。図2の20bまたは20cに示されるように、部分行列Bは、重みが1の行列の列(略して、重み1行列列)をさらに含み得、重み1行列列は、部分行列Bの最初のまたは最後の列にあり得、重み1行列列の非ゼロ要素は、部分行列Bの最後の行にあり、その結果、部分行列Bの最後の行の重みは、1である。
【００７３】
概して、部分行列Aおよび部分行列Bに基づいて生成される行列は、高符号化率の符号化をサポートするために使用され得るコア行列である。
【００７４】
部分行列Cは、オールゼロ行列であり、部分行列Cは、mA×(n-(mA+nA))のサイズを有する。
【００７５】
部分行列Eは、単位行列であり、部分行列Eは、(m - mA)×(m - mA)のサイズを有する。
【００７６】
部分行列Dは、(m - mA)×(nA + mA)のサイズを有し、部分行列Dは、低符号化率のためのパリティビットを生成するために使用され得る。
【００７７】
基底グラフは数学的に表され、Cがオールゼロ行列であり、Eが単位行列であるので、可能な実装においては、部分行列Aおよび部分行列Bを含む行列、または部分行列A、部分行列B、および部分行列Dを含む行列が、符号化または復号のための行列の基底グラフを単に表すために使用され得ることは理解されるであろう。
【００７８】
部分行列B、部分行列C、および部分行列Eの構造が比較的規定されているので、部分行列Aおよび部分行列Dの構造が、LDPC符号の符号化および復号の性能に影響を与える要因の1つになる。
【００７９】
raptor-like構造を有するLDPC行列が符号化のために使用されるとき、可能な実装においては、部分行列Aおよび部分行列Bを含む行列の部分、すなわち、コア行列が、部分行列Bに対応する1つまたは複数のパリティビットを得るために最初に符号化され得、それから、行列全体が、部分行列Eに対応する1つまたは複数のパリティビットを得るために符号化される。部分行列Bが二重対角構造を有する部分行列B'および重み1行列列を含み得るので、符号化中、二重対角構造を有する部分行列B'に対応する1つまたは複数のパリティビットが、最初に取得され得、それから、重み1行列列に対応する1つまたは複数のパリティビットが、取得され得る。
【００８０】
以下で、例示的な符号化の実装を与える。部分行列Aおよび部分行列Bを含むコア行列がHcoreであると仮定して、重み1行列列と、列内の非ゼロ要素がある行とが、行列Hcore-dualを得るためにHcoreから削除される。パリティビットに関するHcore-dual内の部分は、He = [He1 He2]によって表され、He1は、重み3行列列であり、He2は、二重対角構造を有する。LDPC符号の行列の定義によれば、Hcore-dual・[S Pe]T = 0であり、Sは、入力系列であり、情報ビットを含むベクトルであり、Peは、パリティビットを含むベクトルであり、[S Pe]Tは、入力系列SおよびPeを含む転置行列を示す。したがって、Hcore-dualに対応するパリティビットが、入力系列SおよびHcore-dualに基づいてまず計算され得、入力系列Sは、すべての情報ビットを含む。それから、部分行列B内の重み1行列列に対応するパリティビットが、Hcore-dualに対応する得られたパリティビットおよび入力系列Sに基づいて計算される。この場合、部分行列Bに対応するすべてのパリティビットが取得され得る。その後、部分行列Eに対応するパリティビットが、すべての情報ビットおよびすべてのパリティビットを得るために、入力系列Sと部分行列Bに対応するパリティビットとに基づいて、部分行列Dを使用することによって符号化することにより得られる。系列は、符号化を実行することによって得られたすべての情報ビットおよびすべてのパリティビット、つまり、LDPC符号系列を含む。
【００８１】
任意で、LDPC符号化は、短縮(shortening)動作およびパンクチャ(puncturing)動作をさらに含み得る。短縮されたビットおよびパンクチャされたビットは、送信されない。
【００８２】
短縮は、通常、最後の情報ビットから実行され、異なる方法で実行され得る。たとえば、短縮されたビットの量が、s0であり、入力系列Sの最後のs0ビットが、入力系列S'を得るために、知られているビットに設定され、たとえば、0もしくはnullまたは別の値に設定され得、それから、入力系列S'が、LDPC行列を使用することによって符号化される。別の例として、入力系列Sの最後の(s0 mod Z)ビットが、入力系列S'を得るために、知られているビットに設定され、たとえば、0もしくはnullまたは別の値に設定され得、部分行列Aの最後の
【００８３】
【数１】
2020518145.tif 000080
【００８４】
列が、LDPC行列H'を得るために削除され、入力系列S'が、LDPC行列H'を使用することによって符号化されるか、または部分行列Aの最後の
【００８５】
【数２】
2020518145.tif 000081
【００８６】
列が、入力系列S'の符号化に参加しない。符号化の後、短縮されたビットは、送信されない。
【００８７】
パンクチャは、1つもしくは複数の組み込みパンクチャビット、または入力系列内の1つもしくは複数のパリティビットに対して実行され得る。また、通常、パリティビットをパンクチャすることは、パリティビットの最後の1ビットからである。代替的に、パンクチャは、システムの予め設定されたパンクチャパターンに基づいて実行され得る。可能な実装においては、入力系列が最初に符号化され、それから、パンクチャされる必要があるビットの量pに基づいて、パリティビットの最後のpビットが選択されるか、またはシステムの予め設定されたパンクチャパターンに基づいてpビットが選択され、pビットは送信されない。別の可能な実装において、パンクチャされたビットに対応する行列内のp列およびこれらの列内の非ゼロ要素があるp行が、やはり決定され得、行および列は、符号化において使用されず、したがって、対応するパリティビットは、生成されない。
【００８８】
本明細書において説明される符号化の実装は、例として使用されるに過ぎないことに留意されたい。当業者に知られているその他の符号化の実装が、本出願において提供される基底グラフおよび/または基底行列に基づいて使用され得、符号化の実装は、本明細書において限定されない。本出願の復号は、複数の復号方法、たとえば、min-sum(MS)復号方法またはbelief propagation復号方法において実行され得る。MS復号方法は、Flood MS復号方法と呼ばれることがある。たとえば、入力系列が、初期化され、1回または複数回の反復が、実行される。硬判定検出が、反復の後に実行され、硬判定の結果が、検査される。復号結果が検査方程式を満たす場合、復号が成功し、反復が終了し、判定結果が出力される。復号結果が検査方程式を満たさない場合、反復回数の最大量以内で反復が再び実行され、検査がまだ失敗する場合、反復回数の最大量が達せられるとき、復号は失敗する。MS復号の原理は、当業者によって理解され、詳細は、本明細書において説明されない。
【００８９】
復号方法は、本明細書において例として使用されるに過ぎず、当業者に知られているその他の復号方法が、本出願において提供される基底グラフおよび/または基底行列に基づいて使用され得、復号方法は、本出願において限定されないことに留意されたい。
【００９０】
LDPC符号は、基底グラフおよび基底行列に基づいて取得され得、LDPC符号の性能の上限は、基底グラフまたは基底行列に対して密度発展を実行することによって決定され得る。LDPC符号のエラーフロア(error floor)は、基底行列のシフト値に基づいて決定される。符号化および復号の性能を改善することならびにエラーフロアを低減することは、基底グラフおよび基底行列を設計する目的の一部である。符号長は、ワイヤレス通信システムにおいて柔軟である。符号ブロックは、40ビットもしくは1280ビットなどの短いブロック長を有し得るか、または符号ブロックは、5000ビットもしくは8448ビットなどの長いブロック長を有し得る。図3a、図3b-1および図3b-2、ならびに図3c-1〜図3c-11は、LDPC符号の基底グラフおよび基底行列の例であり、例は、最大8448ビットのブロック長を有する符号ブロックの性能要件を満たすことができる。図8a、図8b-1および図8b-2、ならびに図8c-1〜図8c-10は、別のLDPC符号の基底グラフおよび基底行列の例を与える。図11aおよび図11bは、別のLDPC符号の基底グラフおよび基底行列の例を与える。説明および理解を容易にするために、行インデックスおよび列インデックスが、図3a、図3b-1および図3b-2、ならびに図3c-1〜図3c-11の最も上側および最も左側にそれぞれ示される。図4および図5は、2つの異なる符号化率の、図3aおよび図3c-1〜図3c-11に示されるLDPC符号の性能の概略図をそれぞれ与える。図3aは、LDPC符号の基底グラフ30aの例を示す。図において、最も上の行の0から67が、列インデックスを示し、最も左の列の0から45は、行インデックスを示す。具体的には、基底グラフは、46行および68列を有する。
【００９１】
部分行列Aは、システムビットに対応し、5行および22列を有し、基底グラフ30aの行0から行4までおよび列0から列21までの要素を含む。
【００９２】
部分行列Bは、パリティビットに対応し、5行および5列を有し、基底グラフ30aの行0から行4までおよび列22から列26までの要素を含む。
【００９３】
部分行列Aおよび部分行列Bは、LDPC符号の基底グラフの中のコア行列を形成し、具体的には、5行および27列の行列を形成し、高符号化率の符号化のために使用され得る。たとえば、部分行列Aおよび部分行列Bを含むコア行列においては、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する。
【００９４】
部分行列Aは、組み込みパンクチャビットの2列を含み得、パンクチャの後、コア行列によってサポートされ得る符号化率は、22/(27-2) = 0.88である。部分行列Aにおいては、1つの列が重み5を有し、1つの列が重み4を有し、その他の20列が重み3を有する。たとえば、組み込みパンクチャビットの2つの列の重みは、それぞれ、5および4であり得る。
【００９５】
部分行列Bの最後の行(行4)の重みと最後の列(部分行列Bの列4、つまり、コア行列の列26)の重みとの両方は、1である。部分行列Bは、1つの重み3列を含み、具体的には、部分行列Bの列0(コア行列の列22)の重みは、3である。部分行列Bの列1から列3まで(コア行列の列23から列25まで)および部分行列Bの行0から行3までは、二重対角構造を形成する。
【００９６】
基底グラフ30aのコア行列は、重みが19である4つの行および重みが3である1つの行を含む。部分行列Aおよび部分行列Bを含むコア行列の行の重みは、19、19、19、19、および3である。コア行列の行は交換され得、たとえば、行0と行2とが互いに交換され、行1と行3とが互いに交換されることに留意されたい。重みが3である行は、基底グラフ30aのコア行列の列0から26までの行4であり得、重みが19である行は、それぞれ、基底グラフ30aのコア行列の列0から26までの行0から行3までであり得る。これらの行は、互いに交換され得、列も、互いに交換され得る。たとえば、コア行列の列8と列25とが、互いに交換され得、列10と列26とが、互いに交換され得る。たとえば、コア行列の行3と行0とが、互いに交換され得、行2と行1とが、互いに交換され得る。部分行列Bの二重対角構造を保つために、これに基づいて、図8aに示される基底グラフ80aのコア行列、つまり、80aの行0から行5までおよび列0から列26までを含む行列を得るために、列23と列25とが、互いに交換され得る。単なる例が本明細書において提供されることに留意されたい。実際の応用においては、行の置換および列の置換が、システムの要件に基づいて柔軟に設計され得る。
【００９７】
Table 1(表1)は、基底グラフ80aのための列の置換の例を示す。説明を容易にするために、コア行列の27個の列の、列の置換によって得られる系列が、本明細書において与えられる。列インデックスは、置換の後の行列の列インデックスであり、0から番号を振られる。置換前の列インデックスは、置換の前の行列の列インデックスである。Table 1(表1)に示されるように、置換前の行列の列8および列10は、列25および列26に移され、置換前の行列の列9は、列8に移され、置換前の行列の列11から列21までは、列9から列19までに移され、置換前の行列の列25および列26は、列20および列21までに移される。このようにして、特定の符号化率および特定の符号長の性能が、改善され得る。たとえば、図9は、Table 1(表1)に示される基底行列に基づく性能の概略図である。性能は、2/3の符号化率、1E-2のブロック誤り率(BLER)、および672から960までの範囲の符号長の場合に改善される。図10は、Table 1(表1)に示される基底行列に基づく性能の概略図である。性能は、2/3の符号化率、1E-2のBLER、および1952から2624までの範囲の符号長の場合に改善される。
【００９８】
【表１】
2020518145.tif 000082
【００９９】
行列において、行は、互いに交換され得、列も、互いに交換され得、行の置換は、行列の列の重みを変えず、列の置換は、行列の行の重みを変えないので、行列の非ゼロ要素の量は、不変であることが理解されるであろう。行の置換および列の置換の後の基底グラフ80aの行の重みは、不変である。性能は、行の置換、または列の置換、または行の置換および列の置換を実行することによって得られる基底グラフに関して影響を受けない。
【０１００】
本出願において、性能が影響を受けないことは、影響が許容可能であり、全体として許容範囲内に収まることを意味することに留意されたい。たとえば、性能は、一部のシナリオまたは一部の範囲において許容可能な範囲内で低下するが、一部のシナリオまたは一部の範囲において改善されるので全体としてほとんど影響を受けない。
【０１０１】
基底グラフ30aのコア行列および基底グラフ80aのコア行列が、例として使用される。行の置換が基底グラフ30aに対して実行された後、行の順序が変わる点を除いて、基底グラフ80aのコア行列は、基底グラフ30aのコア行列の列を引き続き含み、1つの行は、重み3を有し、その他の4つの行は、重み19を有する。列の置換が基底グラフ30aに対して実行され、たとえば、列5と列7とが互いに交換される場合、基底グラフ30aのものであり、列の置換を実行することによって得られるコア行列が基底グラフ30aのコア行列の列を引き続き含むことが分かる。列の順序が変わる点を除いて、1つの列が重み5を有し、1つの列が重み4を有し、21個の列が重み3を有し、3つの列が重み2を有し、1つの列が重み1を有する。本明細書において与えられるのは単なる例であり、例は限定をなさないことに留意されたい。
【０１０２】
LDPC符号の所与の基底グラフまたは所与の基底行列に関して、行列要素へのいくつかの変更の性能への影響は、通常、許容可能である。たとえば、実装においては、基底グラフ30aのコア行列に基づいていくつかの変更がなされ得る。たとえば、1つの行が、1以上および5以下の重みを有し、その他の4つの行が、17以上および21以下の重みをそれぞれ有する。たとえば、1つの行が、重み2を有し、その他の4つの行が、重み18を有するか、または1つの行が、重み4を有し、その他の4つの行が、重み17、18、19、および19をそれぞれ有する。本出願において提供される解決策を参照すると、いくつかの行の重みが1もしくは2だけ増やされるかまたは減らされ得、これは本出願において限定されないことが理解されるであろう。
【０１０３】
部分行列Aは、組み込みパンクチャビットの列の要素以外の要素がゼロ要素である1つの行も含み得る。さらに、コア行列または基底グラフの行列の行の重みを最小化するために、行は、通常、部分行列Bの重みが1である行と同じである。たとえば、基底グラフ30aまたは80aに示されるように、組み込みパンクチャビットの2つの列が存在し、具体的には、列0および列1は組み込みパンクチャビットの列である。行4において、列0および列1の要素は、非ゼロ要素であり、列2から列25までの要素は、ゼロ要素であり、列26の要素は、非ゼロ要素であり、行4の重みは、3である。行4は、コア行列の中でおよび基底グラフの行列全体の中でさえも最小の重みを有する。そのような設定は、符号化および復号の性能を改善することができる。
【０１０４】
異なるブロック長をサポートするために、LDPC符号は、異なるリフティングファクタZを必要とする。たとえば、リフティングファクタZは、以下の値、すなわち、16、18、20、22、24、26、28、30、32、36、40、44、48、52、56、60、64、72、80、88、96、104、112、120、128、144、160、176、192、208、224、240、256、288、320、352、もしくは384のうちの1つまたは複数であり得る。異なるブロック長の場合にLDPC符号の性能を保証するために、異なるリフティングファクタZに対応する基底行列が、異なるリフティングファクタZに基づいて使用され得る。図3b-1および図3b-2は、基底グラフ30aのコア行列の複数の基底行列の例を示す。基底行列は、基底グラフ30aのコア行列およびリフティングファクタZに基づいて得られる。基底グラフ30aの行iおよび列jの非ゼロ要素は、基底行列の行iおよび列jのシフト値Pi,jを有し、基底グラフ30aのゼロ要素は、基底行列において-1またはnullによって表される。
【０１０５】
可能な実装においては、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3-1bの基底行列30b-1に示され得るか、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1の基底行列30b-2に示され得るか、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1の基底行列30b-3に示され得るか、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1の基底行列30b-4に示され得るか、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1の基底行列30b-5に示され得る。
【０１０６】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１０７】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-2に示される基底行列30b-6であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-2に示される基底行列30b-7であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-2に示される基底行列30b-8であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-3であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1の30b-4に示される基底行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-5であり得る。
【０１０８】
上述の実装に基づいて、別の可能な実装においては、性能をさらに改善するために、基底グラフが、より多くの基底行列に対応し得、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分が、異なる基底行列に対応し得る。たとえば、
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-2に示される基底行列30b-6であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-2に示される基底行列30b-7であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-2に示される基底行列30b-8であり得、または
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-2に示される基底行列30b-9もしくは30b-10であり得、または
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-3であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-4であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ30aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図3b-1に示される基底行列30b-5であり得る。
【０１０９】
図8bは、基底グラフ80aのコア行列の複数の基底行列の例を示す。基底行列は、基底グラフ80aのコア行列およびリフティングファクタZに基づいて得られる。基底グラフ80aの行iおよび列jの非ゼロ要素は、基底行列の行iおよび列jのシフト値Pi,jであり、基底グラフ80aのゼロ要素は、シフト行列において-1またはnullによって表される。
【０１１０】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１１１】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-1であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-2であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-3であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-4であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-5であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-2に示される基底行列80b-6であり得る。
【０１１２】
上述の実装に基づいて、別の可能な実装においては、性能をさらに改善するために、基底グラフが、より多くの基底行列に対応し得、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分が、異なる基底行列に対応し得る。たとえば、
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-1であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-2であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-3であり得、または
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-2に示される基底行列80b-7もしくは80b-8であり得、または
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-4であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-1に示される基底行列80b-5であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-2に示される基底行列80b-6であり得る。
【０１１３】
別の可能な実装において、基底グラフ80aの基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、図8b-2に示される基底行列80b-9であり得る。リフティングファクタZが複数の方法で分類され得るので、リフティングファクタZのグループのために使用される基底行列が、それに応じて性能の観点で考慮され得る。
【０１１４】
たとえば、リフティングファクタZの値は、入力系列の長さKに基づいて決定される。たとえば、入力系列の長さがKである場合、22*Z≧Kを満たすリフティングファクタの中の最小値が、システムにおいて定義された複数のリフティングファクタから決定され得、行列のリフティングファクタの値として使用され得る。さらに、対応する基底行列が、決定されたリフティングファクタに基づいて選択され得る。Table 2(表2)は、基底行列とリフティングファクタとの間の対応の例を示す。システムにおいて定義された複数のリフティングファクタは、8つのグループ、つまり、8つの集合に分類され、集合のインデックスは、1から8までである。それに対応して、8つの基底行列PCM(parity-check matrix, PCM)1からPCM8が存在する。
【０１１５】
【表２】
2020518145.tif 000083
【０１１６】
たとえば、基底行列80b-9は、PCM8として使用され得、この場合、リフティングファクタZは、15、30、60、120、または240のいずれか1つであり、80b-9は、基底行列として使用され得、それに対応して、基底行列は、LDPCのパリティチェック行列を得るためにリフティングファクタZを使用することによってリフト(lift)される。さらに、Zが24以上であるとき、基底行列80b-9は、比較的高い性能を有する。
【０１１７】
同様に、基底行列内で、行は互いに交換され得、列も互いに交換され得る。行の置換または列の置換のうちの少なくとも1つが基底グラフに対して実行される場合、同じ置換が、対応する基底行列に対しても実行される。
【０１１８】
上述の実装において、80b-1は、基底行列30b-6に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-2は、基底行列30b-7に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-3は、基底行列30b-8に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-4は、基底行列30b-3に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-5は、基底行列30b-4に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-6は、基底行列30b-5に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-7は、基底行列30b-9に対して行の置換および列の置換を実行することによって得られる基底行列であり、80b-8は、基底行列30b-10に対して行の置換および列の置換を実行することによって得られる基底行列であることが知られ得る。
【０１１９】
確かに、LDPC行列の基底行列内にあり、部分行列Aおよび部分行列Bに対応する部分は、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、もしくは30b-10のいずれか1つの行または列を含み得、つまり、列の置換、または行の置換、または行の置換および列の置換を実行することによって得られる行列が、基底行列30b-1、30b-2、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のいずれか1つに対して実行されることは理解されるであろう。
【０１２０】
柔軟な符号化率を得るために、対応するサイズの部分行列C、部分行列D、および部分行列Eが、異なる符号化率を得るためにコア行列に基づいて追加され得る。部分行列Cがオールゼロ行列であり、部分行列Eが単位行列であるので、部分行列Cおよび部分行列Eのサイズは、符号化率に基づいて決定され、部分行列Cおよび部分行列Eの構造は、比較的決まっている。主に、コア行列および部分行列Dが、符号化および復号の性能に影響を与える。行および列が、対応するC、D、およびEを形成するためにコア行列に基づいて追加され、その結果、異なる符号化率が取得され得る。たとえば、基底グラフ30aのコア行列または基底グラフ80aのコア行列が、コア行列として使用され得、対応する部分行列C、D、およびEが、異なる符号化率のための符号化または復号の要件を満たすために追加される。
【０１２１】
部分行列Dの列数は、部分行列Aおよび部分行列Bの列数の合計であり、部分行列Dの行数が、主に、符号化率に関連する。基底グラフ30aが、例として使用される。対応する部分行列Dの列数mDは、(nA + mA) = 27列である。LDPC符号によってサポートされる符号化率がRmである場合、LDPC符号の基底グラフまたは基底行列のサイズは、m*nであり、n = nA/Rm + p、およびm = n - nA = nA/Rm + p - nAである。最低符号化率Rmが1/3であり、組み込みパンクチャビットの列の量pが2である場合、基底グラフ30aの例においては、n = 68であり、m = 46であり、部分行列Dの行数mDは最大でm - mA = 46 - 5 = 41までであり得、0≦mD≦41である。
【０１２２】
説明を容易にするために、41行および27列の行列Fが定義され得る。この場合、部分行列Dは、行列FのmD個の行を含み得、対応するサイズの部分行列D、部分行列A、部分行列B、および部分行列Eは、符号化率が22/(25 + mD)であるLDPC符号のものである基底グラフを形成する。基底グラフ30aにおいては、mD = 41であり、部分行列Dは、それに対応して、41個の行および27個の列を含む。具体的には、部分行列Dが、行列Fであり、LDPC符号によってサポートされる対応する符号化率は、22/66 = 1/3である。基底グラフ30aの行5から行45までおよび列0から列26までを含む行列が行列Fであることが、知られ得る。
【０１２３】
例として基底グラフ30aに示される行列Fの行重みは、順に、7、7、9、8、7、7、8、6、6、5、6、5、5、6、5、5、5、5、4、4、4、5、4、5、4、4、4、4、3、4、4、4、4、3、3、4、4、3、3、3、および4である。
【０１２４】
部分行列Eは単位行列であるから、基底グラフ30aの行の重みは、8、8、10、9、8、8、9、7、7、6、7、6、6、7、6、6、6、6、5、5、5、6、5、6、5、5、5、5、4、5、5、5、5、4、4、5、5、4、4、4、および5である。
【０１２５】
本出願においては、基底グラフの同じ列の2つの隣接する行に最大で1つの非ゼロ要素が存在するので、2つの行は、互いに直交する。
【０１２６】
可能な実装において、行列Fは、準直交(quasi-orthogonal)構造を有する行列であり得る。行列Fの組み込みパンクチャビットの列以外の列を含む行列のブロックにおいては、同じ列内のどの2つの隣接する行にも最大で1つの非ゼロ要素しか存在せず、つまり、行列Fの組み込みパンクチャビットの列以外の列を含む行列のブロックは、直交構造を有する。基底グラフ30aの例において、行列Fは、行5から行45までおよび列0から列26までを含む行列であり、列0および列1は、組み込みパンクチャビットの列である。行5から行45までおよび列2から列26までを含む行列のブロックにおいて、行5および行6は、互いに直交しており、行6および行7は、互いに直交しており、行23および行24は、互いに直交しており、行32および行33は、互いに直交しており、以下同様である。mD = 15である場合、LDPC符号の基底グラフの部分行列Dは、15個の行および27個の列を有する。部分行列Dは、基底グラフ30aの行列Fの行0から行14まで、つまり、基底グラフ30aの行5から行19まで、および列0から列26までを含む行列であり得る。LDPC符号によってサポートされる対応する符号化率は、22/40 = 0.55である。この符号化率において、LDPC符号の基底グラフは、基底グラフ30aの行0から行19までおよび列0から列41までを含む行列に対応する。部分行列Eは、15行および15列の単位行列であり、部分行列Cは、5行および15列のオールゼロ行列である。
【０１２７】
mD = 19である場合、LDPC符号の基底グラフの部分行列Dは、19個の行および27個の列を有する。部分行列Dは、基底グラフ30aの行列Fの行0から行18まで、つまり、基底グラフ30aの行5から行23まで、および列0から列26までを含む行列であり得る。LDPC符号によってサポートされる対応する符号化率は、22/44 = 1/2である。この符号化率において、LDPC符号の基底グラフは、基底グラフ30aの行0から行23までおよび列0から列41までを含む行列に対応する。部分行列Eは、19行および19列の単位行列であり、部分行列Cは、5行および19列のオールゼロ行列である。
【０１２８】
これは、mDが別の値である場合にも当てはまり、詳細は、説明されない。
【０１２９】
LDPC符号の基底グラフおよび基底行列において、行が互いに交換され得、列も互いに交換され得ることに留意されたい。たとえば、図8aに示される基底グラフの行列80aを得るために、基底グラフ30aの行17と行19とは、互いに交換され得、列39と列41とは、互いに交換され得る。別の例として、部分行列Dは、行列FのmD個の行を含み、行の置換は、mD個の行の間で実行されないか、または行の置換は、mD個の行のうちの1つまたは複数の間で実行され得、部分行列Eは、引き続き、対角構造を有し、行の置換もしくは列の置換は、部分行列Eに対して実行されない。たとえば、基底グラフ80aを得るために、行列Fの行12と行14とが、互いに交換され、部分行列Dは、部分行列FのmD個の行を含み、部分行列Eは、引き続き対角構造を有する。行の置換の前に、行列Fは、準直交行列であり、置換の後に、行列Fは、引き続き準直交行列である。たとえば、基底グラフ80aにおいて、行列Fは、行5から行45までおよび列0から列26までを含む行列であり、列0および列1は、組み込みパンクチャビットの列である。行5から行45までおよび列2から列26までを含む行列のブロックにおいて、行5および行6は、互いに直交しており、行29および行30は、互いに直交しており、以下同様である。基底グラフまたは基底行列が部分行列Dを含む場合、コア行列の列が互いに交換されるとき、部分行列Dの対応する列も、互いに交換される必要があることは理解されるであろう。たとえば、コア行列の列23および列25が互いに交換される場合、それに対応して、部分行列Dの列23および列25も、互いに交換される必要がある。単なる例が本明細書において提供され、例は限定をなさない。
【０１３０】
本出願の実施形態において、部分行列Dは、準直交構造を有し、具体的には、組み込みパンクチャビットの列以外の各列の2つの隣接する行は、直交している。たとえば、本出願の実施形態による基底グラフ30a、基底グラフ80a、図11aに示される基底グラフ170a、および図12に示される基底グラフ内で与えられた部分行列Dにおいて、列0および列1は、組み込みパンクチャビットの列であり、その他の列の各々の2つの隣接する行は、直交している。組み込みパンクチャビットの列は、その他の列であり得ることに留意されたい。これは、本明細書において限定されない。
【０１３１】
別の可能な実装においては、準直交構造を有する行列Fが、少なくとも2つの直交する行を含み得、少なくとも2つの直交する行の中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。たとえば、mD>30の場合、LDPC符号によってサポートされる対応する符号化率は、2/5未満であり、行列Fの最後の11行、つまり、行列Fの行30から行40までおよび列0から列26までを含む部分行列は、直交し得る。具体的には、行列Fにおいて、行0から行29までの中の2つの隣接する行の組み込みパンクチャビットの列以外の列には最大で1つの非ゼロ要素しか存在せず、行30から行40までの中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。
【０１３２】
別の例として、行列Fの行26から行40までおよび列0から列26までを含む部分行列は、直交し得る。具体的には、行列Fにおいて、行0から行25までの中の2つの隣接する行の組み込みパンクチャビットの列以外の列には最大で1つの非ゼロ要素しか存在せず、行26から行40までの中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。図11aに示される基底グラフ170aにおいて、行列Fは、基底グラフの行5から行45までおよび列0から列26までを含む行列であり、行列Fは、準直交構造を有し、行列Fの行26から行40までは、直交しており、行26から行40までの中の2つの隣接する行の各列には、最大で1つの非ゼロ要素しか存在しない。
【０１３３】
基底グラフ170aのコア行列は、基底グラフ80aのコア行列と同じである。各符号化率における部分行列Dに関して、部分行列Dの性能に影響を与えることなく、各行の1つもしくは2つの非ゼロ要素または1つもしくは2つのゼロ要素に変更がなされ得る。
【０１３４】
別の例として、mD>20の場合、行列Fの最後の21行、つまり、行列Fの行25から行45までおよび列0から列26までを含む部分行列は、直交し得る。具体的には、行列Fにおいて、行0から行19までの中の2つの隣接する行の組み込みパンクチャビットの列以外の列には最大で1つの非ゼロ要素しか存在せず、行20から行40までの中の2つの隣接する行の列0から列26までの各々には最大で1つの非ゼロ要素しか存在しない。図11aに示される基底グラフ170aのコア行列は、基底グラフ80aのコア行列と同じである。行5から行45までが、準直交構造を満たすか、または行5から行25までが、準直交構造を満たし、行25から行45までが、準直交構造を満たす。
【０１３５】
図12に示される基底グラフのコア行列は、基底グラフ80aのコア行列と同じであり、コア行列の行5から行45までは、準直交構造を有する。
【０１３６】
図3c-1に示される基底行列30cは、図3aに示される基底グラフ30aの基底行列の例である。基底グラフ30aの行iおよび列jの非ゼロ要素は、基底行列30cにおいて同じ位置を有し、非ゼロ要素の値は、シフト値Pi,jである。部分行列Dは、行列Fのシフト行列のmD個の行を含む。図3c-1に示される基底行列30cに関しては、mD = 41であり、mDは異なる符号化率に基づいて選択され得る。部分行列Dに対応するシフト行列は、行列Fのシフト行列である。本明細書において、行列Fのシフト行列は、行列Fの行iおよび列jの非ゼロ要素をシフト値Pi,jによって置き換えることによって得られ、ゼロ要素は、シフト行列において-1またはnullによって表される。単なる例が本明細書において提供され、基底グラフは80a、180aなどであり得、基底グラフは本明細書において1つずつ説明されないことに留意されたい。
【０１３７】
可能な実装において、行列Fのシフト行列は、図3c-2〜図3c-11に示される行列30c-1から30c-10までのいずれか1つの行または列を含み得る。たとえば、
リフティングファクタZが{16, 18, 20, 22, 24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、図3c-2に示される行列30c-1であるかもしくは行列30c-1に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{32, 36, 40, 44, 48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、図3c-3に示される行列30c-2であるかもしくは行列30c-2に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、図3c-4に示される行列30c-3であるかもしくは行列30c-3に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、図3c-5に示される行列30c-4であるかもしくは行列30c-4に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、図3c-6に示される行列30c-5であるかもしくは行列30c-5に対して行/列の置換を実行することによって得られた行列であり得る。
【０１３８】
基底行列30cの部分行列Dは、異なる符号化率のものであり、基底グラフ30aに対応する基底行列を得るために、行列Fの各シフト行列のmD個の行によって置き換えられる。mD = 41である場合、基底行列30cの行5から行45までおよび列0から列26までを含む行列は、基底グラフ30aに対応する46行および68列の各基底行列を得るために行列Fの各シフト行列によって置き換えられる。この場合、符号化率は1/3である。
【０１３９】
別の可能な実装において、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１４０】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、図3c-7に示される行列30c-6であるかもしくは行列30c-6に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、図3c-8に示される行列30c-7であるかもしくは行列30c-7に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、図3c-9に示される行列30c-8であるかもしくは行列30c-8に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、図3c-4に示される行列30c-3であるかもしくは行列30c-3に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、図3c-5に示される行列30c-4であるかもしくは行列30c-4に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、図3c-6に示される行列30c-5であるかもしくは行列30c-5に対して行/列の置換を実行することによって得られた行列であり得る。
【０１４１】
上述の実装に基づいて、別の可能な実装においては、性能をさらに高めるために行列Fのシフト行列に関するより多くの選択肢が存在する。たとえば、行列Fのシフト行列は、図3c-10に示される行列30c-9であるかもしくは行列30c-9に対して行/列の置換を実行することによって得られた行列であり得、または図3c-11に示される行列30c-10であるかもしくは行列30c-10に対して行/列の置換を実行することによって得られた行列であり得る。たとえば、リフティングファクタは、以下のように設計され得る。
【０１４２】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、図3c-7に示される行列30c-6であるかもしくは行列30c-6に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、図3c-8に示される行列30c-7であるかもしくは行列30c-7に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、図3c-9に示される行列30c-8であるかもしくは行列30c-8に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、行列Fのシフト行列は、図3c-10に示される行列30c-9であるかもしくは行列30c-9に対して行/列の置換を実行することによって得られた行列であり得、または行列30c-10であるかもしくは行列30c-10に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、図3c-4に示される行列30c-3であるかもしくは行列30c-3に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、図3c-5に示される行列30c-4であるかもしくは行列30c-4に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、図3c-6に示される行列30c-5であるかもしくは行列30c-5に対して行/列の置換を実行することによって得られた行列であり得る。
【０１４３】
別の可能な実装において、行列Fのシフト行列は、図8c-2〜図8c-10に示される行列80c-1から80c-9までのいずれか1つの行または列を含み得る。たとえば、リフティングファクタの集合は、{24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}であり得る。
【０１４４】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、図8c-2に示される行列80c-1であるかもしくは行列80c-1に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、図8c-3に示される行列80c-2であるかもしくは行列80c-2に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、図8c-4に示される行列80c-3であるかもしくは行列80c-3に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{60, 64, 72, 80, 88, 96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、図8c-5に示される行列80c-4であるかもしくは行列80c-4に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、図8c-6に示される行列80c-5であるかもしくは行列80c-5に対して行/列の置換を実行することによって得られた行列であり得、または
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、図8c-7に示される行列80c-6であるかもしくは行列80c-6に対して行/列の置換を実行することによって得られた行列であり得る。
【０１４５】
上述の実装に基づいて、別の可能な実装においては、性能をさらに高めるために、リフティングファクタZがより細かい粒度で設計され得、したがって、行列Fのシフト行列に関するより多くの選択肢が存在する。たとえば、行列Fのシフト行列は、行列80c-7であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得、または行列80c-8であるかもしくは行列に対して行/列の置換を実行することによって得られた行列であり得る。たとえば、リフティングファクタは、以下のように設計され得る。
【０１４６】
リフティングファクタZが{24, 26, 28, 30}のうちの1つである場合、行列Fのシフト行列は、図8c-2に示される行列80c-1であるかもしくは行列80c-1に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{32, 36, 40, 44}のうちの1つである場合、行列Fのシフト行列は、図8c-3に示される行列80c-2であるかもしくは行列80c-2に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{48, 52, 56, 60}のうちの1つである場合、行列Fのシフト行列は、図8c-4に示される行列80c-3であるかもしくは行列80c-3に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{64, 72, 80, 88}のうちの1つである場合、行列Fのシフト行列は、図8c-8に示される行列80c-7であるかもしくは行列80c-7に対して行/列の置換を実行することによって得られた行列であり得、または図8c-9に示される行列80c-8であるかもしくは行列80c-8に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{96, 104, 112, 120}のうちの1つである場合、行列Fのシフト行列は、図8c-5に示される行列80c-4であるかもしくは行列80c-4に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{128, 144, 160, 176, 192, 208, 224, 240}のうちの1つである場合、行列Fのシフト行列は、図8c-6に示される行列80c-5であるかもしくは行列80c-5に対して行/列の置換を実行することによって得られた行列であり得、あるいは
リフティングファクタZが{256, 288, 320, 352, 384}のうちの1つである場合、行列Fのシフト行列は、図8c-7に示される行列80c-6であるかもしくは行列80c-6に対して行/列の置換を実行することによって得られた行列であり得る。
【０１４７】
別の可能な実装においては、リフティングファクタZが15、30、60、120、または240のうちのいずれか1つである場合、行列Fのシフト行列は、図8c-10に示される行列80c-9であるかもしくは行列80c-9に対して行/列の置換を実行することによって得られた行列であり得る。さらに、Zが24以上であるとき、行列Fのシフト行列の性能は、シフト行列が80c-9であるときに比較的高い。
【０１４８】
同様に、基底行列内で、行は互いに交換され得、列も互いに交換され得る。行の置換または列の置換のうちの少なくとも1つが基底グラフに対して実行される場合、同じ置換が、対応する基底行列に対しても実行される。
【０１４９】
上述の実装において、80c-1は、基底行列30c-6に対して行の置換を実行することによって得られた基底行列であり、80c-2は、基底行列30c-7に対して行の置換を実行することによって得られた基底行列であり、80c-3は、基底行列30c-8に対して行の置換を実行することによって得られた基底行列であり、80c-4は、基底行列30c-3に対して行の置換を実行することによって得られた基底行列であり、80c-5は、基底行列30c-4に対して行の置換を実行することによって得られた基底行列であり、80c-6は、基底行列30c-5に対して行の置換を実行することによって得られた基底行列であり、80c-7は、基底行列30c-9に対して行の置換を実行することによって得られた基底行列であり、80c-8は、基底行列30c-10に対して行の置換を実行することによって得られた基底行列であることが知られ得る。
【０１５０】
基底行列80cの部分行列Dは、異なる符号化率のものであり、基底グラフ80aに対応する基底行列を得るために、行列Fの各シフト行列のmD個の行によって置き換えられる。mD = 41である場合、基底行列80cの行5から行45までおよび列0から列26までを含む行列は、基底グラフ80aに対応する46行および68列の各基底行列を得るために行列Fの各シフト行列によって置き換えられる。この場合、符号化率は1/3である。
【０１５１】
基底グラフおよび基底行列において行が互いに交換され得、列が互いに交換され得るので、可能な実装においては、基底グラフ30aのコア行列が、基底グラフのコア行列、つまり、部分行列Aおよび部分行列Bを含む部分として使用され得、基底グラフの部分行列Dが、基底グラフ30aの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得ることに留意されたい。それに対応して、基底行列のコア行列は、30b-3、30b-4、30b-5、30b-6、30b-7、30b-8、30b-9、または30b-10のうちの1つであり得、対応する部分行列Dは、以下の行列、すなわち、30c-3、30c-4、30c-5、30c-6、30c-7、30c-8、30c-9、または30c-10のいずれか1つのmD個の行を含み得る。コア行列および対応する部分行列Dは、リフティングファクタに基づいて選択され得る。
【０１５２】
別の可能な実装においては、基底グラフ80aのコア行列が、基底グラフのコア行列、つまり、部分行列Aおよび部分行列Bを含む部分として使用され得、基底グラフの部分行列Dが、基底グラフ80aの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得る。それに対応して、基底行列のコア行列は、80b-1、80b-2、80b-3、80b-4、80b-5、80b-6、80-7、80b-8、または80b-9のうちの1つであり得、対応する部分行列Dは、以下の行列、すなわち、80c-1、80c-2、80c-3、80c-4、80c-5、80c-6、80c-7、80c-8、または80c-9のいずれか1つのmD個の行を含み得る。コア行列および対応する部分行列Dは、リフティングファクタに基づいて選択され得る。
【０１５３】
別の可能な実装においては、基底グラフ80aのコア行列が、基底グラフのコア行列、つまり、部分行列Aおよび部分行列Bを含む部分として使用され得、基底グラフの部分行列Dが、基底グラフ170aに示されるように、基底グラフ170aの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得る。それに対応して、基底行列は、図11bに示される基底行列170bの行5から行45までおよび行0から行4までの中のmD個の行を含み得る。
【０１５４】
別の可能な実装においては、基底グラフ80aのコア行列が、基底グラフのコア行列として使用され得、基底グラフの部分行列Dが、図12に示される基底グラフの行5から行45までおよび列0から列26までを含む行列のmD個の行を含み得る。
【０１５５】
本出願において、準直交構造は、2つの隣接する行にのみ限定されず、準直交構造を満たす行列は、複数のグループを含むように設計され得、各グループは、少なくとも2つの行、たとえば、3つの行または4つの行を含み、各グループに含まれる行は、準直交していることが理解されるであろう。
【０１５６】
図4および図5に示される性能曲線の図において、LDPC1は、LDPC符号が基底グラフ30aに対応する基底行列に基づいて符号化することによって得られることを示し、LDPC2は、比較のために共通のLDPC符号を示す。水平座標は、情報ビット系列の長さを示し、長さの単位は、ビットである。垂直座標は、シンボル信号対雑音比(symbol signal-to-noise ratio)(Es/N0)である。性能曲線は、BLERがそれぞれ0.01および0.0001であるときの、異なる情報ビット系列長の場合の、LDPC1およびLDPC2に関するシンボル信号対雑音比の性能を示す。図4において、符号化率Rは8/9であり、図5において、符号化率Rは1/3である。同じBLERにおいて、LDPC1のシンボル信号対雑音比は、異なる情報ビット系列長の場合、LDPC2のシンボル信号対雑音比未満であり、つまり、LDPC1の性能は、LDPC2の性能よりも高いことが知られ得る。
【０１５７】
本出願の実施形態において提供される符号化方法において、エンコーダは、LDPC行列を使用することによって入力系列を符号化する。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフであり得、LDPC行列の基底行列HBは、上述の例のいずれかの基底行列であり得る。エンコーダの入力系列は、情報ビット系列であり得、または以下の処理、すなわち、CRCの付加もしくは充填ビット(filler bit)の挿入のうちの少なくとも1つの後に得られた情報ビット系列であり得る。
【０１５８】
方法は、リフティングファクタZを決定するステップをさらに含む。リフティングファクタZの値は、入力系列の長さKに基づいて決定され得る。情報ビット系列は、符号ブロック(code block)と呼ばれることもあり、トランスポートブロックに対して符号ブロック分割を実行することによって取得され得る。情報ビット系列の長さがKcである場合、22*Z≧Kcを満たすリフティングファクタの最小値が、システムにおいて定義された複数のリフティングファクタから決定され得る。Kc = 3800であり、システムにおいて定義されたリフティングファクタが16、18、20、22、24、26、28、30、32、36、40、44、48、52、56、60、64、72、80、88、96、104、112、120、128、144、160、176、192、208、224、240、256、288、320、352、および384を含む場合、Zは176であると決定され得る。単なる例が本明細書において提供され、例は限定をなさないことに留意されたい。
【０１５９】
可能な設計においては、入力系列の長さがK = Kb・Zであり、つまり、Z = K/Kbであるように入力系列を得るために、情報ビット系列に対して充填(filling)が実行され得る。たとえば、充填ビットの値は、null、0、またはシステムにおいて合意されたその他の値であり得る。符号化の後、これらの充填ビットは、識別可能であり、送信されず、これは、本出願において限定をなさない。
【０１６０】
エンコーダがLDPC行列Hを使用することによって入力系列を符号化することは、リフティングファクタZに対応するLDPC行列を使用することによって入力系列を符号化することであり得る。
【０１６１】
可能な実装において、入力系列は、c = {c0, c1, c2, ..., cK-1}であり、入力系列cの長さは、Kであり、エンコーダが入力系列cを符号化した後に得られた出力系列は、d = {d0, d1, d2, ..., dN-1}である。Kは、0よりも大きな整数であり、Kは、リフティングファクタZの整数倍であり得る。
【０１６２】
出力系列dは、入力系列cのK0ビットおよびパリティ系列wのパリティビットを含み、K0は、0よりも大きく、K以下である整数であり、パリティ系列wの長さは、N - K0であり、w = {w0, w1, w2, ..., wN-K0-1}である。
【０１６３】
パリティ系列wおよび入力系列cは、式(1)を満たす。
【０１６４】
【数３】
2020518145.tif 000084
【０１６５】
式中、cT = [c0, c1, c2, ..., cK-1]Tであり、cTは、入力系列のビットを含むベクトルの転置ベクトルであり、wT = [w0, w1, w2, ..., wN-K0-1]Tであり、wTは、パリティ系列のビットを含むベクトルの転置ベクトルであり、0Tは、列ベクトルであり、0Tのすべての要素の値は、0である。
【０１６６】
Hは、上述の実施形態において説明されたいずれかに基底グラフに従って得られたLDPC行列であり、Hの基底グラフは、m個の行およびn個の列を有し、上述の実施形態、たとえば、30a、80a、170aにおいて説明されたいずれかの基底グラフ、および図12に示される基底グラフであり得る。
【０１６７】
設計において、Hの基底グラフは、組み込みパンクチャビットのp個の列を含み、pは、0以上の整数であり、組み込みパンクチャビットのp個の列に対応する情報ビットは、出力されず、出力系列は、組み込みパンクチャビットのp個の列に対応する情報ビットを含まない。この場合、K0 = K - p・Zである。たとえば、p = 2である場合、K0 = K - 2・Zであり、パリティ系列wの長さは、N + 2・Z - Kである。組み込みパンクチャビットのp個の列が符号化に関わる場合、K0 = Kであり、パリティ系列wの長さは、N - Kである。
【０１６８】
それに対応して、Hは、M個の行および(N + p・Z)個の列またはM個の行およびN個の列を有し得、Hの基底グラフは、M/Z個の行および
【０１６９】
【数４】
2020518145.tif 000085
【０１７０】
個の列を有する。
【０１７１】
LDPC行列Hの基底グラフは、[HBG HBG,EXT]によって表され得、
【０１７２】
【数５】
2020518145.tif 000086
【０１７３】
であり、
【０１７４】
【数６】
2020518145.tif 000087
【０１７５】
は、サイズmc×ncのオールゼロ行列を表し、
【０１７６】
【数７】
2020518145.tif 000088
【０１７７】
は、サイズnc×ncの単位行列を表す。
【０１７８】
可能な設計においては、
【０１７９】
【数８】
2020518145.tif 000089
【０１８０】
が上述の実施形態の基底グラフの部分行列Cであり、
【０１８１】
【数９】
2020518145.tif 000090
【０１８２】
が上述の実施形態の部分行列Eである場合、
【０１８３】
【数１０】
2020518145.tif 000091
【０１８４】
であり、式中、A、B、およびDは、それぞれ、上述の実施形態の基底グラフの部分行列A、部分行列B、および部分行列Dであり、mc = 5であり、0≦nc≦41であり、HBGの行数は、46以下および5以上であり、HBGの列数は、27に等しい。
【０１８５】
別の可能な設計においては、列26が重み1行列列であり、列26の非ゼロ要素が行5にあるので、
【０１８６】
【数１１】
2020518145.tif 000092
【０１８７】
は、上述の実施形態の基底グラフの列26の最初の4行および上述の実施形態の部分行列Cの最初の4行を含み得、
【０１８８】
【数１２】
2020518145.tif 000093
【０１８９】
は、上述の実施形態の基底グラフの部分行列E、列26の行5から行46まで、および部分行列Cの最後の行を含み得、mc = 4であり、0≦nc≦42であり、HBGは、上述の実施形態の基底グラフの部分行列A、部分行列B、および部分行列Dを含む部分から最後の列が削除された後に得られる行列であり、HBGの行数は、46以下および5以上であり、HBGの列数は、26に等しい。任意で、符号化率がさらに高められる必要がある場合、HBGは、4つの行、すなわち、行0から行3までを有し得る。
【０１９０】
それに対応して、LDPC行列Hは、H = [H1 H2]によって表され得る。
【０１９１】
H1は、HBGの各ゼロ要素がサイズZ*Zのオールゼロ行列によって置き換えられ、各非ゼロ要素がサイズZ*Zの巡回置換行列hi,jによって置き換えられた後に取得され得る。巡回置換行列hi,jは、サイズZ*Zの単位行列を右にPi,j回循環シフトすることによって得られ、I(Pi,j)によって表されることがあり、iは、行インデックスであり、jは、列インデックスである。可能な設計においては、Pi,j = mod(Vi,j, Z)であり、Vi,jは、Zに対応するリフティングファクタの集合のインデックスに対応する基底行列の行iおよび列jの非ゼロ要素である。
【０１９２】
H2は、HBG,EXTの各ゼロ要素がZ*Zのオールゼロ行列によって置き換えられ、各非ゼロ要素がZ*Zの単位行列によって置き換えられた後に取得され得る。
【０１９３】
エンコーダは、符号化および出力を複数の方法で実行し得る。上述の実施形態において説明された図12に示される基底グラフ、基底グラフ80a、または基底グラフ170aのいずれか1つが、以下で説明のための例として使用される。基底グラフは、最大46行および最大68列を有し、組み込みパンクチャビットの2つの列を含む。説明を容易にするために、最も多くの行および最も多くの列を有する基底グラフは、本出願においては完全基底グラフと呼ばれることがある。
【０１９４】
方法1:
【０１９５】
できるだけ多くのパリティビットが得られるように、完全基底グラフに基づいて符号化が実行される。この場合、m = 46であり、n = 68であり、これは、上述の基底グラフのいずれか1つの行0から行45までおよび列0から列67までに対応する。
【０１９６】
それに対応して、LDPC行列Hに関してM = 46・Zである。出力系列が組み込みパンクチャビットの列に対応する情報ビットを含む場合、N = 68・Zであるか、または出力系列が組み込みパンクチャビットの列に対応する2・Z個の情報ビットを含まない場合、N = 66・Zである。
【０１９７】
その後の処理中に、送信される必要がある1つまたは複数の情報ビットおよび1つまたは複数のパリティビットが、エンコーダによって生成された出力系列から決定され得る。
【０１９８】
方法2:
【０１９９】
完全基底グラフの一部の行および一部の列に基づいて符号化が実行される。行および列は、送信される必要がある符号化率、情報ビット量およびパリティビットの量などに基づいて、符号化のために完全基底グラフから選択され得る。
【０２００】
たとえば、符号化率は8/9であり、m = 5であり、n = 27であり、つまり、上述の基底グラフのいずれか1つの行0から行4までおよび列0から列26までに基づいて符号化が実行される。
【０２０１】
それに対応して、LDPC行列Hに関してM = 5・Zである。出力系列が組み込みパンクチャビットの列に対応する情報ビットを含む場合、N = 27・Zであるか、または出力系列が組み込みパンクチャビットの列に対応する情報ビットを含まない場合、N = 25・Zである。
【０２０２】
別の例として、符号化率は1/3であり、m = 46であり、n = 68である。
【０２０３】
この方法においては、Hの基底グラフのサイズが、5≦m≦46および27≦n≦68を満たし、それに対応して、LDPC行列Hに関して、5・Z≦M≦46・Zおよび27・Z≦N≦68・Zであることが知られ得る。
【０２０４】
可能な設計において、上述のいずれかの基底グラフの第26列は重み1行列列であり、コア行列の重み1行列列に対してパンクチャが実行され得、その結果、コア行列がそれに応じて1行および1列だけ小さくされ、m = 4であり、n = 26であり、つまり、上述のいずれかの基底グラフの行0から行3までおよび列0から列25までに基づいて符号化が実行される。この方法において、より高い符号化率を得ることができる。したがって、基底グラフのサイズは、4≦m≦46および26≦n≦68を満たし、それに対応して、LDPC行列Hに関して、4・Z≦M≦46・Zおよび26・Z≦N≦68・Zである。
【０２０５】
上述の実装において、LDPC行列Hの基底行列HBは、上述の実施形態において説明されたいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。基底行列HBの基底グラフは、少なくとも、部分行列Aおよび部分行列Bを含み、部分行列C、部分行列D、および部分行列Eをさらに含み得る。部分行列に関しては、上述の実施形態の説明を参照するものとし、詳細は本明細書において再び説明されない。確かに、基底行列HBは、基底グラフが上述の実施形態に示される基底グラフに準拠する別の基底行列であり得、基底行列HBは、本出願においてそれらに限定されない。
【０２０６】
可能な実装において、LDPC符号の基底行列HBは、メモリに記憶され得、エンコーダは、入力系列を符号化するために、リフティングファクタZに対応するLDPC行列を得る。
【０２０７】
別の可能な実装においては、LDPC符号の複数の基底行列HBが存在し、基底行列HBが行列構造に基づいて記憶される場合、比較的大きな記憶空間が占有されるので、LDPC符号の基底グラフが、メモリに記憶され得、各基底行列の非ゼロ要素のシフト値が、行ごとまたは列ごとに記憶され得、そして、LDPC行列が、基底グラフと、リフティングファクタZに対応する基底行列のシフト値とに基づいて取得され得る。
【０２０８】
基底グラフは、各基底行列の非ゼロ要素の位置を示し得る。別の可能な実装において、基底グラフを記憶することは、基底グラフの非ゼロ要素の位置を記憶することであり得る。非ゼロ要素の位置は、非ゼロ要素のある行および列、たとえば、各行の非ゼロ要素のある列の位置、または各列の非ゼロ要素のある行の位置によって示され得る。別の可能な実装において、基底グラフを記憶することは、基底グラフのゼロ要素の位置を記憶することであり得る。同様に、ゼロ要素の位置は、ゼロ要素がある行および列、たとえば、各行のゼロ要素がある列の位置、または各列のゼロ要素がある行の位置によっても示され得、非ゼロ要素の対応する位置は、ゼロ要素の位置を除外することによって取得され得る。単なる例が本明細書において提供され、例は本出願において限定をなさないことに留意されたい。
【０２０９】
設計において、基底グラフまたは基底行列に関連するパラメータは、表に表され得る。たとえば、関連するパラメータまたは表が、1つまたは複数のメモリに記憶され得る。基底グラフもしくは基底行列の行インデックス、または非ゼロ要素がある列などの関連するパラメータが、基底グラフまたは基底行列を得るためにメモリから読まれる。任意で、各行の重みおよび各行の非ゼロ要素のシフト値が、さらに記憶され得る。
【０２１０】
図11aが、以下で説明のための例として使用される。本出願において提供される別の基底グラフまたは基底行列に関しては、同様の設計を参照されたい。
【０２１１】
たとえば、基底グラフ80a、基底グラフ170a、または図12に示される基底グラフのコア行列が、Table 3(表3)に表され得る。
【０２１２】
【表３】
2020518145.tif 000094
【０２１３】
たとえば、LDPC行列の基底グラフは、Table 3(表3)に示されるコア行列の部分を含み得る。LDPC行列の基底グラフの別の部分が、基底グラフ80a、基底グラフ170a、または図12に示される基底グラフ、または本出願において説明される別の構造、または別の行列構造に示され得、これは、本出願において限定されない。
【０２１４】
基底グラフ170aが、別の例として使用される。基底グラフの最初の24行に関連するパラメータが、Table 4(表4)に示され得る。その他の行に関連するパラメータは、同様であり、紙幅の制限のため、Table 4(表4)に挙げられない。
【０２１５】
【表４】
2020518145.tif 000095
【０２１６】
単なる例が本明細書において提供され、例は限定をなさないことに留意されたい。本出願において提供される別の基底グラフまたは基底行列の関連するパラメータも、同様の表に表され得る。基底グラフ170a、Table 3(表3)、およびTable 4(表4)は、基底グラフおよび基底行列の設計を理解することを助けるように意図されることが理解されるであろう。表現形式は、基底グラフ170aまたはTable 3(表3)もしくはTable 4(表4)の表現形式だけに限定されない。別の可能な変形を含んでもよい。
【０２１７】
実装においては、列インデックス、列重み、および非ゼロ要素がある行、またはゼロ要素がある行、たとえば、Table 5(表5)の形式が使用され得る。
【０２１８】
【表５】
2020518145.tif 000096
【０２１９】
実装において、Table 3(表3)、Table 4(表4)、またはTable 5(表5)のパラメータ「行重み」または「列重み」は、省略され得る。行または列の非ゼロ要素の量は、行もしくは列の中で非ゼロ要素がある列または行から知られ得る。したがって、行重みまたは列重みも、知られる。
【０２２０】
実装において、Table 3(表3)もしくはTable 4(表4)の「行内の非ゼロ要素の列インデックス」のパラメータ値またはTable 5(表5)の「列内の非ゼロ要素の行インデックス」のパラメータ値は、パラメータ値の中で非ゼロ要素のある列または非ゼロ要素のある行が取り出され得るならば昇順でソートされ得ない。
【０２２１】
実装において、Table 3(表3)またはTable 4(表4)は、「非ゼロ要素のシフト値」の列をさらに含み得、「非ゼロ要素のシフト値」の列のパラメータ値は、「行内の非ゼロ要素の列インデックス」のパラメータ値と1対1に対応している。Table 5(表5)は、「非ゼロ要素のシフト値」の列をさらに含み得、「非ゼロ要素のシフト値」の列のパラメータ値は、「列内の非ゼロ要素の行インデックス」のパラメータ値と1対1に対応している。
【０２２２】
設計においては、記憶空間を節約するために、基底グラフの比較的決まった構造を有する部分の非ゼロ要素の位置は、位置が記憶されることなく行インデックスまたは列インデックスに基づいて計算され得る。たとえば、部分行列Eは、対角行列であり、行列の対角上にのみ非ゼロ要素を含む。部分行列Eの非ゼロ要素のある列の位置が、行インデックスに基づいて計算され得るか、または非ゼロ要素がある行の位置が、列インデックスに基づいて計算され得る。基底グラフ80a、基底グラフ170a、または図12の基底グラフのいずれか1つの例において、行meの非ゼロ要素の列インデックスは、me+Kbであり、me≧4であり、Kb = 22である。たとえば、行7の非ゼロ要素がある列は、列29である。別の例として、部分行列Bの二重対角構造B'が、基底グラフ80a、基底グラフ170a、または図12に示される基底グラフのいずれか1つの行0から行3までおよび列23から列25までにある。二重対角構造B'の非ゼロ要素のある列の列インデックスが、行インデックスに基づいて計算され得るか、または非ゼロ要素がある行の行インデックスが、列インデックスに基づいて計算され得る。行mBの非ゼロ要素の位置は、列mB+Kbおよび列mB+Kb+1を含み、0<mB<3である。行mBの非ゼロ要素の位置は、列mB+Kbであり、mB = 0またはmB = 3である。別の例として、部分行列Bの重み1行列列、つまり、基底グラフ80a、基底グラフ170a、または図12の基底グラフのいずれか1つの列26に関して、行mBの非ゼロ要素の位置は、列mB+Kbであり、mB = 4である。
【０２２３】
Table 6(表6)は、図12の行に関連するパラメータを示す。列0から列25までの中の非ゼロ要素がある列の位置が記憶され得る一方、列26から列68までの中の非ゼロ要素がある列の位置は記憶されず、つまり、部分行列Eおよび部分行列Bの重み1行列列の非ゼロ要素がある列は記憶されない。Table 6(表6)は、列インデックスが26であるHBGを表すために使用され得る。
【０２２４】
【表６】
2020518145.tif 000097
【０２２５】
Table 7(表7)は、図12の行に関連するパラメータを示す。列0から列26までの中の非ゼロ要素がある列の位置が記憶され得る一方、列27から列68までの中の非ゼロ要素がある列の位置は記憶されず、つまり、部分行列Eの非ゼロ要素がある列は記憶されない。Table 7(表7)は、列インデックスが27であるHBGを表すために使用され得る。
【０２２６】
【表７】
2020518145.tif 000098
【０２２７】
上述の設計において、「行重み」の列は任意である。可能な設計において、基底グラフの各行または各列の1および0は、2進数であると考えられ得、2進数を10進数または16進数で記憶することは、記憶空間を節約することができる。上述の基底グラフのいずれか1つが、例として使用される。最初の26列または最初の27列の非ゼロ要素の位置は、各行に4つの16進数で記憶され得る。たとえば、行0の最初の26列が11110110 01111101 10111111 00である場合、行0の非ゼロ要素の位置は、0xF6、0x7D、0xBF、および0x00と表記され得る。具体的には、8列ごとに、1つの16進数を形成する。8桁を得るために最後の2列または3列を0で埋め、その結果、対応する16進数が得られる。これは、別の行にも当てはまり、詳細は、本明細書において再び説明されない。
【０２２８】
情報ビット系列が符号化されるべきであるとき、基底行列HBは、符号化のために使用されるLDPC行列Hを得るためにZに基づいてリフトされ得る。サイズZ*Zの巡回置換行列hi,jが、基底行列HBの各非ゼロ要素Pi,jに関して決定され、hi,jは、単位行列をPi,j回循環シフトすることによって得られた巡回置換行列である。パリティチェック行列Hを得るために、非ゼロ要素Pi,jは、hi,jによって置き換えられ、基底行列HBのゼロ要素は、サイズZ*Zのオールゼロ行列によって置き換えられる。
【０２２９】
可能な設計においては、リフティングファクタZに関して、基底行列HBの行iおよび列jの要素Pi,jが、(2)に示される関係を満たし得る。
【０２３０】
【数１３】
2020518145.tif 000099
【０２３１】
式中、Vi,jは、リフティングファクタZを含むリフティングファクタの集合の基底行列の行iおよび列jの要素のシフト値、またはリフティングファクタZを含むリフティングファクタの集合の中の最大のリフティングファクタに対応する基底行列の行iおよび列jの非ゼロ要素のシフト値であり得る。
【０２３２】
Table 2(表2)に示される基底行列のインデックスとリフティングファクタZの集合との間の対応が、例として使用される。Z = 13であり、Zの基底行列の行iおよび列jの要素Pi,jは(2)を満たす。
【０２３３】
Vi,jは、PCM7によって示される基底行列の行iおよび列jの非ゼロ要素のシフト値である。Z = 13に関して、シフト値Vi,j modulo Zを取ることによってモジュロ演算が実行され、Z = 13であり、Vi,jはPCM7によって示される基底行列の行iおよび列jの非ゼロ要素のシフト値である。
【０２３４】
単なる例が本明細書において提供され、例は本出願において限定をなさないことに留意されたい。
【０２３５】
基底グラフ80aまたは基底グラフ170aが、例として使用される。基底行列HBが決定された後、基底行列の列22から列25までに対応する1つまたは複数のパリティビットが、入力系列と行0から行3までおよび列0から列25まで、つまり、Hcore-dualとを使用することによってまず取得され得、列26、つまり、重み1行列列に対応する1つまたは複数のパリティビットが、入力系列とHcore-dualに対応する1つまたは複数のパリティビットとに基づいて取得され得、それから、部分行列Eに対応する1つまたは複数のパリティビットを得るために、入力系列と、列22から列26までに対応する1つまたは複数のパリティビットと、部分行列Dとに基づいて、符号化が、実行され得る。このようにして、符号化が完了される。LDPC符号の符号化プロセスに関しては、上述の実装の説明を参照するものとし、詳細は本明細書において再び説明されない。
【０２３６】
通信システムにおいて、LDPC符号は、上述の方法で符号化が実行された後に取得され得る。LDPC符号が得られた後、通信装置は、以下の動作、すなわち、LDPC符号に対してレートマッチングを実行する動作、レートマッチングの後に得られたLDPC符号に対して、インターリーブ方式に基づいてインターリーブを実行する動作、ビット系列Xを得るために、インターリーブの後に得られたLDPC符号を、変調方式に基づいて変調する動作、またはビット系列Xを送信する動作のうちの1つまたは複数をさらに実行し得る。
【０２３７】
本出願の別の実施形態において提供される復号方法において、デコーダは、LDPC行列を使用することによって入力系列を復号する。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフであり得、LDPC行列の基底行列HBは、上述の例のいずれかの基底行列であり得る。デコーダの入力系列は、LDPC符号の軟判定値系列であり得る。
【０２３８】
方法は、リフティングファクタZを決定することをさらに含む。受信端の通信デバイスは、LDPC符号を含む信号を受信し、信号内のLDPC符号の軟判定値系列を取得し、対応するリフティングファクタZを決定し得る。
【０２３９】
デコーダがLDPC行列Hを使用することによって入力系列を復号することは、リフティングファクタZに対応するLDPC行列Hを使用することによってLDPC符号の軟判定値系列を復号することであり得る。
【０２４０】
復号は符号化の逆のプロセスであるので、LDPC行列HおよびLDPC行列Hの基底グラフの説明に関しては、上述の符号化の実施形態を参照されたい。復号は、完全基底グラフに基づいて実行され得るか、または復号は、完全基底グラフの一部の行もしくは一部の列に基づいて実行され得る。
【０２４１】
LDPC行列Hの基底行列HBは、上述の実施形態において説明されたいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。基底行列HBの基底グラフは、少なくとも、部分行列Aおよび部分行列Bを含み、部分行列C、部分行列D、および部分行列Eをさらに含み得る。部分行列に関しては、上述の実施形態の説明を参照するものとし、詳細は本明細書において再び説明されない。確かに、基底行列HBは、基底グラフが上述の実施形態に示される基底グラフに準拠する別の基底行列であり得、基底行列HBは、本出願においてそれらに限定されない。
【０２４２】
可能な設計において、LDPC符号の基底行列HBはメモリに記憶され得、リフティングファクタZに対応するLDPC行列が得られた後、LDPC符号の軟判定値が復号され得る。
【０２４３】
別の可能な実装においては、LDPC符号の複数の基底行列が存在し、基底行列が行列構造に基づいて記憶される場合、比較的大きな記憶空間が占有されるので、LDPC符号の基底グラフが、メモリに記憶され得、各基底行列の非ゼロ要素のシフト値が、行ごとまたは列ごとに記憶され得、そして、LDPC行列が、基底グラフと、リフティングファクタZに対応する基底行列のシフト値とに基づいて取得され得る。
【０２４４】
基底グラフは、上述の符号化の実施形態において説明された様々な方法で記憶され得る。
【０２４５】
単なる例が本明細書において提供され、例は限定をなさないことに留意されたい。
【０２４６】
復号は、符号化の逆のプロセスであり、復号中に使用される基底行列HBは、符号化方法の実施形態の基底行列と同じ特徴を有する。LDPC行列Hを得るために基底行列HBをリフトすることに関しては、やはり符号化方法の実施形態を参照されたい。
【０２４７】
通信システムにおいては、復号方法の前に、通信装置が、以下の動作、すなわち、LDPC符号を含む信号を受信する動作、またはLDPC符号の軟判定値を得るために信号に対して復調、デインターリーブ、もしくはレートデマッチングを実行する動作のうちの1つまたは複数をさらに実行し得る。
【０２４８】
可能な実装においては、以下のうちの1つまたは複数が記憶され得る。
(a)上述の実装において説明されたいずれかの基底行列HBを得るために使用されるパラメータであって、基底行列HBは、パラメータに基づいて取得され得、たとえば、パラメータが、以下、すなわち、基底グラフおよび/もしくは基底行列の行インデックス、行重み、列インデックス、または列重み、基底グラフおよび/もしくは基底行列の非ゼロ要素の位置、基底行列のシフト値、非ゼロ要素のシフト値ならびに対応する位置、補償値、リフティングファクタ、リフティングファクタの集合、基底行列の基底グラフ、または符号化率のうちの1つもしくは複数を含むパラメータ、
(b)上述の実装において説明されたいずれかの基底行列HB、
(c)基底行列HBからリフトされた行列、
(d)上述の実装において説明されたいずれかの基底行列HBに対して行/列の置換を実行することによって得られた基底行列であって、本出願においては、行/列の置換が、行の置換、または列の置換、または行の置換および列の置換である、基底行列、あるいは
(e)行/列の置換を実行することによって得られた基底行列からリフトされた行列。
【０２４９】
可能な実装において、入力系列は、符号化または復号中に以下の方法のうちの1つまたは複数で低密度パリティチェックLDPC行列を使用することによって符号化または復号され得る。
【０２５０】
上述の(a)において説明されたパラメータに基づいて基底行列HBを取得し、取得された基底行列HBに基づいて符号化もしくは復号を実行するか、または取得された基底行列HBに基づいて行/列の置換を実行し、行/列の置換を実行することによって得られた基底行列に基づいて符号化もしくは復号を実行し、符号化もしくは復号が、本明細書の基底行列に基づいて実行され、任意で、符号化もしくは復号が、基底行列のリフトされた行列に基づいて実行され得る、
(b)もしくは(d)に記憶された基底行列(記憶された基底行列HBもしくは基底行列HBに行/列の置換を実行することによって得られた記憶された基底行列)に基づいて符号化もしくは復号を実行するか、または記憶された基底行列に対して行/列の置換を実行し、行/列の置換を実行することによって得られた基底行列に基づいて符号化もしくは復号を実行し、符号化もしくは復号が、本明細書の基底行列に基づいて実行され、任意で、符号化もしくは復号が、基底行列のリフトされた行列に基づいて実行され得るか、あるいは
(c)または(e)に基づいて符号化または復号を実行する。
【０２５１】
本出願のリフトすることは、行列が変換されるかまたは処理された後にリフトされた行列を取得することであり得、リフトする方法は、本出願において限定されない。実装において、リフトすることは、行列に対して補償処理を実行することであり得る。たとえば、基底行列の0以上のそれぞれのシフト値が、補償された行列を得るために補償値だけ増やされるかまたは減らされる。別の実装において、リフトすることは、リフトされた行列を得るために行列の行および列をリフトすることであり得る。別の実装において、リフトすることは、行列の非ゼロ値を変換することであり得る。
【０２５２】
本出願の記憶することは、1つまたは複数のメモリに記憶することであり得る。1つもしくは複数のメモリは、別々に配置され得るか、またはエンコーダ、デコーダ、プロセッサ、チップ、通信装置、もしくは端末に統合され得る。1つまたは複数のメモリの一部は、別々に配置され得、その他のメモリは、デコーダ、プロセッサ、チップ、通信装置、または端末に統合され得る。メモリの種類は、ストレージ媒体の任意の形態であり得、種類は、本出願において限定されない。
【０２５３】
図6は、通信装置600の概略構造図である。装置600は、上述の方法の実施形態において説明された方法を実施するように構成される。上述の方法の実施形態の説明を参照されたい。通信装置600は、チップ、基地局、端末、または別のネットワークデバイスであり得る。
【０２５４】
通信装置600は、1つまたは複数のプロセッサ601を含む。プロセッサ601は、汎用プロセッサ、専用プロセッサなどであり得る。たとえば、プロセッサ601は、ベースバンドプロセッサまたは中央演算処理装置であり得る。ベースバンドプロセッサは、通信プロトコルおよび通信データに関する処理を実行するように構成され得る。中央演算処理装置は、(基地局、端末、またはチップなどの)通信装置を制御し、ソフトウェアプログラムを実行し、ソフトウェアプログラムのデータを処理するように構成され得る。
【０２５５】
可能な設計において、通信装置600は、1つまたは複数のプロセッサ601を含む。1つまたは複数のプロセッサ601は、上述のエンコーダの機能を実装し得る。別の可能な設計において、エンコーダは、プロセッサ601の一部であり得、プロセッサ601は、エンコーダの機能に加えてその他の機能を実装し得る。
【０２５６】
通信装置600は、LDPC行列を使用することによって入力系列を符号化する。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフ、または上述のいずれかの基底グラフに対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底グラフであり得る。LDPC行列の基底行列HBは、上述の実施形態のいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。エンコーダの入力系列は、情報ビット系列であり得る。
【０２５７】
可能な設計において、1つまたは複数のプロセッサ601は、上述のデコーダの機能を実装し得る。別の可能な設計において、デコーダは、プロセッサ601の一部であり得る。
【０２５８】
通信装置600は、LDPC行列を使用することによって入力系列を復号するように構成される。LDPC行列の基底グラフは、上述の例のいずれかの基底グラフ、または上述のいずれかの基底グラフに対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底グラフであり得る。LDPC行列の基底行列HBは、上述の例のいずれかの基底行列、または上述のいずれかの基底行列に対して行の置換、もしくは列の置換、もしくは行の置換および列の置換を実行することによって得られた基底行列であり得る。デコーダの入力系列は、軟判定値系列であり得る。
【０２５９】
任意で、設計において、プロセッサ601は、命令603も含み得る。命令は、上述の方法の実施形態において説明された方法を通信装置600に実行させるためにプロセッサ上で実行され得る。
【０２６０】
別の可能な設計において、通信装置600は、回路も含み得、回路は、上述の方法の実施形態のエンコーダ、デコーダ、またはエンコーダおよびデコーダの機能を実装し得る。
【０２６１】
任意で、通信装置600は、1つまたは複数のメモリ602を含み得る。メモリは、命令604を記憶し、命令は、上述の方法の実施形態において説明された方法を通信装置600に実行させるためにプロセッサ上で実行され得る。任意で、メモリは、データをさらに記憶し得る。任意で、プロセッサも、命令および/またはデータを記憶し得る。プロセッサおよびメモリは、別々に配置され得るか、または一緒に統合され得る。任意で、1つまたは複数のメモリ602は、基底行列に関連するパラメータ、たとえば、シフト値、基底グラフ、基底グラフからリフトされた行列、基底行列の行、またはリフティングファクタを記憶し得る。任意で、1つまたは複数のメモリ602は、基底行列または基底行列からリフトされた行列を記憶し得る。
【０２６２】
任意で、通信装置600は、トランシーバ605およびアンテナ606をさらに含み得る。プロセッサ601は、処理ユニットと呼ばれることもあり、通信装置(端末または基地局)を制御する。トランシーバ605は、トランシーバユニットまたはトランシーバ回路と呼ばれることもあり、アンテナ606を使用することによって通信装置の送受信機能を実装するように構成される。
【０２６３】
任意で、通信装置600は、トランスポートブロックのCRCを生成するように構成された構成要素、符号ブロックのセグメンテーションおよびCRC検査のために使用される構成要素、インターリーブのために使用されるインターリーバ、変調処理のために使用される変調器などをさらに含み得る。これらの構成要素の機能は、1つまたは複数のプロセッサ601によって実装され得る。
【０２６４】
任意で、通信装置600は、復調のために使用される復調器、デインターリーブのために使用されるデインターリーバ、レートデマッチングのために使用される構成要素などをさらに含み得る。これらの構成要素の機能は、1つまたは複数のプロセッサ601によって実装され得る。
【０２６５】
図7は、通信システム700の概略図である。通信システム700は、通信デバイス70および通信デバイス71を含む。通信デバイス70および通信デバイス71は、互いから情報データを受信し、互いに情報データを送信する。通信デバイス70および通信デバイス71は、通信装置600であり得、または通信デバイス70および通信デバイス71は、それぞれ通信装置600を含み、情報データを受信し、送信する。たとえば、通信デバイス70は、端末であり得、それに対応して、通信デバイス71は、基地局であり得る。別の例として、通信デバイス70は、基地局であり、それに対応して、通信デバイス71は、端末であり得る。
【０２６６】
当業者は、本出願の実施形態に挙げられている様々な例示的論理ブロック(illustrative logical block)およびステップ(step)が電子的なハードウェア、コンピュータソフトウェア、またはそれらの組合せを使用することによって実装され得ることをさらに理解するであろう。機能がハードウェアを使用することによって実装されるのか、またはソフトウェアを使用することによって実装されるのかは、特定の用途、およびシステム全体の設計の要件に応じて決まる。当業者は、説明された機能をそれぞれの特定の用途のために実装するために様々な方法を用い得るが、実装は、本出願の実施形態の範囲外であると考えられるべきでない。
【０２６７】
本出願の実施形態において説明された様々な例示的論理ユニットおよび回路は、汎用プロセッサ、デジタル信号プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは別のプログラミング可能な論理装置、ディスクリートゲートもしくはトランジスタ論理、ディスクリートハードウェア構成要素、またはそれらの任意の組合せの設計を使用することによって説明された機能を実装するまたは動作させ得る。汎用プロセッサは、マイクロプロセッサであり得る。任意で、汎用プロセッサは、任意の通常のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであり得る。プロセッサは、デジタル信号プロセッサおよびマイクロプロセッサ、複数のマイクロプロセッサ、デジタル信号プロセッサコアを有する1つもしくは複数のマイクロプロセッサ、または任意のその他の同様の構成などのコンピューティング装置の組合せによって実装され得る。
【０２６８】
本出願の実施形態において説明された方法またはアルゴリズムのステップは、ハードウェア、プロセッサによって実行される命令、またはそれらの組合せに直接埋め込まれ得る。メモリは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、取り外し可能な磁気ディスク、CD-ROM、または当技術分野の任意のその他の形態のストレージ媒体であり得る。たとえば、メモリは、プロセッサがメモリから情報を読み、メモリに情報を書くことができるようにプロセッサに接続され得る。任意で、メモリは、プロセッサに統合され得る。プロセッサおよびメモリは、ASIC内に配置され得、ASICは、(基地局または端末などの)通信装置内に配置され得る。任意で、プロセッサおよびメモリは、通信装置の異なる構成要素内に配置され得る。
【０２６９】
上述の実装の説明によって、当業者は、本出願がハードウェア、ファームウェア、またはそれらの組合せによって実装され得ることをはっきりと理解するであろう。本出願がソフトウェアプログラムによって実装されるとき、本出願は、コンピュータプログラム製品の形態ですべてまたは部分的に実装され得る。コンピュータプログラム製品は、1つまたは複数のコンピュータ命令を含む。コンピュータ命令がコンピュータにロードされ、実行されるとき、本出願の実施形態による手順または機能が、すべてまたは部分的に生成される。本出願がソフトウェアプログラムによって実装されるとき、上述の機能は、コンピュータ可読媒体に記憶されるか、またはコンピュータ可読媒体において1つもしくは複数の命令もしくは符号として送信され得る。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または別のプログラミング可能な装置であり得る。コンピュータ命令は、コンピュータ可読ストレージ媒体に記憶され得るか、またはあるコンピュータ可読ストレージ媒体から別のコンピュータ可読ストレージ媒体に送信され得る。コンピュータ可読媒体は、コンピュータストレージ媒体および通信媒体を含み、通信媒体は、コンピュータプログラムがある場所から別の場所に送信されることを可能にする任意の媒体を含む。ストレージ媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。以下は、例を与えるが、限定を課さない。コンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROM、または別の光ディスク(disc)ストレージもしくはディスク(disk)ストレージ媒体、または別の磁気ストレージデバイス、または期待されるプログラムコードを命令もしくはデータ構造の形態で運ぶかもしくは記憶することができ、コンピュータによってアクセスされ得る任意のその他の媒体を含み得る。加えて、任意の接続が、コンピュータ可読媒体として適切に定義され得る。たとえば、ソフトウェアが同軸ケーブル、光ファイバ/ケーブル、より線対、デジタル加入者線(DSL)、または赤外線、ラジオ波、およびマイクロ波などのワイヤレス技術を使用することによってウェブサイト、サーバ、または別の遠隔のソースから送信される場合、同軸ケーブル、光ファイバ/ケーブル、より線対、DSL、または赤外線、ラジオ波、およびマイクロ波などのワイヤレス技術は、それらが属する媒体の定義に含まれる。たとえば、本出願によって使用されるディスク(Disk)またはディスク(disc)は、コンパクトディスク(CD: compact disc)、レーザーディスク（登録商標）(laser disc（登録商標）)、光ディスク(optical disc)、デジタルバーサタイルディスク(DVD: digital versatile disc)、フロッピー（登録商標）ディスク(floppy disk)、およびブルーレイ（登録商標）ディスク(Blu-ray（登録商標） disc)を含み、ディスク(disk)は、概して、磁気的な手段によってデータをコピーし、ディスク(disc)は、レーザーの手段によって光学的にデータをコピーする。上述の組合せも、コンピュータ可読媒体の保護範囲に含まれるべきである。
【０２７０】
本出願において、「/」は、および/またはを示す。たとえば、符号化/復号は、符号化、復号、または符号化および復号を示す。
【０２７１】
要約すると、上で説明されたことは、本出願の技術的な解決策の実施形態であるに過ぎず、本出願の保護範囲を限定するように意図されていない。本出願の原理から逸脱することなくなされたあらゆる修正、均等な置き換え、または改善は、本出願の保護範囲内に入る。
【符号の説明】
【０２７２】
10a  基底グラフ
10b  基底行列
11a  オールゼロ行列
11b  単位行列
11d  巡回置換行列
30a  基底グラフ
30b-1  基底行列
30b-2  基底行列
30b-3  基底行列
30b-4  基底行列
30b-5  基底行列
30b-6  基底行列
30b-7  基底行列
30b-8  基底行列
30b-9  基底行列
30b-10  基底行列
30c  基底行列
30c-1  行列
30c-2  行列
30c-3  行列
30c-4  行列
30c-5  行列
30c-6  行列
30c-7  行列
30c-8  行列
30c-9  行列
30c-10  行列
70  通信デバイス
71  通信デバイス
80a  基底グラフ
80b-1  基底行列
80b-2  基底行列
80b-3  基底行列
80b-4  基底行列
80b-5  基底行列
80b-6  基底行列
80b-7  基底行列
80b-8  基底行列
80b-9  基底行列
80c-1  行列
80c-2  行列
80c-3  行列
80c-4  行列
80c-5  行列
80c-6  行列
80c-7  行列
80c-8  行列
80c-9  行列
170a  基底グラフ
170b-1  基底行列
180a  基底グラフ
200  列の重み(列重み)
600  通信装置
601  プロセッサ
602  メモリ
603  命令
604  命令
605  トランシーバ
606  アンテナ
700  通信システム
A、B、B'、C、D、E  部分行列
c  入力系列
cT、wT  転置ベクトル
d  出力系列
F  行列
H  LDPC行列
H'  LDPC行列
HB  基底行列
Hcore、Hcore-dual、HBG  行列
hi,j  巡回置換行列
i  行、行インデックス
j  列、列インデックス
0T  列ベクトル
p  ビットの量、列の量
Rm  符号化率、最低符号化率
Pi,j  シフト値、非ゼロ要素、要素
Pe  ベクトル
PCM1〜PCM8  基底行列
S、S'  入力系列
s0  短縮されたビットの量
[S Pe]T  転置行列
Vi,j  シフト値
w  パリティ系列
X  ビット系列
Z  リフティングファクタ
【国際調査報告】
2020518145.tif 000100
2020518145.tif 000101
2020518145.tif 000102
2020518145.tif 000103
2020518145.tif 000104
2020518145.tif 000105