JP5551209B2 - 可変サイズのパケットのldpc符号化及び復号化 - Google Patents

可変サイズのパケットのldpc符号化及び復号化 Download PDF

Info

Publication number
JP5551209B2
JP5551209B2 JP2012128830A JP2012128830A JP5551209B2 JP 5551209 B2 JP5551209 B2 JP 5551209B2 JP 2012128830 A JP2012128830 A JP 2012128830A JP 2012128830 A JP2012128830 A JP 2012128830A JP 5551209 B2 JP5551209 B2 JP 5551209B2
Authority
JP
Japan
Prior art keywords
parity check
check matrix
cyclic shift
matrix
basic
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
JP2012128830A
Other languages
English (en)
Other versions
JP2012231473A (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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2012231473A publication Critical patent/JP2012231473A/ja
Application granted granted Critical
Publication of JP5551209B2 publication Critical patent/JP5551209B2/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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/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/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/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/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]

Description

(関連出願の相互参照)
本願は、2007年1月24日付け提出され、本願の譲受人に譲渡され、参照によって本明細書に組み込まれる「LDPC HARMONIZATION」と題された米国仮出願第60/886,496号の優先権を主張する。
本開示は、一般に通信に関し、より詳しくはデータの符号化及び復号化のための技術に関する。
通信システムにおいて、送信機は、コードビットを取得し、そのコードビットをインターリーブし、そのインターリーブされたビットを変調シンボルへマッピングするために、データのパケットを符号化しても良い。そして、送信機は、その変調シンボルを処理し、通信チャネルを通して送信しても良い。該通信チャネルは、特定のチャネル応答が原因で、データ伝送をひずませることがあり、さらにまた、雑音及び干渉が原因で、データ伝送を悪化させることがある。受信機は、送信変調シンボルがひずまされ悪化されたバージョンであるかもしれない受信シンボルを取得しても良い。受信機は、送信されたパケットを回復するために、該受信シンボルを処理しても良い。
送信機による符号化は、受信機が、悪化された受信シンボルで送信パケットを確実に(reliably)回復できるようにし得る。送信機は、コードビットにおける冗長性(redundancy)を生む前方誤り訂正(forward error correction)(FEC)符号に基づいて、符号化を実行しても良い。受信機は、その送信パケットの回復の可能性(likelihood)を向上するために、その冗長性を利用し得る。
様々なタイプのFEC符号を符号化に用いることができる。幾つかの一般的なタイプのFEC符号は、畳み込み符号、ターボ符号、及び低密度パリティチェック(low density parity check)(LDPC)符号を含む。畳み込み符号又はターボ符号は、k個の情報ビットからなるパケットを符号化し、kのr倍個のコードビットからなる符号化パケットを生成することができる。ここで、1/rは、畳み込み符号又はターボ符号の符号レートである。畳み込み符号は、各々の情報ビットを、1回に1つの情報ビットを操作できる符号器を通過させることによって、任意のサイズのパケットを容易に(readily)符号化することができる。また、ターボ符号は、1回に1つの情報ビットを操作できる2つの要素符号器と、異なるパケットサイズをサポートできる1つのコードインターリーバとを用いることによって、異なるパケットサイズをサポートすることができる。LDPC符号は、ある動作条件の下で、畳み込み符号又はターボ符号に比較して、より良いパフォーマンスを有し得る。しかしながら、LDPC符号は、一般的に、特定のパケットサイズ用にデザインされており、可変サイズのパケットに容易に適用できない可能性がある。
それゆえ、可変サイズのパケットの効率的なLDPC符号化及び復号化をサポートする技術が当該技術分野において必要である。
LDPC符号化及び復号化をサポートする技術が本明細書で説明される。一つの態様において、異なるディメンションの基本パリティチェック行列のセット及び異なる2のべき乗のリフティング値のセットを使って、可変サイズのパケットのLDPC復号化及び符号化が効果的にサポートされても良い。ディメンションm×nの基本パリティチェック行列Gは、n個のコードビットの符号化されたパケット又はコードワードを得るために、k=n−m個までの情報ビットのパケットを符号化するために用いられても良い。この基本パリティチェック行列Gは、ディメンションL・m×L・nのリフトされたパリティチェック行列Hを得るために、リフティング値Lにより“リフト(lifted)”されても良い。そのリフトされたパリティチェック行列Hは、L・n個のコードビットを得るために、L・k個までの情報ビットのパケットを符号化するために用いられても良い。広範なパケットサイズが、基本パリティチェック行列の比較的小さいセット及びリフティング値の比較的小さいセットでサポートされても良い。また、リフティングは、パフォーマンスを向上し得る、効率的な同時実行される符号化及び復号化を可能にする。さらに、リフティングは、大きなLDPC符号のための記述の複雑さを低減し得る。
他の態様において、一つのリフティング値(例えば、最大のリフティング値)のための基本パリティチェック行列の非零要素についての巡回シフト値の単一のセットが、異なる2のべき乗からなる全ての他のリフティング値のための巡回シフト値を生成するために、使用されても良い。更に他の態様において、少なくとも3つの非零要素を有する基本パリティチェック行列の列における2つの非零要素について、巡回シフト値s及びs+L/mが選択されても良い。ここで、sは任意の値であり、mは2のべき乗である。一つのデザインにおいて、mは4に等しく、それら2つの非零要素についての巡回シフト値は、s及びs+L/4である。これら巡回シフト値は、符号化及び復号化を単純化する。
本開示の様々な態様及び特徴が以下で更に詳しく説明される。
図1は、無線通信システムを示す。 図2は、基地局及び端末のブロック図を示す。 図3は、例であるLDPC符号のためのタナーグラフ(Tanner graph)を示す。 図4は、基本パリティチェック行列(base parity check matrix)のリフティング(lifting)を示す。 図5は、4つの巡回置換行列(cyclic permutation matrices)のセットを示す。 図6は、リフトされたパリティチェック行列(lifted parity check matrix)を示す。 図7は、そのリフトされたパリティチェック行列の他の表現を示す。 図8は、リフトされたパリティチェック行列のためのグラフを示す。 図9は、データを処理するためのプロセスを示す。 図10は、データを処理するための装置を示す。 図11は、パケットを処理するためのプロセスを示す。 図12は、パケットを処理するための他のプロセスを示す。 図13は、パケットを処理するための装置を示す。 図14は、パケットを処理するための更に他のプロセスを示す。 図15は、パケットを処理するための他の装置を示す。
詳細な説明
本明細書で説明される技術は、例えば通信、コンピューティング、ネットワーキングなどのような、様々なアプリケーションのために用いられても良い。また、本技術は、無線システム、有線システムなどを含む様々な通信システムのために用いられても良い。明確にするために、以下では、無線通信システムについて、本技術の幾つかの態様が説明される。
図1は、無線通信システム100を示す。無線通信システム100は、アクセスネットワーク(AN)と呼ばれることもある。簡単にするために、唯一つの基地局110及び二つの端末120と130が図1に示されている。基地局は、端末と通信する局であり、アクセスポイント、Node B、evolved Node Bなどと呼ばれることもある。端末は、固定された(stationary)ものであっても良いし、携帯できる(mobile)ものであっても良い。端末はまた、アクセス端末(AT)、移動局(mobile station)、ユーザ装置(user equipment)、加入者ユニット(subscriber unit)、局(station)などと呼ばれることもある。端末は、携帯電話(cellular phone)、携帯情報端末(PDA)、無線通信デバイス、無線モデム、ハンドヘルドデバイス、ラップトップコンピュータ、コードレスフォンなどであっても良い。端末は、いつでも順方向及び/又は逆方向リンク上で基地局と通信し得る。順方向リンク(又は、ダウンリンク)は、基地局から端末への通信リンクを指し、逆方向リンク(又は、アップリンク)は、端末から基地局への通信リンクを指す。図1において、端末120は、順方向リンク122を通して基地局110からデータを受信し、逆方向リンク124を通してデータを送信しても良い。端末130は、順方向リンク132を通して基地局110からデータを受信し、逆方向リンク134を通してデータを送信しても良い。本明細書で説明される技術は、順方向リンク上の伝送のためだけでなく、逆方向リンクのためにも利用できる。
図2は、図1における基地局110及び端末120のデザインのブロック図を示す。このデザインにおいて、基地局110は、S個のアンテナ224a〜224sを装備しており、端末120は、T個のアンテナ252a〜252tを装備している。ここで、一般に、S≧1及びT≧1である。
順方向リンク上で、基地局110にて、送信(TX)データプロセッサ210は、データソース208からデータのパケットを受け取り、パケットフォーマットに基づいて、そのパケットを処理(例えば、符号化、インターリーブ、及びシンボルマッピング)して、データのための変調シンボルであるデータシンボルを提供しても良い。TX MIMOプロセッサ220は、そのデータシンボルをパイロットシンボルとともに多重化し、該当する場合に空間処理(例えば、プリデコーディング)し、S個の出力シンボルストリームを、S個の送信機(TMTR)222a〜222sへ供給しても良い。各々の送信機222は、出力チップストリームを得るために、(例えば、OFDMについて)その出力シンボルストリームを処理しても良い。各々の送信機222は、さらに、その出力チップストリームを調整(condition)(例えば、アナログに変換、フィルタリング、増幅、及びアップコンバート)し、順方向リンク信号を生成しても良い。送信機222a〜222sからのS個の順方向リンク信号は、それぞれ、S個のアンテナ224a〜224sを通して送信されても良い。
端末120にて、T個のアンテナ252a〜252tは、基地局110の順方向リンクを受信し、各々のアンテナ252は、受信信号を、各々の受信機(RCVR)254へ供給しても良い。各々の受信機254は、サンプルを得るために、その受信信号を処理(例えば、フィルタリング、増幅、ダウンコンバート、及びデジタイズ)し、さらに、受信シンボルを得るために、(例えば、OFDMについて)そのサンプルを処理し、その受信シンボルを、MIMO検出器256へ供給しても良い。MIMO検出器256は、該当する場合にその受信シンボルのMIMO検出を実行し、検出シンボルを提供しても良い。受信(RX)データプロセッサ260は、その検出シンボルを処理(例えば、シンボルデマッピング、デインターリーブ、及び復号化)し、復号化されたデータを、データシンク262へ供給しても良い。一般に、MIMO検出器256及びRXデータプロセッサ260による処理は、基地局110でのTX MIMOプロセッサ220及びTXデータプロセッサ210による処理に対して相補的である。
逆方向リンク上で、端末120にて、データのパケットが、データソース278により供給され、TXデータプロセッサ280により処理(例えば、符号化、インターリーブ、及びシンボルマッピング)されても良い。TXデータプロセッサ280からのデータシンボルは、パイロットシンボルとともに多重化され、TX MIMOプロセッサ282により空間的に処理され、さらに、T個の逆方向リンク信号を生成するために、送信機254a〜254tにより処理されても良い。T個の逆方向リンク信号は、アンテナ252a〜252tを通して送信されても良い。基地局110にて、端末120からの逆方向リンク信号は、アンテナ224a〜224sにより受信され、MIMO検出器238により検出され、さらに、端末120により送信されたパケットを回復するために、RXデータプロセッサ240により処理されても良い。
コントローラ/プロセッサ230及び270は、それぞれ、基地局110及び端末120でのオペレーションを命令しても良い。コントローラ/プロセッサ230及び270は、送信及び/又は受信されるべきパケットのサイズを決定しても良い。そして、コントローラ/プロセッサ230及び270は、それぞれ、TXデータプロセッサ210及び280による符号化を命令しても良く、及び/又は、それぞれ、RXデータプロセッサ240及び260による復号化を命令しても良い。メモリ232及び272は、それぞれ、基地局110及び端末120のためのデータ及びプログラムコードを記憶しても良い。
一つの態様において、可変サイズのパケットのLDPC符号化又は復号化が、異なるディメンション(dimensions)の基本パリティチェック行列(base parity check matrix)のセット及び異なる2のべき乗(different powers of two)のリフティング値(lifting values)のセットを使って、可変サイズのパケットのLDPC復号化及び符号化が効率的にサポートされても良い。基本パリティチェック行列は、異なる(k,n)比率(rates)の基本LDPC符号について存在していても良い。ここで、kは、情報ビットの数であり、nは、コードビットの数である。各々の基本LDPC符号は、リフトされた(lifted)LDPC符号を得るために、以下で説明されるようにリフトされる。リフトされたLDPC符号は、異なるサイズのパケットを符号化又は復号化するために用いられても良い。パケットサイズの範囲は、基底グラフ(base graph)においてパリティビットを追加又は除去することでLDPC符号を伸張又は短縮することによってサポートされても良い。
LDPC符号は、比較的少ない非零/非空(non-zero/non-null)の要素と大部分の零/空(zero/null)の要素とを持つ疎パリティチェック行列(sparse parity check matrix)により定義されても良い。パリティチェック行列は、コードビットに対する線形制約(linear constraints)のセットを定義するものであり、タナーグラフの形式で表現されても良い。
図3は、例である基本LDPC符号のためのタナーグラフ300を示す。この例において、タナーグラフ300は、7個の円により表現される7個の変数ノードV〜Vと、4個の四角で表現される4個のチェックノードC〜Cとを含んでいる。各々の変数ノードは、コードビットを表現する。そのコードビットは、送信されるものと、パンクチャーされる(punctured)(すなわち、送信されない)ものとのいずれであっても良い。変数ノードV〜Vに関する7個のコードビットは、コードワードを形成する。各々のチェックノードは、制約を表現しており、4つのチェックノードC〜Cは、基本LDPC符号を定義する4つの制約を表現している。変数ノードは、エッジ(edges)を経由して、チェックノードへ接続される。この例において、16本のエッジa〜pが、7個の変数ノードを、4個のチェックノードへ接続している。ノードの次数(degree)は、そのノードに接続されるエッジの数に等しい。この例において、変数ノードV及びVは、次数3のノードであり、変数ノードV〜Vは、次数2のノードである。各々のチェックノードに関して、そのチェックノードに接続される変数ノードでの全てのコードビットは、(2を法として)加算して0になるように制約される。
図3はまた、タナーグラフ300に対応する基本パリティチェック行列Hを示す。Hは、7個の変数ノードV〜Vに関する7つの列と、4個のチェックノードC〜Cに関する4つの行とを含んでいる。Hの各々の列は、その列に対応する変数ノードに接続された各々のエッジについて、1である要素を含んでいる。例えば、タナーグラフ300において、列1は、対応する変数ノードVをチェックノードC,C及びCへ接続する3つのエッジa,b及びcについて、行1,2及び3に、3つの1を含んでいる。Hの残りの列の各々は、対応する変数ノードを2つ又は3つのチェックノードへ接続する2つ又は3つのエッジについて、2つ又は3つの1を含んでいる。
LDPC符号に関する制約は、次のように行列形式で表現されても良い。
Figure 0005551209
ここで、Hは、LDPC符号のためのm×nパリティチェック行列であり、
xは、一つのコードワードのためのn個のコードビットn×1列ベクトルであり、
0は、すべて零の列ベクトルである。
簡単にするために、0は、以下の説明で、すべて零であるベクトル又は行列を示すものとしても良い。方程式(1)におけるマトリックス乗算には、2を法とする計算が使われる。コードワードは、方程式(1)における制約が満たされる場合に、有効であるものとみなされる。コードワードxを得るために、パリティチェック行列Hに基づいてパケットを符号化することが、以下で説明される。
大きなリフトされたLDPC符号を得るために、小さな基本LDPC符号がリフトされても良い。リフトされたLDPC符号のためのリフトされたパリティチェック行列を得るために、基本パリティチェック行列における各々の非零の要素を、L×L置換行列で置き換えることによって、リフティングが実現されても良い。これは、基本LDPC符号のための基底グラフのL個のコピーが生成される結果をもたらす。置換行列は、各々のグラフコピーにおける変数ノードが、どのように、L個のグラフコピーにおけるチェックノードに接続されるかを、決定する。
図4は、図3に示される基本パリティチェック行列Hのためのリフティングの例を示す。リフトされたパリティチェック行列Hを得るために、Hの各々の非零要素(それは、タナーグラフにおけるエッジに対応する。)が、L×L置換行列σで置き換えられる。Hの16個の非零要素のための16個の置換行列は、σ〜σで示される。ここで、σは、図3におけるエッジaのための置換行列である。
置換行列は、様々な方法で定義されても良い。一つのデザインにおいて、置換行列のセットがあらかじめ定義され、基本パリティチェック行列の各々の非零要素のための置換行列が、この予め定義された置換行列のセットから選択されても良い。他のデザインにおいて、巡回置換行列が、基本パリティチェック行列の非零要素のために利用されても良い。
図5は、L=4のための4つの巡回置換行列のセットを示す。この例において、各々の置換行列は、4×4のディメンションを有している。巡回シフト値が0である置換行列σは、対角線に沿って1があり且つ他のところは0である単位行列Iに等しい。巡回シフト値が1である置換行列σは、単位行列の最下部の一つの行を最上部に移動又はシフトしたものである。巡回シフト値が2である置換行列σは、単位行列の最下部の二つの行を最上部に移動又はシフトしたものである。巡回シフト値が3である置換行列σは、単位行列の最下部の三つの行を最上部に移動又はシフトしたものである。一般に、巡回シフト値がsであるL×L置換行列σは、単位行列の最下部のs個の行を最上部に移動又はシフトしたものである。ここで、0≦s≦L−1である。
図6は、16個の置換行列σ〜σの各々が図5に示す4つの巡回置換行列σ〜σのうちの一つで置き換えられている、図中4中のリフトされたパリティチェック行列Hの例を示す。図6の下側は、各々の巡回置換行列が、その対応する4×4行列の1と0で置き換えられた、リフトされたパリティチェック行列Hを示す。
基本パリティチェック行列Hの各々の非零要素を、4×4置換行列で置き換えることは、基本LDPC符号のための基底グラフの4つのコピーが生成される結果をもたらす。与えられた変数ノードV及び与えられたチェックノードCに対応する4×4置換行列に関して、この置換行列の4つの列は、4つのグラフコピーにおける変数ノードVに対応し、また、この置換行列の4つの行は、4つのグラフコピーにおけるチェックノードCに対応する。置換行列における1は、四つのグラフコピーにおける変数ノードVを四つのグラフコピーにおけるチェックノードCへ接続するエッジに対応する。具体的には、行yの列xにおける1は、グラフコピーxにおける変数ノードVがグラフコピーyにおけるチェックノードCへ接続されることを意味する。一例として、巡回置換行列σは、Hにおける変数ノードV及びチェックノードC関する非零要素について用いられる。行列σは、行2の列1において1を含み、これは、グラフコピー1における変数ノードVがグラフコピー2におけるチェックノードCへ接続されることを意味する。
図7は、L=8を使った、図3に示される基本パリティチェック行列Hに基づいて生成された、リフトされたパリティチェック行列Hの表現を示す。この表現において、8×16のグリッド710は、8つのグラフコピーすべてにおける7つの変数ノードに関するエッジを記憶する。グリッド710の各々の行は、1つのグラフコピーに対応する。各々の行における16個のボックスは、1つのグラフコピーにおける7つの変数ノードに関する16本のエッジa〜pに対応する。8×16のグリッド720は、8つのグラフコピーすべてにおける4つのチェックノードに関するエッジを記憶する。グリッド720の各々の行は、1つのグラフコピーに対応する。各々の行における16個のボックスは、1つのグラフコピーにおける4つのチェックノードに関する16本のエッジa〜pに対応する。
図7はまた、変数ノードVの8つのコピーと、エッジdに関するチェックノードCの8つのコピーとの間の接続を示し、それは、この例においては、巡回置換行列σを持つ。それゆえ、エッジdの8つのコピーは、行列σによって、3つの位置ずつ、循環的に下方にシフトされる。残りのエッジの各々は、L=8に関して、0〜7の範囲内の値により循環的にシフトされても良い。
一般に、グリッドは、基本パリティチェック行列における各々のエッジに関する1つの列と、L個のグラフコピーの各々に関する1つの行とを含む。各々のエッジのL個のコピーは、そのエッジのための巡回置換行列により決定された量により循環的にシフトされても良い。
図3〜6は、図3に示される基本パリティチェック行列Hを使った、例である基本LDPC符号、及び、図6に示されるリフトされたパリティチェック行列Hを使った、より大きいLDPC符号を得るための、この基本LDPC符号のリフティングを示す。異なるディメンションの巡回置換行列を用いることによって、異なるサイズのリフティングが実現されても良い。基本パリティチェック行列Hのエッジは、0〜L−1の範囲内の値によって循環的にシフトされても良い。基本パリティチェック行列のエッジのための巡回シフト値は、コーディング(coding)パフォーマンスに基づいて選択されても良い。
一つのデザインにおいて、6から11までにおよぶkの異なる値について、6つの基本LDPC符号のセットが定義されても良い。表1は、一つのデザインに従って、6つのLDPC符号の各種のパラメータを一覧表にしたものである。一つのデザインにおいて、こらら6つの基本LDPC符号は、公的に入手可能な(publicly available)3GPP2 C.S0084-001, entitled “Physical Layer for Ultra Mobile Broadband (UMB) Air Interface Specification,” August 2007に記載されているように実施されても良い。基本LDPC符号はまた、他のデザインで実施されても良い。
Figure 0005551209
一つのデザインにおいて、4,8,16,32,64,128,256,512及び1024からなる9つのリフティング値のセットがサポートされても良い。このデザインにおいて、最小のリフティング値は、Lmin=4であり、最大のリフティング値は、Lmax=1024である。これらリフティング値は、異なる2のべき乗であり、これは、ある利点を提供し得る。24から11,264までにおよぶ54種類の異なるパケットサイズの全体が、6から11までにおよぶkでの6つの基本LDPC符号と、4から1024までにおよぶ9つのリフティング値とでサポートされても良い。一般に、任意の範囲のリフティング値がサポートされても良く、また、Lmin及びLmaxは任意の適切な(suitable)値であっても良い。
表2は、一つのデザインに従った、基本パリティチェック行列Gのパラメータを与えるものである。表1に示されるように、Gは、27×33のディメンションを持ち、0〜26のインデックスを持つ27の列と、0〜32のインデックスを持つ33の行を含む。各々の行に関して、表2の2番目の列は、行の次数を与える。行の次数は、その行における非零要素の数に対応する。表2の3番目の列は、各々の行における非零要素の列の位置を与える。表2の4番目の列は、各々の行における各々の非零要素のための巡回シフト値を与える。Lmax=1024については、巡回シフト値は、0〜1023の範囲内である。基本パリティチェック行列G〜Gの例のデザインは、前述の3GPP2 C.S0084-001において説明されている。
Figure 0005551209
一つのデザインにおいて、基本パリティチェック行列及びリフティング値は、次のように、サイズkのパケットに対して選択されても良い。まず、リフティング値Lは、次のように、パケットサイズkに基づいて選択されても良い。
Figure 0005551209
ここで、kB,maxは、全ての基本LDPC符号に関する情報ビットの最大数である。
Figure 0005551209
表1に示される基本LDPC符号のセットに関しては、kB,max=11であるが、基本LDPC符号の他のセットに関して他の値に等しくても良い。
次に、基本パリティチェック行列は、次のように、パケットサイズk及び選択されたリフティング値Lに基づいて選択されても良い。
Figure 0005551209
選択された基本パリティチェック行列のインデックスは、i=k−6として与えられても良い。選択された基本パリティチェック行列は、以下の説明のように、Gとして示されても良い。
選択された基本パリティチェック行列G及び選択されたリフティング値Lは、k・L個までの情報ビットを符号化し、n・L個のコードビットを提供することが可能である。パケットは、そのパケットの最後部にz=k・L−k個の0を付加することによって、長さk・Lまでゼロパディング(zero-padded)されても良い。n・L個のコードビットを得るために、ゼロパディングされたパケットが、リフトされたパリティチェック行列で符号化されても良い。ある(n,k)符号に関して、n個のコードビットからなるコードワードを得るために、n・L−n−z個のパリティビットだけでなく、z個のパディングされた0も、パンクチャーされても良い。
そのパケットを符号化するために、まず、選択された基本パリティチェック行列G及び選択されたリフティング値Lに基づいて、リフトされたパリティチェック行列Hが生成されても良い。次に、そのリフトされたパリティチェック行列Hに基づいて、そのパケットが符号化されても良い。
リフトされたパリティチェック行列Hを生成するために、次のように、選択された基本パリティチェック行列Gの各々の非零要素のための巡回シフト値が決定されても良い。
Figure 0005551209
ここで、gは、Lmaxによるリフティングを仮定したときの、Gの非零要素のための巡回シフト値であり、g´は、Lによるリフティングでの、Gの非零要素のための巡回シフト値である。
表2の4番目の列は、Lmax=1024に関するGの非零要素のための巡回シフト値を与える。他の基本パリティチェック行列の非零要素のための巡回シフト値が生成され、同様の表に記憶されても良い。一般に、Gの非零要素のための巡回シフト値は、LminからLmaxまでの全てのリフティング値について用いられても良い。巡回シフト値の唯一つのセットが、Gについて記憶され、全てのリフティング値について用いられるので、これはデザインを単純化し得る。選択されたリフティング値Lのためのg´を得るために、方程式(4)は、基本的に(essentially)gのゼロ個以上の最下位ビット(LSB)を除去する。Lmax=1024でのデザインに関して、L=512の場合には、1つのLSBを取り除くことができ、L=256の場合には、2つののLSBを取り除くことができる。LSBの除去は、異なるシフト・パラメータの間の関係…例えば、以下で説明される、s´=s+L/4…を保存することができ、これは、復号化を単純化し得る。他のデザインにおいて、g´を得るために、法を2とする演算を実行することにより、gのゼロ個以上の最上位ビット(MSB)が除去されても良い。g´はまた、他の方法で得られても良い。
一つのデザインにおいて、リフトされたパリティチェック行列Hを得るために、Gの各々の非零要素が、巡回置換行列σg´で置き換えられても良い。σg´は、g´で単位行列を循環的にシフトすることによって得ても良い。他のデザインにおいて、Gの各々の非零要素を2×2行列で置き換えて、行列G’を得ても良い。
Figure 0005551209
そして、g´/2,(g´−1)/2,又は(g´+1)/2により循環的にシフトされる巡回置換行列で、G’の各々の非零要素を置き換えて、リフトされたパリティチェック行列Hを得ても良い。Hは、他の方法で、Gに基づいて生成されても良い。
リフトされたパリティチェック行列Hの列及び行は、結果として得られる行列が次の形を持つように、再配列又は順序換えされても良い。
Figure 0005551209
ここで、Mは、M×N行列(ここで、N=M+k・L)、
は、(m・L−M)×N行列、また、
0は、すべて零のM×(n・L−N)行列である。
Hの右下における単位行列は、下三角行列で置き換えられても良い。下三角行列は、対角線より下に非零要素を持つものであっても良い。
のディメンションは、選択された基本パリティチェック行列によって決まるものであっても良いし、符号インデックスiの関数であっても良い。Mは、次の形を持つものであっても良い。
Figure 0005551209
ここで、Aは、(M−L/2)×(k・L)行列、
Bは、(M−L/2)×(L/2)行列、
Cは、(L/2)×(k・L)行列、
Dは、(L/2)×(L/2)行列、
Eは、(L/2)×(N−k・L)行列、また、
Tは、対角線に沿って1を持ち且つ対角線より上に0を持つ(M−L/2)×(M−L/2)下三角行列である。
リフトされたLDPC符号に関する制約は、次のように表現されても良い。
Figure 0005551209
ここで、xは、情報ビット及びパリティビットのN×1列ベクトル、
は、パリティビットの(n・L−N)×1列ベクトルである。
方程式(5)におけるHの右上における零行列0のために、方程式(7)の一部分が次のように表現されても良い。
Figure 0005551209
ここで、sは、パケット中の情報ビットの(k・L)×1列ベクトル、
は、パリティビットの(L/2)×1列ベクトル、また、
は、パリティビットの(M−L/2)×1列ベクトルである。
Figure 0005551209
Figure 0005551209
そして、パリティビットp,p及びpは、次のように計算されても良い。
Figure 0005551209
ここで、方程式(8)に示されるように、xは、s,p及びpを含む。Hの右下における単位行列が下三角行列で置き換えられる場合には、方程式(14)は、(トップダウン)後退代入((top down) back substitution)を用いて解かれても良い。
方程式(12)及び(13)におけるマトリクス乗算を、中間結果を記憶すること及びその中間結果を後のステップで用いることのステップ群で実行することによって、p,p及びpの計算が単純化されても良い。
リフトされたパリティチェック行列Hは、最も低い符号レート用であり、それは、r=k/nとして与えられても良い。Hは、より高いレートを得るために、パンクチャーされても良い。LDPC符号は、外部の(outer)パリティビットを使った、高いレートの内部の(inner)“コア(core)”LDPC符号として構造化されても良い。所望の数のコードビットを得るために、逐次的な方法で符号化が実行されても良い。例えば、まず、方程式(12)に示されるようにパリティビットpが計算され、次に、(必要に応じて)方程式(13)に示されるようにパリティビットpが計算され、次に、(必要に応じて)方程式(14)に示されるようにパリティビットpが計算されても良い。
本システムは、ハイブリッド自動再伝送(hybrid automatic retransmission)(HARQ)をサポートしても良い。HARQに関して、送信機は、パケットの第1の伝送を受信機へ送信し、その後、必要な場合に、受信機により正確にパケットが復号化され、最大数の伝送が送信され、又は、他の何らかの伝送条件に遭遇するまで、1又は複数の追加的な伝送(又は、再伝送)が送信されても良い。HARQは、データ伝送の信頼性を改善し得る。各々のLDPC符号に関して、HARQ拡張(extensions)のシーケンスが、本システムによりサポートされる全ての符号レートにおよぶように生成されても良い。HARQ拡張(extensions)は、パリティビットをパンクチャリングすることによって定義されても良い。パンクチャリングの大部分は、第3のパリティビットP中にあっても良いが、一部のパンクチャリングは、第2のパリティビットP中にあっても良い。
図8は、基本パリティチェック行列Gの基底グラフ800を示す。それは、方程式(5)及び(6)に示される形を有しても良い。グラフ800は、説明のためのみに用いるものであり、前述されたいずれの基本パリティチェック行列とも合致しないものでる。基底グラフ800は、複数のスクェアボックスを含み、各々のスクェアボックスは、基本パリティチェック行列における一つの要素を表している。基本パリティチェック行列の各々の非零要素は、マークされたボックスで示される。各々のマークされたボックスは、リフティング値Lにより基本パリティチェック行列をリフティングすることによって得られるL本のエッジコピーのための巡回シフトの量を決定する巡回シフト値と関連付けられている。
コードワードは、グラフ800の最上部に沿った、情報ビット及びパリティビットで構成される。コードワードにおけるビットは、パリティビット列のいくつかの並べ替えを除いて、左側から開始し、右側へ移動するように、送信されても良い。
基底グラフ800は、基底グラフの最上部に沿った、情報ビットs、第1のパリティビットp、第2のパリティビットp、第3のパリティビットpを含む。第1のパリティビットは、制約の第1のセットと関連し、第2のパリティビットは、制約の第2のセットと関連し、第3のパリティビットは、制約の第3のセットと関連する。基底グラフ800のコア部分は、情報ビット並びに第1及び第2のパリティビットを表現する変数ノードと、制約の第1及び第2のセットを表現する制約ノードとで構成される。そのコア部分は、通常は、次数1の変数ノードを一つも含まない。第3のパリティビットと制約の第3のセットの制約(又は、第3のパリティ制約)とは、互いに1対1の対応にあり、これは、基底グラフ800の右下隅における単位行列に示される。各々の第3のパリティビットが、情報ビットのパリティ、第2のパリティビット、及び先行する第3のパリティビットとして決定できるように、第3のパリティビットと第3のパリティ制約とが、線形に順序付けられても良い。第3のパリティビットと1対1に関連する第3のパリティ制約ノードは、この第3のパリティビットをパリティビットとするビットを示す変数ノードだけでなく、第3のパリティビットの変数ノードへも、エッジにより接続されている。
図8に示されるデザインは、復号化を単純化し得る幾つかの特徴を含んでいる。第1及び第2のパリティビットの変数ノードは、次数2であるか又は次数3である。復号化を単純化するために、一つの第1のパリティビットが次数3の一つの変数ノードに関連付けられ、諸第2のパリティビットが次数2の変数ノードに関連付けられても良い。次数3の変数ノードが、行列B及びDに関して、列810に示され、それは、三つの非零要素について三つの影を付けられたスクウェアボックスを含む。次数2の変数ノードは、堆積鎖状構造(accumulate chain structure)により構成されていても良い。それは、2重対角構造(dual-diagonal structure)としても知られている。2重対角構造は、Tの各々の列において2つの積み重ねたれたマークされたボックスを持つ三角行列Tにより示される。2重対角構造は、符号性能及び符号化における重要性を有し得る。多数の次数2の変数ノードを有することは、パフォーマンスを向上する可能性があり、また、2重対角形式(dual-diagonal form)において次数2の変数ノードを持つことは、この可能性をほとんど飽和させる。2重対角構造はまた、畳み込み符号とよく似て、次数2の変数ノードが、容易に再帰的に符号化されることを可能にする。適切に順序付けられる場合、H行列構造は、非零要素を含む下対角(sub diagonal)(2,1)、(3,2)などに加えて、対角線(1,1)、(2,2)などのみを有する部分行列(sub-matrix)Tを含んでも良い。多くの場合、2重対角構造に対応するエッジは、リフティング値0が与えられ、これは、置換がないことを意味し、リフトされたグラフにおけるL個の分離されたチェーン(separate chains)を形成する。
次数3の変数ノードの二つのエッジは、2重対角構造に関連するグラフにおいてループを閉じるように、基底グラフ中で接続される。この状況において符号化を単純化するために、次数3の変数ノードの三つのエッジのためのリフティング値が、x,s,s´=(s+L/m) mod Lの形からなっていても良い。ここで、mは、2のべき乗であり、x及びsは、任意の値である。全ての巡回シフトが反転された場合に、その符号は変化しない。なぜならば、これは、結局、リフティングにおける制約ノードの順番を反転させることになるからである。それゆえ、x,s,s´=(s−L/m) mod Lの形のリフティング値もまた、使用されても良い。行列φ=−ET-1B+Dは、低い次数の要素(factors)に分解可能であり、それ自体が低い重みからなるので、符号化は単純化され得る。
次数3の変数ノードの二つ非零要素のための巡回シフト値は、s及びs’であっても良い。ここで、sは、任意に選択された値であっても良く、また、s’は、様々な方法で選択されたものであっても良い。第1のデザインにおいて、s´=sであり、かつ、φ-1は置換行列である。このデザインに関して、リフトされたLDPC符号は、基底グラフのアキュムレータチェーン(accumulator chain)(次数2のノード群)及び一つの次数3のノードの全長を通過するループを有する。次善のエラーフロア・パフォーマンス(suboptimal error floor performance)をもたらし得る、そのループは、特に、基底グラフが短いアキュムレータチェーンを有するので、多重度(multiplicity)Lで発生する。他のデザインにおいて、s´=s+L/2及びφ-1は、3つの置換行列の総和(sum)である。このデザインにおいて、リフトされたLDPC符号における対応するループは、基底グラフのアキュムレータチェーン(accumulator chain)(次数2のノード群)及び二つの次数3のノードの全長を通過する。φ-1による乗算の複雑さは、なおも小さい。しかしながら、このデザインは、それでも、いくらかのエラーフロア(some error floors)の影響を受けやすい。第3のデザインにおいて、s´=s+L/4及びφ-1は、9つの置換行列の総和(sum)である。リフトされたLDPC符号における対応するループは、基底グラフのアキュムレータチェーン(accumulator chain)(次数2のノード群)及び四つの次数3のノードの全長を通過する。φ-1は、なおも疎行列であるので、φ-1による乗算の複雑さは、なおも小さい。このデザインは、エラーフロアに関連する問題を回避しながら、復号化を単純化し得る。第3の非零要素のための巡回シフト値は、任意に選択された他の値xであっても良い。
本明細書で説明される技術は、広範なパケットサイズをサポートするために用いられても良い。適切な(suitable)パケットサイズが、例えばチャネル条件(channel conditions)(それは、スペクトル効率又はパケットフォーマットによって与えられてもよい。)、割り当てられたリソースの量、パイロット・オーバーヘッド、MIMOランクなどのような様々な要因(factors)に基づいて選択されても良い。本技術は、少数の基本LDPC符号を用いた、任意のk及びnの値のための良好なレート互換符号(rate-compatible codes)の生成を可能にする。
本発明で説明されるリフトされたLDPC符号は、様々な形で、並列符号器及び復号器(parallel encoder and decoder)の実装を可能にできる。エッジ並列の復号器(edge-parallel decoder)の実装に関して、基底グラフにおけるエッジは、シリアルな方法で処理されても良く、また、並列性は、同一のエッジのL個のコピーを同時に処理することによって実現されても良い。ノード並列の復号器(node-parallel decoder)の実装に関して、基底グラフの異なるコピーは、シリアルな方法で処理されても良く、また、並列性は、基底グラフにおける異なるノードを同時に処理することによって実現されても良い。2のべき乗に制限されたサイズで巡回置換行列を用いることによって、リフティングは、特にノード並列の実装について、カウンティング・オペレーション(counting operation)を用いて簡単に実装されても良い。カウンティング・オペレーションは、xからx+1mod Lまでカウントすることによって、Lサイクルを通り抜ける(walking through)ことを指す。リフティングサイズに対するこの制約(restriction)は、異なるリフティングサイズの全ては、大きい共通の要素(large common factor)を持ち、それは、エッジ並列の復号器の実装のために重要な性質になり得る。本明細書で説明されたLDPC符号構造は、効率的なノード並列の復号器とエッジ並列の復号器の実装の両方をサポートしても良い。さらに、グラフの記述は、コンパクトであり、また、根本的な複雑さの低減を提供する。
図9は、データを処理するためのプロセス900のデザインを示す。プロセス900は、基地局、端末、又は他の何らかの実体により実行されても良い。異なるディメンションの基本パリティチェック行列のセット及び異なる2のべき乗のリフティング値のセットに基づいて、可変サイズのパケットが符号化又は復号化されても良い(ブロック912)。基本パリティチェック行列のセットは、前述されたように、6,7,8,9,10又は11個の情報ビット用、k〜2k−1個の情報ビット用、k+1〜2k個の情報ビット用、又は他の何らかの情報ビットの範囲用の基本パリティチェック行列群を含んでも良い。基本パリティチェック行列のセットはまた、基本パリティチェック行列の他の何らかの組み合わせを含んでも良い。リフティング値のセットは、前述されたように、4,8,16,32,64,128,256,512及び1024についてのリフティング値、又は他の何らかのリフティング値の範囲若しくは組み合わせを含んでも良い。可変サイズのパケットを符号化又は復号化するために用いられる基本パリティチェック行列のセットに関するパラメータ(例えば、巡回シフト値)が記憶されても良い(ブロック914)。各々の基本パリティチェック行列は、複数個の位置で複数個の非零要素を含んでも良い。各々の非零要素は、0〜Lmax−1の範囲内の巡回シフト値と関連するものであっても良い。複数個の巡回シフト値は、各々の基本パリティチェック行列の複数個の非零要素について記憶されても良い。各々の基本パリティチェック行列に関する全てのリフティング値のための巡回シフト値は、その基本パリティチェック行列について記憶された巡回シフト値に基づいて決定されても良い。
図10は、データを処理するための装置1000のデザインを示す。装置1000は、異なるディメンションの基本パリティチェック行列のセット及び異なる2のべき乗のリフティング値のセットに基づいて、可変サイズのパケットを符号化又は復号化するための手段(モジュール1012)と、前記基本パリティチェック行列のセットに関するパラメータ(例えば、巡回シフト値)を記憶するための手段モジュール(ブロック1014)とを含む。
図11は、パケットを処理するためのプロセス1100を示す。それは、図9中のブロック912のために用いられても良い。符号化又は復号化されるべきパケットのパケットサイズが決定されても良い(ブロック1112)。例えば、方程式(2)に示されるように、前記パケットサイズに基づいて、前記リフティング値のセットから一つのリフティング値が選択されても良い(ブロック1114)。例えば、方程式(3)に示されるように、前記パケットサイズ及び前記選択されたリフティング値に基づいて、前記基本パリティチェック行列のセットから一つの基本パリティチェック行列が選択されても良い(ブロック1116)。前記選択された基本パリティチェック行列及び前記選択されたリフティング値に基づいて、リフトされたパリティチェック行列が生成されても良い(ブロック1118)。前記リフトされたパリティチェック行列に基づいて、前記パケットが符号化又は復号化されても良い(ブロック1120)。
ブロック1118に関して、リフトされたパリティチェック行列は、選択された基本パリティチェック行列の非零要素のための巡回シフト値に更に基づいて生成されても良い。リフトされたパリティチェック行列のための巡回シフト値は、例えば、方程式(4)に示されるように、選択された基本パリティチェック行列の非零要素のための巡回シフト値及び選択されたリフティング値に基づいて計算されても良い。そして、リフトされたパリティチェック行列は、選択された基本パリティチェック行列の各々の非零要素を、その非零要素について計算された巡回シフト値の巡回置換行列で置き換えることによって、生成されても良い。
ブロック1120に関して、第1のパリティビットを得るために、方程式(12)に示されるように、リフトされたパリティチェック行列に基づいて、パケット中の情報ビットが符号化されても良い。第2のパリティビットを得るために、方程式(13)に示されるように、リフトされたパリティチェック行列に基づいて、情報ビット及び第1のパリティビットが符号化されても良い。第3のパリティビットを得るために、方程式(14)に示されるように、リフトされたパリティチェック行列に基づいて、情報ビット、第1のパリティビット及び第2のパリティビットが符号化されても良い。
ブロック1120における復号化に関して、基本パリティチェック行列のための基底グラフのL個のコピーに基づいて、リフトされたパリティチェック行列のための大きいグラフが生成されても良い。ここで、Lは、選択されたリフティング値である。選択された基本パリティチェック行列の非零要素のための置換行列に基づいて、基底グラフのL個のコピーのノード群が相互接続されても良い。基底グラフは、選択された基本パリティチェック行列の非零要素のための複数のエッジを含んでも良い。エッジ並列の復号化に関して、復号化は、基底グラフのL個のコピー中の同一のエッジのL個のコピー群について、並行して実行されても良く、また、基底グラフのL個のコピー中の異なるエッジ群について、逐次的に実行されても良い。ノード並列の復号化に関して、復号化は、グラフの各々のコピーのノード群について、並行して実行されても良く、また、基底グラフのL個のコピー群について、逐次的に実行されても良い。
図12は、パケットを処理するためのプロセス1200のデザインを示す。第1のリフトサイズの第1のパリティチェック行列に関する巡回シフト値の第1のセットが、第2のリフトサイズの第2のパリティチェック行列に関する巡回シフト値の第2のセットに基づいて決定されても良い(ブロック1212)。第1及び第2のリフトサイズは、異なる2のべき乗であっても良い。ブロック1212の一つのデザインにおいて、要素Kは、前記第2のリフトサイズの前記第1のリフトサイズに対する比に基づいて決定されても良く、また、前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々の巡回シフト値のK個のLSBが除去されても良い。これは、前記第1のセットにおける対応する巡回シフト値を得るために、方程式(4)に示されるように、前記第2のセットにおける各々の巡回シフト値を、前記比で分割することと、整数値になるように端数を切り捨てることによって、実現されても良い。ブロック1212の他のデザインにおいて、前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々の巡回シフト値のK個のMSBが除去されても良い。
前記巡回シフト値の第1のセットに基づいて、前記第1のパリティチェック行列が生成されても良い(ブロック1214)。これは、基本パリティチェック行列の各々の非零要素を、その非零要素に対応する第1のセットにおける巡回シフト値の巡回置換行列で置き換えることによって、実現されても良い。前記前記第1のパリティチェック行列に基づいて、パケットが符号化又は復号化されても良い(ブロック1216)。
図13は、パケットを処理するための装置1300のデザインを示す。装置1300は、第1のリフトサイズの第1のパリティチェック行列に関する巡回シフト値の第1のセットを、第2のリフトサイズの第2のパリティチェック行列に関する巡回シフト値の第2のセットに基づいて決定するための手段(モジュール1312)と、前記巡回シフト値の第1のセットに基づいて、前記第1のパリティチェック行列を生成するための手段(モジュール1314)と、前記前記第1のパリティチェック行列に基づいて、パケットを符号化又は復号化するための手段(モジュール1316)とを含む。
図14は、パケットを処理するためのプロセス1400のデザインを示す。基本パリティチェック行列の各々の非零の要素を、特定の巡回シフト値のL×L置換行列(ここで、Lは2のべき乗である。)で置き換えることによって、リフトされたパリティチェック行列が取得されても良い(ブロック1412)。少なくとも3つの非零の要素を有する前記基本パリティチェック行列の列における2つの非零の要素のために、巡回シフト値s及びs+L/m(ここで、sは任意の値、mは2のべき乗である。)が使用されても良い(ブロック1414)。一つのデザインにおいて、mは2に等しく、2つの非零の要素のための巡回シフト値は、s及びs+L/2である。他のデザインにおいて、mは4に等しく、2つの非零の要素のための巡回シフト値は、s及びs+L/4である。更に他のデザインにおいて、mは8に等しく、2つの非零の要素のための巡回シフト値は、s及びs+L/8である。mはまた、他の値に等しくても良い。巡回シフト値xは、少なくとも3つの非零の要素を持つ列における3つの非零の要素について、選択されても良い。
Figure 0005551209
ここで、Tは、下三角行列であり、行列B及びDそれぞれは、1の幅を持ち、行列D及びEそれぞれは、1の高さを持ち、また、少なくとも3つの非零の要素が行列B及びDに対応する列に存在する。前記リフトされたパリティチェック行列に基づいて、パケットが符号化又は復号化されても良い(ブロック1416)。
図15は、パケットを処理するための装置1500のデザインを示す。装置1500は、基本パリティチェック行列の各々の非零の要素を、特定の巡回シフト値のL×L置換行列(Lは2のべき乗)で置き換えることによって、リフトされたパリティチェック行列を取得するための手段(モジュール1512)と、少なくとも3つの非零の要素を有する前記基本パリティチェック行列の列における2つの非零の要素についての巡回シフト値s及びs+L/m(ここで、sは任意の値、mは2のべき乗である。)を使用するための手段(モジュール1514)と、前記リフトされたパリティチェック行列に基づいて、パケットを符号化又は復号化するための手段(モジュール1516)とを含む。
図10,13及び15中のモジュールは、プロセッサ、電子デバイス、ハードウェアデバイス、電子コンポーネント、論理回路、メモリ、など、又は、それらの任意の組み合わせを含んでも良い。
本明細書で説明された技術は、様々な手段によって実装されても良い。例えば、これらの技術は、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせで実装されても良い。ハードウェア実装については、実体(例えばNode B又は端末)での技術を実行するために用いられる処理ユニットは、1つ又は複数の特定用途向けIC(ASIC)、デジタルシグナルプロセッサ(DSP)、デジタル信号処理装(DSPD)、プログラマブル・ロジック・デバイス(PLD)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書で説明された機能を実行するようにデザインされた他の電子ユニット、コンピュータ、又はそれらの組み合わせの中に実装されても良い。
ファームウェア及び/又はソフトウェア実装については、本技術は、本明細書で説明された機能を実行するコード(例えば、プロシージャ、関数、モジュール、インストラクション、など)で実装されても良い。一般に(In general)、ファームウェア及び/又はソフトウェアコードを明確に具体化する(tangibly embodying)任意のコンピュータ/プロセッサ読み取り可能な媒体が、本明細書で説明された技術の実装に利用されても良い。例えば、ファームウェア及び/又はソフトウェアコードは、メモリ(例えば、図2中のメモリ232又は272)に記憶され、プロセッサ(例えば、プロセッサ230又は270)により実行されても良い。そのメモリは、プロセッサの内部に実装されても良いし、又は、プロセッサの外部に実装されても良い。また、ファームウェア及び/又はソフトウェアコードは、例えば、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、プログラマブルリードオンリーメモリ(PROM)、電気的消去可能PROM(EEPROM)、FLASHメモリ、フロッピー(登録商標)ディスク、コンパクトディスク(CD)、デジタルバーサタイルディスク(DVD)、磁気又は光データ記憶装置、などのような、コンピュータ/プロセッサ読み取り可能な媒体に記憶されても良い。そのコードは、1又は複数のコンピュータ/プロセッサにより実行されても良く、また、該コンピュータ/プロセッサに、本明細書で説明された機能性のある態様を実行させても良い。
先の本開示の説明は、当業者が本開示を製造又は使用するのを可能にするために提供される。本開示に対するさまざまな修正は当業者には容易に明白になり、本明細書で定義される一般的原理は、本開示の精神又は範囲から逸脱することなく、他のバリエーションに適用可能である。それゆえ、本開示は、本明細書で説明される例及びデザインに限定されるものではなく、本明細書で開示された原理及び新規な特徴に合致する最も広い範囲に認められるべきである
以下に、本願出願の当初の特許請求の範囲に記載された各請求項に対応する発明を付記する。
[1]異なるディメンションの基本パリティチェック行列のセット及び異なる2のべき乗のリフティング値のセットに基づいて、可変サイズのパケットを符号化又は復号化するように構成された少なくとも一つのプロセッサと、前記少なくとも一つのプロセッサに接続され、前記基本パリティチェック行列のセットに関するパラメータを記憶するように構成された、メモリとを含むことを特徴とする装置。
[2]前記少なくとも一つのプロセッサは、符号化又は復号化されるべきパケットのパケットサイズを決定し、前記パケットサイズに基づいて、前記リフティング値のセットから一つのリフティング値を選択し、前記パケットサイズ及び前記選択されたリフティング値に基づいて、前記基本パリティチェック行列のセットから一つの基本パリティチェック行列を選択し、前記選択された基本パリティチェック行列及び前記選択されたリフティング値に基づいて、リフトされたパリティチェック行列を生成し、前記リフトされたパリティチェック行列に基づいて、前記パケットを符号化又は復号化するように構成されたことを特徴とする[1]に記載の装置。
[3]前記少なくとも一つのプロセッサは、
Figure 0005551209
を計算することにより、前記リフティング値を選択するように構成され、kは前記パケットサイズであり、k B,max は前記基本パリティチェック行列のセットに関する情報ビットの最大数であり、Lは前記選択されたリフティング値であり、
Figure 0005551209
は、シーリング演算子(ceiling operator)を示すことを特徴とする[2]に記載の装置。
[4]前記少なくとも一つのプロセッサは、
Figure 0005551209
を計算することにより、前記基本パリティチェック行列を選択するように構成され、kは前記パケットサイズであり、Lは前記選択されたリフティング値であり、k は前記選択された基本パリティチェック行列に関する情報ビットの数であり、
Figure 0005551209
は、シーリング演算子を示すことを特徴とする[2]に記載の装置。
[5]前記少なくとも一つのプロセッサは、前記選択された基本パリティチェック行列の非零要素のための巡回シフト値に更に基づいて、前記リフトされたパリティチェック行列を生成するように構成されたことを特徴とする[2]に記載の装置。
[6]前記少なくとも一つのプロセッサは、前記選択された基本パリティチェック行列の前記非零要素のための前記巡回シフト値及び前記選択されたリフティング値に基づいて、前記リフトされたパリティチェック行列に関する巡回シフト値を計算し、前記選択された基本パリティチェック行列の各々の非零要素を、前記非零要素について計算された巡回シフト値の巡回置換行列で置き換えることによって、前記リフトされたパリティチェック行列を生成するように構成されたことを特徴とする[5]に記載の装置。
[7]前記少なくとも一つのプロセッサは、前記選択された基本パリティチェック行列に関する基底グラフのL個のコピーに基づいて、前記リフトされたパリティチェック行列を生成し(ここで、Lは前記リフティング値である。)、前記選択された基本パリティチェック行列の非零要素のための置換行列に基づいて、前記基底グラフの前記L個のコピーのノードを相互接続するように構成されたことを特徴とする[2]に記載の装置。
[8]前記基底グラフは、前記選択された基本パリティチェック行列の前記非零要素に関する複数個のエッジを含み、前記少なくとも一つのプロセッサは、前記基底グラフの前記L個のコピーにおける、同一のエッジのL個のコピーについて、並行して、復号化を実行し、前記基底グラフの前記L個のコピーにおける、異なるエッジについて、逐次的に、復号化を実行するように構成されたことを特徴とする[7]に記載の装置。
[9]前記少なくとも一つのプロセッサは、前記基底グラフの各々のコピーのノードについて、並行して、復号化を実行し、前記基底グラフの前記L個のコピーについて、逐次的に、復号化を実行するように構成されたことを特徴とする[7]に記載の装置。
[10]前記少なくとも一つのプロセッサは、第1のパリティビットを得るために、前記リフトされたパリティチェック行列に基づいて、前記パケット中の情報ビットを符号化し、第2のパリティビットを得るために、前記リフトされたパリティチェック行列に基づいて、前記情報ビット及び前記第1のパリティビットを符号化するように構成されたことを特徴とする[2]に記載の装置。
[11]前記少なくとも一つのプロセッサは、第3のパリティビットを得るために、前記リフトされたパリティチェック行列に基づいて、前記情報ビット、前記第1のパリティビット及び前記第2のパリティビットを符号化するように更に構成されたことを特徴とする[10]に記載の装置。
[12]前記基本パリティチェック行列のセットは、少なくとも6,7,8,9,10及び11個の情報ビットのうちの少なくとも一つのための、少なくとも一つの基本パリティチェック行列を含むことを特徴とする[1]に記載の装置。
[13]前記リフティング値のセットは、少なくとも4,8,16,32,64,128,256,512及び1024のうちの少なくとも一つのための、少なくとも一つのリフティング値を含むことを特徴とする[1]に記載の装置。
[14]各々の基本パリティチェック行列は、複数の位置で複数個の非零要素を含み、各々の非零要素は、0からL max −1(ここで、L max は、最大のリフティング値である。)までの範囲内の巡回シフト値に関連することを特徴とする[1]に記載の装置。
[15]前記メモリは、各々の基本パリティチェック行列の前記複数個の非零要素のための複数個の巡回シフト値を記憶することを特徴とする[14]に記載の装置。
[16]前記少なくとも一つのプロセッサは、各々の基本パリティチェック行列に関するリフティング値のすべてについて、前記基本パリティチェック行列のために記憶された前記複数個の巡回シフト値に基づいて、巡回シフト値を決定するように構成されたことを特徴とする[15]に記載の装置。
[17]異なるディメンションの基本パリティチェック行列のセット及び異なる2のべき乗のリフティング値のセットに基づいて、可変サイズのパケットを符号化又は復号化することを特徴とするデータを処理するための方法。
[18]可変サイズのパケットを前記符号化又は復号化することは、符号化又は復号化されるべきパケットのパケットサイズを決定し、前記パケットサイズに基づいて、前記リフティング値のセットから一つのリフティング値を選択し、前記パケットサイズ及び前記選択されたリフティング値に基づいて、前記基本パリティチェック行列のセットから一つの基本パリティチェック行列を選択し、前記選択された基本パリティチェック行列及び前記選択されたリフティング値に基づいて、リフトされたパリティチェック行列を生成し、前記リフトされたパリティチェック行列に基づいて、前記パケットを符号化又は復号化するように構成されたことを特徴とする[17]に記載の方法。
[19]前記リフティング値を前記選択することは、
Figure 0005551209
を計算することを含み、kは前記パケットサイズであり、k B,max は前記基本パリティチェック行列のセットに関する情報ビットの最大数であり、Lは前記選択されたリフティング値であり、
Figure 0005551209
は、シーリング演算子を示すことを特徴とする[18]に記載の方法。
[20]前記基本パリティチェック行列を前記選択することは、
Figure 0005551209
を計算することを含み、kは前記パケットサイズであり、Lは前記選択されたリフティング値であり、k は前記選択された基本パリティチェック行列に関する情報ビットの数であり、
Figure 0005551209
は、シーリング演算子を示すことを特徴とする[18]に記載の方法。
[21]前記リフトされたパリティチェック行列を前記生成することは、前記選択された基本パリティチェック行列の複数個の非零要素のための複数個の巡回シフト値に更に基づいて、前記リフトされたパリティチェック行列を生成するように構成されたことを特徴とする[17]に記載の方法。
[22]前記基本パリティチェック行列のセットにおける各々の基本パリティチェック行列の前記複数個の非零要素のための複数個の巡回シフト値を記憶することを更に含むことを特徴とする[17]に記載の方法。
[23]異なるディメンションの基本パリティチェック行列のセット及び異なる2のべき乗のリフティング値のセットに基づいて、可変サイズのパケットを符号化又は復号化するための手段を含むことを特徴とするデータを処理するための装置。
[24]可変サイズのパケットを前記符号化又は復号化するための手段は、符号化又は復号化されるべきパケットのパケットサイズを決定するための手段と、前記パケットサイズに基づいて、前記リフティング値のセットから一つのリフティング値を選択するための手段と、前記パケットサイズ及び前記選択されたリフティング値に基づいて、前記基本パリティチェック行列のセットから一つの基本パリティチェック行列を選択するための手段と、前記選択された基本パリティチェック行列及び前記選択されたリフティング値に基づいて、リフトされたパリティチェック行列を生成するための手段と、前記リフトされたパリティチェック行列に基づいて、前記パケットを符号化又は復号化するための手段とを含むことを特徴とする[23]に記載の装置。
[25]前記リフティング値を前記選択するための手段は、
Figure 0005551209
を計算するための手段を含み、kは前記パケットサイズであり、k B,max は前記基本パリティチェック行列のセットに関する情報ビットの最大数であり、Lは前記選択されたリフティング値であり、
Figure 0005551209
は、シーリング演算子を示すことを特徴とする[24]に記載の装置。
[26]前記基本パリティチェック行列を前記選択するための手段は、
Figure 0005551209
を計算するための手段を含み、kは前記パケットサイズであり、Lは前記選択されたリフティング値であり、k は前記選択された基本パリティチェック行列に関する情報ビットの数であり、
Figure 0005551209
は、シーリング演算子を示すことを特徴とする[24]に記載の装置。
[27]前記リフトされたパリティチェック行列を前記生成するための手段は、前記選択された基本パリティチェック行列の複数個の非零要素のための複数個の巡回シフト値に更に基づいて、前記リフトされたパリティチェック行列を生成するための手段を含むことを特徴とする[23]に記載の装置。
[28]前記基本パリティチェック行列のセットにおける各々の基本パリティチェック行列の前記複数個の非零要素のための複数個の巡回シフト値を記憶するための手段を更に含むことを特徴とする[23]に記載の装置。
[29]コンピュータ読み取り可能な媒体を含むコンピュータプログラムプロダクトにおいて、前記コンピュータ読み取り可能な媒体は、少なくとも一つのコンピュータに、異なるディメンションの基本パリティチェック行列のセット及び異なる2のべき乗のリフティング値のセットに基づいて、可変サイズのパケットを符号化又は復号化させるためのコードを含むことを特徴とするコンピュータプログラムプロダクト。
[30]前記コンピュータ読み取り可能な媒体は、前記少なくとも一つのコンピュータに、符号化又は復号化されるべきパケットのパケットサイズを決定させるためのコードと、前記少なくとも一つのコンピュータに、前記パケットサイズに基づいて、前記リフティング値のセットから一つのリフティング値を選択させるためのコードと、前記少なくとも一つのコンピュータに、前記パケットサイズ及び前記選択されたリフティング値に基づいて、前記基本パリティチェック行列のセットから一つの基本パリティチェック行列を選択させるためのコードと、前記少なくとも一つのコンピュータに、前記選択された基本パリティチェック行列及び前記選択されたリフティング値に基づいて、リフトされたパリティチェック行列を生成させるためのコードと、前記少なくとも一つのコンピュータに、前記リフトされたパリティチェック行列に基づいて、前記パケットを符号化又は復号化させるためのコードとを更に含むことを特徴とする[29]に記載のコンピュータプログラムプロダクト。
[31]前記コンピュータ読み取り可能な媒体は、前記少なくとも一つのコンピュータに、
Figure 0005551209
を計算することにより、前記リフティング値を選択させるためのコードを更に含み、kは前記パケットサイズであり、k B,max は前記基本パリティチェック行列のセットに関する情報ビットの最大数であり、Lは前記選択されたリフティング値であり、
Figure 0005551209
は、シーリング演算子を示すことを特徴とする[30]に記載のコンピュータプログラムプロダクト。
[32]前記コンピュータ読み取り可能な媒体は、前記少なくとも一つのコンピュータに、
Figure 0005551209
を計算することにより、前記基本パリティチェック行列を選択させるためのコードを更に含み、kは前記パケットサイズであり、Lは前記選択されたリフティング値であり、k は前記選択された基本パリティチェック行列に関する情報ビットの数であり、
Figure 0005551209
は、シーリング演算子を示すことを特徴とする[30]に記載のコンピュータプログラムプロダクト。
[33]前記コンピュータ読み取り可能な媒体は、前記少なくとも一つのコンピュータに、前記選択された基本パリティチェック行列の前記複数個の非零要素のための前記複数個の巡回シフト値に更に基づいて、前記リフトされたパリティチェック行列を生成させるためのコードを更に含むことを特徴とする[29]に記載のコンピュータプログラムプロダクト。
[34]第1のリフトサイズの第1のパリティチェック行列に関する巡回シフト値の第1のセットを、第2のリフトサイズの第2のパリティチェック行列に関する巡回シフト値の第2のセットに基づいて決定し(前記第1及び第2のリフトサイズは、異なる2のべき乗である。)、前記巡回シフト値の第1のセットに基づいて、前記第1のパリティチェック行列を生成し、前記前記第1のパリティチェック行列に基づいて、パケットを符号化又は復号化するように構成された少なくとも一つのプロセッサと、前記少なくとも一つのプロセッサに接続されたメモリとを含むことを特徴とする装置。
[35]前記第1のリフトサイズに対する前記第2のリフトサイズの比に基づいて、ファクターKを決定し、前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々の巡回シフト値のK個の最下位ビット(LSB)を除去するように構成されたことを特徴とする[34]に記載の装置。
[36]前記少なくとも一つのプロセッサは、前記第2のリフトサイズの前記第1のリフトサイズに対する比を決定し、前記第2のセットにおける対応する巡回シフト値を、前記比で分割することと、整数値になるように端数を切り捨てることによって、前記第1のセットにおける各々の巡回シフト値を得るように構成されたことを特徴とする[34]に記載の装置。
[37]前記少なくとも一つのプロセッサは、前記第2のリフトサイズの前記第1のリフトサイズに対する比に基づいて、要素Kを決定し、前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々のK個の最上位ビット(MSB)を除去するように構成されたことを特徴とする[34]に記載の装置。
[38]前記第1及び第2のリフトサイズは、異なる2のべき乗であることを特徴とする[34]に記載の装置。
[39]前記少なくとも一つのプロセッサは、基本パリティチェック行列の各々の非零要素を、前記非零要素に対応する前記第1のセットにおける巡回シフト値の巡回置換行列で置き換えることによって、前記第1のパリティチェック行列を生成するように構成されたことを特徴とする[34]に記載の装置。
[40]第1のリフトサイズの第1のパリティチェック行列に関する巡回シフト値の第1のセットを、第2のリフトサイズの第2のパリティチェック行列に関する巡回シフト値の第2のセットに基づいて決定することと(前記第1及び第2のリフトサイズは、異なる2のべき乗である。)、前記巡回シフト値の第1のセットに基づいて、前記第1のパリティチェック行列を生成することと、前記前記第1のパリティチェック行列に基づいて、パケットを符号化又は復号化することを含むことを特徴とするデータを処理するための方法。
[41]前記巡回シフト値の第1のセットを前記決定することは、前記第1のリフトサイズに対する前記第2のリフトサイズの比に基づいて、ファクターKを決定することと、前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々の巡回シフト値のK個の最下位ビット(LSB)を除去することを含むことを特徴とする[40]に記載の方法。
[42]前記第1のパリティチェック行列を前記生成することとは、基本パリティチェック行列の各々の非零要素を、前記非零要素に対応する前記第1のセットにおける巡回シフト値の巡回置換行列で置き換えることによって、前記第1のパリティチェック行列を生成することを含むことを特徴とする[40]に記載の方法。
[43]基本パリティチェック行列の各々の非零要素を、特定の巡回シフト値のL×L置換行列で置き換えることによって、リフトされたパリティチェック行列を取得し(ここで、Lは2のべき乗である。)、少なくとも3つの非零要素を有する前記基本パリティチェック行列の列における2つの非零要素についての巡回シフト値s及びs+L/mを使用し(ここで、sは任意の値であり、mは2のべき乗である。)、前記リフトされたパリティチェック行列に基づいて、パケットを符号化又は復号化するように構成された少なくとも一つのプロセッサと、前記少なくとも一つのプロセッサに接続されたメモリとを含むことを特徴とする装置。
[44]前記基本パリティチェック行列は、
Figure 0005551209
を含み、Tは、下三角行列であり、行列B及びDそれぞれは、1の幅を持ち、行列D及びEそれぞれは、1の高さを持ち、少なくとも3つの非零要素が行列B及びDに対応する列に存在することを特徴とする[43]に記載の装置。
[45]前記少なくとも一つのプロセッサは、少なくとも3つの非零要素を有する前記列における3つの非零要素についての巡回シフト値sを選択するように構成されたことを特徴とする[43]に記載の装置。
[46]mは2に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/2であることを特徴とする[43]に記載の装置。
[47]mは4に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/4であることを特徴とする[43]に記載の装置。
[48]mは8に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/8であることを特徴とする[43]に記載の装置。
[49]基本パリティチェック行列の各々の非零要素を、特定の巡回シフト値のL×L置換行列で置き換えることによって、リフトされたパリティチェック行列を取得することと(ここで、Lは2のべき乗である。)、少なくとも3つの非零要素を有する前記基本パリティチェック行列の列における2つの非零要素についての巡回シフト値s及びs+L/mを使用することと(ここで、sは任意の値であり、mは2のべき乗である。)、前記リフトされたパリティチェック行列に基づいて、パケットを符号化又は復号化することを含むことを特徴とするデータを処理するための方法。
[50]前記基本パリティチェック行列は、
Figure 0005551209
を含み、Tは、下三角行列であり、行列B及びDそれぞれは、1の幅を持ち、行列D及びEそれぞれは、1の高さを持ち、少なくとも3つの非零要素が行列B及びDに対応する列に存在することを特徴とする[49]に記載の方法。
[51]mは4に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/4であることを特徴とする[49]に記載の方法。

Claims (17)

  1. 第1のリフトサイズの第1のパリティチェック行列に関する巡回シフト値の第1のセットを、第2のリフトサイズの第2のパリティチェック行列に関する巡回シフト値の第2のセットに基づいて決定し(前記第1及び第2のリフトサイズは、異なる2のべき乗である。)、前記巡回シフト値の第1のセットに基づいて、前記第1のパリティチェック行列を生成し、前記第1のパリティチェック行列に基づいて、パケットを符号化又は復号化するように構成された少なくとも一つのプロセッサと、
    前記少なくとも一つのプロセッサに接続されたメモリとを含むことを特徴とする装置。
  2. 前記少なくとも一つのプロセッサは、
    前記第1のリフトサイズに対する前記第2のリフトサイズの比に基づいて、ファクターKを決定し、前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々の巡回シフト値のK個の最下位ビット(LSB)を除去するように構成されたことを特徴とする請求項1に記載の装置。
  3. 前記少なくとも一つのプロセッサは、
    前記第2のリフトサイズの前記第1のリフトサイズに対する比を決定し、
    前記第2のセットにおける対応する巡回シフト値を、前記比で分割することと、整数値になるように端数を切り捨てることによって、前記第1のセットにおける各々の巡回シフト値を得るように構成されたことを特徴とする請求項1に記載の装置。
  4. 前記少なくとも一つのプロセッサは、
    前記第2のリフトサイズの前記第1のリフトサイズに対する比に基づいて、要素Kを決定し、
    前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々のK個の最上位ビット(MSB)を除去するように構成されたことを特徴とする請求項1に記載の装置。
  5. 前記少なくとも一つのプロセッサは、
    基本パリティチェック行列の各々の非零要素を、前記非零要素に対応する前記第1のセットにおける巡回シフト値に基づく巡回置換行列で置き換えることによって、前記第1のパリティチェック行列を生成するように構成されたことを特徴とする請求項1に記載の装置。
  6. 第1のリフトサイズの第1のパリティチェック行列に関する巡回シフト値の第1のセットを、第2のリフトサイズの第2のパリティチェック行列に関する巡回シフト値の第2のセットに基づいて決定することと(前記第1及び第2のリフトサイズは、異なる2のべき乗である。)、
    前記巡回シフト値の第1のセットに基づいて、前記第1のパリティチェック行列を生成することと、
    前記第1のパリティチェック行列に基づいて、パケットを符号化又は復号化することを含むことを特徴とするデータを処理するための方法。
  7. 前記巡回シフト値の第1のセットを前記決定することは、
    前記第1のリフトサイズに対する前記第2のリフトサイズの比に基づいて、ファクターKを決定することと、
    前記第1のセットにおける対応する巡回シフト値を得るために、前記第2のセットにおける各々の巡回シフト値のK個の最下位ビット(LSB)を除去することを含むことを特徴とする請求項に記載の方法。
  8. 前記第1のパリティチェック行列を前記生成することとは、
    基本パリティチェック行列の各々の非零要素を、前記非零要素に対応する前記第1のセットにおける巡回シフト値に基づく巡回置換行列で置き換えることによって、前記第1のパリティチェック行列を生成することを含むことを特徴とする請求項に記載の方法。
  9. 基本パリティチェック行列の各々の非零要素を、特定の巡回シフト値に基づくL×L置換行列で置き換えることによって、リフトされたパリティチェック行列を取得し(ここで、Lは2のべき乗である。)、少なくとも3つの非零要素を有する前記基本パリティチェック行列の列における2つの非零要素についての巡回シフト値s及びs+L/mを使用し(ここで、sは任意の値であり、m(m≧2)は2のべき乗である。)、前記リフトされたパリティチェック行列に基づいて、パケットを符号化又は復号化するように構成された少なくとも一つのプロセッサと、
    前記少なくとも一つのプロセッサに接続されたメモリとを含むことを特徴とする装置。
  10. 前記基本パリティチェック行列は、
    Figure 0005551209
    を含み、
    Tは、下三角行列であり、行列B及びDそれぞれは、1の幅を持ち、行列D及びEそれぞれは、1の高さを持ち、少なくとも3つの非零要素が行列B及びDに対応する列に存在することを特徴とする請求項に記載の装置。
  11. 前記少なくとも一つのプロセッサは、少なくとも3つの非零要素を有する前記列における3つの非零要素についての巡回シフト値sを選択するように構成されたことを特徴とする請求項に記載の装置。
  12. mは2に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/2であることを特徴とする請求項に記載の装置。
  13. mは4に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/4であることを特徴とする請求項に記載の装置。
  14. mは8に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/8であることを特徴とする請求項に記載の装置。
  15. 基本パリティチェック行列の各々の非零要素を、特定の巡回シフト値に基づくL×L置換行列で置き換えることによって、リフトされたパリティチェック行列を取得することと(ここで、Lは2のべき乗である。)、
    少なくとも3つの非零要素を有する前記基本パリティチェック行列の列における2つの非零要素についての巡回シフト値s及びs+L/mを使用することと(ここで、sは任意の値であり、m(m≧2)は2のべき乗である。)、
    前記リフトされたパリティチェック行列に基づいて、パケットを符号化又は復号化することを含むことを特徴とするデータを処理するための方法。
  16. 前記基本パリティチェック行列は、
    Figure 0005551209
    を含み、
    Tは、下三角行列であり、行列B及びDそれぞれは、1の幅を持ち、行列D及びEそれぞれは、1の高さを持ち、少なくとも3つの非零要素が行列B及びDに対応する列に存在することを特徴とする請求項15に記載の方法。
  17. mは4に等しく、2つの前記非零要素のための前記巡回シフト値は、s及びs+L/4であることを特徴とする請求項15に記載の方法。
JP2012128830A 2007-01-24 2012-06-06 可変サイズのパケットのldpc符号化及び復号化 Active JP5551209B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US88649607P 2007-01-24 2007-01-24
US60/886,496 2007-01-24

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009547429A Division JP5231453B2 (ja) 2007-01-24 2008-01-24 可変サイズのパケットのldpc符号化及び復号化

Publications (2)

Publication Number Publication Date
JP2012231473A JP2012231473A (ja) 2012-11-22
JP5551209B2 true JP5551209B2 (ja) 2014-07-16

Family

ID=39642439

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2009547429A Active JP5231453B2 (ja) 2007-01-24 2008-01-24 可変サイズのパケットのldpc符号化及び復号化
JP2012128831A Active JP5559246B2 (ja) 2007-01-24 2012-06-06 可変サイズのパケットのldpc符号化及び復号化
JP2012128830A Active JP5551209B2 (ja) 2007-01-24 2012-06-06 可変サイズのパケットのldpc符号化及び復号化

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2009547429A Active JP5231453B2 (ja) 2007-01-24 2008-01-24 可変サイズのパケットのldpc符号化及び復号化
JP2012128831A Active JP5559246B2 (ja) 2007-01-24 2012-06-06 可変サイズのパケットのldpc符号化及び復号化

Country Status (13)

Country Link
US (2) US8433984B2 (ja)
EP (2) EP2106635A2 (ja)
JP (3) JP5231453B2 (ja)
KR (5) KR20090113869A (ja)
CN (2) CN101601187B (ja)
AU (1) AU2008207799B2 (ja)
BR (1) BRPI0806757A2 (ja)
CA (1) CA2674719A1 (ja)
IL (1) IL199605A0 (ja)
MX (1) MX2009007946A (ja)
RU (1) RU2443053C2 (ja)
TW (2) TW200838159A (ja)
WO (1) WO2008092040A2 (ja)

Families Citing this family (115)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
CA2674719A1 (en) * 2007-01-24 2008-07-31 Qualcomm Incorporated Ldpc encoding and decoding of packets of variable sizes
US8370711B2 (en) * 2008-06-23 2013-02-05 Ramot At Tel Aviv University Ltd. Interruption criteria for block decoding
US8392814B2 (en) * 2008-10-07 2013-03-05 Qualcomm Incorporated Method and apparatus for high speed structured multi rate low density parity check codes
US8612823B2 (en) * 2008-10-17 2013-12-17 Intel Corporation Encoding of LDPC codes using sub-matrices of a low density parity check matrix
CN101741396B (zh) * 2008-11-19 2013-03-13 华为技术有限公司 可变码长ldpc码编码或译码的方法与装置及编码器和译码器
JP4898858B2 (ja) 2009-03-02 2012-03-21 パナソニック株式会社 符号化器、復号化器及び符号化方法
TWI427936B (zh) * 2009-05-29 2014-02-21 Sony Corp 接收設備,接收方法,程式,及接收系統
US8495450B2 (en) * 2009-08-24 2013-07-23 Samsung Electronics Co., Ltd. System and method for structured LDPC code family with fixed code length and no puncturing
US8560911B2 (en) * 2009-09-14 2013-10-15 Samsung Electronics Co., Ltd. System and method for structured LDPC code family
KR101644656B1 (ko) 2009-11-02 2016-08-10 삼성전자주식회사 선형 블록 부호를 사용하는 통신 시스템에서 패리티 검사 행렬을 생성하는 방법과 이를 이용한 채널 부호화/복호화 장치 및 방법
KR101670511B1 (ko) * 2010-05-07 2016-10-28 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호/복호 방법 및 장치
US8971261B2 (en) 2010-06-02 2015-03-03 Samsung Electronics Co., Ltd. Method and system for transmitting channel state information in wireless communication systems
US8732565B2 (en) 2010-06-14 2014-05-20 Samsung Electronics Co., Ltd. Method and apparatus for parallel processing in a gigabit LDPC decoder
US9634693B2 (en) * 2010-08-12 2017-04-25 Samsung Electronics Co., Ltd Apparatus and method for decoding LDPC codes in a communications system
JP5500379B2 (ja) * 2010-09-03 2014-05-21 ソニー株式会社 データ処理装置、及びデータ処理方法
US8644282B2 (en) * 2010-09-16 2014-02-04 Qualcomm Incorporated System and method for transmitting a low density parity check signal
US8739001B2 (en) * 2011-04-23 2014-05-27 Analogies Sa LDPC encoding and decoding techniques
EP2525497A1 (en) 2011-05-18 2012-11-21 Panasonic Corporation Bit-interleaved coding and modulation (BICM) with quasi-cyclic LDPC codes
CN102801431B (zh) * 2011-05-25 2015-02-04 华为技术有限公司 一种编码装置及方法
KR20120137198A (ko) * 2011-06-11 2012-12-20 삼성전자주식회사 통신 시스템에서 패킷 송수신 장치 및 방법
JP5391253B2 (ja) * 2011-10-26 2014-01-15 パナソニック株式会社 送信装置及び送信方法
KR101922990B1 (ko) 2011-11-11 2018-11-28 삼성전자주식회사 멀티미디어 통신 시스템에서 준순환 저밀도 패리티 검사 부호 송/수신 장치 및 방법
JP5665725B2 (ja) * 2011-12-13 2015-02-04 株式会社東芝 符号化装置及びこれを用いた半導体メモリシステム
KR101221062B1 (ko) * 2011-12-14 2013-01-11 단국대학교 산학협력단 가변 usc 부호를 이용한 부호화 및 복호화 방법
KR101685010B1 (ko) 2012-06-01 2016-12-13 한국전자통신연구원 지상파 클라우드 방송을 위한 ldpc 부호
US9178653B2 (en) * 2013-01-16 2015-11-03 Broadcom Corporation Very short size LDPC coding for physical and/or control channel signaling
US9154261B2 (en) * 2013-01-16 2015-10-06 Broadcom Corporation Low density parity check (LDPC) coding in communication systems
RU2654132C2 (ru) * 2013-02-08 2018-05-16 Сони Корпорейшн Устройство обработки данных и способ обработки данных
WO2014127129A1 (en) * 2013-02-13 2014-08-21 Qualcomm Incorporated Ldpc design using quasi-cyclic constructions and puncturing for high rate, high parallelism, and low error floor
CN105144589B (zh) * 2013-05-02 2019-06-28 索尼公司 数据处理装置以及数据处理方法
WO2014179937A1 (zh) 2013-05-07 2014-11-13 华为技术有限公司 一种编码及解码的方法、设备和系统
CN107888199B (zh) * 2013-05-16 2021-11-09 韩国电子通信研究院 基于低密度奇偶校验编码/解码输入信息的方法和编码器
BR112015002543B1 (pt) * 2013-06-12 2021-12-28 Sony Corporation Aparelho e método de processamento de dados
EP2833553B1 (en) * 2013-07-30 2021-03-31 Alcatel Lucent LDPC decoder
EP2858249A1 (en) 2013-10-07 2015-04-08 Electronics and Telecommunications Research Institute Low density parity check encoder
US9430375B2 (en) 2013-12-30 2016-08-30 International Business Machines Corporation Techniques for storing data in bandwidth optimized or coding rate optimized code words based on data access frequency
JP2015156530A (ja) * 2014-02-19 2015-08-27 ソニー株式会社 データ処理装置、及び、データ処理方法
KR102260775B1 (ko) * 2014-05-22 2021-06-07 한국전자통신연구원 길이가 16200이며, 부호율이 10/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
CA2864694C (en) 2014-08-14 2017-06-27 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 16200 and code rate of 5/15, and low density parity check encoding method using the same
CA2864630C (en) 2014-08-14 2017-05-30 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 4/15, and low density parity check encoding method using the same
US9602244B2 (en) 2014-08-14 2017-03-21 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 16200 and code rate of 4/15, and low density parity check encoding method using the same
CA2959619C (en) 2014-08-14 2019-05-14 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same
US9496896B2 (en) 2014-08-14 2016-11-15 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 5/15, and low density parity check encoding method using the same
CA2864640C (en) 2014-08-14 2017-06-06 Sung-Ik Park Low density parity check encoder having length of 16200 and code rate of 2/15, and low density parity check encoding method using the same
US9490843B2 (en) 2014-08-14 2016-11-08 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 2/15, and low density parity check encoding method using the same
CA2959609C (en) 2014-08-14 2019-05-07 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 3/15, and low density parity check encoding method using the same
KR102270310B1 (ko) * 2014-08-26 2021-06-30 한국전자통신연구원 Ldpc 부호화기 및 이를 이용한 ldpc 부호화 방법
US9602243B2 (en) * 2014-08-26 2017-03-21 Electronics And Telecommunications Research Institute Low density parity check encoder, and low density parity check encoding method using the same
US9432052B2 (en) * 2014-09-18 2016-08-30 Broadcom Corporation Puncture-aware low density parity check (LDPC) decoding
US20160218750A1 (en) * 2015-01-23 2016-07-28 Empire Technology Development Llc Parity check code encoder
JP5848472B2 (ja) * 2015-02-24 2016-01-27 パナソニック株式会社 受信装置及び受信方法
US9667276B1 (en) * 2015-08-06 2017-05-30 Xilinx, Inc. Efficient low error-floor LDPC codes
US10382069B2 (en) * 2015-08-11 2019-08-13 Apple Inc. Data encoding by efficient inversion of a parity-check sub-matrix
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
JP6005830B2 (ja) * 2015-11-26 2016-10-12 パナソニック株式会社 受信装置及び受信方法
US10673461B2 (en) 2015-12-24 2020-06-02 Intel Corporation Hybrid scheduling and latch-based pipelines for low-density parity-check decoding
KR20170083432A (ko) 2016-01-08 2017-07-18 삼성전자주식회사 레이트 호환 가능 저밀도 패리티 검사 코드를 지원하는 통신 시스템에서 신호를 송신 및 수신하는 장치 및 방법
US11043966B2 (en) * 2016-05-11 2021-06-22 Qualcomm Incorporated Methods and apparatus for efficiently generating multiple lifted low-density parity-check (LDPC) codes
EP3902142A1 (en) 2016-05-12 2021-10-27 MediaTek Inc. Qc-ldpc coding methods and apparatus
US10454499B2 (en) 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
CN107370489B (zh) 2016-05-13 2020-07-28 中兴通讯股份有限公司 结构化ldpc码的数据处理方法及装置
WO2017193558A1 (zh) 2016-05-13 2017-11-16 中兴通讯股份有限公司 结构化ldpc码的数据处理方法及装置
US9917675B2 (en) 2016-06-01 2018-03-13 Qualcomm Incorporated Enhanced polar code constructions by strategic placement of CRC bits
US10313057B2 (en) 2016-06-01 2019-06-04 Qualcomm Incorporated Error detection in wireless communications using sectional redundancy check information
US10469104B2 (en) * 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
WO2018014272A1 (en) * 2016-07-20 2018-01-25 Huawei Technologies Co., Ltd. Methods and systems for encoding and decoding for ldpc codes
SG11201810437XA (en) 2016-07-27 2019-02-27 Qualcomm Inc Design of hybrid automatic repeat request (harq) feedback bits for polar codes
CN109792254B (zh) 2016-08-10 2023-09-15 交互数字专利控股公司 Harq及高级信道码
WO2018030909A1 (en) * 2016-08-11 2018-02-15 Huawei Technologies Co., Ltd. Construction of qc-ldpc codes for a hybrid automatic repeat request (harq) scheme
DK3308469T3 (da) 2016-08-12 2020-06-02 Ericsson Telefon Ab L M Rate-matching-fremgangsmåder til LDPC-koder
WO2018029616A1 (en) * 2016-08-12 2018-02-15 Telefonaktiebolaget Lm Ericsson (Publ) Determining elements of base matrices for quasi-cyclic ldpc codes having variable code lengths
KR102131834B1 (ko) * 2016-09-30 2020-07-08 엘지전자 주식회사 Qc ldpc 코드의 레이트 매칭 방법 및 이를 위한 장치
US10778371B2 (en) * 2016-11-02 2020-09-15 Qualcomm Incorporated Deeply-pipelined high-throughput LDPC decoder architecture
WO2018084735A1 (en) 2016-11-03 2018-05-11 Huawei Technologies Co., Ltd. Efficiently decodable qc-ldpc code
EP3529899B1 (en) * 2016-11-14 2023-04-05 Huawei Technologies Co., Ltd. Method and apparatus for encoding and decoding of variable length quasi-cyclic low-density parity-check, qc-ldpc, codes
KR20180071917A (ko) * 2016-12-20 2018-06-28 삼성전자주식회사 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
WO2018117651A1 (en) * 2016-12-20 2018-06-28 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system
EP4012930B1 (en) * 2016-12-20 2023-12-13 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system
TWI602188B (zh) * 2017-01-03 2017-10-11 慧榮科技股份有限公司 用來於記憶裝置中進行資料管理之方法以及記憶裝置及其控制器
JP2020501429A (ja) * 2017-01-06 2020-01-16 エルジー エレクトロニクス インコーポレイティド 多重ldpcコードからldpcベースコードを選択する方法及びそのための装置
US10581457B2 (en) 2017-01-09 2020-03-03 Mediatek Inc. Shift coefficient and lifting factor design for NR LDPC code
US10432227B2 (en) 2017-01-24 2019-10-01 Mediatek Inc. Location of interleaver with LDPC code
US10630319B2 (en) 2017-01-24 2020-04-21 Mediatek Inc. Structure of interleaver with LDPC code
US10340949B2 (en) * 2017-02-06 2019-07-02 Qualcomm Incorporated Multiple low density parity check (LDPC) base graph design
CN113676188A (zh) * 2017-03-03 2021-11-19 华为技术有限公司 高码率的长ldpc码
CA3094841C (en) 2017-03-24 2023-05-02 Zte Corporation Processing method and device for quasi-cyclic low density parity check coding
US10735138B2 (en) * 2017-05-02 2020-08-04 Futurewei Technologies, Inc. Multi-label offset lifting method
RU2667772C1 (ru) * 2017-05-05 2018-09-24 Хуавэй Текнолоджиз Ко., Лтд. Способ и устройство обработки информации и устройство связи
CN110535474B (zh) 2017-05-05 2023-06-06 华为技术有限公司 信息处理的方法、通信装置
US10484013B2 (en) 2017-05-12 2019-11-19 Mediatek Inc. Shift-coefficient table design of QC-LDPC code for smaller code block sizes in mobile communications
US10567116B2 (en) 2017-05-12 2020-02-18 Mediatek Inc. Wireless communication using codebooks from a QC-LDPC code for shorter processing latency and improved decoder throughput efficiency
US10484011B2 (en) 2017-05-12 2019-11-19 Mediatek Inc. Shift-coefficient table design of QC-LDPC code for larger code block sizes in mobile communications
WO2018218466A1 (zh) 2017-05-28 2018-12-06 华为技术有限公司 信息处理的方法和通信装置
CN108988871A (zh) * 2017-05-31 2018-12-11 电信科学技术研究院 一种编码方法及装置、计算机存储介质
CN108988869B (zh) * 2017-05-31 2021-07-30 大唐移动通信设备有限公司 一种确定校验矩阵的方法及装置、计算机存储介质
EP3624350A4 (en) 2017-06-03 2020-06-17 Huawei Technologies Co., Ltd. INFORMATION PROCESSING PROCESS AND COMMUNICATION DEVICE
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
EP3588786B1 (en) * 2017-06-15 2022-11-16 Huawei Technologies Co., Ltd. Qc-ldpc codes for 3gpp 5g mobile radio
RU2730444C1 (ru) * 2017-06-25 2020-08-21 ЭлДжи ЭЛЕКТРОНИКС ИНК. Способ для выполнения кодирования на основе матрицы контроля по четности ldpc-кода в системе беспроводной связи и терминал с его использованием
CN109120275B (zh) * 2017-06-26 2021-02-05 电信科学技术研究院 一种编码方法及装置、计算机存储介质
CN115801191A (zh) * 2017-06-26 2023-03-14 中兴通讯股份有限公司 准循环低密度奇偶校验编码设计方法及装置
CN109327225B9 (zh) 2017-06-27 2021-12-10 华为技术有限公司 信息处理的方法、装置和通信设备
CN109150196A (zh) 2017-06-27 2019-01-04 华为技术有限公司 信息处理的方法、装置和通信设备
TWI690166B (zh) * 2017-06-27 2020-04-01 聯發科技股份有限公司 在移動通信中用於小碼塊尺寸的qc-ldpc碼的移位係數表設計方法
TWI690169B (zh) * 2017-06-28 2020-04-01 聯發科技股份有限公司 在移動通信中用於大碼塊尺寸的qc-ldpc碼的移位係數表設計方法
BR112020000140A2 (pt) 2017-07-07 2020-08-04 Qualcomm Incorporated técnicas de comunicação aplicando seleção de gráfico base de código de verificação de paridade de baixa densidade
US11258536B2 (en) 2017-08-10 2022-02-22 Samsung Electronics Co., Ltd. Method and apparatus for encoding/decoding channel in communication or broadcasting system
CN109391367B (zh) * 2017-08-11 2022-12-30 华为技术有限公司 通信方法和装置
KR101991447B1 (ko) * 2018-09-10 2019-06-20 국방과학연구소 블록 간섭 및 블록 페이딩에 강인한 고부호율 프로토그래프 기반 ldpc 부호 설계 기법
WO2020145516A1 (ko) * 2019-01-07 2020-07-16 엘지전자 주식회사 무선 통신 시스템에서 저밀도 패리티 체크 행렬을 이용한 채널 코딩을 수행하는 방법 및 장치
US11791938B2 (en) * 2019-09-26 2023-10-17 Nvidia Corporation Parity check decoding
CN112583420B (zh) * 2019-09-30 2024-01-09 上海华为技术有限公司 一种数据处理方法和译码器
US10778248B1 (en) * 2020-01-30 2020-09-15 TenaFe, Inc. Low-density parity-check decoding with de-saturation
CN112511173A (zh) * 2020-12-23 2021-03-16 中兴通讯股份有限公司 低密度奇偶校验编码、译码方法、编码、译码设备及介质

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2007042C1 (ru) 1991-02-22 1994-01-30 Морозов Андрей Константинович Система для кодирования и декодирования с исправлением ошибок
US6633859B1 (en) 1999-08-17 2003-10-14 Authoria, Inc. Knowledge system with distinct presentation and model structure
US6567465B2 (en) * 2001-05-21 2003-05-20 Pc Tel Inc. DSL modem utilizing low density parity check codes
US6633856B2 (en) 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6961888B2 (en) * 2002-08-20 2005-11-01 Flarion Technologies, Inc. Methods and apparatus for encoding LDPC codes
US7702986B2 (en) * 2002-11-18 2010-04-20 Qualcomm Incorporated Rate-compatible LDPC codes
CA2516716C (en) * 2003-02-26 2012-08-14 Flarion Technologies, Inc. Method and apparatus for performing low-density parity-check (ldpc) code operations using a multi-level permutation
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
JP4224777B2 (ja) * 2003-05-13 2009-02-18 ソニー株式会社 復号方法および復号装置、並びにプログラム
CN1902828B (zh) 2003-08-08 2012-02-29 英特尔公司 用于改变低密度奇偶校验码字长度的方法和装置
KR100809619B1 (ko) 2003-08-26 2008-03-05 삼성전자주식회사 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
KR100955952B1 (ko) 2003-10-13 2010-05-19 삼성전자주식회사 무선 통신 시스템에서 리프팅 저밀도 패러티 검사 부호를이용한 시공간 부호화 방법 및 장치
KR100922956B1 (ko) 2003-10-14 2009-10-22 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 방법
US7395495B2 (en) 2004-01-12 2008-07-01 Intel Corporation Method and apparatus for decoding forward error correction codes
CN1947368B (zh) * 2004-04-28 2010-06-16 三星电子株式会社 对具有可变块长度的块低密度奇偶校验码编码/解码的设备和方法
KR20050118056A (ko) * 2004-05-12 2005-12-15 삼성전자주식회사 다양한 부호율을 갖는 Block LDPC 부호를 이용한이동 통신 시스템에서의 채널부호화 복호화 방법 및 장치
US7526717B2 (en) * 2004-06-16 2009-04-28 Samsung Electronics Co., Ltd. Apparatus and method for coding and decoding semi-systematic block 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
US7346832B2 (en) 2004-07-21 2008-03-18 Qualcomm Incorporated LDPC encoding methods and apparatus
US7395490B2 (en) 2004-07-21 2008-07-01 Qualcomm Incorporated LDPC decoding methods and apparatus
US7516391B2 (en) 2004-08-16 2009-04-07 Samsung Electronics Co., Ltd Apparatus and method for coding/decoding block low density parity check code with variable block length
WO2006039801A1 (en) * 2004-10-12 2006-04-20 Nortel Networks Limited System and method for low density parity check encoding of data
KR100809616B1 (ko) * 2005-10-19 2008-03-05 삼성전자주식회사 가변 블록 길이를 가지는 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
KR100975558B1 (ko) 2006-05-03 2010-08-13 삼성전자주식회사 통신 시스템에서 신호 송수신 장치 및 방법
US7934146B2 (en) * 2006-10-18 2011-04-26 Nokia Corporation Method, apparatus and computer program product providing for data block encoding and decoding
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
CA2674719A1 (en) * 2007-01-24 2008-07-31 Qualcomm Incorporated Ldpc encoding and decoding of packets of variable sizes

Also Published As

Publication number Publication date
WO2008092040A3 (en) 2008-12-31
JP5231453B2 (ja) 2013-07-10
CN102904583B (zh) 2017-06-23
CN102904583A (zh) 2013-01-30
KR20090113869A (ko) 2009-11-02
IL199605A0 (en) 2010-03-28
US8578249B2 (en) 2013-11-05
TW201334425A (zh) 2013-08-16
KR101280477B1 (ko) 2013-07-01
US20120166914A1 (en) 2012-06-28
CN101601187A (zh) 2009-12-09
MX2009007946A (es) 2009-08-18
BRPI0806757A2 (pt) 2011-09-13
RU2009131711A (ru) 2011-02-27
JP2010517444A (ja) 2010-05-20
KR20120076382A (ko) 2012-07-09
RU2443053C2 (ru) 2012-02-20
KR20130081324A (ko) 2013-07-16
EP2568612A1 (en) 2013-03-13
KR101364160B1 (ko) 2014-02-17
TW200838159A (en) 2008-09-16
KR101339120B1 (ko) 2013-12-09
JP5559246B2 (ja) 2014-07-23
US8433984B2 (en) 2013-04-30
CA2674719A1 (en) 2008-07-31
AU2008207799B2 (en) 2010-12-02
KR20130023375A (ko) 2013-03-07
WO2008092040A2 (en) 2008-07-31
EP2106635A2 (en) 2009-10-07
CN101601187B (zh) 2014-08-20
AU2008207799A1 (en) 2008-07-31
JP2012231474A (ja) 2012-11-22
JP2012231473A (ja) 2012-11-22
US20080178065A1 (en) 2008-07-24
KR20130026525A (ko) 2013-03-13
KR101312468B1 (ko) 2013-09-27

Similar Documents

Publication Publication Date Title
JP5551209B2 (ja) 可変サイズのパケットのldpc符号化及び復号化
KR101611169B1 (ko) 통신/방송 시스템에서 데이터 송수신 장치 및 방법
JP6609684B2 (ja) 通信方法
JP7361017B2 (ja) データ符号化方法及び装置、記憶媒体、並びにプロセッサ
KR20140145978A (ko) Ldpc 부호의 부호화 장치, 그의 부호화 방법, 복호화 장치 및 그의 복호화 방법
US20100138720A1 (en) Channel-encoding/decoding apparatus and method using low-density parity-check codes
KR20200013794A (ko) 정보 처리 방법, 장치 및 통신 장치
KR20190113983A (ko) 정보 프로세싱 방법 및 통신 장치
KR20170075627A (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
KR20140145977A (ko) 패리티 검사 부호의 부호화 장치, 그의 부호화 방법, 복호화 장치 및 그의 복호화 방법
KR20190000768A (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
KR20170060574A (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
KR20180071923A (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
KR20170060600A (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131220

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140328

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140521

R150 Certificate of patent or registration of utility model

Ref document number: 5551209

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250