JP5231218B2 - さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 - Google Patents
さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 Download PDFInfo
- Publication number
- JP5231218B2 JP5231218B2 JP2008516032A JP2008516032A JP5231218B2 JP 5231218 B2 JP5231218 B2 JP 5231218B2 JP 2008516032 A JP2008516032 A JP 2008516032A JP 2008516032 A JP2008516032 A JP 2008516032A JP 5231218 B2 JP5231218 B2 JP 5231218B2
- Authority
- JP
- Japan
- Prior art keywords
- symbols
- matrix
- memory
- place
- symbol
- 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
Links
- 239000011159 matrix material Substances 0.000 claims description 278
- 238000000034 method Methods 0.000 claims description 238
- 238000006243 chemical reaction Methods 0.000 claims description 97
- 230000009466 transformation Effects 0.000 claims description 82
- 238000003860 storage Methods 0.000 claims description 51
- 238000004891 communication Methods 0.000 claims description 41
- 230000005540 biological transmission Effects 0.000 claims description 29
- 238000012937 correction Methods 0.000 claims description 24
- 230000008569 process Effects 0.000 description 141
- 239000013598 vector Substances 0.000 description 61
- 238000012545 processing Methods 0.000 description 41
- 238000004364 calculation method Methods 0.000 description 26
- 230000009897 systematic effect Effects 0.000 description 14
- 238000000354 decomposition reaction Methods 0.000 description 13
- 230000002441 reversible effect Effects 0.000 description 13
- 238000013507 mapping Methods 0.000 description 11
- 238000000844 transformation Methods 0.000 description 11
- 230000008901 benefit Effects 0.000 description 10
- 238000003379 elimination reaction Methods 0.000 description 8
- 230000008030 elimination Effects 0.000 description 7
- 230000002779 inactivation Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000001131 transforming effect Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000010561 standard procedure Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- ADTDNFFHPRZSOT-PVFUSPOPSA-N ram-330 Chemical compound C([C@H]1N(CC2)C)C3=CC=C(OC)C(OC)=C3[C@]32[C@@]1(O)CC[C@@H](OC(=O)OCC)C3 ADTDNFFHPRZSOT-PVFUSPOPSA-N 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3761—Decoding 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1191—Codes on graphs other than LDPC codes
- H03M13/1194—Repeat-accumulate [RA] codes
- H03M13/1197—Irregular repeat-accumulate [IRA] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/2782—Interleaver implementations, which reduce the amount of required interleaving memory
- H03M13/2785—Interleaver using in-place interleaving, i.e. writing to and reading from the memory is performed at the same memory location
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/373—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/47—Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/611—Specific encoding aspects, e.g. encoding by means of decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/615—Use of computational or mathematical techniques
- H03M13/616—Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
- H03M13/6505—Memory efficient implementations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6569—Implementation on processors, e.g. DSPs, or software implementations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/32—Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Error Detection And Correction (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
送信機110でのFEC符号化および受信機140でのFEC復号化を使用する通信システムの高水準の図を図1に示す。送信機110および受信機140が、広い範囲のデバイスを含むことができることを理解されたい。多くの実施形態で、送信機および受信機は、単一のトランシーバデバイス内に含まれ、複数のそのようなデバイスが、それら自体の間で通信することができる。
例の実施形態をさらに示すために、環という数学的概念を利用する。次の説明では、さまざまな数学的な処理およびステップを、ハードウェアの動作、プログラム命令の実行、または類似物によって、コンピューティング/通信デバイスによって実行できることを理解されたい。
によってこの写像を表し、シンボルのペア(S,T)に対するこの写像の像を
によって表す。そのような写像の例が、ビット単位の排他的論理和(XOR)である。
である。Aが環であり、アクションが、Aでの乗算をも尊重する場合に(Aでの乗算演算子は、”・”である、すなわち(a・b)*S=a*(b*S)である)、このアクションを、”演算”と呼ぶ。
を定義する。
1.jに1をセットし、X[j]に0をセットする。
というステップによって実行することができる。
これから、インプレース線形変換について処理を説明する。Bが、フォーマット(m,n)を有する行列であり、Sが、n個のシンボルの列ベクトルであるものとする。BおよびSを与えられて、次のように、B↓Sすなわち下向きでのBによるSのインプレース線形行列変換を定義する。
S[i]をBの第i行と現在のSとの内積に置換する。
にリセットし、その後、処理はステップ660に戻る。
S[i]をBの第i行と現在のSとの内積に置換する。
にリセットし、その後、処理はステップ760に戻る。
も、疎な行列であり、効率的にアクセスできることに留意されたい。また、Bの要素がGF(2)からのものである場合に、
であることに留意されたい。定義したばかりの↑演算、↓演算、および〜演算は、次の特性を有する。Bが、すべてのi=1,...,nについてB[i,i]≠0である、フォーマット(n,n)を有する行列であり、Sが、n個のシンボルの列ベクトルであるものとする。S0が、変換を適用する前のSの値を表すものとする、すなわち、当初にS=S0である。すると、
である。
インプレース演算およびB↑インプレース演算は、上の意味で、互いの逆演算である。当業者が認めるであろうとおり、対称によって、たとえばS↓Bおよび
の形のインプレース演算を定義することもでき、ここで、Sは、上で定義したものに類似する特性を有するm個のシンボルの行ベクトルである。
これから、特殊な特性を有する線形変換のインプレース計算について処理を説明する。これらの線形変換は、その後に、より一般的な線形変換の計算用のインプレース処理を構成する基本構成要素として使用される。次では、Sは、m個のシンボルの列ベクトルを表し、Bは、体K上のフォーマット(m,n)の行列を表し、Bは、たとえばGF(2)の拡大体と考えることができ(しかし、この技法は、一般的なKにも同等に良好に適用される)、この処理の終りで、シンボルSのベクトルのストレージは、変換
の結果を記憶する。
この事例では、Bは、フォーマット(n,n)の順列行列である、すなわち、Bは、各行および各列に正確に1つの非0要素を有し、その非0要素は1である。この行列は疎なので、すなわち、非0である非常に少数の要素を有するので、多くのアプリケーションで、これを行列ではなくリスト(または行列より少ないメモリを使用する別のオブジェクト)として表すことが望ましい。たとえば、Bをリスト(B[1],...,B[n])として表すことができ、ここで、(j,B[j])は、Bの非0要素の位置である。
この場合に、Bは、すべての行およびすべての列に正確に1つの非0要素を有する、フォーマット(n,n)の行列である。順列行列は、単項行列の特殊事例である。単項行列のインプレース変換を計算する処理を、これから図9を参照して説明する。そのような行列は、リスト(B[1],...,B[n];α[1],...,α[n])によって簡潔に記述することができ、ここで、jのすべての関連する値について、B[j]は、Bの行jの非0要素の位置であり、α[j]は、その非0位置の値である。
を計算し、ここで、Cは、Bの非0要素を1に置換することによって行列Bから得られる順列行列である。ステップ910で、整数変数iを0に初期化し、その後、ステップ920、940、および950で、ループを実行し、ここで、1とnとの間のiの値ごとに、S[i]の値を、その位置に対するα[i]の演算すなわちα[i]*S[i]によって置換する。このループが完了した時に、処理はステップ930で停止する。当業者に明らかであるとおり、図9を参照して説明した処理は、
を計算する。というのは、Bを、対角要素α[1],...,α[n]を有する対角行列と行列Cとの積として書くことができるからである。さらに、この処理中にシンボルに使用されるストレージは、n+1である。
Uが、上三角である(すべてのj<iについてU[i,j]=0)、フォーマット(n,n)の行列であるものとする。すると、
である、すなわち、インプレース演算U↓Sは、SによるUの乗算の結果と同一の、シンボルのn個のベクトルをもたらす。さらに、Uが可逆でもある(すべてのiについてU[i,i]≠0)場合には、
である、すなわち、インプレース演算
は、SによるUの逆行列の乗算の結果と同一の、シンボルのn個のベクトルをもたらす。したがって、行列乗算と逆行列乗算との両方を、上三角行列のインプレース演算を使用して達成することができる。Uが疎な行列である場合に、U↓Sと
との両方が、疎な計算である、すなわち、Uによる乗算とUの逆行列による乗算との両方を、U−1が必ずしも疎な行列ではない場合であっても疎なインプレース計算によって達成できることに留意されたい。
Lが、下三角である(すべてのj>iについてL[i,j]=0)、フォーマット(n,n)の行列であるものとする。すると、
である、すなわち、インプレース演算L↑Sは、SによるLの乗算の結果と同一の、シンボルのn個のベクトルをもたらす。さらに、Lが可逆でもある(すべてのiについてL[i,i]≠0)場合には、
である、すなわち、インプレース演算
は、SによるLの逆行列の乗算の結果と同一の、シンボルのn個のベクトルをもたらす。したがって、行列乗算と逆行列乗算との両方を、下三角行列のインプレース演算を使用して達成することができる。Lが疎な行列である場合に、L↑Sと
との両方が、疎な計算である、すなわち、Lによる乗算とLの逆行列による乗算との両方を、L−1が必ずしも疎な行列ではない場合であっても疎なインプレース計算によって達成できることに留意されたい。
この場合に、Bは、上で説明したタイプの行列の積である、すなわち、Bは、積M1・M2・...・Mtであり、ここで、各Mjは、順列行列、単項行列、上三角行列、または下三角行列のいずれかである。この行列の変換をインプレースで計算する処理は、Mtを用いてSを変換し、その後、Mt−1を用いて結果を変換することなどである。
フォーマット(n,n)の行列Bについて、3つの行列P、L、およびUの積へのBの分解を計算することが可能であり、ここで、Pは順列行列であり、Lは主対角に1を有する下三角行列であり、Uは上三角行列である。そのような分解は、当業者に既知の通り、さまざまな処理によって計算することができる。これらの処理のうちの1つが、周知のガウス消去処理である。その場合に、BによるSのインプレース変換すなわち、インプレース変換を使用する
の計算は、単純に
である。
を計算するのに必要な計算の量が、本質的に
に関する計算量と同一であることに留意されたい。さらに、UとLとの両方が、疎に表現され、たとえば、n個の複数の非0要素において線形だけを有する場合に、
と
との両方を、上で説明したインプレース変換を使用して説明したとおりに、線形時間で計算することができる。この計算の任意の点でのシンボルの記憶に関する上で説明したインプレース変換の計算中に使用されるメモリまたはストレージの量は、n+1である。
フォーマット(m,n)の行列Bが正方行列ではない場合に、上で説明したものに似た方法を利用して、メモリの量を最小化する形で変換を計算することができる。たとえば、行列が、列より多数の行を有する(すなわち、mがnより大きい)場合に、結果のベクトルの最初のn個の要素をインプレースで計算することだけが重要である。これは、次のように達成することができる。
を次のようにインプレースで計算することができる。
を次のようにインプレースで計算することができる。
Mが、図11に示されたタイプのフォーマット(n,n)の正方行列であるものとする。図11では、m≦nであり、Lは、フォーマット(m,m)の下三角可逆行列であり、Aは、フォーマット(m,n−m)の行列であり、Bは、フォーマット(n−m,m)の行列であり、Cは、フォーマット(n−m,n−m)の可逆行列である。
および
を計算する効率的なインプレース変換を説明する。これらのインプレース変換は、効率的とインプレースとの両方である、後で説明するFEC符号化およびFEC復号化の方法および処理の一部の基礎を作る。タイプMの行列が検討される、これらのFEC符号の一部について、Mは、疎な行列であり、たとえば、Mの非0要素の個数はn程度であり、n−mは、nと比較して小さく、たとえば、n−mはnの平方根程度である。この例について、
および
を計算する、下で説明するインプレース変換を実行するのに必要な計算は、nシンボル演算程度であるが、この計算中にシンボルに使用される総空間または総メモリは、多くともn+1である。
が、図13Bに示された値を有するDをもたらすことがわかり、ここで、Eをフォーマット(m,n−m)の行列とみなす時に、E=L−1・Aであり、Fをフォーマット(n−m,n−m)の行列とみなす時に、F=C−B・L−1・Aである。CおよびLは、両方とも可逆なので、Fも可逆であることを簡単に検証することができる。P、Λ、およびYが、フォーマット(n−m,n−m)の行列であり、F=P・Λ・Yであり、Pが順列行列であり、Λが下三角行列であり、Yが上三角行列であるものとする。この因数分解は、たとえば、周知のガウス消去法または類似する技法を使用して得ることができる。
の結果を計算することがわかることに留意されたい。図16には、N’の逆行列であるN’−1の形も示されている。
が、
の結果をインプレースで計算することを検証することもできる。
を計算する処理を、図17を参照して説明する。ステップ1710で、インプレース変換N’↑Sを計算する。ステップ1720で、インプレース変換
を計算し、ここで、Dは、上で説明したものであり、上で説明したように、行列F=C−B・L−1・Aは、変換の結果の最後のn−m個の行である。ステップ1730で、上で説明したように、行列FをP、Λ、およびYに因数分解する。ステップ1740で、インプレース変換Y’↓Sを計算する。ステップ1750で、インプレース変換Λ’↑Sを計算する。ステップ1760で、インプレース変換
を計算する。ステップ1770で、インプレース変換
を計算する。ステップ1780で、インプレース変換M’↑Sを計算する。ステップ1790で、インプレース変換が完了するので、この処理は停止する。
を計算する処理を、図18を参照して説明する。図18を参照して説明するインプレース変換は、合計n+(n−m)+1シンボル分のストレージを使用する、すなわち、図17を参照して説明した処理よりn−m個多いシンボルを使用し、シンボル演算の総数が、
の単純な非インプレース計算で使用されるはずの演算の総数と同一であるという利益を有する。したがって、Mが疎である時に、図18を参照して説明する処理は、わずかにより多いシンボルストレージを犠牲にして、図17を参照して参照して説明した処理より少ない計算を行うことができる。後で説明するFEC符号への応用において、n−mは、しばしば、nと比較して小さく、したがって、図18を参照して説明する処理に必要なシンボルストレージの余分な量は、通常、図17を参照して参照して説明した処理によって達成されるシンボルストレージの最小限の量と比較して、少ない。
を計算する。ステップ1820で、インプレース変換Q↑Sを計算する。Qの最初のm個の列が、下三角行列Lを形成するので、ステップ1820で計算されるインプレース変換が、
と等しいSの最初のm個の要素をもたらすことに留意されたい。ステップ1830で、Sの最後のn−m個のシンボルにWをコピーする。ステップ1840で、インプレース変換が完了するので、この処理は停止する。
を計算する処理を、図19を参照して説明する。ステップ1910で、インプレース変換
を計算する。ステップ1920で、インプレース変換L’↑Sを計算する。ステップ1930で、インプレース変換
を計算し、ここで、Dは、上で説明したものであり、上で説明したように、行列F=C−B・L−1・Aは、変換の結果の最後のn−m個の行である。ステップ1940で、上で説明したように、行列FをP、Λ、およびYに因数分解する。ステップ1950で、インプレース変換
を計算する。ステップ1960で、インプレース変換
を計算する。ステップ1970で、インプレース変換
を計算する。ステップ1980で、インプレース変換
を計算する。ステップ1990で、インプレース変換が完了するので、この処理は停止する。
リードソロモン符号
消去または破損の場合に伝送を保護する、ある線形符号クラスが、リードソロモン符号として知られている。循環符号、バンデルモンド行列に基づく符号、コーシー行列に基づく符号、または類似物など、この符号を記述する複数の同等の形がある。これらの場合のすべてで、符号化処理を、行列とのシンボルのベクトルの乗算によって記述することができる。ソースシンボルの個数がkであり、出力シンボルの個数がnであり、vが符号化されるk個のシンボルの列ベクトルを表し、wがvの符号化を含むn個のシンボルの列ベクトルを表す場合に、この符号化処理を、
と記述することができ、ここで、Mは、フォーマット(n,k)の行列であり、時々符号の生成行列とも呼ばれる。M’が、Mの最初のk個の行を含むフォーマット(k,k)の行列を識別し、M”が、Mの最後のr=n−k個の行を含むフォーマット(r,k)の行列を識別するものとする。w’が、wの最初のk個のシンボルを識別し、w”が、wの最後のr個のシンボルを識別するものとする。
として計算する。ステップ2020で、M’をP、L、およびUに因数分解し、ここで、これらの行列のそれぞれは、フォーマット(k,k)を有し、Pは、順列行列であり、Lは、下三角行列であり、Uは、上三角行列であり、したがってM’=P・L・Uである。そのような分解は、さまざまな手法を用いて、たとえばガウス消去アルゴリズムを使用して計算することができ、あるいは、行列M’がコーシー行列である時には、このPLU分解を、ある公式を用いて計算することができ、これによって、この計算の計算の複雑さが減る。ステップ2030で、インプレース変換U↓w’を計算する。ステップ2040で、インプレース変換L↑w’を計算する。ステップ2050で、インプレース変換
を計算する。ステップ2060で、インプレース変換が完了するので、この処理は停止する。符号シンボルが任意のシステム内で送られる順序が、それらの符号シンボルが記憶される順序である必要はなく、したがって、最後のステップ2060を実際に実行する必要がない場合があることに留意されたい。
を計算するインプレース変換を使用して冗長シンボルを生成することができる。r<kの場合には、本明細書で図21を参照して説明する処理を使用して、多くともk+1個のシンボルのストレージを使用するインプレース変換を使用して冗長シンボルを生成することができる。vが、w’の最初のr個のシンボルを識別し、v’が、w’の最後のk−r個のシンボルを識別するものとする。当初に、w’は、符号化されるk個のソースシンボルを記憶する。この処理の終りに、w’の最初のr個の要素すなわちvは、符号化のr個の冗長シンボルを記憶する。Bが、M”の最初のr個の列と同一である、フォーマット(r,r)の行列であり、B’が、M”の最後のk−r個の列と同一である、フォーマット(r,k−r)の行列であるものとする。図21のステップ2110で、BをP、L、およびUに因数分解し、ここで、これらの行列のそれぞれは、フォーマット(k,k)を有し、Pは、順列行列であり、Lは、下三角行列であり、Uは、上三角行列であり、したがって、B=P・L・Uである。そのような分解は、さまざまな手法を用いて、たとえばガウス消去アルゴリズムを使用して計算することができ、あるいは、行列Bがコーシー行列である時には、このPLU分解を、ある公式を用いて計算することができ、これによって、この計算の計算の複雑さが減る。ステップ2120で、インプレース変換U↓vを計算する。ステップ2130で、インプレース変換L↑vを計算する。ステップ2140で、インプレース変換
を計算する。ステップ2150で、上の”線形演算子”という題名のセクションで説明した”単純変換処理”などの単純な行列乗算の小さい変形形態を使用して、vを
に更新する。ステップ2160で、インプレース変換が完了するので、この処理は停止する。
によって定義される場合に、wの十分に多数の要素の知識から、オリジナルのソースシンボルのベクトルvを判定するという問題である。リードソロモン符号の場合に、”十分に多数のシンボル”は、アプリケーションならびに復号化に使用可能な計算リソースおよびストレージリソースに依存して、k個もの少数のシンボルまたはk個を超えるシンボルと解釈される場合がある。
を計算する。ステップ2340では、リードソロモン符号のインプレース復号化が完了するので、この処理は停止する。
一般に、これは、組織的符号であり、kは、ソースシンボルの個数であり、rは、冗長シンボルの個数であり、したがって、n=k+rが、この符号化のシンボルの総数である。この場合に、r個の冗長シンボルの列ベクトルzは、k個のソースシンボルの列ベクトルvから、次のように構成される。フォーマット(r,k)の行列Aを選択し、疎な上三角行列または疎な下三角行列である、フォーマット(r,r)のもう1つの行列Uを選択する。この例の説明について、Uは、上三角行列として任意に選択される。すると、
である。
を計算する。ステップ2450で、上の”線形演算子”という題名のセクションで説明した”単純変換処理”などの単純な行列乗算の小さい変形形態を使用して、インプレース変換
を計算する。ステップ2460で、インプレース変換
を計算する。ステップ2470で計算が停止し、結果のr個の冗長シンボルは、vの最初のr個のシンボルすなわちv’に記憶されている。
を計算することができる。たとえば、Aが、各行内の3つの1および各列内の3つの1を有するように選択された正方行列である、すなわち、r=kの場合に、Aを図11に示された形にすることが可能であり、ここで、部分行列Lは、約(0.86k,0.86k)のフォーマットを有し、部分行列Cは、約(0.14k,0.14k)のフォーマットを有する。この場合に、図17を参照して説明したインプレース変換処理を使用することができ、これによって、処理中に記憶に使用されるシンボルの個数が最小化される。もう1つの変形形態として、図18を参照して説明したインプレース変換処理を使用して、
を計算することができ、これによって、3・k回すなわち、単純な形で
を計算するのに使用されるはずのシンボル演算と同一の回数のシンボル演算が使用されるが、1.14・k個のシンボルのストレージだけが使用される。
連鎖符号が、米国特許第6307487号、名称”Information Additive Code Generator and Decoder for Communications Systems”および米国特許出願第10/032,156号、名称”Multi-Stage Code Generator and Decoder for Communications Systems”に記載されている。たとえば”Inactivation Decoder”で開示された復号化器など、複数の復号化器が、そのような符号用に設計されてきた。”Inactivation Decoder”で開示された復号化器では、復号化処理が、
の形の線形連立方程式を解くことに変形され、ここで、Tは、ランクnのフォーマット(s,n)の行列であり、sは少なくともnであり、nは中間シンボルの個数であり、kはソースシンボルの個数であり、rは冗長シンボルの個数であり、したがって、n=k+rである。冗長シンボルの個数rが、連鎖符号のいくつかの実施形態について0であり、他の実施形態について、冗長シンボルの個数rが0より大きいことに留意されたい。Tの行は、動的な出力シンボルおよび冗長(プレコーディング(pre-coding))シンボルに対応し、xは、ソースシンボルおよび冗長(プレコーディング)シンボルを含む、それについて解く必要がある当初に未知の値を有するn個のシンボルのベクトルであり、zは、受信されたシンボルおよびプレコード(pre-code)のチェックシンボルを含む既知の値を有するs個のシンボルのベクトルである。いくつかのアプリケーションでは、チェックシンボルが0の値を有するが、他のアプリケーションでは、この値が0と異なる場合がある。チェックシンボル値がどのようにセットされるかにかかわりなく、チェックシンボル値は、符号化器と復号化器との間の以前の通信を介してまたは他のステップによってのいずれかで復号化器に知られる。
を計算し、(b)好ましくは、結果yがzの最初のn個の要素に記憶されるようにするためにインプレースで、未知のベクトルyについて、連立方程式
を解き、(c)好ましくは、結果xがzの最初のn個の要素に記憶されるようにするためにインプレースで、連立方程式
を解くことという問題に変形することができる。これらのステップは、互いと同時に実行することができる。作業(a)および(c)は、上で本明細書の前の技術のセクションで説明され、たとえば、図8を参照して説明した処理が、インプレース変換を使用して作業(a)および(c)を実行する1つの形である。
を解く処理の実施形態を、これから図11、図12、図13A、図13B、図14、図15、図16、および図19を参照して提供し、ここで、Sは、この処理の始めにzに記憶されたs個のシンボルのベクトルを識別し、Sの最初のn個のシンボルは、この処理の終りにベクトルyと等しい。図19を参照して説明した処理と現在の処理との間の1つの相違は、Mが、図11に示されたn個の行ではなくs個の行を有することである。したがって、現在の実施形態の第1ステップは、一緒にランクnの行列を形成する、Mのn個の行を判定し、次に、フォーマット(n,n)の結果のフルランク正方行列になるようにMを再定義することである。現在の実施形態の残りのステップは、図11、図12、図13A、図13B、図14、図15、および図16を参照して、前に図19を参照して説明した処理を実行することである。
Shokrollahi他が出願した米国特許出願第10/677,624号、名称”Systematic Encoding and Decoding of Chain Reaction Codes”(以下では”ShokrollahiI”)に、連鎖符号、具体的にはマルチステージ連鎖符号の組織的符号化の方法が記載されている。この方法では、ソースシンボルが、まず、線形変換を使用して中間シンボルの組に変換される。この変換は、
という形を有し、ここで、Tは、ソースシンボルおよび冗長(プレコーディング)シンボルに対応する行を有する、フォーマット(n,n)のフルランク行列であり、xは、それについて解かなければならない当初に未知の値を有する中間シンボルのベクトルであり、zは、ソースシンボルおよびプレコードのチェックシンボルに対応する既知の値を有するシンボルのベクトルである。
Shokrollahi Iに記載の方法は、一連のステップを実行して、ソースシンボルの一部および組織的符号化器によって生成された一部の出力シンボルの組合せから、すべてのソースシンボルを入手する。この方法の好ましい実施形態では、ソースシンボルの一部を含むすべての受信されたシンボルおよび他の出力シンボルを集め、復号化して、中間シンボルの組を入手する。次に、中間シンボルを変換して、欠けているソースシンボルを入手する。受信されたシンボルからの中間シンボルのインプレース計算は、上で見出し”連鎖符号のインプレース復号化”の下で説明したものと同一である。このセクションでは、中間シンボルからのソースシンボルのインプレース計算を説明する。ShokrollahiIから明白であるとおり、また、上で説明した事例に似て、この問題は、
を計算するという問題に変形することができ、ここで、Tは、フルランクであるフォーマット(n,n)の行列であり、Sは、n個の中間シンボルの列ベクトルである。行列Tは、
T=P・M・Q
と表すことができ、ここで、PおよびQは、フォーマット(n,n)の順列行列であり、Mは、図11に示された形のフォーマット(n,n)の行列である。
以下、本願の先の補正時(PCT19条に基づく補正時)の請求項を付記する。
(1)複数のソースシンボルとして整列されたデータを複数の符号化シンボルに符号化する符号化器において、ソースシンボルから符号化シンボルへの変換を実行する方法であって、ここで、k個のソースシンボルはn個の符号化シンボルに変換され、該方法は、
第1のメモリに格納された前記k個のソースシンボルにアクセスするステップと、
出力シンボルの中間セットを提供するため、前記k個のソースシンボルの行列演算を計算する第1の変換段階を実行するステップであって、少なくとも前記中間セットのいくつかは前記n個の符号化シンボルのいくつかを含む、ステップと、
出力シンボルの前記中間セットを前記第1のメモリに格納し、前記k個のソースシンボルの少なくともいくつかを置換するステップであって、前記中間セット内の出力シンボルの個数は前記nより少ない、ステップと、
前記第1のメモリが少なくとも前記n個の符号化シンボルと前記k個の全てよりは少ないソースシンボルとを含むようになるまで、実行する前記ステップと格納する前記ステップとを繰り返すステップと、
を含み、
前記k個のソースシンボルから生成された前記n個の符号化シンボルはエラー訂正で使用されることを特徴とする方法。
(2)変換処理において、前記第1のメモリ内のシンボルの最大数はn+1およびk+1のうち大きい方より大きくはないことを特徴とする(1)に記載の方法。
(3)変換処理において、前記第1のメモリ内のシンボルの最大数はk+nよりもn+1およびk+1のうち大きい方により近いことを特徴とする(1)に記載の方法。
(4)nはkと等しくないことを特徴とする(1)に記載の方法。
(5)nはkと等しいことを特徴とする(1)に記載の方法。
(6)前記変換は、リードソロモン符号を表すことを特徴とする(1)に記載の方法。
(7)前記変換は、GRA符号を表すことを特徴とする(1)に記載の方法。
(8)前記変換は、連鎖反応符号を表すことを特徴とする(1)に記載の方法。
(9)前記変換は、LDPC符号を表すことを特徴とする(1)に記載の方法。
(10)前記変換に使用されるシンボル演算の数は、前記行列の非ゼロ要素の個数にほぼ比例することを特徴とする(1)に記載の方法。
(11)前記変換に使用されるシンボル演算の数は、前記行列の逆行列の非ゼロ要素の個数にほぼ比例することを特徴とする(1)に記載の方法。
(12)前記行列は、インプレース符号化が可能な符号化行列の分解を含むことを特徴とする(1)に記載の方法。
(13)前記行列は、効率的なインプレース符号化が可能な符号を表すことを特徴とする(1)に記載の方法。
(14)複数の符号化ソースシンボルとして整列されたデータを複数の復号化シンボルに復号化する復号化器において、前記符号化シンボルから前記復号化シンボルへの変換を実行する方法であって、ここで、r個の符号化シンボルはd個の復号化シンボルに変換され、該方法は、
第1のメモリに格納された前記r個の符号化シンボルにアクセスするステップであって、該r個の符号化シンボルはk個のソースシンボルからエラー訂正での使用のために生成される、ステップと、
行列演算を計算する第1の変換段階を実行するステップであって、該演算は符号化行列の逆行列であり、出力シンボルの中間セットを提供するため前記r個の符号化シンボルに対し演算し、少なくとも前記中間セットのいくつかは前記d個の復号化シンボルのいくつかを含む、ステップと、
出力シンボルの前記中間セットを前記第1のメモリに格納し、前記r個の符号化シンボルの少なくともいくつかを置換するステップであって、前記中間セット内の出力シンボルの個数は前記dより少ない、ステップと、
前記第1のメモリが少なくとも前記d個の復号化シンボルと前記r個の全てよりは少ない符号化シンボルとを含むようになるまで、実行する前記ステップと格納する前記ステップとを繰り返すステップと、
を含むことを特徴とする方法。
(15)変換処理において、前記第1のメモリ内のシンボルの最大数はr+1およびd+1のうち大きい方より大きくはないことを特徴とする(14)に記載の方法。
(16)変換処理において、前記第1のメモリ内のシンボルの最大数はr+dよりもr+1およびd+1のうち大きい方により近いことを特徴とする(14)に記載の方法。
(17)rはdと等しくないことを特徴とする(14)に記載の方法。
(18)rはdと等しいことを特徴とする(14)に記載の方法。
(19)前記変換は、リードソロモン復号を表すことを特徴とする(14)に記載の方法。
(20)前記変換は、GRA復号を表すことを特徴とする(14)に記載の方法。
(21)前記変換は、連鎖反応復号を表すことを特徴とする(14)に記載の方法。
(22)前記変換は、LDPC復号を表すことを特徴とする(14)に記載の方法。
(23)前記変換に使用されるシンボル演算の数は、前記行列の非ゼロ要素の個数にほぼ比例することを特徴とする(14)に記載の方法。
(24)前記変換に使用されるシンボル演算の数は、前記行列の逆行列の非ゼロ要素の個数にほぼ比例することを特徴とする(14)に記載の方法。
(25)前記行列は、インプレース復号化が可能な復号化行列の分解を含むことを特徴とする(14)に記載の方法。
(26)前記行列は、効率的なインプレース復号化が可能な符号を表すことを特徴とする(14)に記載の方法。
(27)通信システムであって、複数のk個のソースシンボルとして整列されたデータは送信機において複数のn個の符号化シンボルに変換され通信チャネルを介して送信され、送信された符号化シンボルの少なくともいくつかは受信機において複数のr個の受信シンボルとして受信され、dがk以上の場合該r個の受信シンボルは前記k個のソースシンボルを表す複数のd個の復号化シンボルに変換され、該通信システムは、
前記k個のソースシンボルに必要なメモリサイズと前記n個の符号化シンボルに必要なメモリサイズとの合計が送信バッファのサイズよりも大きいようなサイズを有する送信バッファと、
前記k個のソースシンボルの符号化行列演算を計算することにより出力シンボルの中間セットを生成するための送信生成ロジックであって、少なくとも前記中間セットのいくつかは前記n個の符号化シンボルのいくつかを含む、送信生成ロジックと、
出力シンボルの前記中間セットを前記送信バッファに格納し、前記k個のソースシンボルの少なくともいくつかを置換するための送信格納ロジックであって、前記中間セット内の出力シンボルの個数は前記nより少ない、送信格納ロジックと、
前記送信生成ロジックに出力シンボルの他の中間セットを生成させ前記送信格納ロジックに出力シンボルの中間セットを格納させるためのフローロジックであって、前記送信バッファが少なくとも前記n個の符号化シンボルと前記k個の全てよりは少ないソースシンボルとを含むようになるまで前記k個のソースシンボルの付加的なシンボルを置換し、前記k個のソースシンボルから生成された前記n個の符号化シンボルはエラー訂正で使用される、フローロジックと、
前記通信チャネルを介して前記n個の符号化シンボルを送信するための送信回路と、
前記r個の受信シンボルを受信するための受信回路であって、該r個の受信シンボルは前記n個の符号化シンボルを搬送する前記通信チャネルの結果である、受信回路と、
前記r個の受信シンボルに必要なメモリサイズと前記d個の復号化シンボルに必要なメモリサイズとの合計が受信バッファのサイズよりも大きいようなサイズを有する受信バッファと、
前記r個の受信シンボルの復号化行列演算を計算することにより受信出力シンボル中間セットを生成するための受信生成ロジックであって、少なくとも前記受信出力シンボル中間セットのいくつかは前記d個の復号化シンボルのいくつかを含む、受信生成ロジックと、
前記受信出力シンボル中間セットを前記受信バッファに格納し、前記r個の受信シンボルの少なくともいくつかを置換するための受信格納ロジックであって、前記受信出力シンボル中間セット内の受信出力シンボルの個数は前記dより少ない、受信格納ロジックと、
前記受信生成ロジックに他の受信出力シンボル中間セットを生成させ前記受信格納ロジックに受信出力シンボル中間セットを格納させるためのフローロジックであって、前記受信バッファが少なくとも前記d個の復号化シンボルと前記r個の全てよりは少ない受信シンボルとを含むようになるまで前記r個の受信シンボルの付加的なシンボルを置換する、フローロジックと、
を含むことを特徴とする通信システム。
(28)前記ロジックは、プログラム可能プロセッサにより実行されるプログラムコード命令を含むことを特徴とする(27)に記載の通信システム。
(29)前記ロジックは、ハードウェア回路を含むことを特徴とする(27)に記載の通信システム。
(30)前記ロジックは、部分的にプログラム可能プロセッサにより実行されるプログラムコード命令を含み、部分的にハードウェア回路を含むことを特徴とする(27)に記載の通信システム。
(31)前記復号化行列は、少なくとも前記受信シンボルにより定義される前記符号化行列の一部の逆行列であり、前記符号化行列の一部により乗算された前記復号化行列が単位行列となることを特徴とする(27)に記載の通信システム。
(32)前記受信機は、移動電話受信機であることを特徴とする(27)に記載の通信システム。
(33)前記受信機は、自動車での使用に適したものであることを特徴とする(27)に記載の通信システム。
(34)前記送信機は、移動電話送信機であることを特徴とする(27)に記載の通信システム。
(35)前記送信機は、自動車での使用に適したものであることを特徴とする(27)に記載の通信システム。
(36)前記送信機はデジタルメディア送信機であり、前記受信機はデジタルメディア受信機であることを特徴とする(27)に記載の通信システム。
(37)前記エラー訂正は、消去訂正であることを特徴とする(1)に記載の方法。
(38)前記エラー訂正は、消去訂正であることを特徴とする(14)に記載の方法。
(39)前記エラー訂正は、消去訂正であることを特徴とする(27)に記載の通信システム。
本願は、参照によってその全体が組み込まれている2005年6月10日出願の米国仮出願第60/689,632号の利益を主張し、その非仮出願である。
Claims (25)
- 複数のソースシンボルとして整列されたデータを複数の符号化シンボルに符号化する符号化器において、ソースシンボルから符号化シンボルへの変換を実行する方法であって、ここで、k個のソースシンボルはn個の符号化シンボルに変換され、該方法は、
第1のメモリに格納された前記k個のソースシンボルにアクセスするステップと、
出力シンボルの中間セットを提供するため、前記k個のソースシンボルの行列演算を計算する第1の変換段階を実行するステップであって、少なくとも前記中間セットのいくつかは前記n個の符号化シンボルのいくつかを含み、前記行列演算はインプレース変換を含み、またk個のソースシンボルSの各列の各シンボルに対して、エンコーディングマトリックスBを乗算する演算である、ステップと、
出力シンボルの前記中間セットを前記第1のメモリに格納し、前記k個のソースシンボルの少なくともいくつかを置換するステップであって、前記中間セット内の出力シンボルの個数は前記nより少ない、ステップと、
前記第1のメモリが少なくとも前記n個の符号化シンボルと前記k個の全てよりは少ないソースシンボルとを含むようになるまで、実行する前記ステップと格納する前記ステップとを繰り返すステップと、
を含み、
前記k個のソースシンボルから生成された前記n個の符号化シンボルはエラー訂正で使用されることを特徴とする方法。 - 前記変換において、前記第1のメモリ内のシンボルの最大数はn+1およびk+1のうち大きい方より大きくはないことを特徴とする請求項1に記載の方法。
- 前記変換において、前記第1のメモリ内のシンボルの最大数はk+nよりもn+1およびk+1のうち大きい方により近いことを特徴とする請求項1に記載の方法。
- nはkと等しくないことを特徴とする請求項1に記載の方法。
- nはkと等しいことを特徴とする請求項1に記載の方法。
- 前記変換は、リードソロモン符号、GRA符号、及び連鎖反応符号の何れか1つを表す、ここで前記符号はn個の符号化シンボルである、ことを特徴とする請求項1に記載の方法。
- 前記変換に使用されるシンボル演算の数は、前記行列の非ゼロ要素の個数または前記行列の逆行列の非ゼロ要素の個数に比例する数を含むことを特徴とする請求項1に記載の方法。
- 前記行列の演算は、インプレース変換による符号化が効率的となるように、符号化行列Bの分解を行って複数の行列を用いた演算を含むことを特徴とする請求項1に記載の方法。
- 前記行列は、効率的なインプレース符号化が可能な符号を表すことを特徴とする請求項1に記載の方法。
- 前記エラー訂正は、消去訂正であることを特徴とする請求項1に記載の方法。
- 複数の符号化ソースシンボルとして整列されたデータを複数の復号化シンボルに復号化する復号化器において、前記符号化シンボルから前記復号化シンボルへの変換を実行する方法であって、ここで、r個の符号化シンボルはd個の復号化シンボルに変換され、該方法は、
第1のメモリに格納された前記r個の符号化シンボルにアクセスするステップであって、該r個の符号化シンボルはk個のソースシンボルからエラー訂正での使用のために生成される、ステップと、
行列演算を計算する第1の変換段階を実行するステップであって、該演算は符号化行列の逆行列であり、出力シンボルの中間セットを提供するため前記r個の符号化シンボルに対し演算し、少なくとも前記中間セットのいくつかは前記d個の復号化シンボルのいくつかを含む、前記行列演算はインプレース変換を含む演算である、ステップと、
出力シンボルの前記中間セットを前記第1のメモリに格納し、前記r個の符号化シンボルの少なくともいくつかを置換するステップであって、前記中間セット内の出力シンボルの個数は前記dより少ない、ステップと、
前記第1のメモリが少なくとも前記d個の復号化シンボルと前記r個の全てよりは少ない符号化シンボルとを含むようになるまで、実行する前記ステップと格納する前記ステップとを繰り返すステップと、
を含むことを特徴とする方法。 - 前記変換において、前記第1のメモリ内のシンボルの最大数はr+1およびd+1のうち大きい方より大きくはないことを特徴とする請求項11に記載の方法。
- 前記変換において、前記第1のメモリ内のシンボルの最大数はr+dよりもr+1およびd+1のうち大きい方により近いことを特徴とする請求項11に記載の方法。
- 前記変換は、リードソロモン復号、GRA復号、及び連鎖反応復号の何れか1つを表すことを特徴とする請求項11に記載の方法。
- 前記変換に使用されるシンボル演算の数は、前記行列の非ゼロ要素の個数または前記行列の逆行列の非ゼロ要素の個数に比例する数を含むことを特徴とする請求項11に記載の方法。
- 前記行列の演算は、インプレース変換による符号化が効率的となるように、符号化行列Bの分解を行って複数の行列を用いた演算を含むことを特徴とする請求項11に記載の方法。
- 前記行列は、効率的なインプレース復号化が可能な符号を表すことを特徴とする請求項11に記載の方法。
- 前記エラー訂正は、消去訂正であることを特徴とする請求項11に記載の方法。
- 通信システムであって、複数のk個のソースシンボルとして整列されたデータは送信機において複数のn個の符号化シンボルに変換され通信チャネルを介して送信され、送信された符号化シンボルの少なくともいくつかは受信機において複数のr個の受信シンボルとして受信され、dがk以上の場合該r個の受信シンボルは前記k個のソースシンボルを表す複数のd個の復号化シンボルに変換され、該通信システムは、
前記k個のソースシンボルに必要なメモリサイズと前記n個の符号化シンボルに必要なメモリサイズとの合計が送信バッファのサイズよりも大きいようなサイズを有する送信バッファと、
前記k個のソースシンボルの符号化行列演算を計算することにより出力シンボルの中間セットを生成するための送信生成ロジックであって、少なくとも前記中間セットのいくつかは前記n個の符号化シンボルのいくつかを含み、前記行列演算はインプレース変換を含み符号化用のマトリックスを使用する、送信生成ロジックと、
出力シンボルの前記中間セットを前記送信バッファに格納し、前記k個のソースシンボルの少なくともいくつかを置換するための送信格納ロジックであって、前記中間セット内の出力シンボルの個数は前記nより少ない、送信格納ロジックと、
前記送信生成ロジックに出力シンボルの他の中間セットを生成させ前記送信格納ロジックに出力シンボルの中間セットを格納させるためのフローロジックであって、前記送信バッファが少なくとも前記n個の符号化シンボルと前記k個の全てよりは少ないソースシンボルとを含むようになるまで前記k個のソースシンボルの付加的なシンボルを置換し、前記k個のソースシンボルから生成された前記n個の符号化シンボルはエラー訂正で使用される、フローロジックと、
前記通信チャネルを介して前記n個の符号化シンボルを送信するための送信回路と、
前記r個の受信シンボルを受信するための受信回路であって、該r個の受信シンボルは前記n個の符号化シンボルを搬送する前記通信チャネルの結果である、受信回路と、
前記r個の受信シンボルに必要なメモリサイズと前記d個の復号化シンボルに必要なメモリサイズとの合計が受信バッファのサイズよりも大きいようなサイズを有する受信バッファと、
前記r個の受信シンボルの復号化行列演算を計算することにより受信出力シンボル中間セットを生成するための受信生成ロジックであって、少なくとも前記受信出力シンボル中間セットのいくつかは前記d個の復号化シンボルのいくつかを含む、受信生成ロジックと、
前記受信出力シンボル中間セットを前記受信バッファに格納し、前記r個の受信シンボルの少なくともいくつかを置換するための受信格納ロジックであって、前記受信出力シンボル中間セット内の受信出力シンボルの個数は前記dより少ない、受信格納ロジックと、
前記受信生成ロジックに他の受信出力シンボル中間セットを生成させ前記受信格納ロジックに受信出力シンボル中間セットを格納させるためのフローロジックであって、前記受信バッファが少なくとも前記d個の復号化シンボルと前記r個の全てよりは少ない受信シンボルとを含むようになるまで前記r個の受信シンボルの付加的なシンボルを置換する、フローロジックと、
を含むことを特徴とする通信システム。 - 前記ロジックは、プログラム可能プロセッサにより実行されるプログラムコード命令を含むことを特徴とする請求項19に記載の通信システム。
- 前記復号化行列は、少なくとも前記受信シンボルにより定義される前記符号化行列の一部の逆行列であり、前記符号化行列の一部により乗算された前記復号化行列が単位行列となることを特徴とする請求項19に記載の通信システム。
- 前記受信機は、少なくとも移動電話受信機であるか自動車での使用に適したものであることを特徴とする請求項19に記載の通信システム。
- 前記送信機は、少なくとも移動電話送信機であるか自動車での使用に適したものであることを特徴とする請求項19に記載の通信システム。
- 前記送信機はデジタルメディア送信機であり、前記受信機はデジタルメディア受信機であることを特徴とする請求項19に記載の通信システム。
- 前記エラー訂正は、消去訂正であることを特徴とする請求項19に記載の通信システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US68963205P | 2005-06-10 | 2005-06-10 | |
US60/689,632 | 2005-06-10 | ||
PCT/US2006/022914 WO2006135878A2 (en) | 2005-06-10 | 2006-06-12 | In-place transformations with applications to encoding and decoding various classes of codes |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012155062A Division JP5524287B2 (ja) | 2005-06-10 | 2012-07-10 | さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008544610A JP2008544610A (ja) | 2008-12-04 |
JP5231218B2 true JP5231218B2 (ja) | 2013-07-10 |
Family
ID=37532889
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008516032A Expired - Fee Related JP5231218B2 (ja) | 2005-06-10 | 2006-06-12 | さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 |
JP2012155062A Expired - Fee Related JP5524287B2 (ja) | 2005-06-10 | 2012-07-10 | さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012155062A Expired - Fee Related JP5524287B2 (ja) | 2005-06-10 | 2012-07-10 | さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7644335B2 (ja) |
EP (1) | EP1894376A4 (ja) |
JP (2) | JP5231218B2 (ja) |
KR (1) | KR101270815B1 (ja) |
CN (1) | CN101243664B (ja) |
WO (1) | WO2006135878A2 (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012249305A (ja) * | 2005-06-10 | 2012-12-13 | Digital Fountain Inc | さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
US8918533B2 (en) | 2010-07-13 | 2014-12-23 | Qualcomm Incorporated | Video switching for streaming video data |
US9136878B2 (en) | 2004-05-07 | 2015-09-15 | Digital Fountain, Inc. | File download and streaming system |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
US9264069B2 (en) | 2006-05-10 | 2016-02-16 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient uses of the communications systems |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
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 |
US9628536B2 (en) | 2006-06-09 | 2017-04-18 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
US11477253B2 (en) | 2006-06-09 | 2022-10-18 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US7068729B2 (en) * | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
EP2278719B1 (en) * | 2002-06-11 | 2013-12-18 | Digital Fountain, Inc. | Decoding of chain reaction codes through inactivation |
JP4546246B2 (ja) | 2002-10-05 | 2010-09-15 | デジタル ファウンテン, インコーポレイテッド | 連鎖的暗号化反応の系統的記号化および復号化 |
CN1954501B (zh) | 2003-10-06 | 2010-06-16 | 数字方敦股份有限公司 | 通过通信信道接收从源发射的数据的方法 |
CN101686107B (zh) | 2006-02-13 | 2014-08-13 | 数字方敦股份有限公司 | 使用可变fec开销和保护周期的流送和缓冲 |
US9270414B2 (en) * | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
US9386064B2 (en) * | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US20100211690A1 (en) * | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
US8006160B2 (en) * | 2006-06-29 | 2011-08-23 | Digital Fountain, Inc. | Efficient encoding and decoding methods for representing schedules and processing forward error correction codes |
JP2010532129A (ja) * | 2007-07-02 | 2010-09-30 | テクノロジー・フロム・アイディアズ・リミテッド | パリティ検査行列の生成 |
CN100583649C (zh) * | 2007-07-23 | 2010-01-20 | 华为技术有限公司 | 矢量编/解码方法、装置及流媒体播放器 |
EP2203836A4 (en) * | 2007-09-12 | 2014-11-05 | Digital Fountain Inc | GENERATING AND COMMUNICATING SOURCE IDENTIFICATION INFORMATION TO ENABLE RELIABLE COMMUNICATIONS |
US9281847B2 (en) * | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US9288010B2 (en) * | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US9015564B2 (en) | 2009-08-19 | 2015-04-21 | Qualcomm Incorporated | Content delivery system with allocation of source data and repair data among HTTP servers |
US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
US20110096828A1 (en) * | 2009-09-22 | 2011-04-28 | Qualcomm Incorporated | Enhanced block-request streaming using scalable encoding |
KR101615384B1 (ko) * | 2010-04-05 | 2016-04-25 | 삼성전자주식회사 | 통신 시스템에서의 채널 부호화 장치 및 방법 |
US9225961B2 (en) | 2010-05-13 | 2015-12-29 | Qualcomm Incorporated | Frame packing for asymmetric stereo video |
US9485546B2 (en) | 2010-06-29 | 2016-11-01 | Qualcomm Incorporated | Signaling video samples for trick mode video representations |
US9185439B2 (en) | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
JP5795446B2 (ja) | 2011-11-01 | 2015-10-14 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | Httpサーバの間でのソースデータおよび修復データの割り当てを伴うコンテンツ配送システム |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
KR101983032B1 (ko) * | 2012-05-07 | 2019-05-30 | 삼성전자주식회사 | 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법 |
US10148285B1 (en) | 2012-07-25 | 2018-12-04 | Erich Schmitt | Abstraction and de-abstraction of a digital data stream |
CN109089122B (zh) | 2013-01-18 | 2022-08-05 | 弗劳恩霍夫应用研究促进协会 | 一种前向纠错数据生成器和前向纠错解码器 |
JP6243641B2 (ja) * | 2013-07-02 | 2017-12-06 | 三菱電線工業株式会社 | ガラス構造体の製造方法 |
TWI523465B (zh) * | 2013-12-24 | 2016-02-21 | 財團法人工業技術研究院 | 檔案傳輸系統和方法 |
KR102093206B1 (ko) * | 2014-01-09 | 2020-03-26 | 삼성전자주식회사 | 데이터 인코딩 방법 및 전자장치 |
US10795858B1 (en) | 2014-02-18 | 2020-10-06 | Erich Schmitt | Universal abstraction and de-abstraction of a digital data stream |
JP6164359B2 (ja) * | 2014-03-11 | 2017-07-19 | 富士通株式会社 | 設計支援方法、設計支援プログラム、および設計支援装置 |
US10283091B2 (en) * | 2014-10-13 | 2019-05-07 | Microsoft Technology Licensing, Llc | Buffer optimization |
JP5918884B1 (ja) * | 2015-05-12 | 2016-05-18 | 日本電信電話株式会社 | 復号装置、復号方法、およびプログラム |
US11037330B2 (en) * | 2017-04-08 | 2021-06-15 | Intel Corporation | Low rank matrix compression |
EP3735746A1 (en) | 2018-01-23 | 2020-11-11 | Huawei Technologies Co., Ltd. | Channel code construction for decoder reuse |
US10691772B2 (en) * | 2018-04-20 | 2020-06-23 | Advanced Micro Devices, Inc. | High-performance sparse triangular solve on graphics processing units |
US10866809B2 (en) * | 2018-07-05 | 2020-12-15 | Qualcomm Incorporated | Method, apparatus, and system for acceleration of inversion of injective operations |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4316297C1 (de) * | 1993-05-14 | 1994-04-07 | Fraunhofer Ges Forschung | Frequenzanalyseverfahren |
US5517508A (en) * | 1994-01-26 | 1996-05-14 | Sony Corporation | Method and apparatus for detection and error correction of packetized digital data |
US5754563A (en) * | 1995-09-11 | 1998-05-19 | Ecc Technologies, Inc. | Byte-parallel system for implementing reed-solomon error-correcting codes |
AUPP366598A0 (en) * | 1998-05-22 | 1998-06-18 | Canon Kabushiki Kaisha | Deriving polygonal boundaries from quadtree representation |
US6466698B1 (en) | 1999-03-25 | 2002-10-15 | The United States Of America As Represented By The Secretary Of The Navy | Efficient embedded image and video compression system using lifted wavelets |
JP3256517B2 (ja) * | 1999-04-06 | 2002-02-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 符号化回路、回路、パリティ生成方法及び記憶媒体 |
US6694476B1 (en) * | 2000-06-02 | 2004-02-17 | Vitesse Semiconductor Corporation | Reed-solomon encoder and decoder |
US6785836B2 (en) | 2001-04-11 | 2004-08-31 | Broadcom Corporation | In-place data transformation for fault-tolerant disk storage systems |
JP4546246B2 (ja) | 2002-10-05 | 2010-09-15 | デジタル ファウンテン, インコーポレイテッド | 連鎖的暗号化反応の系統的記号化および復号化 |
KR100502609B1 (ko) * | 2002-11-21 | 2005-07-20 | 한국전자통신연구원 | Ldpc 코드를 이용한 부호화기 및 부호화 방법 |
US7408486B2 (en) | 2003-04-21 | 2008-08-05 | Qbit Corporation | System and method for using a microlet-based modem |
DE60307852D1 (de) * | 2003-09-30 | 2006-10-05 | Ericsson Telefon Ab L M | In-place Entschachtelung von Daten |
US7219289B2 (en) * | 2005-03-15 | 2007-05-15 | Tandberg Data Corporation | Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same |
US7644335B2 (en) * | 2005-06-10 | 2010-01-05 | Qualcomm Incorporated | In-place transformations with applications to encoding and decoding various classes of codes |
-
2006
- 2006-06-09 US US11/423,376 patent/US7644335B2/en not_active Expired - Fee Related
- 2006-06-12 WO PCT/US2006/022914 patent/WO2006135878A2/en active Application Filing
- 2006-06-12 KR KR1020087000734A patent/KR101270815B1/ko not_active IP Right Cessation
- 2006-06-12 CN CN2006800293260A patent/CN101243664B/zh not_active Expired - Fee Related
- 2006-06-12 JP JP2008516032A patent/JP5231218B2/ja not_active Expired - Fee Related
- 2006-06-12 EP EP06772990A patent/EP1894376A4/en not_active Withdrawn
-
2012
- 2012-07-10 JP JP2012155062A patent/JP5524287B2/ja not_active Expired - Fee Related
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
US9136878B2 (en) | 2004-05-07 | 2015-09-15 | Digital Fountain, Inc. | File download and streaming system |
US9236887B2 (en) | 2004-05-07 | 2016-01-12 | Digital Fountain, Inc. | File download and streaming system |
JP2012249305A (ja) * | 2005-06-10 | 2012-12-13 | Digital Fountain Inc | さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 |
US9264069B2 (en) | 2006-05-10 | 2016-02-16 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient uses of the communications systems |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US9628536B2 (en) | 2006-06-09 | 2017-04-18 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
US11477253B2 (en) | 2006-06-09 | 2022-10-18 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
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 |
US8918533B2 (en) | 2010-07-13 | 2014-12-23 | Qualcomm Incorporated | Video switching for streaming video data |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
US9456015B2 (en) | 2010-08-10 | 2016-09-27 | Qualcomm Incorporated | Representation groups for network streaming of coded multimedia data |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
Also Published As
Publication number | Publication date |
---|---|
EP1894376A2 (en) | 2008-03-05 |
KR20080040669A (ko) | 2008-05-08 |
JP5524287B2 (ja) | 2014-06-18 |
US7644335B2 (en) | 2010-01-05 |
CN101243664A (zh) | 2008-08-13 |
KR101270815B1 (ko) | 2013-06-05 |
US20060280254A1 (en) | 2006-12-14 |
CN101243664B (zh) | 2013-06-05 |
WO2006135878A2 (en) | 2006-12-21 |
JP2008544610A (ja) | 2008-12-04 |
WO2006135878A3 (en) | 2007-03-29 |
EP1894376A4 (en) | 2011-11-16 |
WO2006135878B1 (en) | 2007-05-24 |
JP2012249305A (ja) | 2012-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5231218B2 (ja) | さまざまな符号クラスの符号化および復号化への応用を有するインプレース変換 | |
KR100502609B1 (ko) | Ldpc 코드를 이용한 부호화기 및 부호화 방법 | |
JP5329239B2 (ja) | 通信システムのための多体ベース符号の生成器および復号化器 | |
US7472334B1 (en) | Efficient method for the reconstruction of digital information | |
US8533555B2 (en) | Efficient encoding and decoding methods for representing schedules and processing forward error correction codes | |
KR101041762B1 (ko) | 통신 채널을 통해 소스로부터 목적지로 데이터를 송신 및 인코딩하는 방법 | |
CN101459430B (zh) | 低密度生成矩阵码的编码方法及装置 | |
US9287897B2 (en) | Systematic rate-independent Reed-Solomon erasure codes | |
US20070162821A1 (en) | Parity check matrix, method of generating parity check matrix, encoding method and error correction apparatus | |
JP2012151839A (ja) | ユークリッド空間リード−マラー符号の軟判定復号を実行する方法 | |
US8843810B2 (en) | Method and apparatus for performing a CRC check | |
JP2002509680A (ja) | 積符号の反復復号化 | |
KR101298745B1 (ko) | 데이터를 복호화 및 부호화하는 방법 및 장치 | |
EP3713096B1 (en) | Method and device for decoding staircase code, and storage medium | |
JP2019525638A (ja) | 2のべき乗でない長さに拡張されたポーラ符号の符号化および復号化 | |
CN110808739A (zh) | 一种信源符号概率分布未知的二元编码方法及装置 | |
CN112889221A (zh) | 用于非二进制码的消息传递解码的校验节点处理单元中的偏移值确定 | |
CN100417031C (zh) | 宽带无线接入系统中里德索洛门卷积级联码的实现方法 | |
KR20080052039A (ko) | 순환 중복 검사에 의한 정정 에러를 검사하는 방법 및 그장치 | |
Botos et al. | Study of the decoding complexity for rateless erasure codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090601 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20090713 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090727 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120110 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120410 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120417 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120510 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120517 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120611 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120618 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120710 |
|
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: 20130219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130321 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160329 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5231218 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 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 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |