JP7091375B2 - エンコーディング方法および装置、コンピュータ記憶媒体 - Google Patents

エンコーディング方法および装置、コンピュータ記憶媒体 Download PDF

Info

Publication number
JP7091375B2
JP7091375B2 JP2019572228A JP2019572228A JP7091375B2 JP 7091375 B2 JP7091375 B2 JP 7091375B2 JP 2019572228 A JP2019572228 A JP 2019572228A JP 2019572228 A JP2019572228 A JP 2019572228A JP 7091375 B2 JP7091375 B2 JP 7091375B2
Authority
JP
Japan
Prior art keywords
matrix
circulation
index matrix
determined
adopted
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
JP2019572228A
Other languages
English (en)
Other versions
JP2020527880A (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.)
Datang Mobile Communications Equipment Co Ltd
Original Assignee
Datang Mobile Communications Equipment Co Ltd
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 Datang Mobile Communications Equipment Co Ltd filed Critical Datang Mobile Communications Equipment Co Ltd
Publication of JP2020527880A publication Critical patent/JP2020527880A/ja
Application granted granted Critical
Publication of JP7091375B2 publication Critical patent/JP7091375B2/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/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/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/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/1137Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
    • 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
    • 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/63Joint error correction and other techniques
    • H03M13/6306Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0043Realisations of complexity reduction techniques, e.g. use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (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)
  • Lubricants (AREA)
  • Secondary Cells (AREA)
  • Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
  • Battery Electrode And Active Subsutance (AREA)

Description

関連出願の相互参照
本出願は、2017年6月26日に中国特許局に提出し、出願番号が201710496055.Xであり、発明名称が「エンコーディング方法および装置、コンピュータ記憶媒体」との中国特許出願を基礎とする優先権を主張し、その開示の総てをここに取り込む。
本発明は、通信技術分野に関し、特にエンコーディング方法および装置、コンピュータ記憶媒体に関する。
現在、第3世代パートナーシッププロジェクト(3GPP)は、5Gのエンハンストモバイルブロードバンド(Enhanced Mobile Broadband,eMBB)シナリオのために低密度パリティチェックコード(Low Density Parity Check Code,LDPC)チャネルエンコーディング設計を与える必要があることを提案している。
LDPCコードは、チェックマトリックスにより定義される一種の線形コードである。デコーディングの実現可能性のために、コード長が比較的長い場合、チェックマトリックスはスパース性を満たす必要がある。つまり、チェックマトリックス中の「1」の密度は比較的低く、つまり「1」の数はチェックマトリックスの「0」の数よりもはるかに小さくする必要があり、コード長が長いほど密度は低くなる。
しかしながら、従来技術における5Gシステムに適したLDPCエンコーディング解決策はない。
本出願の実施形態は、LDPCエンコーディング性能を向上させ、したがって5Gシステムに適するように、エンコーディング方法および装置、コンピュータ記憶媒体を提供する。
本出願の実施形態によるエンコーディング方法は、
低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築するステップと、
前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定するステップと、
前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行するステップと、を備える。
当該方法によれば、低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築し、前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定し、前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行することにより、LDPCエンコーディング性能を向上し、5Gシステムに適用できるようにする。
選択的に、前記循環係数指数マトリックスを構築することは、具体的には、
サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する第1のステップと、
各前記サブ集合に対し、循環係数指数マトリックスを生成する第2のステップと、
前記循環係数指数マトリックスに従って、複数のサブ集合のZに対応する循環係数を決定する第3のステップと、
決定された循環係数指数マトリックスの性能各Zについて予め設定された条件を満たすかどうかを検出し、「はい」であれば、終了し、「いいえ」であれば、第2のステップを再実行する第4のステップと、を備える。
選択的に、Z=a×2であり、前記第1のステップが以下の方式の1つで実行され、
第1の方式:aの値に従ってZを複数のサブ集合に分割し、
第2の方式:jの値に従ってZを複数のサブ集合に分割し、
第3の方式:情報ビットの長さに従ってZを複数のサブ集合に分割する。
選択的に、前記第3のステップは、具体的には、以下の式により各Zに対応する循環係数Pi,jを決定し、

Figure 0007091375000001
ここで、Vi,jは、循環係数指数マトリックスの(i、j)番目の要素に対応する循環係数である。
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000002
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000003
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000004
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000005
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000006
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000007
選択的に、当該方法では、さらに、
前記循環係数指数マトリックスを更新し、
更新された循環係数指数マトリックスを使用して、前記サブ循環マトリックスを更新する。
選択的に、前記更新は、少なくともマトリックス要素の行および列の置換を含む。
選択的に、前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行することは、具体的には、
前記サブ循環マトリックスおよび前記base graphに従って、チェックマトリックスを決定し、
前記チェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、チェックマトリックスを決定した後、さらに、
チェックマトリックスに対して行および列の置換を実行し、
前記チェックマトリックスを使用して、LDPCエンコーディングを実行することは、具体的には、行および列の置換後のチェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記チェックマトリックスに対して行および列の置換を実行することは、具体的には、
チェックマトリックスの行および/または列要素の一部を更新し、および/または、チェックマトリックスの行および/または列要素のすべてを更新する。
本出願の実施形態によるエンコーディング装置は、
低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築するように構成された第1のユニットと、
前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定するように構成された第2のユニットと、
前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行するように構成された第3のユニットと、を備える。
選択的に、前記第1のユニットが循環係数指数マトリックスを構造することは、具体的には、
サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する第1のステップと、
各前記サブ集合に対し、循環係数指数マトリックスを生成する第2のステップと、
前記循環係数指数マトリックスに従って、複数のサブ集合のZに対応する循環係数を決定する第3のステップと、
決定された循環係数指数マトリックスの性能各Zについて予め設定された条件を満たすかどうかを検出し、「はい」であれば、終了し、「いいえ」であれば、第2のステップを再実行する第4のステップと、を備える。
選択的に、Z=a×2であり、前記第1のユニットは、以下方式の1つで前記第1のステップを実行し、
第1の方式:aの値に従ってZを複数のサブ集合に分割し、
第2の方式:jの値に従ってZを複数のサブ集合に分割し、
第3の方式:情報ビットの長さに従ってZを複数のサブ集合に分割する。
選択的に、前記第3のステップは、具体的には、以下の式により各Zに対応する循環係数Pi,jを決定し、

Figure 0007091375000008
ここで、Vi,jは、循環係数指数マトリックスの(i、j)番目の要素に対応する循環係数である。
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000009
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000010
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000011
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000012
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000013
選択的に、前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示される。

Figure 0007091375000014
選択的に、前記第2のユニットは、さらに、
前記循環係数指数マトリックスを更新し、
更新された循環係数指数マトリックスを使用して、前記サブ循環マトリックスを更新する。
選択的に、前記更新は、少なくともマトリックス要素の行および列の置換を含む。
選択的に、前記第3のユニットは、具体的に、
前記サブ循環マトリックスおよび前記base graphに従って、チェックマトリックスを決定し、
前記チェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記第3のユニットは、さらに、チェックマトリックスを決定した後、チェックマトリックスに対して行および列の置換を実行し、
前記第3のユニットは、前記チェックマトリックスを使用して、LDPCエンコーディングを実行することは、具体的には、行および列の置換後のチェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記第3のユニットは、前記チェックマトリックスに対して行および列の置換を実行することは、具体的には、
チェックマトリックスの行および/または列要素の一部を更新し、および/または、チェックマトリックスの行および/または列要素のすべてを更新する。
本出願の実施形態による他のエンコーディング装置は、メモリと、プロセッサとを備え、ここで、前記メモリはプログラム命令を格納し、前記プロセッサは、前記メモリに格納されたプログラム命令を読み出して、取得されたプログラムに従って、上述のいずれの方法を実行する。
本出願の実施形態は、上述のいずれの方法をコンピュータに実行させるように構成されたコンピュータ実行可能命令を記憶するコンピュータ記憶媒体を提供する。
本発明に係る実施例や従来の技術解決策をより明確に説明するために、以下に実施例を説明するために必要な図面をについて簡単に紹介する。無論、以下の説明における図面は本発明に係る実施例の一部であり、当業者は、創造性作業を行わないことを前提として、これらの図面に基づいて他の図面を得ることができる。
本出願の実施形態によるbase matrixの構成概略図である。 本出願の実施形態によるマトリックスPの構成概略図である。 本出願の実施形態によるz=8のときの循環置換マトリックスの構成概略図である。 本出願の実施形態によるbase graphおよび循環係数マトリックス(z=8)の構成概略図である。 本出願の実施形態による増分冗長をサポートするLDPCチェックマトリックスの構成概略図である。 本出願の実施形態による5G LDPCによってサポートされる必要がある循環マトリックスサイズZの集合の概略図である。 本出願の実施形態によるbase graph#2の構成概略図である。 本出願の実施形態による第1の循環係数指数マトリックスの構成概略図である。 本出願の実施形態による第2の循環係数指数マトリックスの構成概略図である。 本出願の実施形態による第3の循環係数指数マトリックスの構成概略図である。 本出願の実施形態による第4の循環係数指数マトリックスの構成概略図である。 本出願の実施形態による第5の循環係数指数マトリックスの構成概略図である。 本出願の実施形態による第6の循環係数指数マトリックスの構成概略図である。 本出願の実施形態によるZ=128時に使用されるPCM2(a=3)R=1/5に対応するチェックマトリックスのgirth分布の概略図である。 本出願の実施形態によるLDPC循環係数性能の概略図である。 本出願の実施形態によるエンコーディング方法のフローチャートの概略図である。 本出願の実施形態によるエンコーディング装置の構成概略図である。 本出願の実施形態による他のエンコーディング装置の構成概略図である。
本出願の実施形態は、LDPCエンコーディング性能を向上させ、したがって5Gシステムに適するように、エンコーディング方法および装置、コンピュータ記憶媒体を提供する。
本願の実施形態によって提供される技術的解決策は、元のロングタームエボリューション(long term evolution,LTE)システムによって使用されるturboエンコーディングの代わりに、eMMBシナリオのデータチャネルに使用されるLDPCエンコーディングを与える、すなわち、5Gシステムに適したLDPCエンコーディングを与える。
5GのLDPCコード設計は準循環LDPCコードを必要とし、そのチェックマトリックスHは次のように表すことができる:

Figure 0007091375000015
ここで、Ai,jは、Z×Z循環置換マトリックスである。
準循環LDPCコードを構築するいくつかの方法があり、例えば、ρ×cの基本マトリックス(base matrix)が最初に構築され、このマトリックスの要素は図1に示されるように0または1である。次に、基本マトリックスBの各要素「1」はZ×Zの循環置換マトリックス(Circular Permutation Matrix,CPM)として拡張され、基本マトリックスの要素「0」はZ×Zのすべてゼロのマトリックスとして拡張される。ベースマトリックスBは、プロトグラフに基づく後続のLDPC構築方法でベースグラフ(base graph,BG)と呼ばれる。Z×Zの各循環置換マトリックスはPで表される。ここで、マトリックスPは、図2に示すように、単位マトリックスが1桁右に循環シフトした後に得られるマトリックスで、iは循環シフトラベルであり、すなわち、サブマトリックスのシフト係数である。図3は、循環置換マトリックスPの実例を示している(サブグループのサイズは8×8、つまりz=8である)。
したがって、各循環置換マトリックスPは、単位マトリックスIが右にi回循環シフトし、循環置換マトリックスの循環シフトラベルiが

Figure 0007091375000016
を満たされた後に実際に得られる。
上述の循環シフトラベルiは、LDPCチェックマトリックスの循環シフト係数(shifting coefficients)とも呼ばれる。実際、循環シフト係数は、サブ循環マトリックスの「1」の最初の行が配置されている列のインデックスである(ラベルは0から始まり、インデックス=列番号-1)。ベースグラフの各「1」は、対応するサブ循環マトリックスの循環シフト係数に置き換えられ、ベースグラフの各「0」は「-1」に置き換えられる。各循環シフトラベルiはマトリックス指数の形式で表されるため、結果の係数マトリックスは、シフト係数指数マトリックス(shifting coefficients exponent matrix,SEM)とも呼ばれる。図4は、循環係数指数マトリックスの例を表す。ここで、BGは3行6列のベースグラフであり、ベースグラフの各要素は8行8列のサブ循環マトリックスに対応している。ベースグラフは、各サブ循環マトリックスの循環シフト係数に置き換えられる。ここで0は-1に置き換えられ、循環係数指数マトリックスを取得する。
上述の準循環LDPCコードに対応するサブ循環マトリックス(CM)の場合、列の重みは1より大きくすることができ、例えば、列の重みは2以上の値であり、このとき、サブ循環マトリックスは、もはや循環置換マトリックス(CPM)ではない。
5G LDPCコード設計は、IR(Incremental redundancy,増分冗長)-HARQ(Hybrid Automatic Repeat Request,ハイブリッド自動重複要求)がサポートされなければならないことを必要とするので、5GシナリオのLDPCコードは、増分冗長方法によって構築され得る。高いコードレートのLDPCコードが構築され、増分冗長方式でより多くのチェックビットが生成され、それによって低いコードレートのLDPCコードが取得される。増分冗長方式に基づいて構築されたLDPCコードには、優れた性能、長いコード、広いコードレートカバレッジ、高い再利用性、簡単なハードウェア実装、チェックマトリックスを使用した直接エンコードの実行などの利点がある。特定の構造の実例は、図5に示すとおりである。ここで、Bは二重対角マトリックスまたは準二重対角マトリックス、Cは0マトリックス、Eは下三角拡張マトリックスである。LDPCチェックマトリックスの設計は、主にA、D、およびE1の設計に依存する。
LDPC性能は、2つの最も重要な要因に依存し、一方はベースマトリックスの設計であり、他方はベースマトリックス内の各非ゼロ要素をZ×Zの循環置換マトリックスとしてどのように拡張するかである。これら2つの要因は、LDPCの性能に決定的な影響を与える。また、ベースマトリックスと拡張サブサイクリック置換マトリックスの不適切な設計は、LDPCコードの性能を大幅に低下させる可能性がある。
要約すると、LDPCチェックマトリックスは5G設計で設計されており、5Gは柔軟なLDPCのサポートを必要とするため、eMBBデータチャネルを例にとると、3GPPでは、2つのベースグラフを拡張して得られる最大2つのLDPCチェックマトリックスが最大8/9コードレートと少なくとも1/5コードレートをサポートし、情報ビットが最大8448ビットおよび少なくとも40ビットであることが、要求される。前記2つのベースグラフの場合、大きいベースグラフは46x68列で、最初の22列は情報ビットに対応し、最低のコードレートは1/3である。小さいベースグラフには42x52の列があり、最低のコードレートは1/5である。大きいベースグラフとは異なり、小さいベースグラフは、デコードの並列度を高め、デコードの遅延を減らすために使用される。3GPPの現在の結論は次のとおりである。情報ビットがK>640を満たす場合、ベースグラフの最初の10列は情報ビットに対応する。情報ビットが560<K<=640を満たす場合、ベースグラフの最初の9列は情報ビットに対応する。情報ビットが192<K<=560を満たす場合、ベースグラフの最初の8列は情報ビットに対応する。情報ビットが40<K<=192を満たす場合、ベースグラフの最初の6列は情報ビットに対応する。
5G LDPC設計において、2つの固定ベースグラフが40~8448の情報ビット長をサポートすることを可能にするために、ベースグラフの各「1」に対応するサブ循環マトリックスを、異なるサイズのサブ循環マトリックスに拡張する方法が使用される。つまり、サブ循環マトリックスのサイズZは異なる値をサポートできる。3GPPでサポートする必要があるサブ循環マトリックスの次元はZ=a×2で、その値は具体的には図6に示すとおりである。図6に示すテーブル内の各Zは、LDPCの1つのチェックマトリックスに対応する。図からわかるように、5G LDPCコードの設計では多くのチェックマトリックスを設計する必要がある。循環係数マトリックスが各Zに対して設計されている場合、保存するのは難しく、作業負荷は膨大である。したがって、LDPCコードの循環係数を設計する適切な方法(LDPCコードは、さまざまなコードレートとさまざまな情報ビット長をサポートし、保存の複雑さは低い)を見つけることは非常に困難である。方法は、複数のZに対して同じ循環係数を使用することであるが、多くの場合、優れた性能を得るのは困難である。また、循環係数設計は、5G LDPCコードの設計に大きな課題をもたらす。
以下、本出願の実施形態によるLDPCエンコーディング方法を詳細に説明する。
本出願の実施形態によるLDPCエンコーディング方法は、以下のステップを備える。
ステップ(1):密度に基づいて進化したP-EXITチャートのデコーディング閾値(コード長が無限の場合の最小デコーディング閾値、すなわち、必要な最低SNR値)を測定度とし、実際のシミュレーションパフォーマンスと組み合わせてベースグラフを決定する。
ステップ(2):循環係数指数マトリックスを構築する。前記循環係数の各値は1つのサブマトリックスの循環係数を表し、上記のPの係数iは指数位置にあるため、ここでのマトリックスは循環係数指数マトリックスと呼ばれ、指数マトリックス(exponent matrix)とも呼ばれる。当該ステップ(2)には、具体的には第1のステップから第4のステップが含まれる。
第1のステップ:サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する。

Figure 0007091375000017
を例にとると、複数のサブ集合は次のいずれか方式で決定できる。
第1の方式:aに従って分類する。たとえば、a=2の場合、

Figure 0007091375000018
はサブ集合なので、Zは8つのサブ集合に分割される。当該8つのサブ集合は実際に図6における8列のそれぞれに対応する。つまり、最初のサブ集合は図6のa=2の場合の対応する最初の列の値である。このように類推することができる。
第2の方式:jに従って分類する。jの各値について、

Figure 0007091375000019
がサブ集合を構成する。jは8個の値を持っているため、jも8個のサブ集合に対応する。たとえば、j=0の場合、図6の最初の行の8個の値に対応する。このように類推することができる。
第3の方式Zのサイズに従って分類する。ここで、Kb * Zは情報ビットの長さである。ここで、Kbはベースグラフの情報ビットの列の数であり、情報ビットの数Kとは異なり、大きいベースグラフの場合はkb=22、小さいベースグラフの場合はkb=10であるため、Zはサイズによって分類される。これは、情報ビット長Kのサイズに従って分類するのと自然に同等である。例:[2:1:15], [16:2:30], [32:4:64], [72:8:128], [144:16:192], [208:16: 256], [288: 32:320], [352:32:384]。そのような分類方法は、実際には情報ビット長に従ってセグメント化することである。情報ビット長Kは、ビットを単位とし、K/kb=Zの推定値である。セグメント化する場合、1つの例は2の整数乗に従う。Zが小さいほどセグメントは密になり、Zが大きいほどセグメントは疎になる。
第2のステップ:例えば、代数をランダムと結合する方法を使用することにより、各サブ集合の循環係数指数マトリックスを生成する。ここで、ランダムな方法は、例えば指数マトリックスをランダムに生成し、その後の方法で最適なものを選択することである。代数法は、たとえば、最初に大きな指数マトリックスを構築し、次にランダムなnmasked matrixを使用して指数マトリックスを取得することができる。したがって、8つのサブ集合には8つの循環係数指数マトリックスが完全に必要である。
第3のステップ:上記の8つのサブ集合(各集合は循環係数指数マトリックスに対応する)の各Zならびに一部の集合外のZ要素について第2のステップで決定された循環係数指数マトリックスに従って、各Zに対応する循環係数をさらに決定する。本出願の実施形態では、集合外のZ要素が集合内の要素に加えて考慮されるので、当該係数指数マトリックスはより良い適用性を有する。まず、集合内のZ要素の間隔が大きいことが多いため、1ビットの粒度を実現できない。集合外のZ要素が循環係数設計に参与することにより、異なるZ性能に対する係数指数マトリックスの堅牢性が向上する可能性がある。別の利点として、異なる集合に対して、同じ係数指数マトリックスを構成できるため、保存の量とハードウェア設計の複雑さがさらに低下する。ここで、各サブ集合は1つの指数マトリックスを生成する。これは、サブ集合内の最大Zに従って実際に生成されるが、サブ集合内の各特定Zの係数は、この最大Zによって生成される指数マトリックスの関数である。サブ集合内のすべてのZの循環係数の性能が優れていないと、このサブ集合に対応する指数マトリックスが有用ではないことが、循環係数の設計に肝心な点である。循環係数指数マトリックスに従って、各Zに対応する循環係数を決定する方法の例は次のとおりである。循環係数 Pi,j は、次の関数を使用して計算できる。

Figure 0007091375000020
ここで、Vi,jは、係数指数マトリックスの(i、j)番目の要素に対応する循環係数であり、関数fは次のように定義される。

Figure 0007091375000021
第4のステップ:各サブ集合のすべてのZについて、例えば、リング分布とコードワードの最小距離推定値を基本的な測定度として、第2のステップで決定された集合レベルの循環係数指数マトリックスの品質を判定する。リング数と最小距離が大きいほど、コードワードの性能がよい。集合レベルでの循環係数指数マトリックスの性能が悪い場合、第2のステップに戻る。ここで、前記リング分布はリング長の分布である。たとえば、長方形のリング長は4であり、大きい方が良いである。リングが形成されないという事実は、グラフが閉じられていないことを意味する。これは、グラフ理論ではツリーと呼ばれる。最小距離は、2つのコードワード間の最小差であり、差が小さいと区別が不安定になるため、コードワードの性能が低下する。したがって、エンコーディングされたコードワードの性能は、最小距離が大きい場合にのみ良好であるため、検索された指数マトリックスが優れていることを意味し、そうでない場合は指数マトリックスを使用しないことを意味する。
ステップ(3):ステップ(2)で決定された循環係数指数マトリックスに従って、各循環係数を対応するサブ循環マトリックスとして拡張し、最終的にLDPCコードのチェックマトリックスHを取得する。
例えば、マトリックスHは、42行52列のサブ循環マトリックスで構成である。各サブ循環マトリックスはベースグラフを取得するために「0」または「1」に置き換えられ、各ベースグラフの各要素「1」はサブサイクルマトリックスに置き換えられてマトリックスHを取得する。各サブマトリックスの係数は、ベースグラフの「1」を置き換えるサブ循環マトリックスを選択することにより、設定される。すべての循環係数を1つのマトリックスに配置して、循環係数指数マトリックスを取得する。
ステップ(4):チェックマトリックスHを使用してLDPCコード化を完了する。ここで、循環係数およびZが既知である場合、各サブ循環マトリックスが直接得られ、それによりマトリックスH全体が得られる。
例示するために、特定の実施形態を以下に示す。
5G LDPC設計によって使用されるベースグラフ#2は、42行および52列を有し、現在決定されたベースグラフは、図7に示されるとおりである。42行はチェックノードに対応し、52列は変数ノードに対応する。上記のベースグラフの情報ビットKbが10未満、たとえばKb=9の場合、ベースグラフの10番目の列は直接削除される。kb=6の場合、ベースグラフの7、8、9、10列目が削除され、行は変更されない。
図7に示されるベースグラフによれば、図6に示される循環マトリックスのサイズZの集合は、aに従って分類され、すなわち、図6の列ごとに分割される。aには8つの異なる値があり、それに応じて8つの異なるZ集合が取得される。たとえば、a=2に対応するZ集合はSet1={2、4、8、16、32、64、128、256}であり、a=3に対応するZ集合はSet2={3、6、12、 24、48、96、192、384}、a=5に対応するZ集合はSet3={5、10、20、40、80、160、320}、a=7に対応するZ集合はSet4={7、 14、28、56、112、224}、a=9に対応するZ集合はSet5={9、18、36、72、144、288}、a=11に対応するZ集合はSet6={11、 22、44、88、176、352}、a=13に対応するZ集合はSet7={13、26、52、104、208}であり、a=15に対応するZ集合はSet8={15、30 、60、120、240}である。
各Z集合について、集合レベルの6つの循環係数指数マトリックスPCMi(i = 1、2、3、...6)が、Seti(i=1、2、3、...6)にそれぞれ対応する循環係数指数マトリックスであることは、上記ステップ(2)で説明された方法によって決定される。ここで、a=2の場合、集合Set1に対応する循環係数指数マトリックスPCM1は、具体的には図8に示すようになる。a=3の場合、集合Set2に対応する循環係数指数マトリックスPCM2は具体的には図9のようになる。図9に示すマトリックスは5G標準のチェックマトリックスであり、詳細は関連ドキュメントを参照できる。a=5の場合、集合Set3に対応する循環係数指数マトリックスPCM3は、具体的には図10のようになる。a=7の場合、集合Set4に対応する循環係数指数マトリックスPCM4は、具体的には図11のようになる。a=9の場合、集合Set5に対応する循環係数指数マトリックスPCM5は、具体的には図12のようになる。a=11の場合、集合Set6に対応する循環係数指数マトリックスPCM6は、具体的には図13のようになる。
ステップ(2)で説明したように、循環係数指数マトリックスが集合に対して設計されるとき、マトリックスは集合内の係数だけでなく集合外の係数にも応じて最適化される。集合2すなわちSet2(a=3)に対応するPCM2を例に取ると、Set1(a=2)の一部のZが設計で考慮されるため、Set1(a=2)の一部のZがSet2(a=3)のPCM2マトリックスを使用する場合も優れた性能を発揮する。Set1(a=2)でZ=128の例では、コードレートは1/5で、PCM2に対応するチェックマトリックスが使用され、そのgirthの分布は図14のようになり、6と8リングであるために、性能は優れている。
図8~図13に示されるベースグラフに従ってLDPC性能を設計する例は、図15に示されるとおりであり、見られるように、ベースグラフに対応するLDPCコード性能は、本出願の実施形態においてより良好である。
以下のことは特に指摘する必要がある:
本出願の実施形態では、さらに、
前記循環係数指数マトリックスを更新し、
更新された循環係数指数マトリックスを使用して、前記サブ循環マトリックスを更新する。
選択的に、前記更新は、少なくともマトリックス要素の行および列の置換を含む。
本出願の実施形態では、行および列の置換は、設計されたチェックマトリックスHに対してさらに実行することができ、行および列の置換は、通常の行と列の置換に加え、行および列内の要素の一部に対して実行される置換を含む。図5のマトリックスBで示される二重対角マトリックスとマトリックスEで示される下三角構造を例にとると、行と列の置換が実行されるとき、二重対角と下三角構造は変化しないままであり、行と列の他の要素は置換される。係数指数マトリックスの観点から、このような置換は、指数マトリックスの異なる行と列の間の交換、または指数の行で表される行サブ循環マトリックス内の行または列の交換である。たとえば、サブ循環マトリックスの最初の行はサブ循環マトリックスの最後の行として並べ替えられるため、指数マトリックスの数値に反映すると、元の係数値に特定の数値を加えたものになる。
要約すると、図16を参照すると、本出願の実施形態によるエンコーディング方法は、以下のステップを備える。
S101において、低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築する。
S102において、前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定する。
S103において、前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行する。
当該方法によれば、低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築し、前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定し、前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行することにより、LDPCエンコーディング性能を向上し、5Gシステムに適用できるようにする。
選択的に、前記循環係数指数マトリックスを構築することは、具体的には、
サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する第1のステップと、
各前記サブ集合に対し、循環係数指数マトリックスを生成する第2のステップと、
前記循環係数指数マトリックスに従って、複数のサブ集合のZに対応する循環係数を決定する第3のステップと、
決定された循環係数指数マトリックスの性能各Zについて予め設定された条件を満たすかどうかを検出し、「はい」であれば、終了し、「いいえ」であれば、第2のステップを再実行する第4のステップと、を備える。
選択的に、

Figure 0007091375000022
であり、前記第1のステップが以下の方式の1つで実行され、
第1の方式:aの値に従ってZを8つのサブ集合に分割する。
第2の方式:jの値に従ってZを8つのサブ集合に分割する。
第3の方式:情報ビットの長さに従ってZを8つのサブ集合に分割する。
選択的に、前記第3のステップは、具体的には、以下の式により各Zに対応する循環係数Pi,jを決定し、

Figure 0007091375000023
ここで、Vi,jは、循環係数指数マトリックスの(i、j)番目の要素に対応する循環係数である。
選択的に、前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行することは、具体的には、
前記サブ循環マトリックスおよび前記base graphに従って、チェックマトリックスを決定し、
前記チェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、チェックマトリックスを決定した後、当該方法では、さらに、チェックマトリックスに対して行および列の置換を実行し、
前記チェックマトリックスを使用して、LDPCエンコーディングを実行することは、具体的には、行および列の置換後のチェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記チェックマトリックスに対して行および列の置換を実行することは、具体的には、チェックマトリックスの行および/または列要素の一部を更新し、および/または、チェックマトリックスの行および/または列要素のすべてを更新する。
上述の方法に対応し、図17を参照すると、本出願の実施形態によるエンコーディング装置は、
低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築するように構成された第1のユニット11と、
前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定するように構成された第2のユニット12と、
前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行するように構成された第3のユニット13と、を備える。
選択的に、前記第1のユニットが循環係数指数マトリックスを構造することは、具体的には、
サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する第1のステップと、
各前記サブ集合に対し、循環係数指数マトリックスを生成する第2のステップと、
前記循環係数指数マトリックスに従って、複数のサブ集合のZに対応する循環係数を決定する第3のステップと、
決定された循環係数指数マトリックスの性能各Zについて予め設定された条件を満たすかどうかを検出し、「はい」であれば、終了し、「いいえ」であれば、第2のステップを再実行する第4のステップとを備える。
選択的に、

Figure 0007091375000024
であり、前記第1のユニットは、以下方式の1つで前記第1のステップを実行し、
第1の方式:aの値に従ってZを8つのサブ集合に分割する。
第2の方式:jの値に従ってZを8つのサブ集合に分割する。
第3の方式:情報ビットの長さに従ってZを8つのサブ集合に分割する。
選択的に、前記第3のステップは、具体的には、以下の式により各Zに対応する循環係数Pi,jを決定し、

Figure 0007091375000025
ここで、Vi,jは、循環係数指数マトリックスの(i、j)番目の要素に対応する循環係数である。
選択的に、前記第3のユニットは、具体的には、
前記サブ循環マトリックスおよび前記base graphに従って、チェックマトリックスを決定し、
前記チェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記第3のユニットは、さらに、チェックマトリックスを決定した後、チェックマトリックスに対して行および列の置換を実行し、
前記第3のユニットは、前記チェックマトリックスを使用して、LDPCエンコーディングを実行することは、具体的には、行および列の置換後のチェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記第3のユニットは、前記チェックマトリックスに対して行および列の置換を実行することは、具体的には、
チェックマトリックスの行および/または列要素の一部を更新し、および/または、チェックマトリックスの行および/または列要素のすべてを更新する。
本出願の実施形態による他のエンコーディング装置は、メモリと、プロセッサとを備える。ここで、前記メモリはプログラム命令を格納し、前記プロセッサは、前記メモリに格納されたプログラム命令を読み出して、取得されたプログラムに従って、上述のいずれの方法を実行する。
たとえば、図18を参照すると、本出願の実施形態による他のエンコーディング装置において、プロセッサ500は、メモリ520に格納されたプログラムを読み出して、
低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築し、
前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定し、
前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行する。
選択的に、前記プロセッサ500が循環係数指数マトリックスを構築することは、具体的には、
サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する第1のステップと、
各前記サブ集合に対し、循環係数指数マトリックスを生成する第2のステップと、
前記循環係数指数マトリックスに従って、複数のサブ集合のZに対応する循環係数を決定する第3のステップと、
決定された循環係数指数マトリックスの性能各Zについて予め設定された条件を満たすかどうかを検出し、「はい」であれば、終了し、「いいえ」であれば、第2のステップを再実行する第4のステップと、を備える。
選択的に、

Figure 0007091375000026
であり、前記プロセッサ500は、下記方式の1つで前記第1のステップを実行する。
第1の方式:aの値に従ってZを8つのサブ集合に分割する。
第2の方式:jの値に従ってZを8つのサブ集合に分割する。
第3の方式:情報ビットの長さに従ってZを8つのサブ集合に分割する。
選択的に、前記第3のステップは、具体的には、以下の式により各Zに対応する循環係数Pi,jを決定し、

Figure 0007091375000027
ここで、Vi,jは、循環係数指数マトリックスの(i、j)番目の要素に対応する循環係数である。
選択的に、前記プロセッサ500前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行することは、具体的には、
前記サブ循環マトリックスおよび前記base graphに従って、チェックマトリックスを決定し、
前記チェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記プロセッサ500は、さらに、チェックマトリックスを決定した後、チェックマトリックスに対して行および列の置換を実行する。
前記プロセッサ500は、前記チェックマトリックスを使用して、LDPCエンコーディングを実行することは、具体的には、行および列の置換後のチェックマトリックスを使用して、LDPCエンコーディングを実行する。
選択的に、前記プロセッサ500は、前記チェックマトリックスに対して行および列の置換を実行することは、具体的には、チェックマトリックスの行および/または列要素の一部を更新し、および/または、チェックマトリックスの行および/または列要素のすべてを更新する。
送受信機510は、プロセッサ500の制御の下でデータを送受信する。
ここで、図18において、バスアーキテクチャは、いずれ数の相互接続するバス及びブリッジを備える。具体的に、プロセッサ500が代表となる1つまたは複数のプロセッサ及びメモリ520が代表となるメモリの多様な回路により接続される。バスアーキテクチャは、外部設備、電圧レギュレーター及び電力管理回路等の他の回路を接続することもできる。これらは、当該分野の周知技術であるため、本発明において、詳細に説明しない。バスインターフェースはインターフェースを提供する。送受信機510は、複数の部品であることができ、即ち、送信機及び受信機を備え、伝送媒体を介して他の装置と通信するユニットを提供する。プロセッサ500は、バスアーキテクチャ及び通常の処理を管理し、メモリ520は、プロセッサ500が動作する際に利用するデータを記憶することができる。
プロセッサ500は、中央処理装置(CPU)、特定用途向け集積回路(Application Specific Integrated Circuit,ASIC)、フィールドプログラマブルゲートアレイ(Field-Programmable Gate Array,FPGA)または複合プログラマブルロジックデバイス(complex Programmable Logic Device,CPLD)とすることが出きる。
本出願の実施形態によるエンコーディング装置は、具体的にはデスクトップコンピュータ、ポータブルコンピュータ、スマートフォン、タブレットコンピュータ、携帯情報端末(Personal Digital Assistant,PDA)などであり得るコンピューティングデバイスとみなすこともできる。当該コンピューティングデバイスは、中央処理装置(Center Processing Unit ,CPU)、メモリ、入力/出力デバイスなどを含むことができる。入力装置は、キーボード、マウス、タッチスクリーンなどを含むことができ、出力装置は、液晶ディスプレイ(Liquid Crystal Display,LCD)、陰極線管(Cathode Ray Tube,CRT)などの表示装置を含むことができる。
メモリは、読み取り専用メモリ(ROM)およびランダムアクセスメモリ(RAM)を含むことができ、メモリに格納されたプログラム命令およびデータをプロセッサに提供することができる。本出願の実施形態では、メモリは、エンコーディング方法のプログラムを格納するように構成することができる。
プロセッサは、メモリに格納されたプログラム命令を呼び出し、取得されたプログラム命令に従って上述のエンコーディング方法を実行するように構成される。
本出願の実施形態によるコンピュータ記憶媒体は、上述のコンピューティングデバイスによって使用されるコンピュータプログラム命令を格納するように構成され、コンピュータプログラム命令は、上述のエンコーディング方法を実行するためのプログラムを含む。
前記コンピュータ記憶媒体は、磁気メモリ(例えば、フロッピーディスク、ハードディスク、磁気テープ、磁気光学ディスク(MO)など)、光学メモリ(CD、DVD、BD、HVDなど)、半導体メモリ(ROM、EPROM、EEPROM、不揮発性メモリ(NAND FLASH)、ソリッドステートディスク(SSD))などを含むがこれらに限定されない、コンピュータにアクセス可能な任意の利用可能な媒体またはデータ記憶装置であり得る。
本分野の技術者として、本発明の実施形態が、方法、システム或いはコンピュータプログラム製品を提供できるため、本発明は完全なハードウェア実施形態、完全なソフトウェア実施形態、またはソフトウェアとハードウェアの両方を結合した実施形態を採用できることがわかるはずである。さらに、本発明は、一つ或いは複数のコンピュータプログラム製品の形式を採用できる。当該製品はコンピュータ使用可能なプログラムコードを含むコンピュータ使用可能な記憶媒体(ディスク記憶装置、光学記憶装置等を含むがそれとは限らない)において実施する。
以上は本発明の実施形態の方法、装置(システム)、およびコンピュータプログラム製品のフロー図および/またはブロック図によって、本発明を記述した。理解すべきことは、コンピュータプログラム命令によって、フロー図および/またはブロック図における各フローおよび/またはブロックと、フロー図および/またはブロック図におけるフローおよび/またはブロックの結合を実現できる。プロセッサはこれらのコンピュータプログラム命令を、汎用コンピュータ、専用コンピュータ、組込み式処理装置、或いは他のプログラム可能なデータ処理装置設備の処理装置器に提供でき、コンピュータ或いは他のプログラム可能なデータ処理装置のプロセッサは、これらのコンピュータプログラム命令を実行し、フロー図における一つ或いは複数のフローおよび/またはブロック図における一つ或いは複数のブロックに指定する機能を実現する。
これらのコンピュータプログラム命令は、又、コンピュータ或いは他のプログラム可能なデータ処理装置を特定方式で動作させるコンピュータ読取記憶装置に記憶できる。これによって、命令を含む装置は当該コンピュータ読取記憶装置内の命令を実行でき、フロー図における一つ或いは複数のフローおよび/またはブロック図における一つ或いは複数のブロックに指定する機能を実現する。
これらコンピュータプログラム命令はさらに、コンピュータ或いは他のプログラム可能なデータ処理装置設備に実装もできる。コンピュータプログラム命令が実装されたコンピュータ或いは他のプログラム可能設備は、一連の操作ステップを実行することによって、関連の処理を実現し、コンピュータ或いは他のプログラム可能な設備において実行される命令によって、フロー図における一つ或いは複数のフローおよび/またはブロック図における一つ或いは複数のブロックに指定する機能を実現する。
無論、当業者によって、上述した実施形態に記述された技術的な解決手段を改造し、或いはその中の一部の技術要素を置換することもできる。そのような、改造と置換は本発明の各実施形態の技術の範囲から逸脱するとは見なされない。そのような改造と置換は、すべて本発明の請求の範囲に属する。
11 第1のユニット
12 第2のユニット
13 第3のユニット
500 プロセッサ
510 送受信機
520 メモリ

Claims (8)

  1. 低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築するステップと、
    前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定するステップと、
    前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行するステップと、を備え、
    前記循環係数指数マトリックスを構築するステップは、
    サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する第1のステップと、
    各前記サブ集合に対し、循環係数指数マトリックスを生成する第2のステップと、
    前記循環係数指数マトリックスに従って、複数のサブ集合のZに対応する循環係数を決定する第3のステップとを備え、
    Z=a×2であり、前記第1のステップがaの値に従ってZを複数のサブ集合に分割する第1の方式で実行され、ここで、
    Figure 0007091375000028
    であり、
    前記第3のステップは、以下の式により各Zに対応する循環係数P i,j を決定し、
    Figure 0007091375000029
    ここで、V i,j は、循環係数指数マトリックスの(i、j)番目の要素に対応する循環係数であり、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000030
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000031
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000032
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000033
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000034
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示されることを特徴とするエンコーディング方法。
    Figure 0007091375000035
  2. 前記循環係数指数マトリックスを更新し、
    更新された循環係数指数マトリックスを使用して、前記サブ循環マトリックスを更新することを特徴とする請求項1に記載のエンコーディング方法。
  3. 前記更新は、少なくともマトリックス要素の行および列の置換を含むことを特徴とする請求項に記載のエンコーディング方法。
  4. 前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行する場合、
    前記サブ循環マトリックスおよび前記base graphに従って、チェックマトリックスを決定し、
    前記チェックマトリックスを使用して、LDPCエンコーディングを実行することを特徴とする請求項1に記載のエンコーディング方法。
  5. チェックマトリックスを決定した後、チェックマトリックスに対して行および列の置換を実行し、
    前記チェックマトリックスを使用して、LDPCエンコーディングを実行する場合、行および列の置換後のチェックマトリックスを使用して、LDPCエンコーディングを実行することを特徴とする請求項に記載のエンコーディング方法。
  6. 前記チェックマトリックスに対して行および列の置換を実行する場合、
    チェックマトリックスの行および/または列要素の一部を更新し、チェックマトリックスの行および/または列要素のすべてを更新することを特徴とする請求項に記載のエンコーディング方法。
  7. 低密度パリティチェックコード(LDPC)マトリックスのベースグラフ(base graph)を決定し、循環係数指数マトリックスを構築するように構成された第1のユニットと、
    前記循環係数指数マトリックスに従って、サブ循環マトリックスを決定するように構成された第2のユニットと、
    前記サブ循環マトリックスおよび前記base graphに従って、LDPCエンコーディングを実行するように構成された第3のユニットと、を備え、
    前記循環係数指数マトリックスを構築することは、
    サポートされるサブ循環マトリックスの次元Zの集合を複数のサブ集合に分割する第1のステップと、
    各前記サブ集合に対し、循環係数指数マトリックスを生成する第2のステップと、
    前記循環係数指数マトリックスに従って、複数のサブ集合のZに対応する循環係数を決定する第3のステップとを備え、
    Z=a×2であり、前記第1のステップが、aの値に従ってZを複数のサブ集合に分割する第1の方式で実行され、ここで、
    Figure 0007091375000036
    であり、
    前記第3のステップは、以下の式により各Zに対応する循環係数P i,j を決定し、
    Figure 0007091375000037
    ここで、V i,j は、循環係数指数マトリックスの(i、j)番目の要素に対応する循環係数であり、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000038
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000039
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000040
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000041
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示され、
    Figure 0007091375000042
    または、
    前記第1の方式が採用されるとき、決定された循環係数指数マトリックスが以下の表によって示されることを特徴とするエンコーディング方法。
    Figure 0007091375000043
  8. 請求項1から請求項のいずれか一項に記載の方法をコンピュータに実行させるように構成されたコンピュータ実行可能命令を記憶することを特徴とするコンピュータ記憶媒体。
JP2019572228A 2017-06-26 2018-05-15 エンコーディング方法および装置、コンピュータ記憶媒体 Active JP7091375B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710496055.X 2017-06-26
CN201710496055.XA CN109120275B (zh) 2017-06-26 2017-06-26 一种编码方法及装置、计算机存储介质
PCT/CN2018/086927 WO2019001159A1 (zh) 2017-06-26 2018-05-15 一种编码方法及装置、计算机存储介质

Publications (2)

Publication Number Publication Date
JP2020527880A JP2020527880A (ja) 2020-09-10
JP7091375B2 true JP7091375B2 (ja) 2022-06-27

Family

ID=64740333

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019572228A Active JP7091375B2 (ja) 2017-06-26 2018-05-15 エンコーディング方法および装置、コンピュータ記憶媒体

Country Status (7)

Country Link
US (1) US11038531B2 (ja)
EP (1) EP3648357B1 (ja)
JP (1) JP7091375B2 (ja)
KR (1) KR102300273B1 (ja)
CN (1) CN109120275B (ja)
TW (1) TWI679854B (ja)
WO (1) WO2019001159A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11784663B2 (en) 2019-07-16 2023-10-10 Lg Electronics Inc. Method and apparatus for performing encoding on basis of parity check matrix of low density parity check code generated from protograph in wireless communication system
CN110611510B (zh) * 2019-09-17 2021-03-23 天地信息网络研究院(安徽)有限公司 一种二元ldpc短码构造方法及其构造装置、终端、存储介质
WO2021168763A1 (en) * 2020-02-28 2021-09-02 Qualcomm Incorporated Base graph selection for multi-slot shared channel

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010279013A (ja) 2008-10-17 2010-12-09 Intel Corp Ldpc符号の符号化

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006039801A1 (en) 2004-10-12 2006-04-20 Nortel Networks Limited System and method for low density parity check encoding of data
CN101192833B (zh) * 2006-11-28 2011-12-07 华为技术有限公司 一种低密度校验码ldpc并行编码的装置及方法
US8433984B2 (en) 2007-01-24 2013-04-30 Qualcomm Incorporated LDPC encoding and decoding of packets of variable sizes
CN101686061A (zh) * 2008-09-27 2010-03-31 松下电器产业株式会社 构造低密度奇偶校验码的方法及发送/接收装置和***
US8433972B2 (en) * 2009-04-06 2013-04-30 Nec Laboratories America, Inc. Systems and methods for constructing the base matrix of quasi-cyclic low-density parity-check codes
WO2012159304A1 (zh) * 2011-06-28 2012-11-29 华为技术有限公司 低密度奇偶校验码的编码方法和装置
US10484010B2 (en) * 2016-12-20 2019-11-19 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010279013A (ja) 2008-10-17 2010-12-09 Intel Corp Ldpc符号の符号化

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CATT,LDPC Design for eMBB data channel,3GPP TSG RAN WG1 #88b R1-1704590,2017年03月25日
Samsung,CR on LDPC code [38.802],3GPP TSG RAN WG1 #89 R1-1709721,2017年05月19日

Also Published As

Publication number Publication date
KR20200016983A (ko) 2020-02-17
EP3648357B1 (en) 2023-04-05
CN109120275B (zh) 2021-02-05
EP3648357A1 (en) 2020-05-06
US20200145025A1 (en) 2020-05-07
KR102300273B1 (ko) 2021-09-08
US11038531B2 (en) 2021-06-15
CN109120275A (zh) 2019-01-01
TWI679854B (zh) 2019-12-11
JP2020527880A (ja) 2020-09-10
TW201906328A (zh) 2019-02-01
EP3648357A4 (en) 2020-07-01
WO2019001159A9 (zh) 2020-01-09
WO2019001159A1 (zh) 2019-01-03

Similar Documents

Publication Publication Date Title
JP6881859B2 (ja) Polar符号を用いてデータを符号化する方法及び装置
CN101741396B (zh) 可变码长ldpc码编码或译码的方法与装置及编码器和译码器
KR101789959B1 (ko) 구조적 ldpc의 인코딩 방법, 디코딩 방법, 인코딩 장치 및 디코딩 장치
JP7091375B2 (ja) エンコーディング方法および装置、コンピュータ記憶媒体
CN107370490B (zh) 结构化ldpc的编码、译码方法及装置
WO2017080249A1 (zh) 生成用于在信道中传输的低密度奇偶校验码的方法及设备
CN104917536B (zh) 一种支持低码率编码的方法及装置
JP5631846B2 (ja) 半導体メモリ装置および復号方法
CN103684474A (zh) 一种高速ldpc译码器的实现方法
JP2020528250A (ja) Polar符号化方法および装置
CN101159435A (zh) 基于移位矩阵分级扩展的低密度校验码校验矩阵构造方法
CN112332856A (zh) 一种准循环ldpc码的层译码方法及装置
CN112332857B (zh) 一种用于ldpc码的循环移位网络***及循环移位方法
TW201121250A (en) Decoding apparatus and decoding method
CN109861693B (zh) 一种译码处理的方法及译码处理装置
CN108988871A (zh) 一种编码方法及装置、计算机存储介质
JP2009182421A (ja) 復号化方法及び復号化装置
KR20220141044A (ko) 극 부호 연속 제거 비트 반전 복호 장치 및 방법
WO2016168991A1 (zh) 一种低密度校验码生成方法及装置
Park Construction of Quasi-Cyclic LDPC Codes Using a Class of Balanced Incomplete Block Designs with Irregular Block Sizes.
WO2018126914A1 (zh) 准循环低密度奇偶校验码的编码方法及装置、存储介质
CN109217879A (zh) 一种多速率低密度校验码的构造方法和装置
US10879931B2 (en) Method and apparatus for generating low-density parity-check code basis matrix
US20240007129A1 (en) Constructing method, processing device, storage medium and coding method
Srirutchataboon et al. PEG-like algorithm for LDPC codes

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191227

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210601

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220418

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: 20220516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220615

R150 Certificate of patent or registration of utility model

Ref document number: 7091375

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150