JP5522641B2 - Ldpc符号を利用した多重入力ハードウェアの再利用 - Google Patents

Ldpc符号を利用した多重入力ハードウェアの再利用 Download PDF

Info

Publication number
JP5522641B2
JP5522641B2 JP2011539787A JP2011539787A JP5522641B2 JP 5522641 B2 JP5522641 B2 JP 5522641B2 JP 2011539787 A JP2011539787 A JP 2011539787A JP 2011539787 A JP2011539787 A JP 2011539787A JP 5522641 B2 JP5522641 B2 JP 5522641B2
Authority
JP
Japan
Prior art keywords
codeword
parity check
check matrix
submatrix
matrix
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.)
Expired - Fee Related
Application number
JP2011539787A
Other languages
English (en)
Other versions
JP2012511841A (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.)
Entropic Communications LLC
Original Assignee
Entropic Communications LLC
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 Entropic Communications LLC filed Critical Entropic Communications LLC
Publication of JP2012511841A publication Critical patent/JP2012511841A/ja
Application granted granted Critical
Publication of JP5522641B2 publication Critical patent/JP5522641B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
    • 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
    • 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
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] 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/6561Parallelized implementations
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2647Arrangements specific to the receiver only
    • 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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Error Detection And Correction (AREA)

Description

(関連出願)
本出願は、2008年12月9日に出願された「Multiple Input Hardware Reuse Using LDPC Codes」なる名称の米国非仮特許出願整理番号12/331,292号についての優先権を主張し、その内容が参照により本明細書に組み込まれる。
本開示は、一般に通信ネットワークに関し、より詳細には、通信ネットワークにおけるデジタルデータの符号化および復号に関する。
ほとんど全ての形式の電子通信およびストレージシステムは、誤り訂正符号を利用している。誤り訂正符号は、データストリームに冗長性を導入することにより、これらのシステムにおける情報転送に内在する信頼性の欠如を補うものである。誤り訂正の数学的基礎は、シャノン=ハートレーの定理によって確立されており、この定理は、通信路に対して容量、すなわち、その通信路を経由して情報を確実に配信できる最大速度を指定する量を定義する。
情報路容量に近いレートで信頼できる送信を行うには、誤り訂正符号を利用する必要がある。このため、誤り訂正符号は、できる限り情報路容量に近づけながら、十分な信頼性を実現するように設計される。誤り訂正符号の実装に伴う複雑さは、誤り訂正符号の実用的応用に常に関わる付加的要因である。ターボ符号の発明によってもたらされた誤り訂正符号方式における最近の進歩、およびそれに続く低密度パリティ検査(LDPC)符号の再発見および開発により、シャノン=ハートレー定理の情報路容量に相当近づくことができる実現可能な複雑さの符号化方式が提供されている。
LDPC符号は、疎なパリティ検査行列Hによって定義される。この疎行列は多くの場合ランダムに生成され、疎性の制約を受ける。有効な符号語xは、所与のパリティ検査行列Hに基づき、条件0=Hx(0は全ゼロベクトルとする)を満足する必要がある。図1に、長さが12(つまり、行列の列が12)のLDPC符号用の疎なパリティ検査行列Hの一例を示す。パリティ検査行列Hの各行は、排他的論理和が0になる一連の検査方程式を表す。
LDPC符号はよくタナーグラフと呼ばれる2部グラフでうまく表される。図2にタナーグラフ20の一例を示す。タナーグラフ20は、パリティ検査行列Hを表しており、このグラフで一方の組のノード、変数ノード22は符号語のビットに対応し、もう一方の組のノード、検査ノード26(制約ノードとも呼ばれる)は、その符号を定義する一組のパリティ検査制約に対応する。このグラフ内のエッジ24は、変数ノード22を検査ノード26に接続する。変数ノードと検査ノードは、グラフ内でエッジによって接続されると隣接ノードと呼ばれる。検査ノード上の接続数は、検査ノードの次数dまたは行の重みと呼ばれる。復号器は、エッジ24で特定の検査ノードと接続された変数ノード22に従って、各ビットについて対数尤度比(LLR)を計算する。この計算は、他の各変数ノード22に関連するLLR値を考慮した反復処理である。この処理は反復であるため、処理の停止基準に達するまで、各変数ノード22に関するLLR値の計算は、1つの検査ノードに関連付けられている各変数ノード22に関連するLLR値を更新する一連のパスを継続する。この処理に関係する各変数ノード22のLLR値は再計算され、計算中に更新されるため、各変数ノード22は、階層復号アーキテクチャにおいて1度に1つの計算だけに関係することができる。つまり、エッジ24で第1の検査ノード26aに接続されている変数ノード22について実行されている計算は、同一の変数ノード22のいずれかについて動作する第2の検査ノードで同時に行うことはできない。例えば、変数ノード22aは、エッジ24aで検査ノード26aに接続されている。しかし、変数ノード22aは、エッジ24bで検査ノード26dにも接続されている。それにもかかわらず、同一変数ノード22のいずれも検査ノード26aおよび検査ノード26bの両方には接続されていない。従って、LLRは、検査ノード26aおよび検査ノード26bに接続されている全ての変数ノード22について計算することができるが、(少なくとも1つの変数ノード22aが検査ノード26aおよび検査ノード26dの両方に接続されているため、)検査ノード26aおよび検査ノード26dに接続されている全ての変数ノードについて同時に計算することはできない。図1および図2の両方から、検査ノード26aおよび検査ノード26bの両方に接続されている共通の変数ノード22がないことに気づくであろう。同様に、検査ノード26cと検査ノード26dとの間にも、または検査ノード26eと検査ノード26fとの間にも共通する変数ノード22がない。このため、この場合のLLRの計算は、並列する2組のハードウェア(第1の検査ノード26aに接続された変数ノードに関連するLLR値計算用の1組のハードウェアおよび第2の検査ノード26bに接続された変数ノードに関連するLLR値計算用のもう1組のハードウェア)を使用して、検査ノードのかかる組合せの各々で同時に実行することができる。第1の対26a、26bに接続されている変数ノード22について、検査ノード第1の対26a、26bに関連してLLRが計算されると、ハードウェアを使用して、検査ノードの第2の対26c、26dに関連して、変数ノード22についてLLRを計算することができる。各検査ノード26が4つの変数ノード22に接続されていることに注意すべきである。そのため、12の変数ノード22のうちの8つについて、同時にLLRを計算することができる。LLRの同時計算に関するこれらの制限、および符号語の定義方法における柔軟性の必要性、さらに各種用途のための共通ハードウェアアーキテクチャの効率的な使用に対する要望のために、復号のための新規アーキテクチャおよび方法が必要とされる。
開示された方法および装置は、LDPC符号語に関連付けられたデータが転送されている方法に応じて、様々な長さのLDPC符号語を復号するために、同一ハードウェアを効率的に使用できるようにする柔軟なアーキテクチャおよび方法を提供する。一実施形態では、ネットワークコントローラが直交周波数分割多重アクセス(OFDMA)周波数スペクトルの1つまたは複数のサブキャリア(副搬送波)を各クライアントノードに割り当てる。各クライアントノードは、複数の低密度パリティ検査(LDPC)符号語を(実質的に同時に)送信する。「M」個の符号語がパリティ検査行列Hを使用して符号化され、この行列の行数m’は符号レートに依存する。これらの符号語は、送信ノードに割り当てられたサブキャリア上にマッピングされる。コントローラは、割り当てられたサブキャリアを介して複数のクライアントノードから実質的に同時にこれらの符号語を受信する。ネットワークコントローラは、これらの符号語の各受信ビットについてビット対数尤度比(LLR)を計算する。その後、コントローラは、ビットLLRを、等価パリティ検査行列と一致するように、符号語ごとに配列する。次に、ネットワークコントローラは、単一ノードから全てのOFDMサブキャリアを介して送信される情報の復号に必要なハードウェア量と本質的に同量のハードウェアを使用して、等価パリティ検査行列を用いて符号語を復号する。
長さが12のLDPC符号用の例示的な疎なパリティ検査行列Hを示す図である。 タナーグラフの一例を示す図である。 一実施形態に従ったネットワークのブロック図である。 例示的なOFDMパリティ検査行列HOFDMを示す図である。 一実施形態に従ったコンパクト形のOFDMAパリティ検査行列Hofdmaを示す図である。 一実施形態に従ってM個の同時符号語を復号する復号器で利用される対応する等価パリティ検査行列Heqを示す図である。 等価パリティ検査行列Heqを構成する部分行列Qi,jの構造を示す図である。 M=8の(クライアントノードに2つ以上の符号語を潜在的に割り当てることができる可能性がある)メモリーバッファー内でのLLRの相対位置を示す図である。 複数の送信/クライアントノードから受信/ネットワークコントローラノードに対して同時に送信されたデジタルデータの符号化および復号におけるネットワークの機能性の流れ図である。
開示された方法および装置の一実施形態は、複数のノードが単一のノードに対して同時に情報を送信する通信システムである。図3は、かかる一実施形態に従ったネットワーク10のブロック図である。ネットワーク10は、1つまたは複数のクライアントノード34〜36、およびネットワークコントローラ(NC)ノード37を含む。一実施形態では、ネットワーク10は家庭環境内におけるネットワークであり、ノード34〜37は、相互間で、メッセージ形式でデジタルデータを通信する家庭内の装置と統合または接続されている。当該装置の例として、セットトップボックス、デジタルビデオレコーダー(DVR)、コンピューター、テレビ、ルーターなどがある。ノード34〜37は、ネットワーク媒体50に接続されており、この媒体を介してデジタルデータが転送される。一実施形態では、ネットワーク媒体50は同軸ケーブルである。しかし、ネットワーク媒体50は、他の有線または無線の媒体を含む、他のあらゆる種類の媒体でもよい。一実施形態では、ネットワーク10は、ネットワーク上のどのノードもネットワーク上の他のどのノードとも任意の方向に直接通信ができるフルメッシュネットワークである。あるいは、ネットワーク10は、クライアントノードからの通信が、ネットワークコントローラ37などの中央ノードを経由しなければならないアクセスネットワークである。一実施形態では、ネットワーク10は、単一のNCノードおよび最大15個のクライアントノードを含む。
各クライアントノード34〜36は、データ符号化のための符号器32、データ変調のための変調器33、およびデータ送信のためのトランシーバー34を含む。同様に、NCノード37は、データ受信のためのトランシーバー42、データ復調のための復調器43、およびデータ復号のための復号器44を含む。図3の実施形態は、以下により詳細に開示されているが、複数のノード(すなわち、クライアントノード34〜36)が単一ノード(すなわち、NCノード37)に対して同時にデータを送信するような状況を示している。しかし、他の実施形態では、どのノードも他のどのノードに対してもデータを送信し得るため、各ノードはこの動作モードに適応するために、対応するモジュールを追加で含む。一実施形態では、符号器32および復号器44は、メモリーなどのコンピューター読取り可能媒体上に格納されたソフトウェア命令を実行する汎用プロセッサによって実装することができる。他の実施形態では、符号器32および復号器44は、専用プロセッサまたはソフトウェアもしくはハードウェアの任意の組合せを使用して実装することができる。
一実施形態では、2つ以上のクライアントノード34〜36がNCノード37にデータを送信する。一実施形態では、データは、直交周波数分割多重(OFDM)方式を利用して送信している。一般に、OFDMは、間隔の狭い多数の直交サブキャリアを使用してデータを搬送する。各サブキャリアは、直交振幅変調または位相偏移変調などの従来型変調方式で変調される。場合によっては、同一帯域幅を持つ従来型のシングルキャリア変調方式で達成されるデータレートと同様な総データレートを全サブキャリアにわたって維持するために、データは低シンボルレートで変調される。従来技術のネットワークの中には、時分割多元接続(TDMA)方式をOFDMと組み合わせて、各ノードが別個のタイムスロットで送信できるようにするものもある。TDMAとOFDMを一緒に使用すると、ネットワーク媒体および周波数スペクトルを非効率的に使用する結果となることがある。OFDMAでは、受信ノードの並列復号器が、すべてのノードを同時に復号する。ただし、これには追加のハードウェアが必要となる。従って、各ノードがサブキャリアのOFDMスペクトル全体に割り当てられている従来型TDMAは、データビットのパケットオーバーヘッドビットに対する比が低いため、この状況では効率が悪い。さらに、満たされていない(すなわち、未使用の)サブキャリアもあるだろうから、従来型TDMAのスペクトル使用は非効率的である。一方、開示された方法および装置の実施形態では、並列復号器による同時送信されたデータの復号、または別の時間間隔でのデータ送信のいずれも行う必要がなくなる。
一実施形態では、ノード34〜36から送信されたデータは、まず準巡回LDPC(QC−LDPC)を使用して符号化される。図4は、OFDMパリティ検査行列HOFDMの一例を示す。本実施形態では、OFDMパリティ検査行列HOFDMは、P×P正方部分行列Hi,j(iは1〜m、jは1〜nの値を有する)のブロックに分割される。この場合、各部分行列Hi,jの大きさPは「展開係数」と呼ばれる。各部分行列Hi,jは、(1)全ゼロ行列、(2)単位行列、または(3)単位行列の巡回シフトのいずれかである。階層復号アーキテクチャにおいて最小限のハードウェアで復号速度を最大限にするために、展開係数Pに等しい並列ハードウェアを用いてQC−LDPC OFDM符号語を復号することができる。
各データ送信ノードに対してQC−LDPCを使用するシステムの一例は、96×96部分行列Hi,j(すなわち、P×P、ここでP=96)を持つ10×48パリティ検査行列HOFDMを用いる。生成されるパリティ検査行列は960×4608となる。OFDM符号語の完全長は4608ビット(パリティ検査行列HOFDMの完全長)である。復号器が並列度P=96で設計されている場合、復号器はパリティ検査方程式の96行(すなわち、パリティ検査行列HOFDMの部分行列Hi,1〜Hi,48の全て)を同時に処理することができる。
しかし、複数のクライアントノードまたは「ユーザー」が、図3のネットワーク10などのNCノードと通信する多重アクセス実施形態では、データパケットは通常、前述の例の4608ビットよりも大幅に短くなり、OFDMサブキャリアの全てを占有しない場合がある。かかるネットワークでは、各ノードには通常、複数のサブキャリアのうちの相互に排他的なサブセットが割り当てられる。この方式は直交周波数分割多元接続(OFDMA)と呼ばれる。割り当てられたサブキャリアは共に変調されてOFDMAシンボルを形成する。一実施形態では、ハードウェアの再使用および復号効率を最大限にするために、利用可能なサブキャリアをクライアントノード数で分割して、OFDMA符号語を1つのクライアントノードから送信するのに要する時間を他の各クライアントノードからの送信に要する時間と確実に等しくする。
OFDMA符号語は、複数のクライアントノードに適応するために、OFDM符号語よりも短くなるであろう。従って、現在開示されている方法および装置を使用して、同一の復号器が、1つのOFDM符号語の復号に必要なハードウェア量からの著しい増加を生じさせずにM個の同時OFDMA符号語を復号するように構成される。
図5は、OFDMAパリティ検査行列HOFDMAの一例示である。M個のクライアントノードがデータパケットを同時に送信している場合、M個の同時クライアントノードを復号し、かつ、同じハードウェア量を維持するためには、OFDMAデータパケットのLDPCは、OFDMデータパケットのLDPCよりもM分の1の長さとなる。さらに、展開係数もM分の1になる。例えば、同時クライアントノード数がM=8の場合、OFDMA符号語長は4608/8=576ビットであり、展開係数P’=P/M=96/8=12である。OFDMA展開係数P’が12の例では、定義により、各部分行列hm’,n’は12×12の寸法を有する。かかる部分行列の各々hm’,n’は、OFDMパリティ検査行列HOFDMの部分行列Hm,nと同様に、全ゼロ行列、単位行列、または単位行列の巡回シフトのいずれかである。従って、OFDMAパリティ検査行列HOFDMAは全体で計576ビット(すなわち、48個の部分行列×部分行列ごとの12ビット)である。本例では、同時クライアントノード数と符号化性能との間で納得できる妥協を提供する。OFDMAパリティ検査行列HOFDMAは、図4に示すOFDMパリティ検査行列HOFDMと同じ数の部分行列の列数(すなわち、n=n’)を持つが、行数m’は符号レートによって異なる可能性があることに注意されたい。
M個のクライアントノードの各々は、OFDMAパリティ行列HOFDMAを使用してLDPC符号化データパケットを同時に送信する。データパケットが受信ネットワークコントローラノード37(図3を参照)で受信されると、復号器44は、M個のクライアントノード全てから受信したデータパケットを同時に復号できるようにするためにデータパケットを配列する必要がある。開示された方法および装置に従って、これを行うには、各クライアントノードから各パリティ検査行列HOFDMAに提示される情報を、本明細書で「等価パリティ検査行列」Heqとして参照される新規の行列を形成するように結合する必要がある。
図6は、一実施形態に従ってM個の同時符号語を復号するために復号器44で使用される等価パリティ検査行列Heqである。図7は、等価パリティ検査行列Heqを構成する部分行列Qi,jの構造を示している。各部分行列Qijは、さらに12×12の下位部分行列(sub−sub−matrix)から構成される。図7にゼロで示されているように、各非対角下位部分行列は12×12のゼロ行列(全要素がゼロ)である。対角線上の各下位部分行列hi,j (k)(kは1〜M)は、k番目のクライアントノードによって送信された受信OFDMAパリティ検査行列HOFDMAから取得される。従って、Q1,1の第1行第1列にある下位部分行列h1,1 (1)は、M個のクライアントノードの1番目によってHOFDMAに送信された部分行列h1,1である。Q1,1の第4行第4列にある下位部分行列h1,1 (4)は、M個のクライアントノードの4番目によってHOFDMAに送信された部分行列h1,1である。第8行第8列にある下位部分行列h1,1 (8)は、M個のクライアントノードの8番目によってHOFDMAに送信された部分行列h1,1である。
本例では、部分行列QijはM×M個の下位部分行列(各大きさは12×12)から構成されるため、部分行列Qijの寸法は96×96(P×P、ここでPは図4に示すOFDMパリティ検査行列の展開係数)である。
図6の等価パリティ行列が、m’×n’個の部分行列Qm’,n’(それぞれP×P)から構成されることに留意すると、生成されるパリティ行列Heqの大きさは、m’P×n’Pである。OFDMパリティ行列HOFDMの長さnがOFDMAパリティ行列HOFDMAの長さn’と同じであることを思い出すと、これら2つの行列のビット長は同一である。従って、従来技術と比較して最小限のハードウェア増設で、OFDM長のLDPC用に設計されている復号器を、図6に示す等価パリティ検査行列を用いて、M個の同時OFDMA LDPCを復号するように構成できる。
前記開示のとおりn=n’の例に加えて、他の実施形態には以下が含まれる。
・n’>n:結合されたOFDMA符号語は、OFDM長データパケットLDPCより長い。本実施形態では、大規模なバッファを用いてOFDMAデータを処理のために保持する。
・n’<n:結合されたOFDMA符号語は、OFDM長データパケットLDPCより短い。
・P’<P/M:許可されているより小さい展開係数が使用され、その結果、処理装置が未使用になる。
同時クライアントノード数がM=8である実施形態では、OFDMA符号語長は4608(OFDM符号語長)/8=576ビットである。本実施形態では、OFDMA展開係数P’は、OFDM展開係数P/M=96/8=12である。ビット対数尤度比(LLR)は、同時に復号されるM個の各OFDMA符号語の各ビットについて計算される。各ビットのLLRは、図6に示す等価パリティ検査行列Heqで示すように再配列される。等価パリティ検査行列Heqで示す配列では、ハードウェアを最も効率的に使用できるようになる(すなわち、復号器の全処理能力が完全に利用されていることを確実にして、数個のLLRを同時に計算できる)。
図8は、4608ビット用に計算されたLLR(すなわち、図6に示す等価パリティ検査行列Heqの対角下位部分行列)がM=8用に格納されているバッファメモリー内の相対位置を示している。注意すべきは、一実施形態では、クライアントノードが2つ以上の符号語に割り当てられていることである。図8に示すように、各符号語の先頭の12ビットが連続して配列され、その後に各符号語から次の12ビットが配列され、というように以下同様に続く。一実施形態では、復号器44は同時に最大8つのOFDMA符号語を処理できるため、ネットワーク上にあるクライアントノードが8未満の状況では、送信するより多くのデータを持つノードのいくつかには、2つ以上の符号語を割り当てることができる。各送信ノードの各符号語の相対ビット位置を図8に示す。
図9は、複数の送信/クライアントノードから受信/ネットワークコントローラノードに対して同時に送信されるデジタルデータの符号化および復号において、ネットワーク10で実行される機能の流れ図である。一実施形態では、ネットワーク内のデジタルデータは「OFDM」LDPC符号語長を持ち、これは、OFDMスペクトル全体が1つのクライアントノードに割り当てられる場合に使用されるLDPC符号語の非短縮版を意味する。一実施形態では、図9の流れ図に示す機能は、メモリーに格納されたソフトウェアまたは他のコンピューターが読取り可能もしくは理解可能な媒体で実装され、プロセッサによって実行される。他の実施形態では、当該機能は、ハードウェア(すなわち、特定用途向け集積回路(ASIC)、プログラマブルゲートアレイ(PGA)、フィールドプログラマブルゲートアレイ(FPGA)などを利用して)、またはハードウェアおよびソフトウェアの任意の組合せにより実行できる。
902では、各クライアントノードが、OFDMA周波数スペクトルの1つまたは複数のサブキャリアに割り当てられる。
904では、各クライアントノードが、OFDM LDPC符号語のM分の1の長さであるOFDMA LDPC符号語を生成し、符号語の総数はMである。
906では、各クライアントノードが、行数m’が符号レートに依存し、列数がn’になるように、図5のパリティ検査行列に従ってそれぞれのデータを符号化する。
908では、各クライアントノードが、符号化されたデータを、割り当てられたサブキャリアにマッピングし、M個のデータの符号語が実質的に同時に全てのクライアントノードからネットワークコントローラノードに送信される。
910では、ネットワークコントローラノードが、M個の符号語全てを同時に受信して、各伝送ビットについてビットLLRを計算し、このビットLLRを、図8に示すように、等価パリティ検査行列と一致するように符号語ごとに配列する。
912では、ネットワークコントローラノードのLDPC復号器が、図6の等価パリティ検査行列Heqに従って復号を行う。このとき、Heqは部分行列Qi,jから構成され、各部分行列Qi,jは、主対角線の下方に部分行列hi,jを持つM×Mのブロック行列である。各hi,j部分行列はP’×P’(P’=P/M)である。復号が終了すると、復号された情報は、上位層での処理のために、関連する符号語に従って再編成される。
別の実施形態では、同一値および同一寸法(幅m’および長さn’)を持つ図7のQi,j部分行列の主対角線下方にある各部分行列hi,jの代わりに、部分行列がhi,j (k)として一般化できるよう、使用されている異なる符号語に対して異なる値および寸法を持つパリティ検査行列hi,j (k)が使用できる。本実施形態では、展開係数の総計は、

(P(i)はi番目の符号語の展開係数)である。hi,j (k)はP(k)×P(k)かつQi,jはP×Pであるため、生成されるパリティ検査行列Heqの長さはm’P×Nとなり、これはOFDM長データパケットLDPCと同一長である。図7に示す非対角ゼロの部分行列は、その同一行の対角線上にある部分行列の幅と同一幅およびその同一列の対角線上にある部分行列の長さと同一長を持ち、かつ必ずしも正方行列ではない。前記開示のn=n’の例に加えて、他の実施形態には以下が含まれる。
・n’>n:結合されたOFDMA符号語は、OFDM長データパケットLDPCより長い。本実施形態では、大規模なバッファを用いてOFDMAデータを処理のために保持する。
・n’<n:結合されたOFDMA符号語は、OFDM長データパケットLDPCより短い。
・P<P:許可されているより小さい展開係数が使用され、その結果、処理装置が未使用になる。
本明細書では様々な実施形態が具体的に解説および/または説明されている。しかし、開示された実施形態の修正および改変は、本発明の精神および意図された範囲から逸脱することなく、前述の教示および添付の請求項の範囲内に含まれていることを理解されたい。

Claims (21)

  1. 受信ノードにおけるデータ上で誤り検査を実行する方法であって、
    M個の送信ノードから複数の符号語を実質的に同時に受信するステップであって、受信される前記符号語が、OFDMAパリティ検査行列を用いて符号化された低密度パリティ検査(LDPC)符号語であり、かつ、前記M個の送信ノードから受信される前記符号語の各々が、該受信される符号語を送信するために各送信ノードに割り当てられた直交周波数分割多元接続(OFDMA)周波数スペクトルの複数のサブキャリアのうち割り当てられたサブセットで受信される、ステップと、
    M個の送信ノード全てから受信された前記符号語に対する誤り検査を、等価パリティ検査行列を用いて同時に実行するステップと、
    を含み、
    前記符号語の各々がOFDM LDPC符号語のM分の1の長さである、方法。
  2. 前記符号語が符号レートで符号化され、かつ前記OFDMAパリティ検査行列がm’個の行を有し、この行数m’は前記符号レートに依存する、請求項1に記載の方法。
  3. 前記OFDMAパリティ検査行列の展開係数がOFDMパリティ検査行列の展開係数のM分の1である、請求項に記載の方法。
  4. 前記符号語の符号化に使用する前記パリティ検査行列が

    で定義され、式中の各部分行列hi,jが全ゼロ行列、単位行列、または単位行列の巡回シフトのいずれかである、請求項に記載の方法。
  5. 前記等価パリティ検査行列が

    を含み、式中

    であって、各部分行列hi,jがP’×P’でありかつP’=P/Mであり、式中Pが前記OFDMパリティ検査行列の展開係数であり、P’が前記OFDMAパリティ検査行列の展開係数である、請求項に記載の方法。
  6. 前記等価パリティ検査行列が



    であって、各部分行列hi,j (k)がP(k)×P(k)であり、かつQi,jがP×Pであり、展開係数の総計が

    であり、式中P(i)はi番目の前記符号語の展開係数である、請求項1に記載の方法。
  7. 各部分行列hi,j (k)が正方行列であるが、前記各部分行列の寸法が他の対角部分行列に依存しない、請求項に記載の方法。
  8. 各ゼロ部分行列がその同一行の対角線上にある部分行列の幅と同一幅およびその同一列の対角線上にある部分行列の長さと同一長を持つ、請求項に記載の方法。
  9. コンピューター読取り可能媒体であって、前記媒体上に格納された命令を持ち、前記命令は、プロセッサによって実行されると、複数の送信ノードから受信したデータを前記プロセッサに復号させる命令であり、
    各送信ノードに直交周波数分割多元接続周波数スペクトルの1つまたは複数のサブキャリアを割り当てる論理と、
    前記送信ノードからM個の符号語を実質的に同時に受信する論理であって、前記符号語は、低密度パリティ検査(LDPC)符号語であり、前記符号語は、行数m’が符号レートに依存するようにパリティ検査行列で符号化され、前記符号語は、前記割り当てられたサブキャリアにマッピングされている、論理と、
    前記符号語の各受信ビットについてビット対数尤度比を計算し、該ビット対数尤度比を、等価パリティ検査行列と一致するように、符号語ごとに配列する論理と、
    前記等価パリティ検査行列を用いて前記符号語を復号する論理と、
    を含む命令であり、
    前記符号語の各々がOFDM LDPC符号語のM分の1の長さである、コンピューター読取り可能媒体。
  10. 前記符号化されたパリティ検査行列が

    を含む、請求項に記載のコンピューター読取り可能媒体。
  11. 前記等価パリティ検査行列が

    を含み、式中

    であって、各部分行列hi,jがP’×P’であり、かつP’=P/Mである、請求項に記載のコンピューター読取り可能媒体。
  12. 前記等価パリティ検査行列が

    を含み、式中

    であって、各部分行列hi,j (k)がP(k)×P(k)であり、かつQi,jがP×Pであり、展開係数の総計が

    であり、式中P(i)はi番目の前記符号語の展開係数である、請求項に記載のコンピューター読取り可能媒体。
  13. 各部分行列hi,j (k)が正方行列であるが、前記各部分行列の寸法がその他の対角部分行列に依存しない、請求項12に記載のコンピューター読取り可能媒体。
  14. 各ゼロ部分行列がその同一行の対角線上にある部分行列の幅と同一幅およびその同一列の対角線上にある部分行列の長さと同一長を持つ、請求項13に記載のコンピューター読取り可能媒体。
  15. 複数の送信ノードからのデータを復号するためのシステムであって、
    各送信ノードに直交周波数分割多元接続周波数スペクトルの1つまたは複数のサブキャリアを割り当てる手段と、
    前記送信ノードからM個の符号語を実質的に同時に受信する手段であって、前記符号語は、低密度パリティ検査(LDPC)符号語であり、符号レートに依存する行数m’を有するようにパリティ検査行列に符号化され、かつ、割り当てられた前記サブキャリアにマッピングされている、手段と、
    前記符号語の各受信ビットについてビット対数尤度比を計算し、該ビット対数尤度比を、等価パリティ検査行列と一致するように、符号語ごとに配列する手段と、
    前記等価パリティ検査行列を用いて前記符号語を復号する手段と、
    を備え、
    前記符号語の各々がOFDM LDPC符号語のM分の1の長さである、システム。
  16. ネットワークノードであって、
    トランシーバーと、
    前記トランシーバーに接続された復調器と、
    前記復調器に接続された復号器と、を備え、
    前記復号器が、
    複数の送信ノードの各々に直交周波数分割多元接続周波数スペクトルの1つまたは複数のサブキャリアを割り当て、
    前記送信ノードからM個の符号語を実質的に同時に受信し、ここで、前記符号語は、低密度パリティ検査(LDPC)符号語であり、符号レートに依存する行数m’を有するようにパリティ検査行列に符号化され、かつ、割り当てられた前記サブキャリアにマッピングされており、
    前記符号語の各受信ビットについてビット対数尤度比を計算し、該ビット対数尤度比を、等価パリティ検査行列と一致するように、符号語ごとに配列し、
    前記等価パリティ検査行列を用いて前記符号語を復号する
    ように構成された復号器であり、
    前記符号語の各々がOFDM LDPC符号語のM分の1の長さである、ネットワークノード。
  17. 前記符号化されたパリティ検査行列が

    を含む、請求項16に記載のネットワークノード。
  18. 前記等価パリティ検査行列が

    を含み、式中

    であって、各部分行列hi,jがP’×P’であり、かつP’=P/Mである、請求項16に記載のネットワークノード。
  19. 前記等価パリティ検査行列が

    を含み、式中

    であって、各部分行列hi,j (k)がP(k)×P(k)であり、かつQi,jがP×Pであり、展開係数の総計が

    (式中P(i)はi番目の前記符号語の展開係数)である、請求項16に記載のネットワークノード。
  20. 各部分行列hi,j (k)が正方行列であるが、前記各部分行列の寸法が他の対角部分行列に依存しない、請求項19に記載のネットワークノード。
  21. 各ゼロ部分行列がその同一行の対角線上にある部分行列の幅と同一幅およびその同一列の対角線上にある部分行列の長さと同一長を持つ、請求項20に記載のネットワークノード。
JP2011539787A 2008-12-09 2009-12-08 Ldpc符号を利用した多重入力ハードウェアの再利用 Expired - Fee Related JP5522641B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/331,292 US8443270B2 (en) 2008-12-09 2008-12-09 Multiple input hardware reuse using LDPC codes
US12/331,292 2008-12-09
PCT/US2009/067083 WO2010068616A1 (en) 2008-12-09 2009-12-08 Multiple input hardware reuse using ldpc codes

Publications (2)

Publication Number Publication Date
JP2012511841A JP2012511841A (ja) 2012-05-24
JP5522641B2 true JP5522641B2 (ja) 2014-06-18

Family

ID=42232436

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011539787A Expired - Fee Related JP5522641B2 (ja) 2008-12-09 2009-12-08 Ldpc符号を利用した多重入力ハードウェアの再利用

Country Status (7)

Country Link
US (1) US8443270B2 (ja)
EP (1) EP2329601A4 (ja)
JP (1) JP5522641B2 (ja)
KR (1) KR20110102295A (ja)
CN (1) CN102171933B (ja)
HK (1) HK1161445A1 (ja)
WO (1) WO2010068616A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8656249B2 (en) * 2011-09-07 2014-02-18 Lsi Corporation Multi-level LDPC layer decoder
US9141470B2 (en) * 2012-03-19 2015-09-22 Panasonic Corporation Decoding device
KR101730371B1 (ko) * 2013-08-01 2017-04-26 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법 및 방송 신호 수신 방법
US9344116B2 (en) * 2014-05-29 2016-05-17 Yuan Ze University Method for determining layer stoppage in LDPC decoding
US10678662B2 (en) 2016-01-04 2020-06-09 Cnex Labs, Inc. Computing system with data protection mechanism with soft information and method of operation thereof
CN116827357A (zh) * 2016-05-13 2023-09-29 中兴通讯股份有限公司 一种结构化低密度奇偶校验码ldpc的编码、译码方法及装置
US20180123615A1 (en) * 2016-11-02 2018-05-03 Qualcomm Incorporated Non-linear log-likelihood ratio quantization techniques for ldpc decoder architecture

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633856B2 (en) * 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US7406647B2 (en) * 2001-12-06 2008-07-29 Pulse-Link, Inc. Systems and methods for forward error correction in a wireless communication network
US7409628B2 (en) * 2002-08-15 2008-08-05 Broadcom Corporation Efficient design to implement LDPC (Low Density Parity Check) decoder
US6957375B2 (en) * 2003-02-26 2005-10-18 Flarion Technologies, Inc. Method and apparatus for performing low-density parity-check (LDPC) code operations using a multi-level permutation
US8140931B2 (en) * 2003-07-03 2012-03-20 Dtvg Licensing, Inc. Method and system for generating parallel decodable low density parity check (LDPC) codes
KR100955952B1 (ko) * 2003-10-13 2010-05-19 삼성전자주식회사 무선 통신 시스템에서 리프팅 저밀도 패러티 검사 부호를이용한 시공간 부호화 방법 및 장치
US7383487B2 (en) * 2004-01-10 2008-06-03 Broadcom Corporation IPHD (iterative parallel hybrid decoding) of various MLC (multi-level code) signals
US7281192B2 (en) * 2004-04-05 2007-10-09 Broadcom Corporation LDPC (Low Density Parity Check) coded signal decoding using parallel and simultaneous bit node and check node processing
US7395490B2 (en) * 2004-07-21 2008-07-01 Qualcomm Incorporated LDPC decoding methods and apparatus
CN101341659B (zh) * 2004-08-13 2012-12-12 Dtvg许可公司 用于多输入多输出通道的低密度奇偶校验码的码设计与实现的改进
US7607065B2 (en) * 2005-07-27 2009-10-20 Agere Systems Inc. Method and apparatus for block and rate independent decoding of LDPC codes
KR100946905B1 (ko) * 2005-09-27 2010-03-09 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 신호 송수신 장치 및 방법
US7398453B2 (en) * 2005-10-03 2008-07-08 Motorola, Inc. Method and apparatus for a low-density parity-check decoder
US7530002B2 (en) * 2006-01-03 2009-05-05 Broadcom Corporation Sub-matrix-based implementation of LDPC (Low Density Parity Check) decoder
KR20070080392A (ko) * 2006-02-07 2007-08-10 삼성전자주식회사 저밀도 패러티 검사 부호의 천공 방법
US7831895B2 (en) * 2006-07-25 2010-11-09 Communications Coding Corporation Universal error control coding system for digital communication and data storage systems
US8464120B2 (en) * 2006-10-18 2013-06-11 Panasonic Corporation Method and system for data transmission in a multiple input multiple output (MIMO) system including unbalanced lifting of a parity check matrix prior to encoding input data streams
US7861134B2 (en) * 2007-02-28 2010-12-28 Cenk Kose Methods and systems for LDPC coding
US7912140B2 (en) * 2007-03-26 2011-03-22 Lantiq Israel Ltd. Reducing computational complexity in maximum likelihood MIMO OFDM decoder

Also Published As

Publication number Publication date
US8443270B2 (en) 2013-05-14
HK1161445A1 (en) 2012-08-24
JP2012511841A (ja) 2012-05-24
EP2329601A4 (en) 2016-09-07
KR20110102295A (ko) 2011-09-16
CN102171933B (zh) 2014-06-18
CN102171933A (zh) 2011-08-31
US20100146361A1 (en) 2010-06-10
EP2329601A1 (en) 2011-06-08
WO2010068616A1 (en) 2010-06-17

Similar Documents

Publication Publication Date Title
US11831329B2 (en) LDPC code matrices
JP3990396B2 (ja) ロングおよびショートブロック長の低密度パリティチェック(ldpc)コードを提供する方法およびシステム
JP5522641B2 (ja) Ldpc符号を利用した多重入力ハードウェアの再利用
JP3964890B2 (ja) 並列デコード可能な低密度パリティチェック(ldpc)コードを発生させる方法およびシステム
US8291289B2 (en) Low density parity check (LDPC) code
KR100695380B1 (ko) 감소된 메모리 ldpc 코드를 제공하는 방법 및 장치
KR100543154B1 (ko) 저밀도 패리티 검사 코드 생성 방법 및 시스템
JP2005102201A (ja) ショートブロック長の低密度パリティチェック(ldpc)コードを提供する方法およびシステム
CN1612486A (zh) 提供短块长度低密度奇偶性校验码的方法和系统
KR20080077992A (ko) 검사 행렬 생성 방법, 부호화 방법, 통신 장치, 통신시스템, 부호화기
US8782489B2 (en) Method and system for providing Low Density Parity Check (LDPC) encoding and decoding
US20110202817A1 (en) Node information storage method and system for a low-density parity-check decoder
JP6472790B2 (ja) 共通ハードウェアリソースを共用する、異なる低密度パリティ検査(ldpc)符号のための低密度パリティ検査の符号化
WO2006073322A1 (en) 3-stripes gilbert low density parity-check codes
EP2989720A1 (en) Method and apparatus of ldpc encoder in 10gbase-t system
US20140173374A1 (en) Methods and apparatus for error coding
Luby et al. Verification codes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130917

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131217

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131225

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140114

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140210

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140401

R150 Certificate of patent or registration of utility model

Ref document number: 5522641

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees