JP7025349B2 - 構造的ldpcの符号化、復号化方法および装置 - Google Patents

構造的ldpcの符号化、復号化方法および装置 Download PDF

Info

Publication number
JP7025349B2
JP7025349B2 JP2018560038A JP2018560038A JP7025349B2 JP 7025349 B2 JP7025349 B2 JP 7025349B2 JP 2018560038 A JP2018560038 A JP 2018560038A JP 2018560038 A JP2018560038 A JP 2018560038A JP 7025349 B2 JP7025349 B2 JP 7025349B2
Authority
JP
Japan
Prior art keywords
matrix
upper left
left corner
submatrix
sub
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018560038A
Other languages
English (en)
Other versions
JP2019517209A (ja
Inventor
徐俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority claimed from PCT/CN2017/070488 external-priority patent/WO2017193614A1/zh
Publication of JP2019517209A publication Critical patent/JP2019517209A/ja
Priority to JP2022019134A priority Critical patent/JP7372369B2/ja
Application granted granted Critical
Publication of JP7025349B2 publication Critical patent/JP7025349B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • H03M13/6368Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
    • H03M13/6393Rate compatible low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/033Theoretical methods to calculate these checking codes
    • H03M13/036Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • H03M13/1185Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal
    • H03M13/1188Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal wherein in the part with the double-diagonal at least one column has an odd column weight equal or greater than three
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は通信分野に関し、具体的には、構造的低密度パリティ検査符号(Low Density ParityCheck Codes、LDPCと略称する)の符号化、復号化方法および装置に関する。
無線デジタル通信の発展および各種の高スピード、突発性の強い業務の現れに伴い、誤り訂正符号化技術に対する要求がますます高まり、図1は典型的なデジタル通信システムである。LDPCは、非常に疎なパリティ検査行列または2部グラフを用いて定義可能な線形ブロック符号であり、最初はGallagerにより発見されたため、Gallager符号と呼ばれる。数十年の沈黙を経て、コンピュータハードウェアおよび関連理論の発展に伴い、MacKayと.Nealはそれを再発見し、そしてシャノン限界に近い性能を有することを証明した。最新の研究により、LDPC符号は、復号化複雑度が低く、線形時間に符号化することができ、シャノン限界に近い性能を有し、並列に復号化することができ、長い符号長の条件でTurbo符号よりも優れるという特徴を有することが分かった。
LDPC符号は1種類の特別な線形ブロック符号である。通信中、パケット長がNビットの符号語を送信するごとに、一定の誤り訂正能力を有するように保証するために、M個の検査ビットが必要となり、各符号語は全てHx=0を満たすことが要求され、そのうち、Hは2次元領域上のM×N次元のパリティ検査行列である。全ての演算はいずれも2次元領域GF(2)で行われ、ここで、+と-は「排他的論理和」演算であり、×は「論理積」演算である。
LDPC符号は、疎な検査行列に基づく線形ブロック符号であり、その検査行列の疎性を利用することにより、低複雑度の符号化/復号化を実現することができ、それにより、LDPC符号を実用化させる。前述したGallager符号は、1種類の正則LDPC符号(regular ldpcc)であり、LubyとMitzenmacherらは、Gallager符号を拡張し、非正則LDPC符号(irregular ldpcc)を提出した。Gallagerが最初に提出した符号化は、規則的な符号構造を有し、その検査行列は疎な行列であり、且つ、各行に同じ個数の1を有し、各列にも同じ個数の1を有する。M.G.Lubyは、検査行列の行または列における非ゼロ要素の個数の変化が許容されると同時に、行列の疎性が保証されば、符号化の復号アルゴリズムは依然として適用されるが、符号化の性能を大幅に向上させることができ、Turbo符号の性能に達するか、さらにそれを超えることができると考えられる。これは、このような符号化構造において、2部グラフに対応する左ノードと右ノードに適当な次数分布(degree distribution)があれば、復号化する時に、1種類の波形効果(waveform effect)が存在し、復号性能を大幅に向上させるためである。非正則符号はこのような同じ種類のノードが異なる次数の低密度を有することを許容する符号であり、Gallagerが最初に提出した符号は対応して正則符号と呼ばれる。
LDPCパリティ検査行列のグラフィック表示形式は2部グラフである。2部グラフと検査行列との間には一対一で対応する関係を有し、1つのM*Nのパリティ検査行列Hにより、各Nビットを有する符号語はM個のパリティ検査セットの制約を満たすことを定義する。1つの2部グラフは、N個の変数ノードとM個のパリティ検査ノードとを含む。m個目の検査がn個目のビットに関し、すなわち、Hにおけるm行目n列目の要素Hm、n=1である場合、検査ノードmと変数ノードnとを接続する配線が1本ある。2部グラフにおいて、いずれかの同じ種類のノードの間に接続がなく、且つ、2部グラフにおける総辺数は検査行列における非ゼロ要素の個数に等しい。
girthという概念は、2部グラフにおけるショートループを定量的に説明するためのものである。グラフ理論において、2部グラフのgirthとは、1つの図における最も短いループのループ長を意味し、例えば、ある2部グラフに長さが6、8、10、12およびより長い長さのループがあれば、該2部グラフのgirthは6であり、変数ノードのgirthとは該ノードを通った最も短いループのループ長を意味し、1つの変数ノードが1つの符号語ビットに一意に対応するため、1つの符号語ビットのgirthは1つの変数ノードのgirthである。
(構造的LDPC符号)
構造的LDPC符号は、工業界で最も流行なLDPC符号であり、最も広い適用を有し、現在では、IEEE802.11n/ad、IEEE802.16eなどの国際規格に現れ、このようなLDPC符号は、また、学界では準巡回LDPC符号または多重辺タイプLDPC符号と呼ばれることが多い。
このようなLDPC符号が構造化されたLDPC符号のパリティ検査行列Hは、(M×z)×(N×z)行列とされ、M×N個のブロック行列から構成され、各ブロック行列はいずれもz×zの基本置換行列の異なるべき乗であり、基本置換行列が単位行列である場合、それらは全て単位行列の巡回シフト行列(デフォルトで右へシフトする)である。このようなべき乗jにより、各ブロック行列を一意に識別することができ、単位行列の毎回を0で示すことができ、全0正方行列は一般的に-1で示される。このように、Hの各ブロック行列を全てそのべき乗で代替すれば、1つのM×Nのべき乗の行列Hbが得られる。ここで、HbがHの基本行列であると定義し、HをHbの拡散行列と呼ぶ。実際に符号化する時、z=符号長/基本行列の列数Nであり、拡散係数と呼ぶ。
例えば、下記行列は、以下のパラメータzと1つの2×4の基本行列Hbで拡散して得られる。
Figure 0007025349000001
z=3およびHbが下記のとおりである。
Figure 0007025349000002
正確な定義は、(N,K)構造的LDPC符号は、サイズが(mb×z)×(nb×z)のパリティ検査行列Hにより定義され、そのうち、パリティ検査行列Hは、サイズがmb×nbの基本行列Hb、拡散係数zおよび基本置換行列Pという3つの変数により確定される。情報系列の長さK=(nb-mb)×zであり、符号語の長さN=nb×zであり、符号化率r=k/nである。基本行列Hbにおける全ての要素を全0正方行列または基本置換行列Pのhbij乗の行列に置換し、拡散後のパリティ検査行列Hを得て、そのうち、hbijはHbにおける要素である。基本行列Hbの定義は下記のとおりであり、
Figure 0007025349000003
拡散後のパリティ検査行列Hの定義は、下記のとおりである。
Figure 0007025349000004
従って、LDPC符号のエンコーダは、基本行列Hb、拡散係数z、および選択された基本置換行列から一意に生成されるとも言える。上記基本行列の定義により、拡散係数(1つの1よりも大きい整数z)が所定される条件で、基本行列とパリティ検査行列とは本質的に1つのものであることが分かった。
(LDPC符号の符号化)
システムブロック符号の直接符号化方法は、1つの符号語xをN-M個の情報ビットsとM個の検査ビットcとに分割し、対応して、M×Nのパリティ検査行列Hを情報ビットと検査ビットにそれぞれ対応するM×(N-M)とM×Mサイズの2ブロックに分割し、すなわち、H=[A|B]である。H×x=0により、下記式が得られる。
Figure 0007025349000005
すると、A×s+B×c=0が得られ、さらに、c=B -1 Asが推測される。ブロックBが厳密な下三角構造(半確率行列)、ダブル下三角構造などのような特殊の行列構造を用いると、B -1 は非常に簡単な形式を有し、上式により符号語内の検査ビット部分cを直接算出することができ、且つ、エンコーダが線形複雑度を有することを保証することができる。
Richarson線形時間符号化アルゴリズムを用いても良く、パリティ検査行列Hは準下三角構造を有し、Hが下記の形式を有するようにする。
Figure 0007025349000006
符号化後の符号語が下記式であり、
Figure 0007025349000007
ここで、sは符号語の組織ビット部分であり、pとpは符号語の検査ビット部分であり、pの長さがgであり、pの長さが(m-g)である。上式において、Aの次元は(m-g)×(n-m)であり、Bは(m-g)×gであり、Tは(m-g)×(m-g)であり、Cはg×(n-m)であり、Dはg×gであり、Eはg×(m-g)である。これらの行列はいずれも疎な行列であり、Tは下三角行列であり、対角要素はいずれも1である。検査ビット部分は、下記式により得られる。
Figure 0007025349000008
Figure 0007025349000009
Figure 0007025349000010
構造的LDPC符号のベクトル特徴を考慮すると、ベクトル復号化の方法の使用を考慮してもよく、1つの構造的LDPC符号の検査ビット部分が1つの厳密な下三角行列であると、以下のベクトル形態により符号化してもよく、非常に成熟して簡単である。
(n,k)構造的LDPC符号の符号語が下記式であり、
Figure 0007025349000011
xは情報系列であり、bは検査系列である。
Figure 0007025349000012
Figure 0007025349000013
入力されたk個のビットの情報系列xに対してLDPC符号化を行い、n-k個のビットを含む検査系列bを生成し、LDPC符号語c=[x,b]、そのうち、n=nb×zであり、k=kb×zであり、kb=nb-mbであり、zは拡散係数である。情報系列xはkb個の長さがzのサブ系列に分けることができ、
Figure 0007025349000014
そのうち、各サブ系列は、下記のとおりであり、
Figure 0007025349000015
検査系列bはmb個の長さがzのサブ系列に分けられ、
Figure 0007025349000016
そのうち、各サブ系列は、下記のとおりである。
Figure 0007025349000017
中間変数系列vを定義し、そのうち、vはmb個の長さがzのサブ系列に分けられる。
Figure 0007025349000018
そのうち、各サブ系列は、下記のとおりである。
Figure 0007025349000019
LDPC符号の符号化のステップは以下のとおりである。
(1)中間変数系列vを算出する。
Figure 0007025349000020
(2)検査系列bを算出する。
Figure 0007025349000021
Figure 0007025349000022
(3)LDPC符号語c=[x,b]を算出する。
以上をまとめると、LDPC符号のエンコーダはLDPCパリティ検査行列Hにより一意に記載することができ、具体的な符号化方法は既に非常に成熟して簡単であるため、ここでは説明を省略する。また、LDPC符号のパリティ検査行列はLDPC符号デコーダの性能を決定するだけでなく、LDPC符号のエンコーダとデコーダの複雑度、記憶空間と処理遅延を決定し、さらに、何がインクリメンタルリダンダンシーHARQをサポートできるか、および十分な融通性があるかどうかを決定する。従って、適当なLDPC符号のパリティ検査行列構造を探すことは極めて重要であり、LDPC符号の使用見込みを決定する。
具体的に実現する時に、上記直接方法またはRicharson方法または他の方法を用いて演算し、N-Mビットの元データからNビット符号語を得る符号化機能を完成することができる。実際、該エンコーダは、ソフトウェアまたはハードウェアで式中の疎な行列の乗算と加算演算を実現し、単位行列およびその巡回シフト行列に基づくLDPC符号について、疎な行列の乗算演算は複数のzビット(zが拡散係数である)のサイクリックシフトレジスタおよび複数のzビットの加算器から構成されてもよく、疎な行列の加算演算は、上記複数のzビットの加算器により完成され、該複数のzビットのサイクリックシフトレジスタおよび複数のzビットの加算器は1つのハードウェア回路で実現されるLDPCエンコーダを構造する。
(LDPCの復号化)
LDPCパリティ検査行列のグラフィック表示形式は2部グラフである。2部グラフと検査行列との間には一対一で対応する関係を有し、1つのM*Nのパリティ検査行列Hにより、各Nビットを有する符号語はM個のパリティ検査セットの制約を満たすことを定義する。1つの2部グラフは、N個の変数ノードとM個のパリティ検査ノードとを含む。m個目の検査がn個目のビットに関し、すなわち、Hにおけるm行目n列目の要素Hm、n=1である場合、検査ノードmと変数ノードnとを接続する配線が1本ある。2部グラフにおいて、いずれかの同じ種類のノードの間に接続がなく、且つ、2部グラフにおける総辺数は検査行列における非ゼロ要素の個数に等しい。
LDPC符号の情報転送復号アルゴリズムは、変数ノードが互いに独立すると仮定し、ショートループの存在は必ず独立性の仮設を破壊し、復号性能を著しく低減する。実際、LDPCパリティ検査行列の2部グラフに対応する最も短いループの長さが長ければ長いほど、すなわち、girth値が大きければ大きいほど、変数ノードから送信された情報が自身に転送される正帰還情報は小さく、復号性能も良好である。検査行列Hのgirthと基本行列Hbとの間に関連性があり、数学的推論和コンピュータシミュレーションの検証により、関連結論があった。
以下、2部グラフのgirth、ノードのgirth、辺のgirthについて説明する。2部グラフにおけるショートループを定量的に説明するために、girthに関する概念を導入する。2部グラフのgirthとは、1つの図における最も短いループのループ長を意味し、例えば、ある2部グラフに長さが6、8、10、12およびより長い長さのループがあれば、該2部グラフのgirthは6である。2部グラフにおいて、あるノードuのgirth(the girth at node u)とは、ノードuを経た最も短いループのループ長を意味し、例えば、ノードuを経たもののうち長さが8、10、12およびより長い長さのループがあれば、該ノードuのgirthは8である。2部グラフにおいて、ある辺eのgirth(the girth at node u)とは、この辺eを経た最も短いループのループ長を意味し、例えば、ノードeを経たもののうち長さが8、10、12およびより長い長さのループがあれば、該ノードuのgirthは8である。
1つの変数ノードのgirthとは、最も短いパスの長さを意味し、このノードから送信される情報が該ノード本身に転送される最も小さい反復回数に相当する。実際の反復回数がこの最も小さい反復回数に達する前に、このノードに関連する情報は2部グラフの残りの部分に最適に転送することができる。ある変数ノードのgirthが大きければ大きいほど、該変数ノードから送信される情報が自身に転送される正帰還情報は小さく、復号性能も良好である。従って、変数ノードのgirthをできるだけ大きくすることは符号性能の向上に有利である。以上をまとめると、高LDPC符号を構成する原則は以下のとおりである。まず、選択された符号の最も短いループの長さ(girth)はできるだけ大きくし、次に、同じサイズgirthを有する符号について、選択された符号の最も短いループの数はできるだけ少なくする。
実際の適用において、基本行列からパリティ検査行列に拡散し、前記パリティ検査行列は拡散行列またはバイナリ行列とも言える。検査行列のトポロジを分析することにより、拡散行列において、z×zのブロック行列と基本行列の要素とは一意に対応し、基本行列における一部の要素がショートループを構成しなければ、これらの要素に対応するブロック行列は拡散行列においてもショートループを構成しないことが分かった。そのため、拡散行列のショートループを検討するために、基本行列にショートループが現れる場合の拡散行列を検討すればよい。
検査行列と2部グラフのトポロジ構造を分析し、基本行列Hに長さが4のショートループが現れる場合、Hの拡散行列Hには長さが4またはそれ以上のショートループが現れる可能性があり、例えば、4つのz×zのブロック行列P、P、P、Pに対応するべき乗要素i、j、k、lはHにおいて長さが4のショートループを構成し、mod(i-j+k-l,z)=0であると、P、P、P、PはHにおいて長さが4のショートループを構成し、mod(i-j+k-l,z)=z/2であると、P、P、P、PはHにおいて長さが8のショートループを構成する。他の場合、P、P、P、PはHにおいて長さが12のショートループを構成するか、またはショートループを構成しない。
検査行列と2部グラフのトポロジ構造を分析し、基本行列Hbに長さが6のショートループが現れる場合、Hの拡散行列Hには長さが6またはそれ以上のショートループが現れる可能性があり、例えば、6つのz×zのブロック行列P、P、P、P、P、Pに対応するべき乗要素i、j、k、l、m、nはHbにおいて長さが6のショートループを構成し、mod(i-j+k-l+m-n,z)=0であると、P、P、P、P、P、PはHにおいて長さが6のショートループを構成し、mod(i-j+k-l+m-n,z)=z/2であると、P、P、P、P、P、PはHにおいて長さが10のショートループを構成する。他の場合、P、P、P、P、P、PはHにおいて長さが12以上のショートループを構成するか、またはショートループを構成しない。
検査行列と2部グラフのトポロジ構造を分析し、基本行列Hに長さが8のショートループが現れる場合、Hの拡散行列Hには長さが8またはそれ以上のショートループが現れる可能性があり、例えば、8つのz×zのブロック行列P、P、P、P、P、P、P、Pに対応するべき乗要素i、j、k、l、m、n、s、tはHbにおいて長さが8のショートループを構成し、mod(i-j+k-l+m-n+s-t,z)=0であると、P、P、P、P、P、P、P、PはHにおいて長さが8のショートループを構成する。他の場合、P、P、P、P、P、P、P、PはHにおいて長さが12のショートループを構成するか、またはショートループを構成しない。
(基本行列の修正)
各異なる拡散係数に同一の基本行列を用いることができなければ、各異なる符号長に対して、前記LDPC符号のエンコーダ/デコーダはいずれも1つの基本行列を記憶する必要があり、符号長が多い場合、多くの基本行列を記憶する必要があり、大きな記憶空間を占有し、またはハードウェアで実現される回路が複雑になる。
修正は、他の符号長の拡散係数を利用して基本行列Hbにおける非負値の要素を修正することであり、修正後の要素値は該符号長での拡散係数値よりも小さくなるべきであり、修正アルゴリズムはモジュロ(mod)、丸め(scale+floor)、または四捨五入(scale+round)などを用いることができる。Pi、jを基本行列のi行目j列目の非負の要素とし、P’i、jを修正後の要素とすると、
モジュロ(mod)方法は、下記のとおりであり、
Figure 0007025349000023
丸め(scale+floor)方法は、下記のとおりであり、
Figure 0007025349000024
四捨五入(scale+round)方法は、下記のとおりである。
Figure 0007025349000025
そのうち、Nは基本行列の列数であり、nはパリティ検査行列を生成しようとする低密度パリティ検査符号の符号長である。modはモジュロ動作であり、[]はフロア動作であり、Roundは四捨五入動作である。ここで、最大符号長を2304とする。
例えば、符号長が1152ビットの低密度パリティ検査符号に対して、その基本行列のある非負の要素を93とすると、その修正結果は、
モジュロ(mod)方法は、下記のとおりであり、
Figure 0007025349000026
丸め(scale+floor)方法は、下記のとおりであり、
Figure 0007025349000027
四捨五入(scale+round)方法は、下記のとおりである。
Figure 0007025349000028
LDPC符号は、現在で最も流行な階層復号化を用いると、対数尤度比情報の読み書きはLDPC符号のパイプラインの配列に大きく影響する。具体的には、高符号化率の場合、一般的なLDPC符号の符号構造では、デコーダは、基本行列の1行の処理を完成してから次の段のパイプラインを開始する必要があり、1段のパイプラインが特に長いと、デコーダの効率を大幅に低減する。
3GPP規格において、第5世代移動通信規格の新しい無線・アクセス技術(5G New RAT)が正式に確立され、この新しい無線・アクセス技術は、超高スループットと低処理遅延をサポートする必要があるため、現在のturbo符号化形態を代替する新しい符号化形態が必要となる。しかし、現在の通信規格のLDPC符号は、インクリメンタルリダンダンシーHARQを良好にサポートすることができず、十分な符号化率と送信ブロックサイズの融通性を有しないため、新しいLDPC符号化構造を設計する必要があり、Turbo符号に近い性能および融通性が保証される条件で、インクリメンタルリダンダンシーHARQをサポートすることができ、さらに、Turbo符号よりも遥かに低い複雑度および超高速処理能力を有する必要がある。
本発明の実施例は、少なくとも関連技術における従来のLDPCエンコーダ/デコーダのインクリメンタルリダンダンシーHARQをサポートできず、融通性が不十分である問題を解決する構造的LDPCの符号化、復号化方法および装置を提供する。
本発明の1つの実施例によれば、LDPCの符号化方法を提供し、符号化に使用する基本行列Hbを確定し、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であることと、前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、そのうち、Zは1以上の正整数であることとを含む。
本発明の1つの実施例によれば、LDPCの復号化方法を提供し、
復号化に使用する基本行列Hbを確定し、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であることと、
前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、そのうち、Zは1以上の正整数であることとを含む。
本発明の別の実施例によれば、LDPCの符号化装置を提供し、確定モジュールと符号化モジュールとを備え、
前記確定モジュールは符号化に使用する基本行列Hbを確定するように設けられ、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、
前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であり、
前記符号化モジュールは、前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、Zは1以上の正整数であるように設けられる。
本発明の他の実施例によれば、LDPCの復号化装置を提供し、確定モジュールと復号化モジュールとを備え、
前記確定モジュールは復号化に使用する基本行列Hbを確定するように設けられ、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であり、
前記復号化モジュールは、前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、Zは1以上の正整数であるように設けられる。
本発明の他の実施例によれば、記憶媒体をさらに提供する。該記憶媒体は、
符号化に使用する基本行列Hbを確定し、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であるステップと、前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、そのうち、Zは1以上の正整数であるステップとを実行するためのプログラムコードを記憶するように設けられる。
本発明の更なる実施例によれば、記憶媒体をさらに提供する。該記憶媒体は、
復号化に使用する基本行列Hbを確定し、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であるステップと、
前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、そのうち、Zは1以上の正整数であるステップとを実行するためのプログラムコードを記憶するように設けられる。
本発明の実施例に係る形態は、適当な基本行列を設計することにより、前記基本行列およびそれに対応する拡散係数に基づき、符号化または復号化を完成し、超高速度のLDPC符号化と復号化を実現し、Turbo符号に近い符号/復号性能を実現し、従来のLDPCエンコーダ/デコーダのインクリメンタルリダンダンシーHARQをサポートできず、融通性が不十分である問題を解決した。
ここで説明する図面は、本発明の更なる理解を提供するためのものであり、本出願の一部を構成し、本発明の模式的な実施例およびその説明は本発明を解釈するためのものであり、本発明を不当に限定するものを構成しない。図面において、
関連技術におけるデジタル通信システムの構造を示すブロック図である。 本発明の実施例1に係る構造的LDPC符号のエンコーダの構造模式図である。 本発明の実施例1に使用する基本行列の模式図である。 本発明の実施例2に係る構造的LDPC符号のデコーダの構造模式図である。 本発明の実施例3に係る構造的LDPC符号の符号化方法のフローチャートである。 本発明の実施例4に係る構造的LDPC符号の復号化方法のフローチャートである。 本発明の実施例5に係る構造的LDPC符号の符号化装置の構造模式図である。 本発明の実施例5に係る構造的LDPC符号の復号化装置の構造模式図である。 本発明の実施例8に係るメモリの記憶形態の模式図1である。 本発明の実施例8に係るメモリの記憶形態の模式図2である。
以下、図面および実施例を参照しながら本発明を詳細に説明する。なお、衝突しない場合、本出願における実施例および実施例における特徴は互いに組み合わせることができる。
なお、本発明の明細書、請求の範囲、および上記図面における用語「第1」、「第2」などは、類似する対象を区別するためのものであり、特定の順序または優先順位を説明するためのものではない。
従来の構造的LDPC符号は、一般的にインクリメンタルリダンダンシーHARQ形態をサポートすることができず、または一般的に超高スループットを提供することができず、またはTurbo符号に近い性能を達成することができず、または融通性が不十分である。しかし、基本行列の可能な構造と構成形態の数は極めて巨大であり、従来技術には未だ総合的な実行可能な解決方法がなく、このような要求を満たす基本行列も得られない。
上記問題を解決するために、本発明の実施例は構造的LDPC符号の符号化、復号化方法および装置、エンコーダおよびデコーダを提供する。本発明の実施例は実用性から考慮し、複数の符号化率と複数種の符号長に同じ基本行列を使用し、通常最大符号長に対応して生成され、それと同時に異なる符号長の場合に該基本行列を修正する。本発明の実施例は、異なる符号長の基本行列のGirth特徴を定義することにより、各種の符号長の条件でTurbo符号性能が達成できることを保証する。しかし、本発明はこれに限定されず、符号長ごとに1つの基本行列を用いる形態にも適用可能である。
なお、本出願の実施例に係る解決手段は、本出願の実施例における行列の構造に限定されず、例えば、組織ビットに対応する行列と検査ビットに対応する行列との位置を左右に互換することができ、本出願の実施例における設計思想に基づく符号化/復号化形態は、いずれも本出願の保護範囲内に含まれるべきである。
本発明の実施例は、デジタル通信における構造的低密度パリティ検査符号LDPCの符号化装置を提供し、その構造が図2に示すように、少なくともプロセッサ202とメモリ201とを備える。
前記メモリ201は少なくとも符号化に使用する基本行列を記憶するように設けられる。
前記基本行列は、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列のi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Nbは3*Kb以上の整数であり、Kbは4以上の整数である。i=1,…,Mbであり、j=1,…,Nbである。
前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列である。
好ましくは、前記行列Hbの最初のL0行と最初のKb+4列とのインタセクションから左上隅サブ行列Hb1を構成し、前記左上隅サブ行列Hb1の各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は1つの左下三角行列または準左下三角行列であり、および/または、
前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のb-4行と最後のb-4列とのインタセクションから構成されるサブ行列は、サイズが(b-4)*(b-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目の全ての要素はいずれもZ*Z零正方行列に対応する要素である。
前記左上隅サブ行列Hb2の最後のb-4行と最初のb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下である。
そのうち、Nbは2*Kb以上であ
2)前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、そのうち、z、z、…、zは昇順に配列され、z、z、z、zは前記セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、そのうち、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しい。拡散係数Z=ziおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、そのうち、RはKb/2以下である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しい。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しい。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上である。
そのうち、1つのLDPC符号語の各符号語ビットは前記パリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである。
そのうち、1つのLDPC符号語の各符号語ビットは前記パリティ検査行列の各列に対応する。
各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、ここでは、i=1,2,…,Vである。
前記基本行列とそれに対応する拡散係数Zにより、(Nb-Mb)×Zビットの元情報ビット系列に対するLDPC符号化演算を完成し、Nb×Zビットの符号語系列を得て、そのうち、Zは拡散係数であり、Zは1以上の正整数である。
好ましくは、前記上記基本行列Hbはさらに以下を含んでもよい。
該左上隅サブ行列Hb3は、前記基本行列Hbの最初の2*b行と最初の3*Kb列とのインタセクションから構成され、Hb3の最後のKb行と最後のKb列とのインタセクションから構成されるサブ行列はサイズがb*bの単位行列または単位行列の巡回シフト行列である。
Hb3の最初のKb行と最後のKb列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
Hb3のKb+1列目~2*Kb列目から1つのサブ行列を構成し、該サブ行列のL1列において、各列における全ての非零正方行列に対応する要素は1つのみあり、このサブ行列の残りのKb-L1列における全ての要素(entry)は、いずれもZ*Z零正方行列に対応する要素であり、そのうち、L1は0以上Kb未満の整数である。
そのうち、Nbは3*Kb以上である。
好ましくは、Nbは2*Kb~12*Kbの1つの確定された正整数である。
好ましくは、Kbの値は2~16の間の1つの整数である。
好ましくは、エンハンスメント型モバイルブロードバンド(Enhanced Mobile Broadband、eMMBと略称する)のシーンと超高信頼低遅延(Ultra-ReliableandLowlatencyCommunication、URLLCと略称する)のシーンでは、異なるKbの値が用いられる。
好ましくは、基本行列Hbのg行目の非Z*Z零正方行列に対応する要素の個数は、g+1行目の非Z*Z零正方行列に対応する要素の個数以下である。そのうち、g=1,2,…,Nb-1である。
好ましくは、前記基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=1,…,Nbである。
なお、本発明はこのような形態に限定されるものではなく、最後の1つの要素が0であってもよく、任意の要素が0であってもよい。これらの形態はいずれも、階層復号化を用いると、サイクリックシフト逆ネットワークを使用しなくてもよく、ルーティングのオーバーヘッドを著しく減少することができ、有益な効果が得られることを保証できる。
前記プロセッサ202は、前記基本行列および拡散係数zを確定し、(Nb-Mb)×zビットの元データからNb×zビットの符号語を得るLDPC符号化演算を完成するように設けられる。
以下、1つのより具体的な例を挙げると、以上の記載要求を満たす基本行列Hbは図3に示すとおりである。
図3に示す基本行列Hbは、該行列Hbに対応する符号化率が1/3であり、行列Mb=16であり、Nb=24であり、Hb1が4*12の行列であり、Hb2が8*16の行列であり、Hb3が16*24の行列である。該基本行列は拡散係数z=336に対応する。図3の行列の例は、Hb1の特徴、Hb2の特徴およびHb3の特徴を同時に満たす。Hb1の特徴を満たす場合、2/3符号化率のLDPC符号はTurbo符号に近い性能を有し、該行列が4行のみあるため、超高速処理の要求を満たす。Hb2の特徴を満たす場合、LDPCが好ましい次数分布を有することを保証するため、それと同時に特定のTBS=336*8のgirth要求を満たすため、1/2符号化率のLDPC符号はTurbo符号に近い性能を有する。該行列が8行のみあるため、超高速処理の要求を満たす。また、Hb1がHb2の左上隅サブ行列であり、入れ子構造に属するため、インクリメンタルリダンダンシーHARQをサポートすることができる。好ましくは、Hb3の特徴を満たす場合、LDPCが好ましい次数分布を有することを保証するため、それと同時に特定のTBS=336*8のgirth要求を満たすため、1/3符号化率のLDPC符号はTurbo符号に近い性能を有する。該行列が16行のみあるため、超高速処理の要求を満たす。また、Hb1およびHb2はいずれもHbの左上隅サブ行列であり、入れ子構造に属するため、インクリメンタルリダンダンシーHARQをサポートすることができる。
前記行列Hbの最初のL0=4行と最初のKb+4=8列とのインタセクションから左上隅サブ行列Hb1を構成し、前記左上隅サブ行列Hb1の各行の非Z*Z零正方行列に対応する要素の個数は順に9、10、10および10に等しく、これらの値はいずれもKb+2=10以下Kb-2=8以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は1つの左下三角行列または準左下三角行列である。
上述した行列において、A部分行列はシステマティックビット部分行列であり、B部分は検査ビット部分行列であり、行列における要素値-1が全0正方行列に対応し、要素値は、非零正方行列が正方行列に対応して対応値をサイクリックシフトした後の行列である。また、基本行列Hbの全ての列において、第1対応非零正方行列の要素はいずれも0である。この時、サイクリックシフトネットワークは、サイクリックシフトの差分値を完成すればよい。この時、本発明の行列構造を有するLDPC階層デコーダはサイクリックシフト逆ネットワークを必要とせず、従来の形態と比べ、ルーティングが半減する。
好ましくは、上記エンコーダは、拡散係数および基本置換行列により、前記基本行列を拡散し、(M×z)(N×z)低密度パリティ検査符号のパリティ検査行列を得て、前記復号化モジュールは、前記基本行列の拡散による該パリティ検査行列に対して符号化演算を行うように設けられる拡散モジュールをさらに含むという特点をさらに有してもよい。
本発明の実施例は、提出される基本行列の構造により、情報ビットをLDPC符号化し、LDPC符号語を生成することができ、このようなLDPC符号語は、変調などのモジュールを経てからチャネルに送信し、受信端が信号を受信した後に復調などの処理を行い、受信されるLDPC符号語を生成し、受信されるLDPC符号語はLDPCデコーダに送信される。このように、LDPC符号語は、復号化のパイプライン速度が向上する効果を保証でき、すなわち、デコーダ処理の速度は向上する効果を得る。これにより、LDPC符号の効率を効果的に向上させ、復号化速度を加速する。さらに、本発明に係る基本行列の構造は、逆サイクリックシフトネットワーク(書き込み記憶に用いられる)の不使用の許容により、交換ネットワークを減少させることができ、同様にハードウェア複雑度をさらに低減する。
本発明の実施例は、デジタル通信中構造的低密度パリティ検査符号LDPCの復号化装置を提供し、その構造が図4に示すように、少なくともプロセッサ402とメモリ401とを備える。
前記メモリ401は、少なくとも符号化に使用する基本行列を記憶するように設けられる。前記基本検査行列は以下の特徴を含む。
前記基本行列は、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列のi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数である。i=1,…,Mbであり、j=1,…,Nbである。
前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列である。
好ましくは、前記左上隅サブ行列Hb1は、前記行列Hbの最初のL0行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は1つの左下三角行列または準左下三角行列であり、および/または、
前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のb-4行と最後のb-4列とのインタセクションから構成されるサブ行列は、サイズが(b-4)*(b-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目の全ての要素はいずれもZ*Z零正方行列に対応する要素である。
前記左上隅サブ行列Hb2の最後のb-4行と最初のb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下である。
そのうち、Nbは2*Kb以上であ
2)前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、そのうち、z、z、…、zは昇順に配列され、z、z、z、zは前記セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、そのうち、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しい。拡散係数Z=zおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、そのうち、RはKb/2以下である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しい。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しい。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上である。
そのうち、1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである。
そのうち、1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、ここでは、i=1,2,…,Vである。
前記基本行列とそれに対応する拡散係数Zにより、(Nb-Mb)×Zビットの元情報ビット系列に対するLDPC符号化演算を完成し、Nb×Zビットの符号語系列を得て、そのうち、Zは拡散係数であり、Zは1以上の正整数である。
好ましくは、前記基本行列Hbは、左上隅サブ行列Hb3をさらに含む。
好ましくは、該左上隅サブ行列Hb3は、前記基本行列Hbの最初の2*b行と最初の3*Kb列とのインタセクションから構成され、Hb3の最後のKb行と最後のKb列とのインタセクションから構成されるサブ行列はサイズがb*bの単位行列または単位行列の巡回シフト行列である。
Hb3の最初のKb行と最後のKb列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
Hb3のKb+1列目~2*Kb列目から1つのサブ行列を構成し、該サブ行列のL1列において、各列における全ての非零正方行列に対応する要素は1つのみあり、このサブ行列の残りのKb-L1列における全ての要素(entry)は、いずれもZ*Z零正方行列に対応する要素であり、そのうち、L1は0以上Kb未満の整数である。
そのうち、Nbは3*Kb以上であり、L0は4または3に等しい。
好ましくは、Nbは2*Kb~12*Kbの1つの確定された正整数である。
好ましくは、Kbの値は2~16の間の1つの整数である。
さらに、eMMBのシーンおよびURLLCのシーンでは、異なるKbの値が用いられる。
好ましくは、基本行列Hbのg行目の非Z*Z零正方行列に対応する要素の個数は、g+1行目の非Z*Z零正方行列に対応する要素の個数以下である。そのうち、g=1,2,…,Nb-1である。
好ましくは、前記基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=1,…,Nbである。
基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=0、1,…,Nb-1である。
前記1つのプロセッサ402は、前記基本行列および拡散係数zにより、Nb×zビットの符号語から(Nb-Mb)×zビットの情報データを得るLDPC復号化演算を完成するように設けられる。
以下、1つのより具体的な例を挙げると、以上の記載要求を満たす基本行列Hbは図3に示すとおりである。
図3に示す基本行列Hbは、該行列Hbに対応する符号化率が1/3であり、行列Mb=16であり、Nb=24であり、Hb1が4*12の行列であり、Hb2が8*16の行列であり、Hb3が16*24の行列である。該基本行列は拡散係数z=336に対応する。図3の行列の例は、Hb1の特徴、Hb2の特徴およびHb3の特徴を同時に満たす。Hb1の特徴を満たす場合、2/3符号化率のLDPC符号はTurbo符号に近い性能を有し、該行列が4行のみあるため、超高速処理の要求を満たす。Hb2の特徴を満たす場合、LDPCが好ましい次数分布を有することを保証するため、それと同時に特定のTBS=336*8のgirth要求を満たすため、1/2符号化率のLDPC符号はTurbo符号に近い性能を有する。該行列が8行のみあるため、超高速処理の要求を満たす。また、Hb1がHb2の左上隅サブ行列であり、入れ子構造に属するため、インクリメンタルリダンダンシーHARQをサポートすることができる。好ましくは、Hb3の特徴を満たす場合、LDPCが好ましい次数分布を有することを保証するため、それと同時に特定のTBS=336*8のgirth要求を満たすため、1/3符号化率のLDPC符号はTurbo符号に近い性能を有する。該行列が16行のみあるため、超高速処理の要求を満たす。また、Hb1およびHb2はいずれもHbの左上隅サブ行列であり、入れ子構造に属するため、インクリメンタルリダンダンシーHARQをサポートすることができる。
従って、本発明の構造は非常に高いまたは比較的融通の並列度をサポートすることができ、超高速復号化に適することを満たし、それにより、Gbpsの復号化要求を達成する。本実施例は提出される基本行列の構造により情報ビットをLDPC復号化し、LDPCデコーダはLDPC符号語を受信する。基本行列の行数が非常に小さいため、このように、LDPCデコーダは、復号化のパイプライン速度が向上する効果を保証でき、すなわち、デコーダの処理速度は向上する効果を得る。これにより、LDPC符号の効率を効果的に向上させ、復号化速度を加速する。さらに、本発明に係る基本行列の構造は、逆サイクリックシフトネットワーク(書き込み記憶に用いられる)の不使用の許容により、交換ネットワークを減少させることができ、同様にハードウェア複雑度をさらに低減する。
本発明の実施例は、構造的LDPC符号の符号化方法を提供し、該方法を用いてLDPC符号化を完成するフローは図5に示すように、以下のステップを含む。
ステップ501、符号化に使用する基本行列Hbを確定する。
好ましくは、前記基本検査行列は以下の特徴を含む。
前記基本行列は、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列のi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数である。i=1,…,Mbであり、j=1,…,Nbである。
好ましくは、前記基本行列Hbは少なくとも以下の特徴を更に有する。前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列である。好ましくは、上記特徴は以下の実現形態として表現することができるが、これに限定するものではない。
前記左上隅サブ行列Hb1は、前記行列Hbの最初のL0行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は1つの左下三角行列または準左下三角行列であり、および/または、
前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のb-4行と最後のb-4列とのインタセクションから構成されるサブ行列は、サイズが(b-4)*(b-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目の全ての要素はいずれもZ*Z零正方行列に対応する要素である。
前記左上隅サブ行列Hb2の最後のb-4行と最初のb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下である。
そのうち、Nbは2*Kb以上であ
2)前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、そのうち、z、z、…、zは昇順に配列され、z、z、z、zは前記セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、そのうち、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しい。拡散係数Z=zおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、そのうち、RはKb/2以下である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しい。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しい。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上である。
そのうち、1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである。
前記基本行列とそれに対応する拡散係数Zにより、(Nb-Mb)×Zビットの元情報ビット系列に対するLDPC符号化演算を完成し、Nb×Zビットの符号語系列を得て、そのうち、Zは拡散係数であり、Zは1以上の正整数である。
2)については、より具体的な例は以下のとおりである。
1つの1/3符号化率の構造的LDPC符号の基本行列Hbは以下のように定義される。
Hbは下記のとおりである。
Figure 0007025349000029
このLDPC符号の拡散係数は1組の確定値セット{z,z,z…,z}={13,50,125,250,500,750,1000}をサポートし、ここで、V=7、Zmax=1000である。各拡散係数に対応する基本行列Hb(zi)は、背景技術におけるscale+floorアルゴリズムにより得られる。
ここで、r=2であり、z=13≦Z=z<z=50である場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、13*5=65ビットのgirthは4に等しい。拡散係数Z=zおよび最も重いR=8列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、そのうち、RはKb/2以下である。
ここで、s=3であり、z≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しい。
ここで、t=4であり、z≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語において、125個の重量が2よりも大きい検査ビットのgirthは8以上である。
ここで、u=7であり、z≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しい。
ここで、u=7であり、V=7であり、z≦Z=z<zが空白であり、このような場合が存在しないと意味する。
さらに、前記基本行列は以下の特徴をさらに有する。該左上隅サブ行列Hb3は、前記基本行列Hbの最初の2*b行と最初の3*Kb列とのインタセクションから構成され、Hb3の最後のKb行と最後のKb列とのインタセクションから構成されるサブ行列はサイズがb*bの単位行列または単位行列の巡回シフト行列である。
Hb3の最初のKb行と最後のKb列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
Hb3のKb+1列目~2*Kb列目から1つのサブ行列を構成し、該サブ行列のL1列において、各列における全ての非零正方行列に対応する要素は1つのみあり、このサブ行列の残りのKb-L1列における全ての要素(entry)は、いずれもZ*Z零正方行列に対応する要素であり、そのうち、L1は0以上Kb未満の整数である。
そのうち、Nbは3*Kb以上である。
好ましくは、Nbは2*Kb~12*Kbの1つの確定された正整数である。
好ましくは、Kbの値は2~16の間の1つの整数である。
さらに、eMMBのシーンおよびURLLCのシーンでは、異なるKbの値が用いられる。
好ましくは、基本行列Hbのg行目の非Z*Z零正方行列に対応する要素の個数は、g+1行目の非Z*Z零正方行列に対応する要素の個数以下である。そのうち、g=1,2,…,Nb-1である。
好ましくは、前記基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=1,…,Nbである。
基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=0、1,…,Nb-1である。
ステップ502、前記基本行列およびそれに対応する拡散係数により、(Nb-Mb)×zビットの元データからNb×zビットの符号語を得るLDPC符号化演算を完成する。
そのうち、Zは拡散係数であり、Zは1以上の正整数である。
本発明の実施例は構造的LDPC符号の復号化方法を提供し、該方法を用いてLPDC符号化を完成するフローは図6に示すように、以下のステップを含む。
ステップ601、復号化に使用する基本行列を確定する。
そのうち、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列である。
すなわち、前記基本行列は以下の特徴を含む。
前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、そのうち、Zは1以上の正整数である。前記基本行列は、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列のi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数である。Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbである。
前記基本行列Hbは少なくとも以下の特徴のうちの1つをさらに含む。
前記左上隅サブ行列Hb1は、前記行列Hbの最初のL0行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は1つの左下三角行列または準左下三角行列であり、および/または、
前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のb-4行と最後のb-4列とのインタセクションから構成されるサブ行列は、サイズが(b-4)*(b-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目の全ての要素はいずれもZ*Z零正方行列に対応する要素である。
前記左上隅サブ行列Hb2の最後のb-4行と最初のb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下である。
そのうち、Nbは2*Kb以上であ
2)前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、そのうち、z、z、…、zは昇順に配列され、z、z、z、zは前記セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、そのうち、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しい。拡散係数Z=zおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、そのうち、RはKb/2以下である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しい。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しい。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上である。
そのうち、1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである。
前記基本行列とそれに対応する拡散係数Zにより、(Nb-Mb)×Zビットの元情報ビット系列に対するLDPC符号化演算を完成し、Nb×Zビットの符号語系列を得て、そのうち、Zは拡散係数であり、Zは1以上の正整数である。
好ましくは、前記構造的LDPC符号の符号化方法の技術的特徴はさらに以下を含む。
該左上隅サブ行列Hb3は、前記基本行列Hbの最初の2*b行と最初の3*Kb列とのインタセクションから構成され、Hb3の最後のKb行と最後のKb列とのインタセクションから構成されるサブ行列はサイズがb*bの単位行列または単位行列の巡回シフト行列である。
Hb3の最初のKb行と最後のKb列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
Hb3のKb+1列目~2*Kb列目から1つのサブ行列を構成し、該サブ行列のL1列において、各列における全ての非零正方行列に対応する要素は1つのみあり、このサブ行列の残りのKb-L1列における全ての要素(entry)は、いずれもZ*Z零正方行列に対応する要素であり、そのうち、L1は0以上Kb未満の整数である。
そのうち、Nbは3*Kb以上である。
好ましくは、Nbは2*Kb~12*Kbの1つの確定された正整数である。
好ましくは、Kbの値は2~16の間の1つの整数である。
さらに、eMMBのシーンおよびURLLCのシーンでは、異なるKbの値が用いられる。
好ましくは、基本行列Hbのg行目の非Z*Z零正方行列に対応する要素の個数は、g+1行目の非Z*Z零正方行列に対応する要素の個数以下である。そのうち、g=1,2,…,Nb-1である。
好ましくは、前記基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=1,…,Nbである。
基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=0、1,…,Nb-1である。
ステップ602、前記基本行列および対応する拡散係数により、Nb×zビットの符号語から(Nb-Mb)×zビットの情報データを得るLDPC復号化演算を完成する。
そのうち、zは拡散係数であり、zは1以上の正整数である。
本発明の実施例は構造的LDPC符号の符号化装置を提供し、その構造が図7に示すように、確定モジュール701と符号化モジュール702とを備える。
前記確定モジュール701は符号化に使用する基本行列を確定するように設けられ、前記基本検査行列は以下の特徴を含む。
前記基本行列は、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列のi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Nbは3*Kb以上の整数であり、Kbは4以上の整数である。i=1,…,Mbであり、j=1,…,Nbである。
そのうち、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列である。すなわち、前記基本行列Hbは少なくとも以下の特徴のうちの1つを含む。
前記左上隅サブ行列Hb1は、前記行列Hbの最初のL0行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は1つの左下三角行列または準左下三角行列であり、および/または、
前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のb-4行と最後のb-4列とのインタセクションから構成されるサブ行列は、サイズが(b-4)*(b-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目の全ての要素はいずれもZ*Z零正方行列に対応する要素である。
前記左上隅サブ行列Hb2の最後のb-4行と最初のb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下である。
そのうち、Nbは2*Kb以上であ
2)前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、そのうち、z、z、…、zは昇順に配列され、z、z、z、zは前記セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、そのうち、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しく、拡散係数Z=zおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、そのうち、RはKb/2以下である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しい。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上であり、z≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しい。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上である。
そのうち、1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである。
前記基本行列とそれに対応する拡散係数Zにより、(Nb-Mb)×Zビットの元情報ビット系列に対するLDPC符号化演算を完成し、Nb×Zビットの符号語系列を得て、そのうち、Zは拡散係数であり、Zは1以上の正整数である。
好ましくは、前記構造的LDPC符号の符号化方法は以下をさらに含む。
該左上隅サブ行列Hb3は、前記基本行列Hbの最初の2*b行と最初の3*Kb列とのインタセクションから構成され、Hb3の最後のKb行と最後のKb列とのインタセクションから構成されるサブ行列はサイズがb*bの単位行列または単位行列の巡回シフト行列である。
Hb3の最初のKb行と最後のKb列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
Hb3のKb+1列目~2*Kb列目から1つのサブ行列を構成し、該サブ行列のL1列において、各列における全ての非零正方行列に対応する要素は1つのみあり、このサブ行列の残りのKb-L1列における全ての要素(entry)は、いずれもZ*Z零正方行列に対応する要素であり、そのうち、L1は0以上Kb未満の整数である。
そのうち、Nbは3*Kb以上である。
好ましくは、Nbは2*Kb~12*Kbの1つの確定された正整数である。
好ましくは、Kbの値は2~16の間の1つの整数である。
さらに、eMMBのシーンおよびURLLCのシーンでは、異なるKbの値が用いられる。
好ましくは、基本行列Hbのg行目の非Z*Z零正方行列に対応する要素の個数は、g+1行目の非Z*Z零正方行列に対応する要素の個数以下である。そのうち、g=1,2,…,Nb-1である。
好ましくは、前記基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=1,…,Nbである。
基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=0、1,…,Nb-1である。
前記符号化モジュール702は、前記基本行列およびそれに対応する拡散係数により、(Nb-Mb)×zビットの元データからNb×zビットの符号語を得るLDPC符号化演算を完成し、そのうち、Zは拡散係数であり、Zは1以上の正整数であるように設けられる。
本発明の実施例は構造的LDPC符号の復号化装置をさらに提供し、その構造が図8に示すように、確定モジュール801と復号化モジュール802とを備える。
前記確定モジュール801は復号化に使用する基本行列を確定するように設けられ、前記基本検査行列は以下の特徴を含む。
前記基本行列は、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列のi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Nbは3*Kb以上の整数であり、Kbは4以上の整数である。i=1,…,Mbであり、j=1,…,Nbである。
前記基本行列Hbは少なくとも以下の特徴のうちの1つをさらに含む。
前記左上隅サブ行列Hb1は、前記行列Hbの最初のL0行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は1つの左下三角行列または準左下三角行列であり、および/または、
前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のb-4行と最後のb-4列とのインタセクションから構成されるサブ行列は、サイズが(b-4)*(b-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+1列目の全ての要素はいずれもZ*Z零正方行列に対応する要素である。
前記左上隅サブ行列Hb2の最後のb-4行と最初のb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下である。
そのうち、Nbは2*Kb以上であ
2)前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、そのうち、z、z、…、zは昇順に配列され、z、z、z、zは前記セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、そのうち、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しい。拡散係数Z=ziおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、そのうち、RはKb/2以下である。
≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しい。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上である。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しい。
≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上である。
そのうち、1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである。前記基本行列とそれに対応する拡散係数Zにより、(Nb-Mb)×Zビットの元情報ビット系列に対するLDPC符号化演算を完成し、Nb×Zビットの符号語系列を得て、そのうち、Zは拡散係数であり、Zは1以上の正整数である。
好ましくは、前記基本行列Hbは以下の特徴をさらに有する。
該左上隅サブ行列Hb3は、前記基本行列Hbの最初の2*b行と最初の3*Kb列とのインタセクションから構成され、Hb3の最後のKb行と最後のKb列とのインタセクションから構成されるサブ行列はサイズがb*bの単位行列または単位行列の巡回シフト行列である。
Hb3の最初のKb行と最後のKb列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素である。
Hb3のKb+1列目~2*Kb列目から1つのサブ行列を構成し、該サブ行列のL1列において、各列における全ての非零正方行列に対応する要素は1つのみあり、このサブ行列の残りのKb-L1列における全ての要素(entry)は、いずれもZ*Z零正方行列に対応する要素であり、そのうち、L1は0以上Kb未満の整数である。
そのうち、Nbは3*Kb以上である。
好ましくは、Nbは2*Kb~12*Kbの1つの確定された正整数である。
好ましくは、Kbの値は2~16の間の1つの整数である。
さらに、eMMBのシーンおよびURLLCのシーンでは、異なるKbの値が用いられる。
好ましくは、基本行列Hbのg行目の非Z*Z零正方行列に対応する要素の個数は、g+1行目の非Z*Z零正方行列に対応する要素の個数以下である。そのうち、g=1,2,…,Nb-1である。
好ましくは、前記基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=1,…,Nbである。
基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=0、1,…,Nb-1である。
前記復号化モジュール802は、前記基本行列および対応する拡散係数により、Nb×zビットの符号語から(Nb-Mb)×zビット情報データを得るLDPC復号化演算を完成し、そのうち、Zは拡散係数であり、Zは1以上の正整数であるように設けられる。
好ましくは、前記復号化モジュール802は基本行列の行更新ユニット8021と復号化判定ユニット8022とを備える。
前記基本行列の行更新ユニット8021は、階層BPアルゴリズムまたは修正されたmin-sumアルゴリズムを用いて、前記基本行列を行更新するように設けられ、前記辺情報が検査ノードから変数ノードまでの情報であることを含む。
前記復号化判定ユニット8022は、前記辺情報を用いて符号語対数尤度比を算出し、硬判定を行い、且つ、正確であるか否かを検証し、正確であると正確な符号語を出力し、正確でなければ復号化処理を続けるように設けられる。
以上をまとめると、本発明の実施例は構造的LDPC符号の符号化方法、復号化方法、符号化装置および復号化装置を提供する。符号化または復号化に使用するK0個の上下に隣接するペアを含む基本行列を確定することにより、前記基本行列およびそれに対応する拡散係数に基づき、符号化または復号化を完成し、高パイプライン速度のLDPC符号化および復号化を実現し、従来のエンコーダ/デコーダの効率が低下する問題を解決した。本発明の実施例に係る技術案は、デジタル通信システムにおけるデータ伝送の誤り訂正符号化技術に適用することができ、効率が向上したまたは複雑度が低下したLDPC符号を得て、特に超高速のシーンに適用する。
本発明の実施例は記憶媒体をさらに提供する。好ましくは、本実施例において、上記記憶媒体は、
符号化に使用する基本行列Hbを確定し、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であるステップと、前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、そのうち、Zは1以上の正整数であるステップとを実行するためのプログラムコードを記憶するように設けられる。
好ましくは、本実施例において、上記記憶媒体は、USBメモリ、読み出し専用メモリ(ROM:Read-Only Memory)、ランダムアクセスメモリ(RAM:Random Access Memory)、リムーバブルハードディスク、磁気ディスクまたは光ディスクなどの各種のプログラムコードが記憶可能な媒体を含むことができるが、これらに限定されない。
本発明の実施例は別の記憶媒体をさらに提供する。好ましくは、本実施例において、上記記憶媒体は、
復号化に使用する基本行列Hbを確定し、そのうち、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、そのうち、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、そのうち、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であるステップと、
前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、そのうち、Zは1以上の正整数であるステップとを実行するためのプログラムコードを記憶するように設けられてもよい。
好ましくは、本実施例における具体例は、上記実施例および好ましい実施形態に記載される例を参照することができ、本実施例では説明を省略する。
前記LDPC符号はV種類の符号長をサポートし、各種の符号長はいずれも1つの同じサイズMb*Nbを有する基本行列Hbを有し、且つ、各種の符号長の基本行列の非零正方行列に対応する要素は行列に現れる位置がいずれも同じ又は最大で3つが異なる(すなわち、各種の符号長の基本行列の非零正方行列に対応する要素が行列に現れる位置において、最大で3つの非零正方行列の要素の位置は異なる)。前記拡散係数Zは1組の確定されたセット{z,z,z,…,zvmax}をサポートし、各種の符号長の拡散係数は前記拡散係数セットにおける1つの要素であり、各種の符号長の非零正方行列に対応する要素の値は、いずれも最大符号長の非零正方行列に対応する要素により算出され、少なくとも、
形態1:モジュロ(mod)方法:
Figure 0007025349000030
形態2:丸め(scale+floor)方法:
Figure 0007025349000031
形態3:四捨五入(scale+round)方法:
Figure 0007025349000032
における1つを含む。
そのうち、α=Pmax/plであり、v=1,2,…,Vmaxであり、z、z、z、…、zvmaxは昇順に配列され、zvmaxは最大符号長の拡散係数であり、zはv個目の符号長の拡散係数であり、
Figure 0007025349000033
は最大符号長のi行目とj列目の非零正方行列に対応する要素であり、
Figure 0007025349000034
はv個目の符号長のi行目とj列目の非零正方行列に対応する要素である。modはモジュロ動作であり、[]はフロア動作であり、Roundは四捨五入動作である。前記拡散係数zはいずれも1つの正整数値plのn倍であり、すなわち、z=pl*nである。そのうち、前記正整数値plはサブセットPsetの1つの要素であり、そのうち、前記サブセットPsetはPmaxの全ての正整数の因数から構成されるセットにおける1つのサブセットであり、nは1つの自然数であり、Pmaxは4以上の整数である。
ここでは、1つのより具体的な例を挙げる。
前記Psetが{256、32}であり、nsetが{1、3、5}であり、すなわち、Pmax=256であり、6つの拡散係数を有し、拡散係数Zがサポートする1組の確定されたセットのサイズは6であり、すなわち、Vmax=6であり、1組の拡散係数セットが{32,96,160,256,768,1280}であり、対応する符号長セットが{128,384,640,1024,3072,5120}であり、対応する最大拡散係数zvmax=1280であり、その最大拡散係数zvmax=1280に対応する基本行列Hbが下記のとおりであることがわかった。
Figure 0007025349000035
上述した各種の符号長に対応する基本行列における非零正方行列の要素の値は、いずれも最大符号長に対応する基本行列の非零正方行列の要素により算出され、3種類の形態を含む。そのうち、形態1により算出して他の拡散係数の基本行列を得ると、2個のステップを含む。
ステップ1.前記形態1の計算式の前部分は、下記式である。
Figure 0007025349000036
そのうち、
Figure 0007025349000037
は最大拡散係数zvmax=1280(vmax=6)に対応する基本行列Hbにおけるi行目とj列目の要素であり、α=Pmax/plであるため、αは2つの数を有し、1がPsetの1つ目の要素256に対応し、対応する拡散係数が{256,768,1280}であり、8がPsetの2つ目の要素32に対応し、対応する拡散係数が{32,96,160}であり、v=1、2、3、4、5である。従って、上記ステップ1に記載の方法により他の拡散係数(1280未満)の基本行列を算出することは以下を含む。
α=8に対応する3つの拡散係数の基本行列Hb’1、Hb’2、Hb’3(拡散係数がそれぞれ{32,96,160}である)は、下記のとおりである。
Figure 0007025349000038
α=1に対応する他の2つの拡散係数の基本行列Hb’4、Hb’5(拡散係数がそれぞれ{256,768}である)は、下記のとおりである。
Figure 0007025349000039
α=1であるため、基本行列Hb’4およびHb’5はいずれも最大拡散係数の基本行列に等しい。
ステップ2.前記形態1による計算式の後部分は、下記式である。
Figure 0007025349000040
そのうち、v=1,2,3,4,5であり、
Figure 0007025349000041
は拡散係数zに対応する基本行列Hb’vにおけるi行目とj列目の要素であり、zの値は{32,96,160,256,768}である。従って、前記ステップ2の算出方法により、残りの5種類の基本行列(それぞれに対応する拡散係数が{32,96,160,256,768}である)を算出することができ、以下のとおりである。
拡散係数32に対応する基本行列Hb
Figure 0007025349000042
拡散係数96に対応する基本行列Hb
Figure 0007025349000043
拡散係数160に対応する基本行列Hb
Figure 0007025349000044
拡散係数256に対応する基本行列Hb
Figure 0007025349000045
拡散係数768に対応する基本行列Hb
Figure 0007025349000046
前記形態1の方法の有益な効果は、複数種の符号長が同じセットのデコーダを用いることができ、僅かな制御回路を増加すれば実現でき、つまり、前記形態により、LDPC符号は非常に融通の符号長の設計をサポートすることができ、従来のLDPC符号の融通の符号長が不十分である問題を解決し、並びに、LDPC符号の行列特性は大きい拡散係数から小さい拡散係数へ変化する過程における変化が大きくないことを保証でき、LDPC符号はより大きな符号長の範囲内でより高い復号性能を保持することを保証する。
例えば、上記基本行列および拡散係数の設計方法により、受信デコーダの設計において、図9に示すような例のメモリの設計形態を用いてもよく、図9に示すものは、LDPC符号の基本行列におけるある列に対応する情報記憶形態であり、外部情報およびチャネル復調情報の記憶形態を含む。nの値は最大で5であるため、図9におけるword0~word4のように、5つのwordが必要となる。Pmax=256であるため、各wordのサイズは256である。LDPC符号化に使用する拡散係数値zに対応するPl値とは、実際のデコーダにおいてそれが各wordでのサイズに対応するものであり、例えば、Plの値がPset={256、32}の32である場合、実際のデコーダにおいて、各wordで32個の位置を占めることを意味し、256に等しい場合、実際のデコーダにおいて、各wordで256個の位置を占める(Pmaxに等しいため、word全体を占める)ことを意味する。LDPC符号化に使用する拡散係数値zに対応するn値とは、実際のデコーダにおいてそれがwordでの数に対応するものであり、例えば、nの値がnset={1、3、5}における1つの場合、実際のデコーダにおいて、1つのwordのみで基本行列における1列に対応する全てのz個の情報を記憶することを意味し、nの値がnset={1、3、5}の3である場合、実際のデコーダにおいて、3つのwordで基本行列における1列に対応する全てのz個の情報を記憶することを意味し、値がnset={1、3、5}の5である場合、実際のデコーダにおいて、5つのwordで基本行列における1列に対応する全てのz個の情報を記憶することを意味する。
ここで、拡散係数がz=96であることを例としてLDPCデコーダにおける基本行列の1列に対応する全てのz=96個の情報の記憶形態を詳細に説明する。拡散係数がz=96であると、l=1に対応し、すなわち、p1=32であり、n=3であり、従って、上記により、拡散係数がz=96でLDPC符号化を行い、デコーダにおける基本行列に対応するいずれか1列z=96個の軟情報の記憶形態は、n=3つのwordを占め、各wordのサイズが32である。図10に示すように、デコーダにおける基本行列に対応するいずれか1列は、図10における1001ように、n=3つのword(word0~word2)を占める。各wordにおいてp=32個の位置を占め、さらに、占用方式は、図10における1002のように、最初から配置しはじめ、8つの位置ごとに1つの情報を配置し、すなわち、各wordにおいて、8つの位置ごとに1つの情報(前記情報は前記8つの位置における最初の位置に配置される)を配置する。3つのwordのみを占めるため、残りの2つのword(図10における1003のように)を使用しない。デコーダの設計において、Pmaxは最大のwordのサイズに対応することができ、nの最大値は基本行列のいずれか1列における拡散係数z個の情報のメモリにあるwordの数に対応することが分かった。前記基本行列に対応するいずれか1列におけるz=96個の情報は、1つの記憶ブロックに記憶されることができるため、異なるwordの間はアドレスのみで区分する必要があり、各wordの情報は統合される。
上記のように各情報をwordにおける対応位置に配置し、各wordにおいて、8つの位置ごとに1つの情報を配置し、残りの位置は、本拡散係数z=96(符号長z*Nb=96*8=768)であり、復号化する前に、先に長さが768の符号語情報をインタリーブすることができるため、前記インタリーブ方法は、前記パラメータPmax、前記パラメータplおよび前記パラメータnにおける少なくとも1つのパラメータにより前記デインターリーブ方法を確定することを含む。前記インタリーブ方法は具体的に、前記復号化すべき符号語情報系列は768個の情報を含み、Nb=8つの長さがそれぞれz=96の小データブロックを含み、各小データブロックをさらにpl=32個のサブブロックに細分化し、そのうち、まず、各サブブロックにそれぞれPmax-pl=256-32=224ダミービットを充填して長さが256の復号化すべき小データブロックを得て、前記ダミービットは符号化または復号化に用いることがなく、その後、全ての前記復号化すべき小データブロックをインタリーブし、インタリーブ方法は、ビット逆順(BRO、Bit Reverse Order)法である。前記ビット逆順インタリーブ方法は、インタリーブ前のインデックスがF0であり、F0を8ビットのバイナリビット系列に変換し、そして前記バイナリビット系列を左右に反転し、すなわち、最上位のビットと最下位のビットを互換し、2番上位のビットと2番下位のビットを互換するなど、反転後のバイナリ系列を得て、前記バイナリ系列を10進数に変換すれば値がF1であることが得られ、すなわち、インタリーブ後のインデックスはF1であり、式はY’F1=YF0として記すことができ、そのうち、Yはインタリーブ前の復号化すべき小データブロックであり、Y’はインタリーブ後の復号化すべき小データブロックである。F0およびF1の例は、F0の10進数の値が15であると、その8ビットのバイナリ系列が00001111であり、反転後の8ビットのバイナリ系列が11110000であり、それに対応する10進数がF1=240であるため、インタリーブ過程において、インタリーブ後のY’において、インデックスが240の値は、インタリーブ前のYにおけるインデックスが15の値に等しい。符号化前に前記インタリーブ方法を実行すれば、対応して、符号化後にも逆の動作(デインターリーブ方法)を行ってデインターリーブ後の符号語データ系列を得る必要があり、すなわち、Y’F0=YF1から動作する。前記デインターリーブ方法は、前記パラメータPmax、前記パラメータplおよび前記パラメータnにおける少なくとも1つのパラメータにより前記デインターリーブ方法を確定することを含む。その後、デインターリーブ後の符号語データ系列から符号語ビットを選択する。上記10進数からバイナリ系列に変換する長さはPmaxにより確定され、Pmaxは2の正整数べき乗に等しい必要があり、前記正整数べき乗とはバイナリ系列の長さである。
同様に、LDPCデコーダにおいて、上記インタリーブおよびデインターリーブ方法を用いてもよく、ビット数が予め設定された符号語に対して復号化演算を行う前に、ビット数が予め設定された符号語を先にインタリーブし、前記インタリーブ方法は上記方法と一致し、その後、LDPC復号化を行って復号化後の系列を得て、その後、復号化後の系列をデインターリーブし、そして該当するビットを選択して元情報ビット系列を得る。
以上の分析から見られるように、前記LDPC符号のデコーダ(wordのサイズが256であり、5つのwordを有するメモリ設計)は全ての拡散係数が、Pmaxの全ての正整数係数と5以下の全ての正整数とを乗算して得られた整数値を満たすことをサポートする。本実施例において、Pmaxは2の8乗であり、実際、Pmaxは2の正整数のべき乗に限られず、他の4よりも大きい任意の整数よりも大きくなってもよい。
並びに、上記基本行列および拡散係数の設計方法により、送信エンコーダの設計において、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得る。前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、そのうち、Zは1以上の正整数である。
下記形態2及び形態3において、いずれも上記符号化方法と復号化方法、インタリーブ方法とデインターリーブ方法、および関連するアルゴリズムを用いてもよい。上記符号化側インタリーブ方法をまとめると、まず、符号化前の情報ビットを均等に分割し、各セグメントの長さはplビットであり、その後、各セグメントの後ろにPmax-plビットを添加し、添加した後の各セグメントはいずれもPmaxビットを有し、続いて、各セグメントに対して長さがPmaxのバイナリビット反転BROインタリーブを行う。
上記符号化側デインターリーブ方法をまとめると、まず、符号化後の符号語ビットを均等に分割し、各セグメントの長さはPmaxビットであり、続いて、各セグメントに対して長さがPmaxのバイナリビット反転BROデインターリーブを行う。
そのうち、形態2により算出して他の拡散係数の基本行列を得ると、依然として2つのステップを含む。
ステップ1.前記形態2の計算式の一部の計算式は、下記式である。
Figure 0007025349000047
そのうち、
Figure 0007025349000048
は最大拡散係数zvmax=1280(Vmax=6)に対応する基本行列Hbにおけるi行目とj列目の要素であり、α=Pmax/plであるため、αは2つの数を有し、1がPsetの1つ目の要素256に対応し、対応する拡散係数は{256,768,1280}であり、8がPsetの2つ目の要素32に対応し、対応する拡散係数は{32,96,160}であり、v=1、2、3、4、5である。
前記形態2におけるステップ1の方法は上記形態1におけるステップ1の方法と同じであることが分かった。そのため、上記形態2のステップ1に記載の方法により他の拡散係数(1280未満)の基本行列を算出することは、以下を含む。
α=8に対応する3つの拡散係数の基本行列Hb’1、Hb’2、Hb’3(拡散係数がそれぞれ{32,96,160}である)は、下記のとおりである。
Figure 0007025349000049
α=1に対応する別の2つの拡散係数の基本行列Hb’4、Hb’5(拡散係数がそれぞれ{256,768}である)は、下記のとおりである。
Figure 0007025349000050
α=1であるため、基本行列Hb’4及びHb’5はいずれも最大拡散係数の基本行列に等しい。
ステップ2.前記形態2による計算式の残りの計算式は、下記式である。
Figure 0007025349000051
そのうち、v=1,2,3,4,5であり、
Figure 0007025349000052
は拡散係数zに対応する基本行列Hb’vにおけるi行目とj列目の要素であり、zの値は{32,96,160,256,768}であり、zvmax=1280である。従って、前記ステップ2の算出方法により、残りの5種類の基本行列(それぞれに対応する拡散係数が{32,96,160,256,768}である)を算出することができ、以下のとおりである。
拡散係数32に対応する基本行列Hb
Figure 0007025349000053
拡散係数96に対応する基本行列Hb
Figure 0007025349000054
拡散係数160に対応する基本行列Hb
Figure 0007025349000055
拡散係数256に対応する基本行列Hb
Figure 0007025349000056
拡散係数768に対応する基本行列Hb
Figure 0007025349000057
前記形態2の方法の有益な効果は、複数種の符号長が同じセットのデコーダを用いることができ、僅かな制御回路を増加すれば実現でき、つまり、前記形態により、LDPC符号は非常に融通の符号長の設計をサポートすることができ、従来のLDPC符号の融通の符号長が不十分である問題を解決し、並びに、LDPC符号の行列特性は大きい拡散係数から小さい拡散係数へ変化する過程における変化が大きくないことを保証でき、LDPC符号はより大きな符号長の範囲内でより高い復号性能を保持することを保証する。
同様に、形態3により算出して他の拡散係数の基本行列を得ると、依然として2個のステップを含む。
ステップ1.前記形態3の計算式の一部の計算式は、下記式である。
Figure 0007025349000058
そのうち、
Figure 0007025349000059
は最大拡散係数zvmax=1280(Vmax=6)に対応する基本行列Hbにおけるi行目とj列目の要素であり、α=Pmax/plであるため、αは2つの数を有し、1がPsetの1つ目の要素256に対応し、対応する拡散係数が{256,768,1280}であり、8がPsetの2つ目の要素32に対応し、対応する拡散係数が{32,96,160}であり、v=1、2、3、4、5である。
前記形態3におけるステップ1の方法は上記形態1におけるステップ1の方法と同じであることが分かった。従って、上記形態3のステップ1に記載の方法により他の拡散係数(1280未満)の基本行列Hb’1、Hb’2、Hb’3、Hb’4およびHb’5を算出することは、上記形態1と形態2におけるステップ1で算出したものに等しく、ここでは説明を省略する。
ステップ2.前記形態1による計算式の残りの計算式は、
Figure 0007025349000060
である。
そのうち、v=1,2,3,4,5であり、
Figure 0007025349000061
は拡散係数zに対応する基本行列Hb’vにおけるi行目とj列目の要素であり、zの値は{32,96,160,256,768}であり、zvmax=1280である。従って、前記ステップ2の算出方法により、残りの5種類の基本行列(それぞれに対応する拡散係数が{32,96,160,256,768}である)を算出することができ、次のとおりである。
拡散係数32に対応する基本行列Hb
Figure 0007025349000062
拡散係数96に対応する基本行列Hb
Figure 0007025349000063
拡散係数160に対応する基本行列Hb
Figure 0007025349000064
拡散係数256に対応する基本行列Hb
Figure 0007025349000065
拡散係数768に対応する基本行列Hb
Figure 0007025349000066
前記形態3の方法の有益な効果は、複数種の符号長が同じセットのデコーダを用いることができ、僅かな制御回路を増加すれば実現でき、つまり、前記形態により、LDPC符号は非常に融通の符号長の設計をサポートすることができ、従来のLDPC符号の融通の符号長が不十分である問題を解決し、並びに、LDPC符号の行列特性は大きい拡散係数から小さい拡散係数へ変化する過程における変化が大きくないことを保証でき、LDPC符号はより大きな符号長の範囲内でより高い復号性能を保持することを保証する。
好ましくは、本実施例における具体例は上記実施例および好ましい実施形態に記載された例を参考することでき、本実施例では説明を省略する。
前記LDPC符号はV種類の符号長をサポートし、各種の符号長はいずれも1つの同じサイズMb*Nbを有する基本行列Hbに対応し、且つ、各種の符号長の基本行列の非零正方行列に対応する要素は行列に現れる位置がいずれも同じ又は最大で3つが異なる。前記拡散係数Zは1組の確定されたセット{z1,z2,z3,…,zvmax}をサポートし、各種の符号長の拡散係数は前記拡散係数セットにおける1つの要素であり、各種の符号長の非零正方行列に対応する要素の値はいずれも最大符号長の非零正方行列に対応する要素により算出され、すなわち、下記式である。
Figure 0007025349000067
そのうち、α=Pmax/plであり、v=1,2,…,Vmaxであり、z、z、z、…、zvmaxは昇順に配列され、zvmaxは最大符号長の拡散係数であり、zvはv個目の符号長の拡散係数であり、
Figure 0007025349000068
は最大符号長のi行目とj列目の非負-1要素であり、
Figure 0007025349000069
はv個目の符号長ののi行目とj列目の非負-1要素である。modはモジュロ動作であり、[]はフロア動作であり、Roundは四捨五入動作である。前記拡散係数zvはいずれも1つの正整数値plのn倍であり、すなわち、z=pl*nである。そのうち、前記正整数値plはサブセットPsetの1つの要素であり、そのうち、前記サブセットPsetはPmaxの全ての正整数の因数から構成されるセットにおける1つのサブセットであり、nは1つの自然数であり、Pmaxは4以上の整数である。
ここでは、1つのより具体的な例を挙げる。
前記Psetは{10、20、40、80、120、240}であり、すなわち、Pmax=240であり、nの値は2であり、6つの拡散係数を有し、拡散係数Zがサポートする1組の確定されたセットのサイズは6であり、すなわち、Vmax=6であり、1組の拡散係数セットが{20,40,80,160,240,480}であり、対応する符号長セットが{100,200,400,800,1200,2400}であり、対応する最大拡散係数zvmax=480であり、その最大拡散係数zvmax=480に対応する基本行列Hbは、下記のとおりである。
Figure 0007025349000070
そのうち、基本行列Hbの次元は5行10列であり、基本行列の行数(または検査列数)がMb=5であり、基本行列の総列数Nb=10であり、基本行列の組織列数Kb=Nb-Mb=10-5=5であり、すなわち、基本行列の最初のKb=5列から構成されるサブ行列は組織ビットに対応するMb×KbのブロックAであり、基本行列の最後のMb=5列から構成されるサブ行列は検査ビットに対応するMb×MbのブロックBであり、基本行列Hbは[A,B]として記載できることがわかった。他の符号長{20,40,80,160,240}での各基本行列も全てそれぞれ上記と同じ行列パラメータ(Kb,Nb,Mb)であり、ここでは説明を省略する。
各種の符号長{100,200,400,800,1200,2400}の拡散係数は前記拡散係数セット{20,40,80,160,240,480}における1つの要素であり、各種の符号長の非零正方行列に対応する要素の値はいずれも最大符号長2400の非零正方行列に対応する要素により算出され、すなわち、下記式である。
Figure 0007025349000071
そのうち、α=Pmax/plであり、plはサブセットPset={10,20,40,80,120,240}の1つの要素であり、すなわち、拡散係数セット{20,40,80,160,240,480}と一対一で対応し、拡散係数セットにおけるi0個目の要素はサブセットPsetにおけるi0個目の要素×n=2、i0=1、2、…、6に等しい。そのため、拡散係数セット{20,40,80,160,240,480}における任意の拡散係数に対応するαの値は{24、12、6、3、2、1}である。さらに、上記式により、対応する符号長が{100,200,400,800,1200}(対応する拡散係数セットが{20,40,80,160,240}である)の基本行列はそれぞれ以下のとおりであることがわかった。
拡散係数20に対応する基本行列Hb
Figure 0007025349000072
拡散係数40に対応する基本行列Hb
Figure 0007025349000073
拡散係数80に対応する基本行列Hb
Figure 0007025349000074
拡散係数160に対応する基本行列Hb
Figure 0007025349000075
拡散係数240に対応する基本行列Hb
Figure 0007025349000076
あるいは、上記全ての基本行列の間で最大で3つの非零正方行列に対応する要素が異なり、以下を例とし、6つの基本行列{Hb,Hb,Hb,Hb,Hb,Hb}の2つの間で最大で3つの非零正方行列に対応する要素が異なることは見られ、その有益な効果は、基本行列が統一の基本行列特性(例えば、度分布など特性)を保留することが保証できるとともに、新しい行列特性を増加させることができ、基本行列が各符号長で比較的優れる性能を得ることができるように保証する。
拡散係数20に対応する基本行列Hb
Figure 0007025349000077
拡散係数40に対応する基本行列Hb
Figure 0007025349000078
拡散係数80に対応する基本行列Hb
Figure 0007025349000079
拡散係数160に対応する基本行列Hb
Figure 0007025349000080
拡散係数240に対応する基本行列Hb
Figure 0007025349000081
当業者であれば、上記本発明の各モジュールまたは各ステップは通用の計算装置により実現でき、それらは単一の計算装置に集中してもよく、または複数の計算装置からなるネットワークに分布されてもよいことが明らかである。好ましくは、それらは計算装置が実行可能なプログラムコードにより実現できるため、それらを記憶装置に記憶して計算装置により実行することができ、且つ、ある場合、ここでの順序と異なる順序で示されるまたは記載されるステップを実行することができ、またはそれらを各集積回路モジュールにそれぞれ作製し、またはそれらにおける複数のモジュールまたはステップを単一の集積回路モジュールに作製して実現する。このように、本発明はいずれかの特定のハードウェアとソフトウェアとの組み合わせに限定されない。
上記は本発明の好ましい実施例に過ぎず、本発明を限定するものではなく、当業者にとって、本発明は各種の変更と変化が可能である。本発明の精神および原則内にある全ての修正、均等置換、改良などは、いずれも本発明の保護範囲内に含まれるべきである。
本発明の実施例に係る形態は、LDPC符号化と復号化過程に用いることができ、適当な基本行列を設計することにより、前記基本行列およびそれに対応する拡散係数に基づき、符号化または復号化を完成し、超高速度のLDPC符号化と復号化を実現し、Turbo符号に近い符号/復号性能を実現し、従来のLDPCエンコーダ/デコーダのインクリメンタルリダンダンシーHARQをサポートできないおよび融通性が不十分である問題を解決した。

Claims (22)

  1. 構造的低密度パリティ検査符号LDPCの符号化方法であって、
    符号化に使用する基本行列Hbを確定し、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、
    前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であることと、
    前記左上隅サブ行列Hb1は、前記行列Hbの最初の4行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非零Z*Z正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は、1つの左下三角行列または準左下三角行列であり、
    前記Hb1の左下三角行列とは、右上三角位置における全ての要素がZ*Z零正方行列に対応する要素であり、対角線位置における全ての要素がZ*Z単位行列に対応する要素であることを特徴とする正方行列を意味し、
    前記Hb1の準左下三角行列は、1つのL×L右上角サブ正方行列を含み、且つ、前記右上角サブ正方行列が1つの左下三角行列であることを特徴とする4×4の正方行列であり、ここで、前記右上角サブ正方行列は、Hb1の最初のL行と最後のL列とのインタセクションから構成され、L=2または3であり、
    前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、Zは1以上の正整数であることと、
    を含む、構造的低密度パリティ検査符号LDPCの符号化方法。
  2. 前記元情報ビット系列は、(Nb-Mb)×Zビットの系列であり、前記ビット符号語系列はNb×Zビットである、請求項1に記載の方法。
  3. 前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のKb-4行と最後のKb-4列とのインタセクションから構成されるサブ行列は、サイズが(Kb-4)*(Kb-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のKb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、
    左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+列目の全ての要素はいずれもZ*Z零正方行列に対応する要素であり、
    前記左上隅サブ行列Hb2の最後のKb-4行と最初のKb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下であり、
    Nbは*Kb以上である、請求項1に記載の方法。
  4. 前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、z、z、…、zは昇順に配列され、z、z、z、zは前記確定値セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しく、拡散係数Z=zおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、RはKb/2以下であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上であり、
    1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである、請求項1~請求項3のいずれか一項に記載の方法。
  5. 前記基本行列Hbは、左上隅サブ行列Hb3をさらに含み、
    該左上隅サブ行列Hb3は、前記基本行列Hbの最初の2*Kb行と最初の3*Kb列とのインタセクションから構成され、Hb3の最後のKb行と最後のKb列とのインタセクションから構成されるサブ行列はサイズがKb*Kbの単位行列であり、前記Hb3の単位行列は1つのKb×Kb行列であり、且つ、対角線位置における全ての要素がZ*Z単位行列に対応する要素であり、非対角線位置における全ての要素がZ*Z零行列に対応する要素であり、
    Hb3の最初のKb行と最後のKb列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、
    Hb3の最後のKb行、Kb+1列目~2*Kb列目から1つのサブ行列を構成し、該サブ行列のL1列において、各列における全ての非零正方行列に対応する要素は1つのみあり、このサブ行列の残りのKb-L1列における全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、L1は0以上Kb未満の整数であり、
    Nbは3*Kb以上である、請求項3に記載の方法。
  6. Nbは、区間[*Kb,12*Kb]から値をとる1つの正整数である、請求項1~請求項3のいずれか一項に記載の方法。
  7. エンハンスメント型モバイルブロードバンドeMMBのシーンおよび超高信頼低遅延URLLCのシーンでは、異なるKbの値が用いられる、請求項1に記載の方法。
  8. 前記基本行列Hbのg行目の非Z*Z零正方行列に対応する要素の個数は、g+1行目の非Z*Z零正方行列に対応する要素の個数以下であり、g=1,2,…,Nb-1である、請求項1~請求項3のいずれか一項に記載の方法。
  9. 前記基本行列Hbのj列目における全ての非零正方行列に対応する要素はLj個であり、上から下へ1つ目の要素は0であり、Ljは1以上の正整数であり、j=1,…,Nbである、請求項1~3のいずれか一項に記載の方法。
  10. 構造的低密度パリティ検査符号LDPCの復号化方法であって、
    復号化に使用する基本行列Hbを確定し、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、
    前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であることと、
    前記左上隅サブ行列Hb1は、前記行列Hbの最初の4行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非零Z*Z正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は、1つの左下三角行列または準左下三角行列であり、
    前記Hb1の左下三角行列とは、右上三角位置における全ての要素がZ*Z零正方行列に対応する要素であり、対角線位置における全ての要素がZ*Z単位行列に対応する要素であることを特徴とする正方行列を意味し、
    前記Hb1の準左下三角行列は、1つのL×L右上角サブ正方行列を含み、且つ、前記右上角サブ正方行列が1つの左下三角行列であることを特徴とする4×4の正方行列であり、ここで、前記右上角サブ正方行列は、Hb1の最初のL行と最後のL列とのインタセクションから構成され、L=2または3であり、
    前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、Zは1以上の正整数であることと、
    を含む、構造的低密度パリティ検査符号LDPCの復号化方法。
  11. 前記元情報ビット系列は(Nb-Mb)×Zビットの系列であり、予め設定された前記ビット数はNb×Zビットである、請求項10に記載の方法。
  12. 前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のKb-4行と最後のKb-4列とのインタセクションはサイズが(Kb-4)*(Kb-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のKb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、
    左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+列目の部分には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+列目の部分の全ての要素はいずれもZ*Z零正方行列に対応する要素であり、
    前記左上隅サブ行列Hb2の最後のKb-4行と最初のKb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下であり、
    Nbは*Kb以上である、請求項10に記載の方法。
  13. 前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、z、z、…、zは昇順に配列され、z、z、z、zは前記確定値セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しく、拡散係数Z=zおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号は、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、RはKb/2以下であり、
    ≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上であり、
    ≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上であり、
    1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである、請求項10~請求項12のいずれか一項に記載の方法。
  14. 構造的低密度パリティ検査符号LDPCの符号化装置であって、確定モジュールと符号化モジュールとを備え、
    前記確定モジュールは符号化に使用する基本行列Hbを確定するように設けられ、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、
    前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であり、
    前記左上隅サブ行列Hb1は、前記行列Hbの最初の4行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非零Z*Z正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は、1つの左下三角行列または準左下三角行列であり、
    前記Hb1の左下三角行列とは、右上三角位置における全ての要素がZ*Z零正方行列に対応する要素であり、対角線位置における全ての要素がZ*Z単位行列に対応する要素であることを特徴とする正方行列を意味し、
    前記Hb1の準左下三角行列は、1つのL×L右上角サブ正方行列を含み、且つ、前記右上角サブ正方行列が1つの左下三角行列であることを特徴とする4×4の正方行列であり、ここで、前記右上角サブ正方行列は、Hb1の最初のL行と最後のL列とのインタセクションから構成され、L=2または3であり、
    前記符号化モジュールは、前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、Zは1以上の正整数であるように設けられる、構造的低密度パリティ検査符号LDPCの符号化装置。
  15. 前記元情報ビット系列は、(Nb-Mb)×Zビットの系列であり、前記ビット符号語系列はNb×Zビットである、請求項14に記載の装置。
  16. 前記左上隅サブ行列Hb2は前記行列Hbの最初のKb行と最初の2*Kb列とのインタセクションから構成され、前記左上隅サブ行列Hb2の最初の4行と最後のKb-4列とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、前記左上隅サブ行列Hb2の最後のKb-4行と最後のKb-4列とのインタセクションから構成されるサブ行列は、サイズが(Kb-4)*(Kb-4)の左下三角行列または準左下三角行列であり、前記左上隅サブ行列Hb2の最後のKb-4行とKb+1列目~Kb+3列目とのインタセクションから構成されるサブ行列の全ての要素は、いずれもZ*Z零正方行列に対応する要素であり、
    左上隅サブ行列Hb1の最後の4列の正方行列が1つの下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+列目には非Z*Z零正方行列に対応する要素が1つのみあり、左上隅サブ行列Hb1の最後の4列の正方行列が1つの準下三角行列であると、前記左上隅サブ行列Hb2の最後のKb-4行、Kb+列目の全ての要素はいずれもZ*Z零正方行列に対応する要素であり、
    前記左上隅サブ行列Hb2の最後のKb-4行と最初のKb列とのインタセクションから1つのサブ行列を構成し、このサブ行列において、各行の非Z*Z零正方行列に対応する要素の個数はいずれもKb-2以下であり、
    Nbは*Kb以上である、請求項14に記載の装置。
  17. 前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、z、z、…、zは昇順に配列され、z、z、z、zは前記確定値セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数であり、
    ≦Z=z<zである場合、拡散係数Z=ziおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しく、拡散係数Z=ziおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、RはKb/2以下であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上であり、
    1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである、請求項14~請求項16のいずれか一項に記載の装置。
  18. 構造的低密度パリティ検査符号LDPCの復号化装置であって、確定モジュールと復号化モジュールとを備え、
    前記確定モジュールは復号化に使用する基本行列Hbを確定するように設けられ、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Nbは3*Kb以上の整数であり、Kbは4以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、
    前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であり、
    前記左上隅サブ行列Hb1は、前記行列Hbの最初の4行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非零Z*Z正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は、1つの左下三角行列または準左下三角行列であり、
    前記Hb1の左下三角行列とは、右上三角位置における全ての要素がZ*Z零正方行列に対応する要素であり、対角線位置における全ての要素がZ*Z単位行列に対応する要素であることを特徴とする正方行列を意味し、
    前記Hb1の準左下三角行列は、1つのL×L右上角サブ正方行列を含み、且つ、前記右上角サブ正方行列が1つの左下三角行列であることを特徴とする4×4の正方行列であり、ここで、前記右上角サブ正方行列は、Hb1の最初のL行と最後のL列とのインタセクションから構成され、L=2または3であり、
    前記復号化モジュールは、前記基本行列および前記基本行列Hbに対応する拡散係数Zにより、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、Zは1以上の正整数であるように設けられる、構造的低密度パリティ検査符号LDPCの復号化装置。
  19. 前記元情報ビット系列は(Nb-Mb)×Zビットの系列であり、予め設定された前記ビット数はNb×Zビットである、請求項18に記載の装置。
  20. 前記拡散係数Zは1組の確定値セット{z,z,z…,z}をサポートし、z、z、…、zは昇順に配列され、z、z、z、zは前記確定値セットにおける4つの確定値の拡散係数でz≦z≦z≦z≦z≦zを満たし、V、r、s、t、uは下付き文字で1≦r≦s≦t≦u≦Vであり、Vは2以上の整数であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットにおいて、少なくとも1つのビットのgirthは4に等しく、拡散係数Z=zおよび最も重いR列を削除した基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、RはKb/2以下であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも6に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい全ての組織ビットのgirthはいずれも6に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは8以上であり、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい符号語ビットのgirthはいずれも8に等しく、
    ≦Z=z<zである場合、拡散係数Z=zおよび基本行列Hbに対応するLDPC符号について、各LDPC符号語における全ての重量が2よりも大きい組織ビットのgirthはいずれも8に等しく、各LDPC符号語における少なくとも1つの重量が2よりも大きい検査ビットのgirthは10以上であり、
    1つのLDPC符号語の各符号語ビットはパリティ検査行列の各列に対応し、前記パリティ検査行列は、対応する拡散係数Z=ziおよび基本行列Hbにより確定され、各符号語ビットの重量とは、対応する列における非ゼロ要素の個数を意味し、且つ、i=1,2,…,Vである、請求項18または19に記載の装置。
  21. エンコーダであって、メモリとプロセッサとを備え、
    前記メモリは、符号化に使用する基本行列Hbを確定するように設けられ、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Kbは4以上の整数であり、Nbは3*Kb以上の整数であり、i=1,…,Mbであり、j=1,…,Nbであり、
    前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であり、
    前記左上隅サブ行列Hb1は、前記行列Hbの最初の4行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非零Z*Z正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は、1つの左下三角行列または準左下三角行列であり、
    前記Hb1の左下三角行列とは、右上三角位置における全ての要素がZ*Z零正方行列に対応する要素であり、対角線位置における全ての要素がZ*Z単位行列に対応する要素であることを特徴とする正方行列を意味し、
    前記Hb1の準左下三角行列は、1つのL×L右上角サブ正方行列を含み、且つ、前記右上角サブ正方行列が1つの左下三角行列であることを特徴とする4×4の正方行列であり、ここで、前記右上角サブ正方行列は、Hb1の最初のL行と最後のL列とのインタセクションから構成され、L=2または3であり、
    前記プロセッサは、前記基本行列および前記基本行列Hbに対応する拡散係数Zを確定し、元情報ビット系列に対してLDPC符号化演算を行い、符号語系列を得て、Zは1以上の正整数であるように設けられる、エンコーダ。
  22. デコーダであって、記憶モジュールとプロセッサとを備え、
    前記記憶モジュールは、復号化に使用する基本行列Hbを記憶するように設けられ、前記基本行列Hbは、組織ビットに対応するMb×KbのブロックAと、検査ビットに対応するMb×MbのブロックBとを含み、すなわち、Hb=[A,B]であり、hbijは前記基本行列Hbのi行目とj列目の要素を示し、iは前記基本行列の行インデックスであり、jは前記基本行列の列インデックスであり、Kb=Nb-Mbであり、Nbは3*Kb以上の整数であり、Kbは4以上の整数であり、i=1、…、Mbであり、j=1,…,Nbであり、前記基本行列Hbは1つまたは複数のサブ行列を含み、前記サブ行列は左上隅サブ行列Hb1と左上隅サブ行列Hb2とを含み、前記左上隅サブ行列Hb1および左上隅サブ行列Hb2の行数と列数はいずれも前記基本行列Hbの行数と列数よりも小さく、且つ、前記左上隅サブ行列Hb1は左上隅サブ行列Hb2の左上隅サブ行列であり、
    前記左上隅サブ行列Hb1は、前記行列Hbの最初の4行と最初のKb+4列とのインタセクションから構成され、前記左上隅サブ行列Hb1の各行の非零Z*Z正方行列に対応する要素の個数はいずれもKb+2以下Kb-2以上であり、前記左上隅サブ行列Hb1の最後の4列の正方行列は、1つの左下三角行列または準左下三角行列であり、
    前記Hb1の左下三角行列とは、右上三角位置における全ての要素がZ*Z零正方行列に対応する要素であり、対角線位置における全ての要素がZ*Z単位行列に対応する要素であることを特徴とする正方行列を意味し、
    前記Hb1の準左下三角行列は、1つのL×L右上角サブ正方行列を含み、且つ、前記右上角サブ正方行列が1つの左下三角行列であることを特徴とする4×4の正方行列であり、ここで、前記右上角サブ正方行列は、Hb1の最初のL行と最後のL列とのインタセクションから構成され、L=2または3であり、
    前記プロセッサは、前記基本行列および前記基本行列Hbに対応する拡散係数Zを確定し、且つ、ビット数が予め設定された符号語に対して復号化演算を行い、元情報ビット系列を得て、Zは1以上の正整数であるように設けられる、デコーダ。
JP2018560038A 2016-05-13 2017-01-06 構造的ldpcの符号化、復号化方法および装置 Active JP7025349B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022019134A JP7372369B2 (ja) 2016-05-13 2022-02-09 構造的ldpcの符号化、復号化方法および装置

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201610319410.1 2016-05-13
CN201610319410 2016-05-13
CN201610884876.6 2016-10-10
CN201610884876.6A CN107370490B (zh) 2016-05-13 2016-10-10 结构化ldpc的编码、译码方法及装置
PCT/CN2017/070488 WO2017193614A1 (zh) 2016-05-13 2017-01-06 结构化ldpc的编码、译码方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022019134A Division JP7372369B2 (ja) 2016-05-13 2022-02-09 構造的ldpcの符号化、復号化方法および装置

Publications (2)

Publication Number Publication Date
JP2019517209A JP2019517209A (ja) 2019-06-20
JP7025349B2 true JP7025349B2 (ja) 2022-02-24

Family

ID=60304554

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2018560038A Active JP7025349B2 (ja) 2016-05-13 2017-01-06 構造的ldpcの符号化、復号化方法および装置
JP2022019134A Active JP7372369B2 (ja) 2016-05-13 2022-02-09 構造的ldpcの符号化、復号化方法および装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022019134A Active JP7372369B2 (ja) 2016-05-13 2022-02-09 構造的ldpcの符号化、復号化方法および装置

Country Status (5)

Country Link
US (2) US10892778B2 (ja)
EP (2) EP4231532A3 (ja)
JP (2) JP7025349B2 (ja)
KR (2) KR102229233B1 (ja)
CN (2) CN107370490B (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10484010B2 (en) * 2016-12-20 2019-11-19 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system
WO2018126914A1 (zh) * 2017-01-09 2018-07-12 中兴通讯股份有限公司 准循环低密度奇偶校验码的编码方法及装置、存储介质
CN108365911B (zh) * 2017-01-26 2021-07-20 华为技术有限公司 一种信息的编码方法及设备
CN108809506B (zh) * 2017-05-05 2020-09-04 华为技术有限公司 一种编码方法及装置
CN109951250B (zh) * 2017-12-21 2021-01-08 华为技术有限公司 通信信号的ldpc编码方法和装置
CN110034845B (zh) * 2018-01-12 2021-09-14 华为技术有限公司 信息处理方法和无线传输设备
CN108880563A (zh) * 2018-06-14 2018-11-23 东南大学 一种ldpc码的改进编码方法及系统
US11497053B2 (en) * 2018-06-20 2022-11-08 Qualcomm Incorporated Collision management
US11177830B2 (en) 2019-09-10 2021-11-16 Samsung Electronics Co., Ltd. Method and apparatus for data decoding in communication or broadcasting system
CN111162797B (zh) * 2020-01-21 2023-05-30 华侨大学 一种速率兼容的5g ldpc码的编码装置及编码方法
JP2021141369A (ja) 2020-03-02 2021-09-16 キオクシア株式会社 メモリシステム
EP4329202A4 (en) 2021-05-25 2024-10-16 Samsung Electronics Co Ltd SELF-CORRECTING MIN-SUM DECODER BASED ON NEURAL NETWORK AND ELECTRONIC DEVICE COMPRISING SAME
KR20220159071A (ko) * 2021-05-25 2022-12-02 삼성전자주식회사 신경망 자기 정정 최소합 복호기 및 이를 포함하는 전자 장치
CN114421972B (zh) * 2022-01-27 2022-11-22 石家庄市经纬度科技有限公司 一种多进制ldpc码译码方法
CN114785353A (zh) * 2022-03-24 2022-07-22 山东岱微电子有限公司 低密度奇偶校验码译码方法、系统、设备、装置及介质
WO2024152363A1 (zh) * 2023-01-20 2024-07-25 华为技术有限公司 一种基于ldpc码的通信方法和通信装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007142476A3 (en) 2006-06-07 2008-03-06 Lg Electronics Inc Method of encoding/decoding using low density check code matrix
US20080155385A1 (en) 2006-12-04 2008-06-26 Samsung Electronics Co., Ltd. Apparatus and method to encode/decode block low density parity check codes in a communication system
WO2009060627A1 (ja) 2007-11-09 2009-05-14 Panasonic Corporation 符号化方法および送信装置
US20100257425A1 (en) 2009-04-06 2010-10-07 Nec Laboratories America, Inc. Systems and methods for constructing the base matrix of quasi-cyclic low-density parity-check codes
US20100275089A1 (en) 2009-04-27 2010-10-28 The Hong Kong University Of Science And Technology Iterative decoding of punctured low-density parity check codes by selection of decoding matrices
CN103944586A (zh) 2014-04-10 2014-07-23 重庆邮电大学 一种码率兼容qc-ldpc码的构造方法
WO2015123979A1 (zh) 2014-02-21 2015-08-27 中兴通讯股份有限公司 结构化ldpc的编码方法、译码方法、编码装置和译码装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996746B2 (en) * 2004-10-12 2011-08-09 Nortel Networks Limited Structured low-density parity-check (LDPC) code
CN100550655C (zh) 2004-11-04 2009-10-14 中兴通讯股份有限公司 一种低密度奇偶校验码的编码器/译码器及其生成方法
US7343548B2 (en) * 2004-12-15 2008-03-11 Motorola, Inc. Method and apparatus for encoding and decoding data
CN100486150C (zh) * 2005-01-23 2009-05-06 中兴通讯股份有限公司 基于非正则低密度奇偶校验码的编译码器及其生成方法
US8464120B2 (en) * 2006-10-18 2013-06-11 Panasonic Corporation Method and system for data transmission in a multiple input multiple output (MIMO) system including unbalanced lifting of a parity check matrix prior to encoding input data streams
KR101433375B1 (ko) 2006-12-04 2014-08-29 삼성전자주식회사 통신 시스템에서 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
CN101217337B (zh) * 2007-01-01 2013-01-23 中兴通讯股份有限公司 一种支持递增冗余混合自动重传的低密度奇偶校验码编码装置和方法
CN101325474B (zh) * 2007-06-12 2012-05-09 中兴通讯股份有限公司 Ldpc码的混合自动请求重传的信道编码及调制映射方法
CN101459430B (zh) * 2007-12-14 2010-12-08 中兴通讯股份有限公司 低密度生成矩阵码的编码方法及装置
KR101445080B1 (ko) * 2008-02-12 2014-09-29 삼성전자 주식회사 하이브리드 자동 반복 요구 방식을 사용하는 통신 시스템에서 신호 송신 방법 및 장치
US8443270B2 (en) * 2008-12-09 2013-05-14 Entropic Communications, Inc. Multiple input hardware reuse using LDPC codes
US8392789B2 (en) * 2009-07-28 2013-03-05 Texas Instruments Incorporated Method and system for decoding low density parity check codes
US8196012B2 (en) * 2009-10-05 2012-06-05 The Hong Kong Polytechnic University Method and system for encoding and decoding low-density-parity-check (LDPC) codes
TWI419481B (zh) * 2009-12-31 2013-12-11 Nat Univ Tsing Hua 低密度奇偶檢查碼編解碼器及其方法
CN102412842B (zh) * 2010-09-25 2016-06-15 中兴通讯股份有限公司 一种低密度奇偶校验码的编码方法及装置
US8627166B2 (en) * 2011-03-16 2014-01-07 Samsung Electronics Co., Ltd. LDPC code family for millimeter-wave band communications in a wireless network
CN103236860B (zh) * 2013-05-02 2016-09-07 广州海格通信集团股份有限公司 用于生成ldpc码校验矩阵的方法、及该ldpc码编码方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007142476A3 (en) 2006-06-07 2008-03-06 Lg Electronics Inc Method of encoding/decoding using low density check code matrix
US20080155385A1 (en) 2006-12-04 2008-06-26 Samsung Electronics Co., Ltd. Apparatus and method to encode/decode block low density parity check codes in a communication system
WO2009060627A1 (ja) 2007-11-09 2009-05-14 Panasonic Corporation 符号化方法および送信装置
US20100257425A1 (en) 2009-04-06 2010-10-07 Nec Laboratories America, Inc. Systems and methods for constructing the base matrix of quasi-cyclic low-density parity-check codes
US20100275089A1 (en) 2009-04-27 2010-10-28 The Hong Kong University Of Science And Technology Iterative decoding of punctured low-density parity check codes by selection of decoding matrices
WO2015123979A1 (zh) 2014-02-21 2015-08-27 中兴通讯股份有限公司 结构化ldpc的编码方法、译码方法、编码装置和译码装置
CN103944586A (zh) 2014-04-10 2014-07-23 重庆邮电大学 一种码率兼容qc-ldpc码的构造方法

Also Published As

Publication number Publication date
KR20190008335A (ko) 2019-01-23
CN107370490B (zh) 2023-07-14
EP4231532A3 (en) 2023-08-30
JP7372369B2 (ja) 2023-10-31
KR20210032007A (ko) 2021-03-23
CN116827357A (zh) 2023-09-29
KR102347823B1 (ko) 2022-01-05
EP3457575A4 (en) 2019-12-04
EP3457575B1 (en) 2023-08-23
CN107370490A (zh) 2017-11-21
EP3457575C0 (en) 2023-08-23
US20210091790A1 (en) 2021-03-25
US10892778B2 (en) 2021-01-12
KR102229233B1 (ko) 2021-03-22
JP2019517209A (ja) 2019-06-20
EP4231532A2 (en) 2023-08-23
US20200244287A1 (en) 2020-07-30
EP3457575A1 (en) 2019-03-20
US11323134B2 (en) 2022-05-03
JP2022058949A (ja) 2022-04-12

Similar Documents

Publication Publication Date Title
JP7025349B2 (ja) 構造的ldpcの符号化、復号化方法および装置
CN104868925B (zh) 结构化ldpc码的编码方法、译码方法、编码装置和译码装置
JP4062435B2 (ja) 誤り訂正符号復号装置
JP4168055B2 (ja) 低密度パリティ検査符号の生成方法及び装置
US8572463B2 (en) Quasi-cyclic LDPC encoding and decoding for non-integer multiples of circulant size
EP1850484A1 (en) Basic matrix based on irregular ldcp, codec and generation method thereof
KR100941680B1 (ko) 준순환 저밀도 패리티 검사 부호의 생성 방법 및 장치
JP6990259B2 (ja) 疑似サイクリック低密度パリティチェックの設計方法および装置
CN114499541A (zh) 分层译码方法、装置、终端设备及介质
WO2017193614A1 (zh) 结构化ldpc的编码、译码方法及装置
JP5789014B2 (ja) 符号化方法、符号化器、復号器
KR20150034668A (ko) 송신 장치 및 그의 신호 처리 방법
Xu et al. Low-Density Parity Check (LDPC) Codes
Wenjun et al. A 223Mbps FPGA implementation of (10240, 5120) irregular structured low density parity check decoder
KR100678521B1 (ko) 비균일 저밀도 패리티 검사 부호의 부호화 장치 및 방법
JP2009177649A (ja) 符号化方法、符号化器、復号器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200218

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200515

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210202

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210428

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220210

R150 Certificate of patent or registration of utility model

Ref document number: 7025349

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150