JP6798004B2 - Ldpc符号の符号化および復号化のための方法およびシステム - Google Patents

Ldpc符号の符号化および復号化のための方法およびシステム Download PDF

Info

Publication number
JP6798004B2
JP6798004B2 JP2019502694A JP2019502694A JP6798004B2 JP 6798004 B2 JP6798004 B2 JP 6798004B2 JP 2019502694 A JP2019502694 A JP 2019502694A JP 2019502694 A JP2019502694 A JP 2019502694A JP 6798004 B2 JP6798004 B2 JP 6798004B2
Authority
JP
Japan
Prior art keywords
matrix
ldpc
parity check
sub
rows
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
JP2019502694A
Other languages
English (en)
Other versions
JP2019522435A (ja
Inventor
グイド・モントルシ
セルジオ・ベネデット
ヤン・シン
ウェイ・リン
ミン・ヤン
Original Assignee
ホアウェイ・テクノロジーズ・カンパニー・リミテッド
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 ホアウェイ・テクノロジーズ・カンパニー・リミテッド filed Critical ホアウェイ・テクノロジーズ・カンパニー・リミテッド
Publication of JP2019522435A publication Critical patent/JP2019522435A/ja
Application granted granted Critical
Publication of JP6798004B2 publication Critical patent/JP6798004B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • 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
    • H03M13/1168Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices wherein the sub-matrices have column and row weights greater than one, e.g. multi-diagonal 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/1177Regular LDPC codes with parity-check matrices wherein all rows and columns have the same row weight and column weight, respectively
    • 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/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/635Error control coding in combination with rate matching
    • 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/6522Intended application, e.g. transmission or communication standard
    • H03M13/6527IEEE 802.11 [WLAN]

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (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)

Description

本出願は、モバイルエアインターフェース技術に関し、特に、バイナリ低密度パリティ検査(LDPC)符号を符号化および復号するための方法およびシステムに関する。
送信機におけるLDPC符号器は、ソース語を符号化して符号語を生成するために使用される。受信機におけるLDPC復号器は、受信した符号語を復号するために使用される。IEEE 802.11ad規格では、様々なレートのLDPC符号が採用されている。
IEEE 802.11REVmcでは、いくつかのレートの7/8 LDPC符号が提案されている。しかしながら、提案されているLDPC符号は、誤り率パフォーマンスに関して最適化されていないか、またはIEEE 802.11ad規格におけるLDPC符号とは異なる符号語長を有する。符号語長の違いは、送信機および受信機それぞれにおけるブロッキングおよびデブロッキングプロセスの実装に影響を与える可能性がある。
本開示の一実施態様によれば、ソース語を符号化するための方法が提供される。方法は、1×Kのソース語行ベクトル
を受け取るステップと、1×Nの符号語ベクトル
を生成するステップとを含み、GはK×Nの生成器行列であり、Gはパリティ検査行列Hnから導出され、Hnはリフティング係数Zを有し、Hnは複数のサブ行列を含み、各サブ行列のサイズはZ×Zであり、少なくとも1つのサブ行列はm1の「1」の対角要素を有し、m1は2以上の整数である。
本開示の一実施態様によれば、
であり、
はバイナリ行列であり、
は位数n−kの識別行列であり、「T」は行列転置を表し、パリティ検査行列は
である。
本開示の一実施態様によれば、Hnは、リフティング係数Zを用いて第1のMxNのパリティ検査行列Hを正方サブ行列に分割することであって、M=I×Zであり、N=J×Zであり、IおよびJは整数であり、Iは2より大きく、Jは0より大きく、分割パリティ検査行列Hは、(M/Z)行×(N/Z)列のサブ行列を含む、ことと、分割パリティ検査行列HのM/Z行のサブ行列からm1行を選択することと、第1の分割パリティ検査行列Hのサブ行列のm1行を、行列Hnのサブ行列の行として追加することであって、m1は2以上の整数である、こととによって生成される。一実施態様では、M−(m1×Z)+Z=N−Kである。一実施態様では、Z=42であり、N=672である。別の実施態様では、K=588であり、新しい行列Hnは84行×672列を含む。
本開示の一実施態様によれば、分割パリティ検査行列Hのサブ行列の残りのm2行は、新しい行列Hnのサブ行列の第2の新しい行として追加され、m2は1以上の整数である。一実施態様では、m2=<((M/Z)−m1)である。
本開示の一実施態様によれば、方法は、第1の分割パリティ検査行列Hのサブ行列の残りの(M/Z−m1)行からm2行を、新しい行列Hnの第2のサブ行列行として追加するステップと、第1の分割パリティ検査行列Hのサブ行列の残りの(M/Z−m1−m2)行からm3行を、新しい行列Hnの第3のサブ行列行として追加するステップと、第1の分割パリティ検査行列Hのサブ行列の残りの(M/Z−m1−m2−m3)行からm4行を、新しい行列Hnの第4のサブ行列行として追加するステップとをさらに含み、N=1344であり、Z=42であり、m1、m2、m3、およびm4は整数であり、m1+m2+m3+m4=<M/Zであり、m1>1であり、m2>=1であり、m3>=1であり、m4>=1である。
本開示の一実施態様によれば、第1のパリティ検査行列Hは、802.11adで規定されている符号化レート13/16のLDPC行列であり、第1の行列Hは126行×672列であり、Z=42であり、第2の行列Hnは、パラメータm1=2、Z=42で生成される。
本開示の一実施態様によれば、第1のパリティ検査行列Hは、符号化レート13/16の低密度パリティ検査(LDPC)行列であり、第1の行列Hは252行×1344列であり、Z=84であり、第2の行列Hnは、パラメータm1=2、Z=84で生成される。
本開示の一実施態様によれば、第2の行列Hnは、以下である。
本開示の一実施態様によれば、第2の行列Hnは、以下である。
本開示の一実施態様によれば、第1のパリティ検査行列Hは、802.11adで規定されている符号化レート3/4のLDPC行列であり、第1の行列Hは168行×672列であり、Z=42であり、第2の行列Hnは、パラメータm1=2、m2=2、Z=42で生成される。
本開示の一実施態様によれば、第1のパリティ検査行列Hは、符号化レート3/4のLDPC行列であり、第1の行列Hは336行×1344列であり、Z=84であり、第2の行列Hnは、パラメータm1=2、m2=2、Z=84で生成される。
本開示の一実施態様によれば、第2の行列Hnは、以下である。
本開示の一実施態様によれば、第2の行列Hnは、以下である。
本開示の一実施態様によれば、Hn=[H1H2]であり、H1はリフティング係数Zを有する(n−k)×(k)行列であり、H1は複数のサブ行列を含み、各サブ行列のサイズはZ×Zであり、H2は、列が最後の列を除いて重み2であるフルランクの(n−k)×(n−k)行列である。
本開示の一実施態様によれば、H1は、以下であり、
H2は
である。
本開示の一実施態様によれば、復調信号を復号するための方法が提供される。方法は、行ベクトルSを有する復調信号を受信するステップと、符号化プロセスで使用されるパリティ検査行列Hnを用いて1×Nの行ベクトルSを復号するステップと、1×Kのソース語行ベクトル
を復元するために1×Nのベクトル
を生成するステップとを含み、
であり、Hnは複数のサブ行列を含み、Hnはリフティング係数Zを有し、各サブ行列のサイズはZ×Zであり、少なくとも1つのサブ行列はm1の対角要素を有し、m1は2以上の整数である。
本開示の一実施態様によれば、上述の方法を実行するためのシステムが提供される。
本開示の一実施態様によれば、上述の方法を実施するためのシステムが提供される。一実施態様では、システムは局である。一実施態様では、システムはアクセスポイントである。一実施態様では、システムは無線送受信機ユニットである。
ここで、例として、本出願の例示的な実施形態を示す添付の図面を参照する。
本開示の一実施態様による例示的な通信システムを示すブロック図である。 本開示の一実施態様による例示的な処理システムを示すブロック図である。 本開示の送信機の例示的な実施を表すブロック図である。 本開示の情報ビットストリームを処理する方法における例示的なステップを示すブロック図である。 本開示のLDCP符号器の例示的な実施を表すブロック図である。 802.11adの例示的なシングルキャリアフレームフォーマットを示す図である。 802.11adのシングルキャリアフレームフォーマットのデータブロックの例示的な構造を示す図である。 符号語長が672の、IEEE802.11adで規定されているLDPCパリティ検査行列である。 符号語長が672の、IEEE802.11adで規定されているLDPCパリティ検査行列である。 符号語長が672の、IEEE802.11adで規定されているLDPCパリティ検査行列である。 符号語長が672の、IEEE802.11adで規定されているLDPCパリティ検査行列である。 4×4単位行列から得られる巡回置換サブ行列を示す。 符号語長が1344の、IEEE802.11ayで提案されているLPDCパリティ検査行列である。 符号語長が1344の、IEEE802.11ayで提案されているLPDCパリティ検査行列である。 符号語長が1344の、IEEE802.11ayで提案されているLPDCパリティ検査行列である。 符号語長が1344の、IEEE802.11ayで提案されているLPDCパリティ検査行列である。 802.11adおよび802.11REVmcにおける異なる変調技術を用いたシングルキャリアブロッキングを示す図である。 802.11adおよび802.11REVmcにおける異なる変調技術を用いたシングルキャリアブロッキングを示す図である。 802.11adおよび802.11REVmcにおける異なる変調技術を用いたシングルキャリアブロッキングを示す図である。 本開示の一実施形態による、LDPC符号化のためのパリティ検査行列Hnを生成するプロセスにおける例示的なステップを示すブロック図である。 本開示による802.11におけるレート13/16のLDPCに基づく例示的な符号化レート7/8のLDPCパリティ検査行列Hnを示す図である。 本開示による802.11におけるレート13/16のLDPCに基づく例示的な符号化レート7/8のLDPCパリティ検査行列Hnを示す図である。 本開示による802.11におけるレート3/4のLDPCに基づく例示的な符号化レート7/8のLDPCパリティ検査行列Hnを示す図である。 本開示による802.11におけるレート3/4のLDPCに基づく例示的な符号化レート7/8のLDPCパリティ検査行列Hnを示す図である。 本開示によるLDPCパリティ検査行列Hnの例示的なサブ行列を示す図である。 本開示の一実施形態により生成された例示的なLDPCパリティ検査行列Hnを示す図である。 異なる変調方法を用いた様々なLDPC符号のパフォーマンスを示す図である。 異なる変調方法を用いた様々なLDPC符号のパフォーマンスを示す図である。 異なる変調方法を用いた様々なLDPC符号のパフォーマンスを示す図である。 異なる変調方法を用いた様々なLDPC符号のパフォーマンスを示す図である。 異なる変調方法を用いた様々なLDPC符号のパフォーマンスを示す図である。 異なる変調方法を用いた様々なLDPC符号のパフォーマンスを示す図である。 本開示の受信機の例示的な実施を表すブロック図である。 本開示の一実施形態による受信信号を復号するプロセスにおける例示的なステップを表すブロック図である。 本開示のLDCP復号器の例示的な実施を表すブロック図である。 例示的なLDPC復号プロセスを示す図である。
図面全体を通して、類似の要素および特徴を示すために同一の参照番号が使用されている。本発明の態様は、図示の実施形態と併せて説明されるが、本発明をそのような実施形態に限定することを意図するものではないことが理解されよう。
本開示は、無線ネットワークにおいてソース語を符号化し、符号語を復号するための方法、デバイス、およびシステムを教示する。主に802.11adネットワークに関して以下に説明するが、本開示は他のブロッキング符号化ベースのシステムにも適用され得る。
図1Aは、複数の局(STA)102とアクセスポイント(AP)104とを備える通信ネットワーク100を示す。STA102およびAP104のそれぞれは、本明細書で説明されるように、送信機、受信機、符号器、および/または復号器を含むことができる。ネットワーク100は、IEEE802.11ネットワーク、第5世代(5G)または第4世代(4G)電気通信ネットワーク、新世代通信規格(LTE)、第3世代パートナーシッププロジェクト(3GPP)、ユニバーサル移動体通信システム(UMTS)および他の無線または移動体通信ネットワークを含むがこれらに限定されない1つ以上の通信またはデータ規格または技術によって動作し得る。STA102は、一般に、無線通信を提供することができ、または802.11プロトコルを使用することができる任意のデバイスとすることができる。STA102は、ラップトップ、デスクトップPC、PDA、アクセスポイントまたはWi-Fi電話、無線送受信ユニット(WTRU)、移動局(MS)、携帯端末、スマートフォン、携帯電話、または他の無線対応コンピューティングまたはモバイルデバイスであり得る。一部の実施形態では、STA102は、通信ネットワーク100内でデータを送信、受信、または送信および受信する能力を有しつつも通信以外の主要機能を実行する機械を備える。一実施形態では、機械は、通信ネットワーク100を介してデータを送信および/または受信するための手段を有する機器またはデバイスを含むが、そのような機器またはデバイスは通常、通信の主目的のためにユーザによって操作されない。AP104は、基地局(BS)、発展型ノードB(eNB)、無線ルータ、またはネットワーク100内のSTA102のための無線送信および/または受信ポイントとして機能する他のネットワークインターフェースを備えることができる。AP104は、AP104と他の遠隔ネットワーク、ノード、AP、およびデバイス(図示せず)との間でデータを交換することを可能にするバックホールネットワーク110に接続されている。AP104は、図1Aの矢印によって表されるように、各STA102とのアップリンクおよびダウンリンク通信チャネルを確立することによって、各STA102との通信をサポートすることができる。ネットワーク100内の通信は、スケジュールされていなくてもよく、AP104によって、またはネットワーク100内のスケジューリングもしくは管理エンティティ(図示せず)によってスケジュールされていてもよく、またはスケジュールされた通信とスケジュールされていない通信との混合でもよい。
図1Bは、STA102またはAP104など、本明細書に記載の方法およびシステムを実装するために使用され得る例示的な処理システム150を示す。処理システム150は、例えば、基地局、無線ルータ、モバイルデバイス、または任意の適切な処理システムであり得る。本開示を実施するのに適した他の処理システムを使用することができ、それは以下に論じるものとは異なる構成要素を含むことができる。図1Bは各構成要素の単一のインスタンスを示しているが、処理システム150内には各構成要素の複数のインスタンスがあってもよい。
処理システム150は、プロセッサ、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、専用論理回路、またはそれらの組み合わせなどの1つ以上の処理デバイス152を含むことができる。処理システム150はまた、1つ以上の適切な入力デバイスおよび/または出力デバイス(図示せず)とのインターフェースを可能にすることができる1つ以上の入出力(I/O)インターフェース154を含むことができる。1つ以上の入力デバイスおよび/または出力デバイスは、処理システム150の構成要素として含まれてもよく、または処理システム150の外部にあってもよい。処理システム150は、限定はしないが、イントラネット、インターネット、P2Pネットワーク、WAN、LAN、WLANおよび/またはセルラー、あるいは5G、4G、LTEなどの移動体通信ネットワークまたは上記のような他のネットワークなどのネットワークとの有線または無線通信のための1つ以上のネットワークインターフェース158を含むことができる。ネットワークインターフェース208は、ネットワーク内および/またはネットワーク間通信のための有線リンク(例えば、イーサネット(登録商標)ケーブル)および/または無線リンク(例えば、1つ以上の無線周波数リンク)を含むことができる。ネットワークインターフェース158は、例えば、1つ以上の送信機または送信アンテナ、1つ以上の受信機または受信アンテナ、ならびに様々な信号処理ハードウェアおよびソフトウェアを介して無線通信を提供することができる。この例では、送信アンテナと受信アンテナの両方として機能することができる単一のアンテナ160が示されている。しかしながら、他の例では、送信用と受信用に別々のアンテナがあってもよい。ネットワークインターフェース158は、バックホールネットワーク110またはネットワーク100内の他のユーザデバイス、アクセスポイント、受信ポイント、送信ポイント、ネットワークノード、ゲートウェイまたはリレー(図示せず)とデータを送受信するように構成することができる。
処理システム150は、ソリッドステートドライブ、ハードディスクドライブ、磁気ディスクドライブおよび/または光ディスクドライブなどの大容量記憶装置を含むことができる1つ以上のストレージ170も含むことができる。処理システム150は、揮発性または不揮発性メモリ(例えば、フラッシュメモリ、ランダムアクセスメモリ(RAM)、および/または読み出し専用メモリ(ROM))を含むことができる1つ以上のメモリ172を含むことができる。非一時的メモリ172は、本開示を実行するなどの、処理デバイス152による実行のための命令を格納することができる。メモリ172は、オペレーティングシステムおよび他のアプリケーション/機能を実装するなどの、他のソフトウェア命令を含むことができる。一部の例では、1つ以上のデータセットおよび/またはモジュールは、外部メモリ(例えば、処理システム150と有線または無線通信している外部ドライブ)によって提供され得るか、一時的または非一時的なコンピュータ可読媒体によって提供され得る。非一時的なコンピュータ可読媒体の例は、RAM、ROM、消去可能プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、フラッシュメモリ、CD-ROM、または他の携帯用メモリストレージを含む。
処理システム150は、ソース語を符号語に符号化するための符号器162、および/または符号語をシンボルに変調するための変調器164を含むことができる。符号器162は、ビット単位の符号語を生成するためにソース語に対して符号化を実行することができる。次に、変調器164は、(例えば、BPSK、QPSK、16QAM、または64QAMなどの変調技術によって)符号語に対して変調を実行することができる。一部の例では、符号器162および/または変調器164が、処理システム150の別個のモジュールではない可能性があるため、メモリ172にコーディングされた命令は、符号器162および/または変調器164の機能を実行するように処理デバイス152を構成することができる。一部の例では、符号器162および変調器164は、処理システム150内の送信機モジュール内に具現化することができる。一部の例では、送信アンテナ160、符号器162、および変調器164は、処理システム150の外部の送信機構成要素として具現化することができ、処理システム150からのソース語を単に伝えることができる。
処理システム150は、受信信号を処理するための復調器180および復号器190を含むことができる。復調器180は、受信した変調信号(例えば、BPSK、QPSK、16QAM、または64QAM信号)に対して復調を実行することができる。次いで、復号器190は、受信信号に含まれる元の信号を復元するために、復調信号に対して適切な復号化を実行することができる。一部の例では、復調器180および/または復号器190が、処理システム150の別個のモジュールではない可能性があるため、メモリ172にコーディングされた命令は、復調器180および/または復号器190の機能を実行するように処理デバイス152を構成することができる。一部の例では、復調器180および復号器190は、処理システム150内の受信機モジュール内に具現化することができる。一部の例では、受信アンテナ160、復調器180、および復号器190は、処理システム150の外部の受信機構成要素として具現化することができ、受信信号から復号された信号を処理システム150に単に伝えることができる。
処理デバイス152、I/Oインターフェース154、ネットワークインターフェース158、符号器162、変調器164、ストレージ170、メモリ172、復調器180、および復号器190を含む処理システム150の構成要素間の通信を提供するバス192があってもよい。バス192は、例えば、メモリバス、周辺バス、またはビデオバスを含む任意の適切なバスアーキテクチャであってもよい。
ネットワーク100内のSTA102とAP104との間の通信は、送信されるソース語を低密度パリティ検査(LDPC)符号化技術を使用して符号化することによって、および/または受信した符号語をLDPC符号復号化技術を使用して復号することによって実施することができる。LDPC符号化技法を用いてソース語が符号化された後、符号化された符号語がAP104からSTA102へ、またはSTA102からAP104への信号で送信されるとき、送信信号のLDPC符号化情報は、送信フレーム内に含まれ得る。受信信号のLDPC符号化情報とともに送信信号がSTA102またはAP104によって受信された後、STA102またはAP104は、受信信号を復号するための適切なLDPC復号技術を選択することができる。
送信機および符号器
図2Aは、STA102またはAP104の送信機の実装例を表す。送信機は、ソース語分割モジュール202、LDPC符号器204、ビット対シンボルマッピング変調器206、およびブロッキングモジュール208を含むことができる。
図2Bは、送信機によって入力情報ビットストリームを処理する例示的なステップを示す。
ソース語分割モジュール202は、入力情報ビットストリームを適切なサイズを有するソース語に分割する(ステップ222)ために使用することができる。例えば、ソース語分割モジュール202を用いて、入力情報ビットストリームは、336ビット(802.11adの1/2符号化レートの場合)、420ビット(802.11adの5/8符号化レートの場合)、504ビット(802.11adの3/4符号化レートの場合)、546ビット(802.11adの13/16の符号化レートの場合)、および588ビット(符号語サイズが672ビットである7/8符号化レートの場合)のサイズのソース語に分割することができる。Kビットのソース語は、1×K行ベクトルまたは1次元バイナリ1×K行列と見なすことができる。例えば、588ビットのソース語は、1×588行ベクトルまたは1次元バイナリ1×588行列と見なすことができる。
次いで、ソース語は、LDPC符号器204を用いて符号語に符号化することができる(ステップ224)。図3は、LDPC符号器204の例示的な実装形態を表す。一実施形態では、LDPC符号器204は、LDPC行列生成器302、生成器行列モジュール304、ソース語入力インターフェース306、および符号語生成器308を含むことができる。
LDPCパリティ検査行列生成器302は、例えばN=672、K=588であるバイナリ(N−K)×N行列であるLDPCパリティ検査行列Hを生成することができる。LDPC符号は、機能的に疎パリティ検査行列によって定義される。(n、k)LDPC符号は、{0、1}nのk次元サブ空間を有する線形バイナリブロック符号Cである。ガウス消去および列の並べ替えを使用すると、系統的な形式で等価なパリティ検査行列H=[P(n−k)×kI(n−k)]が得られ、ここでP(n−k)×kはバイナリ行列であり、I(n−k)は位数n−kの識別行列である。
LDPC行列生成器302によって生成されたLDPCパリティ検査行列に基づいて、生成器行列モジュール304は、生成器行列Gを生成することができる。Hに対応する体系的な形式の生成器行列Gは、G=[IkPT]とすることができ、「T」は行列転置を表す。生成器行列Gは、バイナリK×N行列である。Gの行空間は、GHT=0となるようにHと直交している。したがって、LDPC符号化では、Hが設計されると、それに応じてGも決定することができる。同様に、行列Hは
を満たし、
は、Nビットの符号語である。生成器行列モジュール304は、次に、生成されたバイナリ(K×N)生成器行列Gを符号語生成器308に転送する。
ソース語入力インターフェース306は、ソース語分割モジュール202からソース語を受ける。前述したように、受信したソース語は行ベクトル
と見なすことができる。ソース語入力インターフェース306は、次に、受信したソース語を符号語生成器308に転送する。ソース語
とバイナリ(K×N)生成器行列Gとを用いて、ソース語と生成器行列G
とを乗算することによって、符号語生成器308はNビットの符号語
を生成する。
一実施形態では、生成器行列Gは、LDPC符号器204内に事前に格納することができる。ソース語
が符号語生成器308によって受信された後、符号語生成器308は、LDPC行列Hまたは生成器行列Gを生成せずに、符号語
を生成してもよい。
図2を参照すると、符号化された符号語
は、次に、ビット対シンボルマッピング変調器206においてシンボルに変調される(ステップ226)。適切な変調技術は、BPSK、QPSK、16QAM、または64QAMであり得るが、これらに限定されない。BPSK、QPSK、および16QAM変調は、802.11adで規定されている。64QAM変調は、802.11REVmcで採用されている。BPSK変調では、バイナリビットは単にバイポーラ{−1、1}シンボルになるようにマッピングされる。QPSK、16QAMおよび64QAM変調では、入力符号化ビットストリーム(ビット単位の符号語
)は、それぞれ2、4および6ビットのセットにグループ化される。各ビットセットは、対応するコンスタレーション上のシンボルにマッピングされる。例えば、BPSK、QPSK、16QAM、および64QAMの場合、シンボルはそれぞれ1ビット、2ビット、4ビット、および6ビットを表す。複数のシンボルは、変調された符号語としてグループ化されてもよい。例えば、変調された符号語は、336のシンボル(802.11adのSC QPSKブロッキング用)、168のシンボル(802.11adのSC 16QAMブロッキング用)、112のシンボル(802.11adのSC 64QAMブロッキング用)を含むことができる。
変調された符号語は、ブロッキングモジュール208において適切なサイズのデータブロック(BLK)にさらに組み立てられてもよい(ステップ228)。一実施形態では、組み立てられたデータブロックは、802.11ad規格で規定されているように448のシンボルを含むことができる。
したがって、図2の送信機は、802.11ad規格で必要とされるデータブロックを生成するために使用することができる。
図4Aは、802.11ad規格の例示的なシングルキャリア(SC)フレーム構造を示す。フレームは、ショートトレーニングフィールド(STF)、チャネル推定(CE)フィールド、PHYヘッダ、SCデータブロック(BLK)、ならびにビーム形成トレーニングのための任意選択の自動利得制御(AGC)およびTRN−R/Tサブフィールドを含む。802.11ad規格のSCフレームは、図4Aおよび4Bに示すように、複数のBLKを含むことができる。
図4Bは、802.11ad規格によるSCデータブロック(BLK)の例示的な構成を示す。図4Bでは、各BLKは448のシンボルからなる。隣接するデータブロックを分離するために、2つの隣接するBLKごとに64ビットのガードインターバル(GI)が使用される。
802.11adにおける符号語長672のLDPC符号
LDPC符号化符号語はソース語と生成器行列Gとの演算を通して生成され、生成器行列GはLDPCパリティ検査行列Hから導出されるので、LDPCパリティ検査行列Hはソース語の符号語への符号化に影響を与える。LDPCパリティ検査行列Hの設計は、符号のパフォーマンスを向上させるかもしれない。パリティ検査行列Hは、サイズZ×Zの正方サブ行列にさらに分割されてもよい。Zはリフティング係数である。サブ行列は、単位行列の巡回置換、またはすべてのエントリが0のヌルサブ行列のいずれかである。
インデックスiを有する位置は、列をi要素分右に巡回シフトすることによってZ×Z単位行列P0から得られる巡回置換サブ行列Piを示す。
図5A〜図5Dは、802.11adで規定されている1/2、5/8、3/4、および13/16のレートの4つのLDPC符号のパリティ検査行列を示す。802.11adでは、各LDPC符号は672ビットの共通符号語長を有する。符号化レートK/Nは、Kビットのソース語がNビットの符号語に符号化されることを示す。802.11ad規格に関して、符号語長Nは672ビットである。したがって、1/2、5/8、3/4、および13/16の符号化レートの場合、対応するソース語のサイズは、それぞれ336ビット、420ビット、504ビット、および546ビットである。
図5Eは、Z×Z単位行列P0から得られる例示的な巡回置換サブ行列P1およびP3を示す。図5Eでは、Z=4である。P1はP0の列を1要素分右にシフトすることによって得られ、P3はP0の列を3要素分右にシフトすることによって得られる。
図5Aでは、値「0」のサブ行列は、42×42の単位サブ行列であるP0を表し、図5Aにおいて値「40」を有する第1のサブ行列は、P0の列を40要素分右にシフトすることによって得られる。同様に、図5B〜図5Dにおける任意の非ゼロ値iのサブ行列Piもまた、それぞれの単位行列P0から得ることができる。
図5Aは、符号化レート1/2のLDPCパリティ検査行列H=336行×672列を示しており、Z=42である。図5Bは、符号化レート5/8のLDPCパリティ検査行列H=252行×672列を示しており、Z=42である。図5Cは、符号化レート3/4のLDPCパリティ検査行列H=168行×672列を示しており、Z=42である。図5Dは、符号化レート13/16のLDPCパリティ検査行列H=126行×672列を示しており、Z=42である。図5A〜図5Dにおいて、空白のエントリは、すべてゼロのエントリを有するZ×Zのサブ行列を表す。
802.11ayにおける符号語長1344のLDPC符号
図6A〜図6Dは、802.11ayで提案されている13/16、3/4、5/8および1/2のレートの4つのLDPC符号を示す。符号化レートK/Nは、Kビットのソース語がNビットの符号語に符号化されることを示す。802.11ay規格に関して、符号語長Nは1344ビットである。したがって、13/16、3/4、5/8および1/2の符号化レートの場合、対応するソース語のサイズは、それぞれ1092、1008、840および672ビットである。
図6A〜図6Dに示すLDPC符号は、2段階リフティングによって生成される。図6Aの例では、符号語長1344のレート13/16のLDPC符号606は、リフティング行列602と、図5Dに示したようなリフティング係数Z=42の802.11adのレート13/16のベース行列604とから生成される。言い換えれば、ベース行列604は、Z=42で126行×672列を有する、または3行×16列のサブ行列を有する。
図6Aに示すように、リフティング行列602は、802.11adのレート13/16のベース行列604と同じ行および列のサブ行列を有する。
リフティング行列602は、第2のリフティングを提供するためにIEEE802.11ay規格において提案されている。リフティング行列602の各エントリは、3つの可能な値「1」、「0」、および「−1」のうちの1つを有する。ベース行列604のサブ行列が「−1」として表されるヌルである場合、リフティング行列604内の対応するエントリもまた「−1」として表される。例えば、リフティング行列604の行1、列16のエントリは、ベース行列602の行1、列16のサブ行列に対応する。リフティング行列604のエントリおよびベース行列602のサブ行列は両方とも、値「−1」を有する。
符号語長1344の13/16 LDPC符号606を生成するために、符号語長672の13/16 LDPCベース行列604にリフティング行列602が適用される。特に、ベース行列604の値「V」を有するサブ行列について、対応するリフティング行列602のエントリが値「1」を有する場合、リフト行列602をベース行列604に適用すると、以下の4つのサブ行列が生成される。
ベース行列604の値「V」を有するサブ行列について、対応するリフティング行列602のエントリが値「0」を有する場合、リフト行列602をベース行列604に適用すると、以下の4つのサブ行列が生成される。
図6Aにおいて、値「1」を有するリフティング行列602の行1、列1の対応するエントリとして、ベース行列604の値「29」を有する行1、列1のサブ行列の例では、リフティング行列602のエントリをベース行列604の対応するサブ行列に適用すると、以下の4つのサブ行列が生成される。
同様に、値「0」を有するリフティング行列602の行3、列9の対応するエントリとして、ベース行列604の値「4」を有する行3、列9のサブ行列の例では、リフティング行列602のエントリをベース行列604の対応するサブ行列に適用すると、以下の4つのサブ行列が生成される。
ベース行列604内の値「−1」を有するサブ行列について、リフティング行列602の対応するエントリもまた値「−1」を有する。リフティング行列602内の値「−1」を有する1つのエントリをベース行列604内の対応するサブ行列に適用すると、4つのヌルサブ行列が生成される。
同様に、符号語長1344のレート13/16のLDPC符号に関して上述したものと同じ規則を用いて、図6B〜図6Dに示すように、対応するリフティング行列602を802.11adの符号語長672のレート3/4、5/8および1/2ベース行列604に適用すると、符号語長1344のレート3/4、5/8および1/2のLDPC符号が生成される。
同様に、符号語長1344のLDPC符号は、リフティング係数Zを増加させることによっても生成することができる。特に、サブ行列サイズ672×2=1344を有する符号を構成するために、ベース行列の構造および列位置シフトはそのままであるが、リフティング係数はZ=42からZ=84に増加する。例えば、802.11adの符号語長672の3/4ベース行列は、図5Cに示すように、168行×672列を含み、Z=42である。言い換えれば、3/4ベース行列は4行×16列のサブ行列を含み、各サブ行列はZ×Z(42×42)のサイズを有する。リフティング係数Zが42から84に増加すると、4行×16列のサブ行列を含む3/4ベース行列は、336行×1344列になる。
提案されている符号
802.11ad規格は、符号化レート7/8のLDPC符号を規定していない。符号語長624のレート7/8のLDPC符号が802.11 REVmcに導入される。802.11 REVmcのレート7/8のLDPC符号は、802.11adで規定されている既存のレート13/16のLDPC符号に基づいて、レート13/16の符号語から最初の48パリティビットをパンクチャすることによって生成される。実施において、送信機はパンクチャされたビットを送信せず、受信機はパンクチャされたビットについて1/0の等しい尤度を置く。レート7/8の符号のソース語および符号語のサイズは、それぞれ546ビットおよび624ビットである。
符号語長1248のレート7/8 LDPC符号が802.11 ayに導入される。802.11ayのレート7/8 LDPC符号は、符号語長1344のレート13/16 LDPC符号から最初の96のパリティビットをパンクチャすることによって生成される。実施において、送信機はパンクチャされたビットを送信せず、受信機はパンクチャされたビットについて1/0の等しい尤度を置く。レート7/8符号のソース語および符号語のサイズは、それぞれ1092ビットおよび1248ビットである。
802.11 REVmcおよび802.11ayで導入された7/8 LDPC符号は最適化されていないため、それらのパフォーマンスにはさらなる改善が必要になる場合がある。
さらに、LDPC符号語のサイズが802.11adの標準672ビットから802.11 REVmcでは624ビットに変更され、レート1/2、5/8、3/4、13/16の1344ビットから802.11ayではレート7/8の1248ビットに変更された。しかしながら、変調符号語は依然として802.11adでは448シンボル、802.11ayでは896シンボルのブロックサイズを有するデータブロックに組み立てられるので、変調符号語をデータブロックに組み立てるブロッキングプロセスをそれに応じて変更しなければならない。データブロックの組み立てにおけるこれらの変更は、802.11REVmcで導入された7/8 LDPC符号または802.11ayに提案されたLDPC符号のための符号化および復号を実施するための追加のプロセスを必要とする。
例えば、図7Aは、802.11adおよび802.11REVmcにおけるSC QPSKブロッキングの例を示す。802.11adでは、QPSKによって、変調後の1つの672ビット符号語は、1つの336シンボル符号語になる。3つのSCデータブロックはすべて4つの336シンボル符号語から構成され、各448シンボルデータブロックは2つの336シンボル符号語から構成される、すなわち448=336+112または448=224+224である。しかしながら、802.11REVmcでは、最初の48パリティビットがレート13/16 LDPC符号からパンクチャされているので、各符号化符号語は624ビットを含み、QPSKでは、変調後の1つの624ビット符号語は1つの312シンボル符号語になる。その結果、ブロッキングプロセスはより複雑になり、39のデータブロックはすべて56の符号語から構成され、各データブロックは2個または3の符号語から構成され、例えば448=312+136、または448=176+272、または448=40+312+96、または448=216+232などである。
図7Bは、802.11adおよび802.11REVmcにおけるSC 16QAMブロッキングの例を示す。802.11adでは、16QAMによって、変調後の1つの672ビット符号語は、1つの168シンボル符号語になる。3つのSCデータブロックはすべて7つの168シンボル符号語から構成され、各448シンボルデータブロックは3つまたは4つの168シンボル符号語から構成される、すなわち448=168+168+112または448=56+168+168+56である。しかしながら、802.11REVmcでは、各符号化符号語は624ビットを含み、16QAMでは、変調後の1つの624ビット符号語は1つの156シンボル符号語になる。その結果、ブロッキングプロセスはより複雑になり、39のデータブロックはすべて112の符号語から構成され、各データブロックは3または4の符号語から構成され、例えば、448=156+156+136、448=20+156+156+116などである。
同様に、図7Cは、802.11adおよび802.11REVmcにおけるSC 64QAMブロッキングの例を示す。802.11adでは、64QAMによって、変調後の1つの672ビット符号語は、1つの112シンボル符号語になる。各448シンボルデータブロックは4つの112シンボル符号語から構成される、すなわち448=112+112+112+112である。しかしながら、802.11REVmcでは、変調後の1つの624ビット符号語は、1つの104シンボル符号語になる。その結果、ブロッキングプロセスはより複雑になり、13のデータブロックはすべて56の符号語から構成され、各データブロックは5または6の符号語から構成される。
また、802.11 REVmcで導入されたレート7/8のLDPC符号は、802.11adで規定されている672ビットのLDPC符号語とは異なる符号語長(624ビット)を有するため、この違いにより、送信機におけるソース語の符号化および受信機における符号語の復号がより複雑になる。
新しい符号
本開示の一実施形態では、1×Kのソース語行ベクトル
は、LDPC符号器204において、1×Nの符号語ベクトル
に符号化することができる。GはKxNの生成器行列である。Gは、リフティング係数Zを有する(N−K)×Nのパリティ検査行列H=[P(n−k)×kI(n−k)
から導出することができる。
はバイナリ行列であり、
は位数N〜Kの識別行列である。Hnは複数のサブ行列を含み、各サブ行列はZ×Zのサイズを有する。Hn内の少なくとも1つのサブ行列はm1の「1」の対角要素を含み、m1は2以上の整数である。
次に、GがHから導き出される、すなわち
である。「T」は行列
転置を表す。
本開示の一実施形態において、K/NレートのLPDCパリティ検査行列Hnは、LDPC行列生成器302において、リフティング係数Zを用いて、M×Nのパリティ検査行列Hから生成されてもよく、ここでM=IxZ、N=JxZ、IおよびJは2以上の整数である。図8に示すように、M×Nのパリティ検査行列Hは、サイズZ×Zの正方サブ行列にさらに分割されてもよい(ステップ802)。分割パリティ検査行列Hは、(M/Z)行×(N/Z)列のサブ行列を含む。言い換えれば、分割パリティ検査行列Hは、M/Zの検査ノードとN/Zの変数ノードとを含む。K/NレートのLPDC符号は、分割パリティ検査行列Hからリフティング係数Zを用いて新しいパリティ検査行列Hnを生成することによって得ることができる。特に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列のM/Zの行からm1行を選択する(ステップ804)ことができ、ここでm1>=2であり、分割パリティ検査行列Hのサブ行列のm1行を新しい行列Hnのサブ行列の新しい1行として追加する(ステップ806)ことができる。分割パリティ検査行列Hのサブ行列の残りの行((M/Z)−m1)のそれぞれは、新しい行列Hnの1行になる。この場合、新しいパリティ検査行列行列Hnは、((M/Z)−m1+1)行×(N/Z)列のサブ行列を含む。言い換えれば、新しいパリティ検査行列Hnは、(((M/Z)−m1+1)×Z)=N−Kを含む。
一実施形態では、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列の残りの行((M/Z)−m1)からm2行を新しい行列Hnのサブ行列の第2の新しい行として追加する(ステップ808)ことができ、ここでm1およびm2は整数であり、m1+m2=<M/Z、m1>1およびm2>=1である。一実施形態では、m2+m2=M/Zであり、したがって、この実施形態では、新しい行列Hnは、2行X(N/Z)列のサブ行列を含む。
一実施形態では、N=672、Z=42であり、LDPCパリティ検査行列Hnは、M行X672列のLDPCパリティ検査行列Hから生成することができ、Z=42である。M×672パリティ検査行列Hは、サイズ42×42の正方行列にさらに分割することができる。分割パリティ検査行列Hは、(M/42)行×(672/42)列のサブ行列を含む。言い換えれば、分割パリティ検査行列Hは、Mの検査ノードと672の変数ノードとを含む。一実施形態では、7/8レートのLPDC符号は、分割パリティ検査行列Hから、Z=42である新しい行列Hnに基づいて得られてもよい。特に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列のm1行を新しい行列Hnの最初のサブ行列行として追加する。一実施形態では、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列の残りの行((M/Z)−m1)からm2行を新しい行列Hnのサブ行列の第2行として追加し、ここでm2>=1、およびm2+m2=<M/42である。一実施形態では、m2+m2=M/42であり、したがって、この実施形態では、新しい行列Hnは、2行×(672/42)列のサブ行列を含む。
一実施形態では、N=1344、Z=84であり、LDPCパリティ検査行列Hnは、M行×1344列のLDPCパリティ検査行列Hに基づいて生成することができ、Z=84である。M×1344パリティ検査行列Hは、サイズ84×84の正方行列にさらに分割することができる。分割パリティ検査行列Hは、(M/84)行×(1344/84)列のサブ行列を含む。言い換えれば、分割パリティ検査行列Hは、Mの検査ノードと1344の変数ノードとを含む。一実施形態では、7/8レートのLDPC符号は、分割パリティ検査行列Hから、Z=84である新しい行列Hnに基づいて得られてもよい。特に、第1に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列のm1行を新しい行列Hnの最初のサブ行列行として追加する。第2に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列のm2行を、新しい行列Hnの第2のサブ行列行として追加する。M1およびm2は整数であり、m1+m2=<M/84、m1>1およびm2>=1である。一実施形態では、m1+m2=M/84であり、したがって、この実施形態では、新しい行列Hnは、2行×16列のサブ行列を含み、Z=84である。
一実施形態では、N=1344、Z=42であり、LDPCパリティ検査行列Hnは、M行×1344列のLDPCパリティ検査行列Hに基づいて生成することができ、Z=42である。M×1344パリティ検査行列Hは、サイズ42×42の正方行列にさらに分割することができる。分割パリティ検査行列Hは、(M/42)行×(1344/42)列のサブ行列を含む。言い換えれば、分割パリティ検査行列Hは、Mの検査ノードと1344の変数ノードとを含む。一実施形態では、7/8レートのLPDC符号は、分割パリティ検査行列Hから、Z=42である新しい行列Hnに基づいて得られてもよい。特に、第1に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列のm1行を新しい行列Hnの最初のサブ行列行として追加する。第2に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列のm2行を、新しい行列Hnの第2のサブ行列行として追加する。第3に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列のm3行を新しい行列Hnの第3のサブ行列行として追加する。最後に、LDPC行列生成器302は、分割パリティ検査行列Hのサブ行列の残りの行からm4行を新しい行列Hnのサブ行列の4行目として追加する。m1、m2、m3、およびm4は整数であり、m1+m2+m3+m4<M/42であり、m1>1、m2>=1、m3>=1、およびm4>=1である。一実施形態では、m1+m2+m3+m4=M/42であり、したがって、新しい行列Hnは、4行×32列のサブ行列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=126、N=672、Z=42であり、新しい行列Hnは84行×672列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=168、N=672、Z=42であり、新しい行列Hnは84行×672列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=252、N=672、Z=42であり、新しい行列Hnは84行×672列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=336、N=672、Z=42であり、新しい行列Hnは84行×672列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=252、N=1344、Z=42であり、新しい行列Hnは168行×1344列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=336、N=1344、Z=42であり、新しい行列Hnは168行×1344列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=504、N=1344、Z=42であり、新しい行列Hnは168行×1344列を含む。
一実施形態では、LDPCパリティ検査行列Hでは、M=672、N=1344、Z=42であり、新しい行列Hnは168行×1344列を含む。
新しい行を生成するために分割パリティ検査行列HのM/Z行のサブ行列からm1、m2、m3、またはm4行を追加することによって、新しい行の少なくとも1つのサブ行列は、図11の例に示すように、m1、m2、m3、またはm4の「1」の対角要素を含み、これについては後述する。
一実施形態では、7/8レートのLDPCパリティ検査行列Hnは、802.11adで規定されているレート13/16のLDPC符号のZ=42であり、126行×672列を含むHから生成されてもよく、またはZ=84であり、252行x1344列を含むレート13/16のLDPCパリティ検査行列Hから生成されてもよい。
図5Dに示すように、レート13/16のLDPCパリティ検査行列Hは、126行×672列、Z=42である。言い換えれば、レート13/16のLDPCパリティ検査行列Hは、3(=126/42)行×16(=672/42)列の分割サブ行列を含み、各サブ行列のサイズは42×42である。一実施形態では、7/8レートLDPC符号は、802.11adのレート13/16のLDPCパリティ検査行列Hの分割サブ行列の第2行と共に第1行を選択し、分割サブ行列の第2行と共に第1行を新しいLDPCパリティ検査行列Hnの第1行として追加することによって得ることができる。残りの第3行は、新しいLDPCパリティ検査行列Hnの第2行として選択される。図9Aに示すように、新しいLDPCパリティ検査行列Hnは、42×42の2行×16列のサブ行列を含む。
同様に、符号語長1344のレート13/16のLDPCパリティ検査行列Hは、3(=252/84)行×16(=1344/84)列の分割サブ行列を含み、Z=84であり、各サブ行列のサイズは84×84である。一実施形態では、7/8レートのLDPC符号は、符号語長1344のレート13/16のLDPCパリティ検査行列Hの分割サブ行列の第2行と共に第1行を選択し、分割サブ行列の第2行と共に第1行を新しいLDPCパリティ検査行列Hnの第1行として追加することによって得ることができる。残りの第3行は、新しいLDPCパリティ検査行列Hnの第2行として選択される。
別の実施形態では、7/8レートのLDPCパリティ検査行列Hnは、802.11adのレート13/16のLDPCパリティ検査行列Hの分割サブ行列の第2行を新しいLDPCパリティ検査行列Hnの第1行として選択し、次に、レート13/16のLDPCパリティ検査行列Hの分割サブ行列の第1行および第3行を選択し、分割サブ行列の第1行および第3行を新しいLDPCパリティ検査Hnの第2行として追加することによって生成することができる。やはり、図10Bに示すように、新しいLDPCパリティ検査行列Hnは、42×42の2行×16列のサブ行列を含む。
同様に、7/8レートのLDPCパリティ検査行列Hnは、符号語長1344で、Z=84であるレート13/16のLDPCパリティ検査行列Hの分割サブ行列の第2行を新しいLDPCパリティ検査行列Hnの第1行として選択し、次に、符号語長1344のレート13/16のLDPCパリティ検査行列Hの分割サブ行列の第1行および第3行を選択し、分割サブ行列の第1行および第3行を新しいLDPCパリティ検査Hnの第2行として追加することによって生成することができる。やはり、新しいLDPCパリティ検査行列Hnは、84×84の2行×16列のサブ行列を含む。
一般に、7/8レートのLDPCパリティ検査行列Hnは、802.11adで規定されているレート13/16のLDPC符号からZ=42であり、126行×672列を含むHを用いて生成されてもよく、またはZ=84であり、252行x1344列を含むレート13/16のLDPCパリティ検査行列Hから生成されてもよい。第1に、1行の新しい7/8レートのLDPCパリティ検査行列Hnを生成するために、LDPC行列生成器302は、レート13/16のLDPCパリティ検査行列Hの任意の2行の分割サブ行列を選択し、追加することができる。第2に、LDPC行列生成器302は、レート13/16のLDPCパリティ検査行列Hの分割サブ行列の残りの1行を、新しい7/8レートのLDPCパリティ検査行列Hnの別の行として選択することができる。
一実施形態では、7/8レートのLDPCパリティ検査行列Hnは、Z=42であり、168行×672列を含むレート3/4のLDPCパリティ検査行列Hから生成されてもよく、またはZ=84であり、336行×1344列を含むレート3/4のLDPCパリティ検査行列Hから生成されてもよい。
図5Cに示すように、レート3/4のLDPCパリティ検査行列Hは、168行×672列を含み、Z=42である。言い換えれば、レート3/4のLDPCパリティ検査行列Hは、4(=168/42)行×16(=672/42)列の分割サブ行列を含み、各サブ行列のサイズは42×42である。同様に、336行×1344列を含み、Z=84であるレート3/4のLDPCパリティ検査行列Hも、4行×16列の分割サブ行列からなり、各サブ行列のサイズは84×84である。
一実施形態では、符号語長が672または1344のいずれかである7/8レートのLDPCパリティチェック行列Hnのパリティチェック行列は、レート3/4のLDPCパリティ検査行列Hの分割サブ行列の第1行および第3行を選択し、分割サブ行列の第1行と共に第3行を新しいLDPCパリティ検査行列Hnの第1行として追加することによって生成することができる。次に分割されたサブ行列の残りの第2行および第4行が選択されて、新しいLDPCパリティ検査行列Hnの第2行として追加されてもよい。図10Aは、新しいレート7/8のLDPCパリティ検査行列Hnが2行×16列のサブ行列を含み、各サブ行列のサイズがZ×Zであり、Z=42×42であることを示す。
別の実施形態では、符号語長が672または1344のいずれかである7/8レートのLDPCパリティチェック行列Hnは、最初にレート3/4のLDPCパリティ検査行列Hの分割サブ行列の第2行および第3行を選択し、分割サブ行列の選択した第2行および第3行を新しいLDPCパリティ検査行列Hnの第1行として追加することによって生成することができる。次に分割されたサブ行列の残りのこぶし行および第4行が選択されて、新しいLDPCパリティ検査行列Hnの第2行として追加されてもよい。図10Bは、新しいLDPCパリティ検査行列Hnが2行×16列のサブ行列を含み、各サブ行列のサイズがZ×Zであり、Z=42であることを示す。
一般に、符号語長が672または1344のいずれかである7/8レートのLDPCパリティ検査行列Hnは、レート13/16のLDPCパリティ検査行列Hの分割サブ行列のいずれか2行を選択して新しい7/8レートのLDPCパリティ検査行列Hnの第1行として追加し、残りの1行を新しい7/8レートのLDPCパリティ検査行列Hnの第2行として使用することによって、レート13/16のLDPCパリティ検査行列Hから生成することができる。符号語長が672の場合、Z=42であり、符号語長が1344の場合、Z=84である。
同様に、符号語長が672または1344のいずれかである7/8レートのLDPCパリティ検査行列Hnは、レート3/4のLDPCパリティ検査行列Hの分割サブ行列のいずれか2行以上を選択して新しい7/8レートのLDPCパリティ検査行列Hnの第1行として追加し、残りの1行以上を新しい7/8レートのLDPCパリティ検査行列Hnの第2行として追加することによって、レート3/4のLDPCパリティ検査行列Hから生成することができる。符号語長が672の場合、Z=42であり、符号語長が1344の場合、Z=84である。
同様に、符号語長が672または1344のいずれかである7/8レートのLDPCパリティ検査行列Hnは、レート1/2または5/8のLDPCパリティ検査行列Hの分割サブ行列のいずれか2行以上を新しい7/8レートのLDPCパリティ検査行列Hnの第1行として追加し、残りの行を新しい7/8レートのLDPCパリティ検査行列Hnの第2行として追加することによって、レート1/2または5/8のLDPCパリティ検査行列Hから生成することができる。符号語長が672の場合、Z=42であり、符号語長が1344の場合、Z=84である。
符号語長=1344、Z=42
一実施形態では、符号語長1344の7/8レートのLDPC符号は、Z=42であり、336行×1344列を含むレート13/16のLDPCパリティ検査行列Hから生成されてもよい。図6Aに示すように、生成された行列606 Hは6行×32列のサブ行列を有し、各サブ行列のサイズは42×42である。一実施形態では、図6Aの生成された1344符号行列606のサブ行列のうちの任意の3行を、新しい7/8レートのLDPCパリティ検査行列Hnの1行として追加することができ、残りの3行は符号語長1344の7/8レートのLDPC行列Hnの3行になる。この場合、符号語長1344の7/8レートのLDPC行列Hnは、4行x32列のサブ行列を有し、Z=42である。
別の実施形態では、図6Aの符号語長1344の生成された行列606 Hの6行から、任意の2行のサブ行列を選択することができる。次いで、2つの選択された行は、新しい7/8レートのLDPCパリティ検査行列Hnの1行として追加することができる。他の2行は、行列606 Hのサブ行列の残りの4行から選択され、新しい7/8レートのLDPCパリティ検査行列Hnの他の行として追加されてもよい。行列606 Hの残りの2行は、符号語長1344の7/8レートのLDPC行列Hnの残りの2行になる。この場合、符号語長1344の7/8レートのLDPC行列Hnは、4行x32列のサブ行列を有し、Z=42である。
一実施形態では、選択された行は、ベースパリティ検査行列604の異なる行から導出される。
一実施形態では、例えば7/8レートのLDPCパリティ検査行列Hnおよび/またはその対応する生成器行列GなどのK/NレートのLDPCパリティ検査行列Hnおよび/またはその対応する生成器行列Gは、ソース語を符号化するための送信機のメモリ、または復調された符号語を復号するための受信機のメモリに予め記憶されてもよい。
図9A〜図9B、および図10A〜図10Bの例では、レート13/16または3/4のLDPCパリティ検査行列Hの分割サブ行列の2行を追加した結果として、上記のように生成された7/8レートのLDPC行列において、二重巡回シフト置換行列が一部のサブ行列に存在してもよい。図9A〜図9Bおよび図10A〜図10Bにおいて、「-」は、すべてゼロのエントリを有するヌルサブ行列を示す。二重巡回シフト置換行列は、2つの結合サブ行列がすべてゼロのエントリを有するヌルサブ行列ではない場合に存在する。
例えば、7/8符号のパリティ検査行列Hnにおいて「37+29」で示される図9Aのサブ行列は、新しいLDPCパリティ検査行列Hnの第1行として、802.11adにおけるLDPCのレート13/16のパリティ検査行列Hの第2行と共に第1行を追加すること、または802.11adにおけるLDPCのレート3/4のパリティ検査行列Hの第3行と共に第2行を追加することによって得られる。図11に示すように、「37+29」で示されるサブ行列は、2つの「1」の対角要素を示す。「1」の第1の対角要素は列0〜36から、次に列37〜41からであり、「1」の第2の対角要素は列0〜28から、次に列29〜41からである。
2つの行が追加されるとき、符号の変数ノード次数分布は不変のままであるが、検査ノードの次数は2倍となる、すなわち各行に2つの「1」がある。例えば、図11の行「10」には2つの「1」があり、1つは列5に、もう1つは列40にある。
上述したように、符号語長672の例では、LDPC行列生成器302が分割パリティ検査行列Hから新しいK/NレートのLPDC符号行列Hnを生成するとき、LDPC行列生成器302は、最初に分割パリティ検査行列Hのサブ行列のm1行を新しい行列Hnのサブ行列の1行として追加することができ(ステップ806)、任意選択的に、分割パリティ検査行列Hの残りのサブ行列から選択されたm2行を新しい行列Hnのサブ行列の第2行として追加することもでき(ステップ808)、ここでm1およびm2は整数であり、m1+m2=<M/Zであり、m1>1、およびm2>=1である。符号語長1344の例では、m3およびm4行が、分割パリティ検査行列Hの残りのサブ行列から選択されてもよく、また新しい行列Hnの第3または第4行として追加されてもよい。この場合、m1+m2+m3+m4=<M/Zであり、m1>1、m2>=1、m3>=1、m4>=1である。
少なくとも1つのサブ行列がm1、m2、m3、またはm4のすべての非ヌルサブ行列によって生成される場合、サブ行列の新しい行を生成するために分割パリティ検査行列HのM/Z行のサブ行列からm1、m2、m3、および/またはm4行を追加することによって、新しい行の少なくとも1つのサブ行列は、m1、m2、m3、またはm4の「1」の対角要素を含む。m1、m2、m3、またはm4行が追加されるとき、符号の変数ノード次数分布は不変のままであるが、検査ノードの次数はm1、m2、m3、またはm4となる、すなわち各行にm1、m2、m3、またはm4の「1」がある。
並置
図12に示すようにLDPC符号は、2つの行列H=[H1H2]の並置によって得られる(n−k、n)のパリティ検査行列によって特徴付けられる拡張不規則反復累積(eIRA)符号構造に制限されてもよく、ここでH1は(n−k)×(k)のシステマティック部分であり、これは構成サブ行列がZ×Zのヌルまたは巡回シフト単位行列であるブロック構造行列であり、H2は最後の列を除いて列が重み2であるフルランクの(n−k)x(n−k)の行列である。
最大の変数ノード次数、エラーフロアパフォーマンスを向上させることができるという事実を高めるために、設計アルゴリズムは、必要に応じて、異なる巡回シフトを有する2つ以上の対角要素を有する構成サブ行列を可能にする。例えば、図12では、値「9+24+31」を有するサブ行列には3つの対角要素が含まれている。
図12では、第1行1202はサブ行列インデックスであり、H1の一部を形成しない。第2行および第3行1204はH1のサブ行列であり、LDPC行列Hを生成するために使用される。
一実施形態では、パラメータK=588、N=672、およびZ=42でレート7/8のLDPC行列Hを生成するために、符号の行列H1 1201は、サイズが42×42のサブ行列の2行1204だけを有する。図12の例では、変数ノード次数は例えば最大4であってもよく、第1列は(9+24+31)+41である。H2は84×84のフルランク行列で、Z=42である。
図12に示すように、H1は2行x14列のサブ行列を含み、Z=42である。H2は84×84のフルランク行列で、そのサイズは2行x2列のサブ行列に相当し、Z=42である。したがって、H=[H1H2]のサイズは、2行x16列のサブ行列に相当し、Z=42である。
一実施形態では、パラメータK=1176、N=1344、およびZ=84でレート7/8のLDPC行列Hを生成するために、符号の行列H1 1201は、サイズ84×84のサブ行列の2行1204だけを有する。H2は168×168のフルランク行列である。
図12に示すように、H1は2行x14列のサブ行列を含み、Z=84である。H2は168×168のフルランク行列で、そのサイズは2行x2列のサブ行列に相当し、Z=84である。したがって、H=[H1H2]のサイズは、2行x16列のサブ行列に相当し、Z=84である。
パフォーマンス
図13A〜図13Cの例は、13/16の符号をパンクチャすること、802.11adの13/16の符号の第1行および第2行を追加すること、3/4符号の第1行および第3行、第2行および第4行、ならびにH1およびH2の並置による最適化符号を追加することによって生成された、Z=42であり、レート7/8のN=672符号Hnのパフォーマンスを示す。図13A、図13B、図13Cの符号語は、それぞれQPSK、16QAM、64QAMで変調されている。
図13A、図13B、および図13Cに示すように、所与の信号対雑音比(SNR)値では、3/4符号の第1行および第3行、第2行および第4行、ならびにH1およびH2の並置による最適化符号を追加することによって生成された7/8レートのLDPCパリティ検査Hnは、一般にフレームエラーレート(FER)が低くなる。あるいは、3/4符号の第1行および第3行、第2行および第4行、ならびにH1およびH2の並置による最適化符号を追加することによって生成された7/8レートのLDPCパリティ検査Hnは、所与のFERを達成するためにより低いSNR値を必要とする。
13/16の符号の第1行および第2行を追加することによって生成された7/8符号に関して、所与のSNRについて、第1行および第2行を追加することによって生成された7/8レートのLDPCパリティ検査Hnは、一般にFERがわずかに高くなる。しかしながら、この符号の符号語長は672であり、これは802.11adで規定されている他の符号の符号語長と同じであるので、この7/8レートのLDPCパリティ検査Hnのブロッキングおよびデブロッキングの実装は不変のままであるが、802.11adの13/16の符号からパンクチャされた7/8符号のブロッキングおよびデブロッキングの実装には、送信機および受信機での追加の修正が必要となる。
図14A〜図14Cの例は、13/16の符号(n=1248、K=1092)をパンクチャすることによって、ならびに3/4符号の第1行および第3行、第2行および第4行を追加することによって生成された、Z=42であり、レート7/8のN=1344符号Hnのパフォーマンスを示す。図14A、14B、および14Cの符号語は、それぞれQPSK、16QAM、および64QAMで変調されている。図14A、14B、および14Cのように、所与の信号雑音比(SNR)では、3/4符号の第1行および第3行、第2行および第4行によって生成された7/8レートのLDPCパリティ検査Hnは、一般にフレームエラーレート(FER)が低くなる。
復号器および復号方法
LDPC符号化信号は、STA102またはAP104の受信機で受信することができる。図15Aの例に示すように、受信機は、等化およびデブロッキングモジュール1502、復調器1504、LLR計算器1506、およびLDPC復号器1508を含む。任意選択的に、LLR計算器1506は、復調器1504の構成要素とすることができる。図15Bに示すように、受信LDPC符号化信号を用いて、等化およびデブロッキングモジュール1502はまず、受信信号が送信されるチャネルによって引き起こされる符号間干渉を低減するために受信信号1501を等化し、次に符号語シンボルを復元するために等化信号をデブロックする(ステップ1522)。復調器1504は、デブロックされた符号語シンボルを、例えばBPSK、QPSK、16QAM、または64QAMでビット単位の符号語に復調する(ステップ1524)。デブロックされた符号語シンボルのビット値の対数尤度比を生成するために、LLR計算器1504を使用することができる(ステップ1526)。対数尤度比は、LDPC復号器1508の入力として使用することができる。次いで、LDPC復号器1508は、復調信号を復号するために、ソース語を符号化するのに使用されるLDPC行列Hnを使用することができ、信号は、1×Nの行ベクトルSを有する(ステップ1528)。LDPC復号器1508は、1×Kのソース語行ベクトル
を復元するために、1×Nの行ベクトル
を生成する。有効な符号語であるためには
であり、
である。LDPC符号化信号を復号するために様々なアルゴリズム、例えばメッセージ通過アルゴリズムが利用可能である。図16は、LDPC符号化ソース語を復号するためにメッセージ通過アルゴリズムを使用するLDPC復号器の例である。LDPC復号を実施するために他の復号アルゴリズムを使用することもできる。メッセージ通過アルゴリズムが使用される場合、LDPC復号器1508は、コントローラ1602、検査ノードモジュール1604、および変数ノードモジュール1606を含むことができる。
上述したように、ソース語を符号化するために使用されるK/NレートのLPDC符号Hn=(N−K)xN LDPC行列の情報のような送信信号のLDPC符号化情報が、送信されるフレームに含まれてもよい。本出願の一実施形態では、LDPC復号器1508において、リフティング係数Zを用いて、K/NレートのLPDC符号Hn=(N−K)×Nを使用することができる。符号化プロセスで説明したように、Hnは複数のサブ行列を含み、各サブ行列のサイズはZxZである。Hn内の少なくとも1つのサブ行列は、m1の「1」の対角要素を含み、ここでm1は2以上の整数である。パリティ検査行列を生成する方法は、符号化プロセスにおいて説明されている。
ビット単位の符号語は、例えば、LLR値を有するメッセージ通過アルゴリズム(MPA)を使用して、Hnを用いて復号することができる。図17の例に示すように、MPAを用いたLDPC復号化は、LPDCパリティ検査行列Hnのグラフ表示であるタナーグラフの構造を使用する反復復号化アルゴリズムである。LDPC復号器1508では、各検査ノード1702は、それがそのパリティチェック均等化において唯一の消去されたビットである場合、消去されたビットの値をLLR値に基づいて決定する。メッセージは、タナーグラフエッジ1706に沿って通過した。アルゴリズムの反復ごとに、各変数ノード1704は、変数ノード1704が接続されている各検査ノード1702にメッセージ(「外部情報」)を送信する。各検査ノード1702は、検査ノード1702が接続されている変数ノード1704にメッセージ(「外部情報」)を送信する。この文脈において「外部」とは、検査ノード1702または変数ノード1704が既に所有している情報がそれらのノードに渡されないことを意味する。各符号語ビットに対する事後確率は、LLR計算器1506で受信された信号とHnに定義されたパリティ制約とに基づいて計算され、すなわち有効な符号語であるためには
であり、
である。
復号化において、Hn内の少なくとも1つのサブ行列はm1の「1」の対角要素を含み、m1>=2であるので、パリティ検査行列Hn内の重畳レイヤの存在は、階層化アーキテクチャを有すると仮定されるかもしれないLDPC復号器1508の実装において影響は小さい。
LDPC復号器1508の階層化アーキテクチャでは、Zの並列検査ノードプロセッサは、パリティ検査行列のZ行のサブ行列に対してエッジのメッセージを順次処理する。一例では、Z=42であり、エッジは16である。巡回シフト構造は、単純なバレルシフタを用いて並列プロセッサに供給することを可能にする復号器アーキテクチャを単純化する。レイヤの処理が終了すると、パリティチェックプロセッサは再初期化され、次のレイヤが処理される。
m1の行がパリティ検査ノードに重ね合わされるとき、Hn内の少なくとも1つのサブ行列はm1の「1」の対角要素を含み、ここでm1は2以上の整数である。プロセッサは、第1レイヤの終了後に初期化されず、むしろ重ね合わされたサブ行列行の次の16のエッジを処理し続ける。このプロセスはm1回繰り返される。したがって、復号の複雑さは元の符号の複雑さと同じままであり、既存のハードウェアアーキテクチャを再利用できる。
本開示は、開示された方法およびシステムの例を実施するための特定の例示的なアルゴリズムおよび計算を提供する。しかしながら、本開示はいかなる特定のアルゴリズムまたは計算にも拘束されない。本開示は、特定の順序のステップで方法およびプロセスを説明しているが、方法およびプロセスの1つ以上のステップは、必要に応じて省略または変更することができる。必要に応じて、記載されている順序以外の順序で1つ以上のステップを実行することができる。
前述の実施形態の説明を通じて、本発明は、ハードウェアのみを使用することによって、またはソフトウェアと必要な汎用ハードウェアプラットフォームを使用することによって、あるいはハードウェアとソフトウェアの組み合わせによって実施することができる。そのような理解に基づいて、本発明の技術的解決策はソフトウェア製品の形で具現化することができる。ソフトウェア製品は、コンパクトディスク読み取り専用メモリ(CD-ROM)、USBフラッシュドライブ、またはハードディスクであり得る不揮発性または非一時的な記憶媒体に格納することができる。ソフトウェア製品は、コンピュータデバイス(パーソナルコンピュータ、サーバ、またはネットワークデバイス)が本発明の実施形態において提供される方法を実行することを可能にするいくつかの命令を含む。
本発明およびその利点を詳細に説明してきたが、添付の特許請求の範囲によって定義される本発明から逸脱することなく、本明細書において様々な変更、置換および改変を行うことができることを理解されたい。
さらに、本出願の範囲は、明細書に記載されたプロセス、機械、製品、組成物、手段、方法およびステップの特定の実施形態に限定されることを意図しない。当業者であれば本発明の開示から容易に理解されるように、実質的に同じ機能を果たす、または本明細書に記載された対応する実施形態と実質的に同じ結果を達成することができる、現在存在するまたは後に開発されるプロセス、機械、製品、組成物、手段、方法またはステップは、本発明によって使用することができる。したがって、添付の特許請求の範囲は、そのようなプロセス、機械、製品、組成物、手段、方法、またはステップをその範囲内に含むことが意図されている。
100 通信ネットワーク
102 局
104 アクセスポイント
110 バックホールネットワーク
150 処理システム
152 処理デバイス
154 入出力(I/O)インターフェース
158 ネットワークインターフェース
160 受信アンテナ、送信アンテナ
162 符号器
164 変調器
170 ストレージ
172 非一時的メモリ
180 復調器
190 復号器
192 バス
202 ソース語分割モジュール
204 LDPC符号器
206 ビット対シンボルマッピング変調器
208 ブロッキングモジュール
302 LDPCパリティ検査行列生成器
304 生成器行列モジュール
306 ソース語入力インターフェース
308 符号語生成器
1501 受信信号
1502 デブロッキングモジュール
1504 復調器
1506 LLR計算器
1508 LDPC復号器
1602 コントローラ
1604 検査ノードモジュール
1606 変数ノードモジュール
1702 検査ノード
1704 変数ノード
1706 タナーグラフエッジ

Claims (13)

  1. ソース語を符号化する方法であって、
    1×Kのソース語行ベクトル
    を受け取るステップと、
    1×Nの符号語ベクトル
    を生成するステップと
    を含み、
    GはK×Nの生成器行列であり、Gは第2の低密度パリティ検査(LDPC)行列Hnから導出され、
    前記第2の行列Hnはリフティング係数Zを有し、
    前記第2の行列Hnは複数のサブ行列を含み、各サブ行列のサイズはZ×Zであり、少なくとも1つのサブ行列はm1の「1」の対角要素を有し、m1は2以上の整数であり、
    前記第2の行列H n は、
    リフティング係数Zを用いて第1のMxNのパリティ検査行列Hを正方サブ行列に分割することであって、M=I×Zであり、N=J×Zであり、IおよびJは整数であり、Iは2より大きく、Jは0より大きく、分割された前記第1の行列Hは、(M/Z)行×(N/Z)列のサブ行列を含む、ことと、
    前記第1の行列Hの前記M/Z行のサブ行列からm 1 行を選択することと、
    前記第1の行列Hのサブ行列の前記m 1 行を、前記第2の行列H n のサブ行列の行として追加することであって、m 1 は2以上の整数である、ことと
    によって生成され、
    前記第1の行列Hは、IEEE802.11adで規定されている符号化レート3/4のLDPC行列であり、前記第1の行列Hは168行×672列であり、Z=42であり、前記第2の行列H n は、パラメータm 1 =2およびm 2 =2、Z=42で生成される、方法。
  2. 前記第1の行列Hの前記サブ行列の残りの行からm2行を、前記第2の行列Hnのサブ行列の第2の新しい行として追加するステップであって、m2は1以上の整数である、ステップをさらに含む、請求項1に記載の方法。
  3. N=672であり、Z=42である、請求項1または2に記載の方法。
  4. K=588であり、前記第2の行列Hnは84行×672列を含む、請求項1から3のいずれか一項に記載の方法。
  5. 前記第2の行列Hnは、
    である、請求項1から4のいずれか一項に記載の方法。
  6. 符号語を復号する方法であって、
    1×Nの行ベクトルSを有する復調信号を受信するステップと、
    符号化プロセスで使用される第2の低密度パリティ検査(LDPC)行列Hnを用いて前記1×Nの行ベクトルSを復号するステップと、
    1×Kのソース語行ベクトル
    を復元するために1×Nのベクトル
    を生成するステップと
    を含み、
    であり、
    前記第2の行列Hnは複数のサブ行列を含み、前記第2の行列Hnはリフティング係数Zを有し、各サブ行列のサイズはZ×Zであり、少なくとも1つのサブ行列はm1の「1」の対角要素を有し、m1は2以上の整数であり、
    前記第2の行列H n は、
    リフティング係数Zを用いて第1のMxNのパリティ検査行列Hを正方サブ行列に分割することであって、M=I×Zであり、N=J×Zであり、IおよびJは整数であり、Iは2より大きく、Jは0より大きく、分割された前記第1の行列Hは、(M/Z)行×(N/Z)列のサブ行列を含む、ことと、
    前記第1の行列Hの前記M/Z行のサブ行列からm 1 行を選択することと、
    前記第1の行列Hのサブ行列の前記m 1 行を、前記第2の行列H n のサブ行列の行として追加することであって、m 1 は2以上の整数である、ことと
    によって生成され、
    前記第1の行列Hは、IEEE802.11adで規定されている符号化レート3/4のLDPC行列であり、前記第1の行列Hは168行×672列であり、Z=42であり、前記第2の行列H n は、パラメータm 1 =2およびm 2 =2、Z=42で生成される、方法。
  7. 前記第1の行列Hの前記サブ行列の残りの行からm2行を、前記第2の行列Hnのサブ行列の第2の新しい行として追加するステップであって、m2は1以上の整数である、ステップをさらに含む、請求項6に記載の方法。
  8. N=672であり、Z=42である、請求項6または7に記載の方法。
  9. K=588であり、前記第2の行列Hnは84行×672列を含む、請求項6から8のいずれか一項に記載の方法。
  10. 前記第2の行列Hnは、
    である、請求項6から9のいずれか一項に記載の方法。
  11. 前記第2の行列Hnは、
    である、請求項6から9のいずれか一項に記載の方法。
  12. システムであって、
    プロセッサと、
    命令を格納するように構成されたメモリと
    を含み、
    前記命令は、前記プロセッサによって実行されたとき、請求項1から5のいずれか一項に記載の方法を前記プロセッサに実行させる、システム。
  13. システムであって、
    プロセッサと、
    命令を格納するように構成されたメモリと
    を含み、
    前記命令は、前記プロセッサによって実行されたとき、請求項6から11のいずれか一項に記載の方法を前記プロセッサに実行させる、システム。
JP2019502694A 2016-07-20 2016-07-20 Ldpc符号の符号化および復号化のための方法およびシステム Active JP6798004B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/090775 WO2018014272A1 (en) 2016-07-20 2016-07-20 Methods and systems for encoding and decoding for ldpc codes

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020191696A Division JP7030932B2 (ja) 2020-11-18 2020-11-18 Ldpc符号の符号化および復号化のための方法およびシステム

Publications (2)

Publication Number Publication Date
JP2019522435A JP2019522435A (ja) 2019-08-08
JP6798004B2 true JP6798004B2 (ja) 2020-12-09

Family

ID=60992754

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019502694A Active JP6798004B2 (ja) 2016-07-20 2016-07-20 Ldpc符号の符号化および復号化のための方法およびシステム

Country Status (7)

Country Link
US (1) US10868567B2 (ja)
EP (1) EP3479486B1 (ja)
JP (1) JP6798004B2 (ja)
KR (1) KR102227250B1 (ja)
CN (1) CN109417392B (ja)
RU (1) RU2716044C1 (ja)
WO (1) WO2018014272A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110383726A (zh) * 2017-03-09 2019-10-25 华为技术有限公司 用于长ldpc码的mcs
WO2018182369A1 (ko) * 2017-03-30 2018-10-04 엘지전자 주식회사 무선 통신 시스템에서 ldpc 부호의 패리티 검사 행렬을 기반으로 부호화를 수행하는 방법 및 이를 이용한 단말
CN110583023B (zh) * 2017-05-04 2022-03-01 三星电子株式会社 在通信或广播系统中用于信道编码和解码的方法和设备
CA3060788C (en) 2017-06-25 2021-07-20 Lg Electronics Inc. Method for performing encoding on basis of parity check matrix of ldpc code in wireless communication system and terminal using same
WO2019005653A1 (en) 2017-06-26 2019-01-03 Intel IP Corporation APPARATUS, SYSTEM AND METHOD FOR COMMUNICATING PHYSICAL LAYER PROTOCOL DATA UNIT (PPDU)
CN116073954A (zh) * 2017-08-10 2023-05-05 三星电子株式会社 用于在通信或广播系统中对信道进行编码和解码的方法和设备
WO2019079011A1 (en) 2017-10-18 2019-04-25 Intel IP Corporation APPARATUS, SYSTEM AND METHOD FOR COMMUNICATING PHYSICAL LAYER PROTOCOL DATA UNIT (PPDU)
CN112514292B (zh) * 2018-08-08 2022-03-29 华为技术有限公司 高效传输信息消息的发射装置和接收装置
CN109639392B (zh) * 2018-11-09 2020-03-27 清华大学 广播信道传输的空间耦合ldpc码的构造方法及系统
CN110096384B (zh) * 2019-04-23 2021-06-25 西安电子科技大学 高可靠航天数据及中间变量的保护方法
US11177830B2 (en) 2019-09-10 2021-11-16 Samsung Electronics Co., Ltd. Method and apparatus for data decoding in communication or broadcasting system
CN111431543B (zh) * 2020-05-13 2023-08-01 东南大学 可变码长可变码率qc-ldpc译码方法及装置
WO2022080975A1 (ko) * 2020-10-15 2022-04-21 삼성전자 주식회사 통신 또는 방송 시스템에서 데이터 복호화 방법 및 장치
CN114095125A (zh) * 2021-11-09 2022-02-25 湖南省时空基准科技有限公司 一种窄带数据广播的信道编码方法及设备
CN115031314B (zh) * 2022-06-01 2023-08-04 深圳市瑞尔时代科技有限公司 用于无人值守机房的节能控制系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162684B2 (en) * 2003-01-27 2007-01-09 Texas Instruments Incorporated Efficient encoder for low-density-parity-check codes
US7581157B2 (en) * 2004-06-24 2009-08-25 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
US7395490B2 (en) * 2004-07-21 2008-07-01 Qualcomm Incorporated LDPC decoding methods and apparatus
US7346832B2 (en) * 2004-07-21 2008-03-18 Qualcomm Incorporated LDPC encoding methods and apparatus
CN101128981B (zh) * 2004-08-09 2013-03-20 Lg电子株式会社 使用低密度奇偶校验矩阵的编码和解码方法
WO2006016769A1 (en) * 2004-08-10 2006-02-16 Samsung Electronics Co., Ltd. Apparatus and method for encoding and decoding a block low density parity check code
EP1820275A4 (en) * 2004-12-08 2009-11-25 Korea Electronics Telecomm LDPC CODERS AND DECODERS AND METHOD FOR LDPC CODING AND DECODING
KR100641052B1 (ko) * 2004-12-08 2006-11-02 한국전자통신연구원 Ldpc 부호기 및 복호기, 및 ldpc 부호화 방법 및복호화 방법
US8010870B2 (en) 2005-04-25 2011-08-30 Sony Corporation Coding apparatus and coding method
KR100929079B1 (ko) 2005-10-31 2009-11-30 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템의 복호 장치 및 방법
WO2008092040A2 (en) * 2007-01-24 2008-07-31 Qualcomm Incorporated Ldpc encoding and decoding of packets of variable sizes
US8392787B2 (en) * 2008-10-31 2013-03-05 Broadcom Corporation Selective merge and partial reuse LDPC (Low Density Parity Check) code construction for limited number of layers Belief Propagation (BP) decoding
CN101488761B (zh) * 2009-02-27 2011-01-19 北京交通大学 一种无短环无低码重码的ldpc码构造方法
JP4929342B2 (ja) 2009-12-15 2012-05-09 インターナショナル・ビジネス・マシーンズ・コーポレーション ノイズ分散による入力対数尤度比のスケーリングに基づくsum−product復号法(ビリーフプロパゲーション法)の計算手法
US9634693B2 (en) * 2010-08-12 2017-04-25 Samsung Electronics Co., Ltd Apparatus and method for decoding LDPC codes in a communications system
US8726122B2 (en) * 2011-05-11 2014-05-13 Samsung Electronics Co., Ltd. High throughput LDPC decoder
US9100052B2 (en) * 2013-02-01 2015-08-04 Samsung Electronics Co., Ltd. QC-LDPC convolutional codes enabling low power trellis-based decoders
KR20150005853A (ko) * 2013-07-05 2015-01-15 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법
GB2510932B (en) * 2013-08-27 2015-01-21 Imagination Tech Ltd An improved decoder for low-density parity-check codes
CN104779961B (zh) * 2014-01-09 2019-02-26 上海数字电视国家工程研究中心有限公司 一种ldpc结构、码字及对应的编码器、解码器和编码方法
US9276610B2 (en) * 2014-01-27 2016-03-01 Tensorcom, Inc. Method and apparatus of a fully-pipelined layered LDPC decoder
US9692451B2 (en) * 2014-09-30 2017-06-27 Avago Technologies General Ip (Singapore) Pte. Ltd Non-binary low density parity check (NB-LDPC) codes for communication systems

Also Published As

Publication number Publication date
CN109417392B (zh) 2021-10-15
JP2019522435A (ja) 2019-08-08
RU2716044C1 (ru) 2020-03-05
CN109417392A (zh) 2019-03-01
US20190222229A1 (en) 2019-07-18
WO2018014272A1 (en) 2018-01-25
KR20190028788A (ko) 2019-03-19
KR102227250B1 (ko) 2021-03-12
US10868567B2 (en) 2020-12-15
EP3479486A1 (en) 2019-05-08
EP3479486A4 (en) 2019-07-10
EP3479486B1 (en) 2023-05-31

Similar Documents

Publication Publication Date Title
JP6798004B2 (ja) Ldpc符号の符号化および復号化のための方法およびシステム
US20230188254A1 (en) Apparatus and method for encoding and decoding channel in communication or broadcasting system
US11750220B2 (en) Apparatus and method for channel encoding/decoding in communication or broadcasting system
US8627166B2 (en) LDPC code family for millimeter-wave band communications in a wireless network
CN107888198B (zh) 准循环ldpc编译码方法、装置及ldpc编译码器
US11082061B2 (en) High-rate long LDPC codes
US9559722B1 (en) Network devices and methods of generating low-density parity-check codes and performing corresponding encoding of data
US11664928B2 (en) Multi-label offset lifting method
US20230421177A1 (en) Apparatus and method for channel encoding/decoding in communication or broadcasting system
KR20170075627A (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
JP7030932B2 (ja) Ldpc符号の符号化および復号化のための方法およびシステム
KR102378706B1 (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190228

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200518

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201118

R150 Certificate of patent or registration of utility model

Ref document number: 6798004

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250