JP7110191B2 - Information processing device and method - Google Patents
Information processing device and method Download PDFInfo
- Publication number
- JP7110191B2 JP7110191B2 JP2019526766A JP2019526766A JP7110191B2 JP 7110191 B2 JP7110191 B2 JP 7110191B2 JP 2019526766 A JP2019526766 A JP 2019526766A JP 2019526766 A JP2019526766 A JP 2019526766A JP 7110191 B2 JP7110191 B2 JP 7110191B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- decoding
- unit
- storage unit
- calculation
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 38
- 238000000034 method Methods 0.000 title description 54
- 239000000872 buffer Substances 0.000 claims description 142
- 238000004364 calculation method Methods 0.000 claims description 131
- 239000011159 matrix material Substances 0.000 claims description 58
- 238000003672 processing method Methods 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 description 66
- 238000012545 processing Methods 0.000 description 60
- 230000008569 process Effects 0.000 description 29
- 238000012937 correction Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 23
- 238000005516 engineering process Methods 0.000 description 23
- 230000015654 memory Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 230000006866 deterioration Effects 0.000 description 3
- 230000020169 heat generation Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 101000951145 Homo sapiens Succinate dehydrogenase [ubiquinone] cytochrome b small subunit, mitochondrial Proteins 0.000 description 1
- 102100038014 Succinate dehydrogenase [ubiquinone] cytochrome b small subunit, mitochondrial Human genes 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- 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/19—Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Description
本開示は、情報処理装置及び方法に関し、特に、回路規模の増大を抑制することができるようにした情報処理装置及び方法に関する。 TECHNICAL FIELD The present disclosure relates to an information processing apparatus and method, and more particularly to an information processing apparatus and method capable of suppressing an increase in circuit size.
従来、地上波デジタル放送において制御信号伝送の誤り訂正方式として差集合巡回符号が用いられ、その差集合巡回符号の復号方法として、BP(Belief Propagation)復号が用いられていた。BP復号は、多数決復号やAPP(A Posterior Probability)軟判定復号等の他の復号方法に比べて誤り訂正能力が高い。 Conventionally, in terrestrial digital broadcasting, a difference cyclic code has been used as an error correction method for control signal transmission, and BP (Belief Propagation) decoding has been used as a decoding method for the difference cyclic code. BP decoding has higher error correction capability than other decoding methods such as majority decoding and APP (A Posterior Probability) soft decision decoding.
しかしながら、BP復号の場合、復号に用いる中間情報を保持する記憶素子に対するアクセスが複雑になるため、記憶素子への配線数が増大する等、回路規模が増大するおそれがあった。 However, in the case of BP decoding, since access to memory elements that hold intermediate information used for decoding becomes complicated, there is a risk of an increase in circuit size, such as an increase in the number of wirings to the memory elements.
本開示は、このような状況に鑑みてなされたものであり、誤り訂正に関する復号の回路規模の増大を抑制することができるようにするものである。 The present disclosure has been made in view of such circumstances, and is intended to suppress an increase in the circuit scale of decoding related to error correction.
本技術の一側面の情報処理装置は、復号に用いる複数の情報を互いに異なる領域に記憶し、前記復号の検査行列の列方向のシフトに対応するように、前記情報を記憶する領域を前記復号に関する演算に応じてシフトさせる記憶部と、前記記憶部の所定の領域より前記情報を読み出し、前記復号に関する演算により更新された前記情報を、前記検査行列の行方向のシフトに対応するように並べ替え、前記記憶部の所定の領域に書き込む更新部と、前記更新部により前記記憶部より読み出された前記情報を用いて前記復号に関する演算を行い、前記情報を更新する演算部とを備える情報処理装置である。 An information processing device according to one aspect of the present technology stores a plurality of pieces of information used for decoding in different regions, and shifts the region for storing the information to correspond to the shift in the column direction of the parity check matrix for the decoding. a storage unit that shifts according to the computation of the parity check matrix, reading the information from a predetermined area of the storage unit, and arranging the information updated by the computation related to the decoding so as to correspond to the shift in the row direction of the parity check matrix and an update unit that writes data to a predetermined area of the storage unit instead, and an operation unit that performs operations related to the decoding using the information read from the storage unit by the update unit, and updates the information. processing equipment.
本技術の一側面の情報処理方法は、復号に用いる複数の情報を記憶部の互いに異なる領域に記憶し、前記復号の検査行列の列方向のシフトに対応するように、前記情報を記憶する領域を前記復号に関する演算に応じてシフトさせ、前記記憶部の所定の領域より前記情報を読み出し、前記記憶部より読み出された前記情報を用いて前記復号に関する演算を行い、前記情報を更新し、更新された前記情報を、前記検査行列の行方向のシフトに対応するように並べ替え、前記記憶部の所定の領域に書き込む情報処理方法である。 An information processing method according to one aspect of the present technology stores a plurality of pieces of information used for decoding in different regions of a storage unit, and stores the information in regions corresponding to the shift in the column direction of the parity check matrix for the decoding. is shifted in accordance with the computation related to the decoding, the information is read from a predetermined area of the storage unit, the computation related to the decoding is performed using the information read from the storage unit, and the information is updated; In the information processing method, the updated information is rearranged so as to correspond to the shift in the row direction of the parity check matrix, and the information is written in a predetermined area of the storage unit.
本技術の一側面の情報処理装置および方法においては、復号に用いる複数の情報が記憶部の互いに異なる領域に記憶され、その復号の検査行列の列方向のシフトに対応するように、その情報を記憶する領域が復号に関する演算に応じてシフトされ、その記憶部の所定の領域より情報が読み出され、その記憶部より読み出された情報を用いて復号に関する演算が行われてその情報が更新され、その更新された情報が、検査行列の行方向のシフトに対応するように並べ替えられ、記憶部の所定の領域に書き込まれる。 In the information processing device and method of one aspect of the present technology, a plurality of pieces of information used for decoding are stored in mutually different regions of the storage unit, and the pieces of information are stored so as to correspond to the shift in the column direction of the parity check matrix for the decoding. The area to be stored is shifted in accordance with the computation related to decoding, the information is read from a predetermined area of the storage section, and the information read out from the storage section is used to perform the computation related to decoding and update the information. The updated information is rearranged so as to correspond to the shift in the row direction of the parity check matrix, and written in a predetermined area of the storage unit.
本開示によれば、情報を処理することができる。特に、誤り訂正に関する復号の回路規模の増大を抑制することができる。 According to the present disclosure, information can be processed. In particular, it is possible to suppress an increase in circuit scale for decoding related to error correction.
以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.巡回符号の復号方法
2.第1の実施の形態(BP復号装置)
3.第2の実施の形態(Shuffled BP)
4.第3の実施の形態(チェックノード演算)
5.第4の実施の形態(受信装置)
6.第5の実施の形態(テレビジョン装置)
7.その他Hereinafter, a form for carrying out the present disclosure (hereinafter referred to as an embodiment) will be described. The description will be given in the following order.
1. Decoding method of cyclic code2. First embodiment (BP decoding device)
3. Second Embodiment (Shuffled BP)
4. Third Embodiment (Check Node Operation)
5. Fourth embodiment (receiving device)
6. Fifth Embodiment (Television Device)
7. others
<1.巡回符号の復号方法>
<復号方法例>
従来、地上波デジタル放送において制御信号伝送の誤り訂正方式として差集合巡回符号が用いられている。<1. Decoding Method of Cyclic Code>
<Decryption method example>
Conventionally, a difference-set cyclic code is used as an error correction method for control signal transmission in digital terrestrial broadcasting.
正整数Jに対してJ(J-1)以下のJ個の非負整数の集合で、その任意の二つの元のn=J(J-1)+1を法とする順序づけられた差がすべて異なるものを、nを法とする位数Jの単純完全差集合と称する。{d1,d2,…,dJ}をnを法とする位数Jの単純完全差集合であるとすると、D(x) = x^{d1} + x^{d2} + … + x^{dJ}を符号多項式として持つ、符号語数が最小の2元巡回符号をCDとする。このCDの双対符号を差集合巡回符号と称する。In the set of J non-negative integers less than or equal to J(J-1) for a positive integer J, all the ordered differences modulo n=J(J-1)+1 of any two elements Different ones are called simple complete difference sets of order J modulo n. Let {d1,d2,...,dJ} be the simple complete difference set of order J modulo n, then D(x) = x^{d1} + x^{d2} + … + x^{ dJ} as a code polynomial, and the binary cyclic code with the minimum number of codewords is assumed to be C D . This C D dual code is called a difference set cyclic code.
これまで、このような差集合巡回符号の復号方法と装置化について様々な検討が行われた。例えば、硬判定復号方式として、多数決復号、可変しきい値復号、Bit-Flipping復号等が検討された。また、軟判定復号方式として、APP(A Posterior Probability)軟判定復号、可変しきい値軟判定復号、BP(Belief Propagation)復号等が検討された。 Various studies have been made on decoding methods and apparatus for such difference-set cyclic codes. For example, majority decoding, variable threshold decoding, bit-flipping decoding, etc. have been studied as hard-decision decoding methods. As soft-decision decoding methods, APP (A Posterior Probability) soft-decision decoding, variable threshold soft-decision decoding, BP (Belief Propagation) decoding, etc. have been studied.
以下に、従来の復号方式の例を説明する。なお、差集合巡回符号は符号長N=7、情報長k=3の場合について説明する。この場合の完全単純差集合は{0,1,3},J=3ある。 An example of a conventional decoding scheme will be described below. Note that the difference set cyclic code will be described with a code length N=7 and an information length k=3. The complete simple difference set in this case is {0,1,3} and J=3.
<多数決復号>
図1は多数決復号回路の主な構成例を示す図である。図1のAに示されるように、多数決復号を行う多数決復号回路10は、遅延素子11-1乃至遅延素子11-7、演算部12-1乃至演算部12-3、多数決判定部13、並びに、演算部14を有する。<Majority decoding>
FIG. 1 is a diagram showing a main configuration example of a majority decoding circuit. As shown in FIG. 1A, the
遅延素子11-1乃至遅延素子11-7は、それぞれ、信号を所定期間保持し、入力タイミングに対して出力タイミングを遅延させる。各遅延素子上のqi(i = 0~6)は、その遅延素子に保持される信号を示す。多数決復号は硬判定復号であるので、この信号qiは、1ビット信号である。つまり、遅延素子11-1乃至遅延素子11-7は、それぞれ1ビットの遅延素子である。遅延素子11-1乃至遅延素子11-7はループ状に接続されており、信号は、遅延素子11-1乃至遅延素子11-7を巡回的にシフトする(遅延素子11-1乃至遅延素子11-7に順に保持され、遅延素子11-7の次はまた遅延素子11-1に戻り保持される)。なお、遅延素子11-7より出力された信号は、演算部14にも供給される。
Each of the delay elements 11-1 to 11-7 holds the signal for a predetermined period and delays the output timing with respect to the input timing. qi (i = 0 to 6) on each delay element indicates the signal held in that delay element. Since majority decoding is hard decision decoding, this signal qi is a 1-bit signal. That is, each of the delay elements 11-1 to 11-7 is a 1-bit delay element. The delay elements 11-1 through 11-7 are connected in a loop, and the signal is cyclically shifted through the delay elements 11-1 through 11-7 (delay elements 11-1 through 11-7). -7, and after the delay element 11-7, it is returned to the delay element 11-1 and held). The signal output from the delay element 11-7 is also supplied to the
演算部12-1乃至演算部12-3、並びに、演算部14は、図1のBに示されるように、複数入力の排他的論理和演算(EXOR)を行い、その演算結果を出力する。演算部12-1は、遅延素子11-2の出力(q1)、遅延素子11-3の出力(q2)、および遅延素子11-7の出力(q6)の排他的論理和を求め、その演算結果を多数決判定部13に供給する。演算部12-2は、遅延素子11-1の出力(q0)、遅延素子11-5の出力(q4)、および遅延素子11-7の出力(q6)の排他的論理和を求め、その演算結果を多数決判定部13に供給する。演算部12-3は、遅延素子11-4の出力(q3)、遅延素子11-6の出力(q5)、および遅延素子11-7の出力(q6)の排他的論理和を求め、その演算結果を多数決判定部13に供給する。演算部14は、遅延素子11-7の出力(q6)と多数決判定部13の出力(多数決結果)との排他的論理和を求め、その演算結果を多数決復号回路10の外部に出力する。
The arithmetic units 12-1 to 12-3 and the
多数決判定部13は、演算部12-1乃至演算部12-3の各演算結果の多数決をとり、その判定結果を演算部14に供給する。
The
このような構成の多数決復号回路10は、初期化として、受信した硬判定情報(1ビット)を各遅延素子(遅延素子11-1乃至遅延素子11-7)にセットする。次に、復号処理として、演算部12-1乃至演算部12-3は、それぞれ、信号qiの排他的論理和演算を行い、多数決判定部13は、その3つの排他的論理和演算結果(EXOR結果)の多数決を取って、当該信号を訂正するか否かを決める。次に、多数決復号回路10は、巡回シフト処理として、遅延素子11-1乃至遅延素子11-7の値を巡回的にシフトさせる。多数決復号回路10は、このような復号処理と巡回シフト処理をN回繰り返す。
The
信号に誤りが無ければ、演算部12-1乃至演算部12-3の出力が「0」となる。信号に誤りがあれば、演算部12-1乃至演算部12-3の出力が「1」となる。多数決判定部13は、演算部12-1乃至演算部12-3の出力を集計し、「1」が多い場合、信号値が誤りであると判定する。その場合、演算部14が信号の値を訂正する。
If there is no error in the signal, the outputs of the calculation units 12-1 through 12-3 are "0". If there is an error in the signal, the outputs of the calculation units 12-1 to 12-3 are "1". The
<APP軟判定復号>
図2はAPP軟判定復号回路の主な構成例を示す図である。図2のAに示されるように、APP軟判定復号を行うAPP軟判定復号回路20は、遅延素子21-1乃至遅延素子21-7、演算部22-1乃至演算部22-3、演算部23、並びに、判定部24を有する。<APP soft decision decoding>
FIG. 2 is a diagram showing a main configuration example of the APP soft-decision decoding circuit. As shown in A of FIG. 2, the APP soft-
遅延素子21-1乃至遅延素子21-7は、それぞれ、信号を所定期間保持し、入力タイミングに対して出力タイミングを遅延させる。各遅延素子上のri(i = 0~6)は、その遅延素子に保持されるs(>1)ビット以上の軟判定LLR(Log likelihood ratio)を示す。つまり、遅延素子21-1乃至遅延素子21-7は、それぞれs(>1)ビットの遅延素子である。遅延素子21-1乃至遅延素子21-7はループ状に接続されており、軟判定LLRは、遅延素子21-1乃至遅延素子21-7を巡回的にシフトする(遅延素子21-1乃至遅延素子21-7に順に保持され、遅延素子21-7の次はまた遅延素子21-1に戻り保持される)。 Each of the delay elements 21-1 to 21-7 holds the signal for a predetermined period and delays the output timing with respect to the input timing. ri (i = 0 to 6) on each delay element indicates a soft-decision LLR (log likelihood ratio) of s (>1) bits or more held in that delay element. That is, each of the delay elements 21-1 through 21-7 is an s (>1) bit delay element. The delay elements 21-1 through 21-7 are connected in a loop, and the soft-decision LLR cyclically shifts the delay elements 21-1 through 21-7 (delay element 21-1 through delay element 21-7). are held in order by the element 21-7, and after the delay element 21-7 are returned to and held by the delay element 21-1).
演算部22-1乃至演算部22-3は、それぞれ、図2のBの一番上に示されるような演算(LLR演算)を行い、その演算結果を出力する。演算部22-1は、遅延素子21-2の出力(r1)と遅延素子21-3の出力(r2)とを用いてLLR演算を行い、その演算結果を演算部23に供給する。演算部22-2は、遅延素子21-1の出力(r0)と遅延素子21-5の出力(r4)を用いてLLR演算を行い、その演算結果を演算部23に供給する。演算部22-3は、遅延素子21-4の出力(r3)と遅延素子21-6の出力(r5)とを用いてLLR演算を行い、その演算結果を演算部23に供給する。 The calculation units 22-1 to 22-3 each perform calculation (LLR calculation) as shown at the top of B in FIG. 2, and output the calculation result. The calculation section 22-1 performs LLR calculation using the output (r1) of the delay element 21-2 and the output (r2) of the delay element 21-3, and supplies the calculation result to the calculation section . The calculation section 22-2 performs LLR calculation using the output (r0) of the delay element 21-1 and the output (r4) of the delay element 21-5, and supplies the calculation result to the calculation section . The calculation section 22-3 performs LLR calculation using the output (r3) of the delay element 21-4 and the output (r5) of the delay element 21-6, and supplies the calculation result to the calculation section .
演算部23は、図2のBの上から2番目に示されるように、演算部22-1乃至演算部22-3のそれぞれの演算結果、並びに、遅延素子21-7の出力(r6)の総和を求める。演算部23は、その総和を判定部24に供給する。判定部24は、図2のBの一番下に示されるように、演算部23の演算結果(総和)に基づいて誤りを判定する。例えば、判定部24は、演算部23の演算結果(総和)が正の場合誤りがないと判定し、その演算結果が0以下の場合、誤りがあると判定する。判定部24は、そのような判定結果をAPP軟判定復号回路20の外部に出力する。
The
このような構成のAPP軟判定復号回路20は、初期化として、受信した軟判定情報(sビット)を各遅延素子(遅延素子21-1乃至遅延素子21-7)にセットする。次に、復号処理として、演算部22-1乃至演算部22-3は、それぞれ、軟判定情報riを用いてLLR演算を行い、演算部23は、それらの演算結果と、遅延素子21-7の出力(r6)との総和を算出し、判定部24は、その総和に基づいて誤りがあるか否かを判定する。次に、APP軟判定復号回路20は、巡回シフト処理として、遅延素子21-1乃至遅延素子21-7の値を巡回的にシフトさせる。APP軟判定復号回路20は、このような復号処理と巡回シフト処理をN回繰り返す。
The APP soft-
なお、ループ構成として、遅延素子21-7の出力(r6)の代わりに、演算部23の出力(λ)を遅延素子21-1に供給するようにしてもよい。
As a loop configuration, instead of the output (r6) of the delay element 21-7, the output (λ) of the
<BP復号>
図3はBP復号装置の主な構成例を示す図である。図3に示されるように、BP復号を行うBP復号回路30は、アドレス生成部(アドレス生成器)31、制御部(コントローラ)32、演算部(variable & check node演算器)33、およびRAM(Random Access Memory)34を有する。<BP decryption>
FIG. 3 is a diagram showing a main configuration example of the BP decoding device. As shown in FIG. 3, a
演算部33は、検査行列の全行に対するチェックノード(check node)演算と、全列に対するバリアブルノード(variable node)演算を複数回繰り返す。チェックノード演算を行う場合、演算部33は、受信情報riと中間情報vi,iについて、検査行列各行の非0要素(非ゼロ係数)の位置にあたる情報をRAM34より読み出し、読み出した情報を用いて演算を行う。また、バリアブルノード演算を行う場合、演算部33は、中間情報ui,iについて、検査行列各列の非0要素(非ゼロ係数)の位置にあたる情報をRAM34より読み出し、読み出した情報を用いて演算を行う。
The
つまり、検査行列の非ゼロ係数の位置によって情報(受信情報や中間情報)の読み出し位置が変化するので、これらの情報の保持はRAM34が用いられる。アドレス生成部31は、このような検査行列の非ゼロ係数の位置に応じて、情報の読み出しアドレスの設定を行う。制御部32は、そのアドレス情報に基づいて、RAM34の読み出しの制御を行う。図3に示されるように、RAM34内部には、複数のメモリセル(Memory Cells)が設けられており、受信情報や中間情報が、各メモリセルに格納される。制御部32は、各メモリセルの情報の読み出しや書き込みを制御することにより、演算部33がどのメモリセルから情報を読み出すかを制御したり、演算部33がどのメモリセルに情報を書き込むかを制御したりする。
That is, the read position of information (received information and intermediate information) changes depending on the position of the non-zero coefficients in the parity check matrix, so the
このBP復号のアルゴリズムの例を図4のAに示す。演算部33は、検査行列の行毎に図4のAに示されるようなチェックノード演算を行い、検査行列の列毎に図4のAに示されるようなバリアブルノード演算を行う。検査行列は図4のBに示されるように値が0または1の要素(係数)により構成されており、演算部33は、この検査行列の非ゼロ係数(値が1の係数)の位置に対応する情報を用いてこれらの演算を行う。
An example of this BP decoding algorithm is shown in A of FIG. The
<BP復号の特徴>
このようなBP復号は、軟判定復号であり、LDPC(Low Density Parity Check)符号の復号にも使用される等、誤り訂正能力は高い。しかしながら、BP復号の場合、検査行列における非ゼロ係数の位置は列や行によって変化する為、復号に用いる情報もそれに応じて変化する。そのため、情報を保持する記憶素子に対するアクセスが複雑になる(アクセス先のバリエーションが増大する)。したがって、記憶素子への配線が増大し、配線混雑性が増して回路規模が増大するおそれがあった。例えば、図3のRead Dataに接続されたセレクタは規模が大きい。また、Write Dataはそれぞれの記憶素子に接続する必要があり配線が多く、接続先が多くなるほど出力元のデバイスのドライブ能力を高くする必要があるなど、配線の混雑性は回路規模に影響を与えるおそれがあった。<Characteristics of BP decoding>
Such BP decoding is soft-decision decoding, and has high error correction capability, such as being used for decoding LDPC (Low Density Parity Check) codes. However, in the case of BP decoding, the positions of non-zero coefficients in the parity check matrix change depending on the columns and rows, so the information used for decoding also changes accordingly. This complicates access to storage elements that hold information (increases variations in access destinations). As a result, the number of wirings to the storage elements increases, and there is a risk that wiring congestion will increase and the circuit scale will increase. For example, the selector connected to Read Data in FIG. 3 has a large scale. In addition, write data must be connected to each storage element, and there are many wires, and the more connections there are, the higher the drive capacity of the output source device, etc. Wiring congestion affects the circuit scale. I was afraid.
なお、RAM34の同時アクセス可能なアドレス数はそのRAM34の仕様に依存するが、複数同時アクセスするためには配線増加などを伴うため回路規模が増大するおそれがあった。また、RAMを使用する為、アドレス生成部31等が必要になり、回路規模が増大するおそれがあった。
The number of addresses of the
なお、RAMの代わりにレジスタを用いて情報を保持する方法も考えられるが、その場合も、演算部33が情報を読み出すアドレスは可変となるので、アドレス生成部31が必要になり、回路規模が増大するおそれがあった。また、演算部33がチェックノード演算またはバリアブルノード演算のいずれを行う場合も、1回の演算に必要な情報が複数アドレスに分散して保持されていると、アクセスに複数サイクルが必要となり復号遅延が増大するおそれがあった。
A method of holding information using a register instead of RAM is also conceivable, but even in that case, since the address from which the
<2.第1の実施の形態>
<巡回シフト記憶素子の適用>
そこで、復号に用いる複数の情報を記憶部の互いに異なる領域に記憶し、その復号の検査行列の列方向のシフトに対応するように、その情報を記憶する領域を復号に関する演算に応じてシフトさせ、その記憶部の所定の領域より情報を読み出し、その記憶部より読み出された情報を用いて復号に関する演算を行い、その情報を更新し、その更新された情報を、検査行列の行方向のシフトに対応するように並べ替え、その記憶部の所定の領域に書き込むようにする。<2. First Embodiment>
<Application of cyclic shift memory element>
Therefore, a plurality of pieces of information used for decoding are stored in different areas of the storage unit, and the area for storing the information is shifted according to the computation related to decoding so as to correspond to the shift in the column direction of the parity check matrix for the decoding. , reads information from a predetermined area of the storage unit, performs arithmetic operations related to decoding using the information read from the storage unit, updates the information, and stores the updated information in the row direction of the parity check matrix. The data are rearranged so as to correspond to the shift, and written in a predetermined area of the storage unit.
このように、演算の度に、検査行列を行列方向に巡回シフトさせることにより非ゼロ係数の位置が固定化されるので、記憶部の同じ領域から情報を読み出すようにすることができる。したがって、情報の読み出しや書き込みのための、記憶部に接続される配線数の増大等を抑制することができ、回路規模の増大を抑制することができる。 In this way, by cyclically shifting the parity check matrix in the matrix direction for each calculation, the positions of the non-zero coefficients are fixed, so that information can be read from the same area of the storage unit. Therefore, it is possible to suppress an increase in the number of wirings connected to the storage unit for reading and writing information, and it is possible to suppress an increase in circuit size.
<BP復号のアルゴリズム>
そのために、例えば、BP復号のアルゴリズムを図5のように等価変形する。つまり、1回の繰り返しの中で情報更新の順番を入れ替えるようにする。また、検査行列の列順に処理を行うようにする。さらに、各列において非0要素位置(非ゼロ係数の位置)だけチェックノード(check node)演算とバリアブルノード(variable node)演算とを行うようにする。<BP decoding algorithm>
For this purpose, for example, the BP decoding algorithm is equivalently transformed as shown in FIG. In other words, the order of information update is changed in one repetition. Also, processing is performed in the order of the columns of the parity check matrix. Furthermore, check node operation and variable node operation are performed only at non-zero element positions (non-zero coefficient positions) in each column.
より具体的には、図5に示されるように、検査行列の各列の非ゼロ係数の位置に対応する情報に対して、以下の式(1)のようなチェックノード演算と、以下の式(2)のようなバリアブルノード演算と、以下の式(3)のような情報算出が行われるようにする。 More specifically, as shown in FIG. 5, for information corresponding to the positions of non-zero coefficients in each column of the parity check matrix, a check node operation such as the following equation (1) and the following equation A variable node operation such as (2) and information calculation such as the following equation (3) are performed.
・・・(1)
・・・(2)
・・・(3) ... (1)
... (2)
... (3)
また、以上の演算が各列について行われるようにする。さらに、その後、以下の式(4)のように情報の更新が行われるようにする。 Also, the above calculation is performed for each column. Furthermore, after that, the information is updated as shown in the following formula (4).
・・・(4) ... (4)
図6に検査行列の例を示す。図6に示されるように、図5に示されるアルゴリズムのloop for number of non-zero elements (0≦I<J)は、検査行列の行方向の巡回シフトに相当し、図5に示されるアルゴリズムのloop for number of columns (0≦j記<N)は、検査行列の列方向の巡回シフトに相当する。 FIG. 6 shows an example of a parity check matrix. As shown in FIG. 6, the loop for number of non-zero elements (0≦I<J) in the algorithm shown in FIG. 5 corresponds to the cyclic shift in the row direction of the parity check matrix, and the algorithm shown in FIG. A loop for number of columns (0≦j<N) corresponds to a cyclic shift in the column direction of the parity check matrix.
<BPの演算対象位置>
図7に示されるように、差集合巡回符号の性質から、検査行列の非0要素位置に中間情報(A、B、C)を配置して巡回シフトする事でノード(node)演算(チェックノード演算やバリアブルノード演算)に必要な情報を読み出す事ができる。しかしながら、0要素位置は情報を置かないので、巡回シフト用に無駄なバッファを置くか、巡回シフトするサイクルを制御する必要がある。そのため、この方法では回路規模が増大するおそれがある。<BP calculation target position>
As shown in FIG. 7, from the nature of the difference-set cyclic code, intermediate information (A, B, C) is arranged at non-zero element positions of the parity check matrix and cyclically shifted to perform a node operation (check node). You can read the information necessary for calculations and variable node calculations). However, since no information is placed in the 0 element position, it is necessary to either put a wasteful buffer for the cyclic shift or control the cycle of the cyclic shift. Therefore, this method may increase the circuit scale.
そこで、図8の一番左に示される検査行列のように、演算対象とした列(点線で囲まれた列)に着目する。列方向の非0要素位置となる行(図8の左から2番目(中央)に示される行列の点線で囲まれた行)の情報を使ってノード(node)演算を行うので、図8の一番右に示される行列のように、行方向に非0要素位置の情報をバッファしておくだけで良い。演算対象とした列に対して、どの行が対応するかの規則性を利用すれば読み出し位置を限定する事ができる。 Therefore, attention is focused on columns (columns surrounded by dotted lines) to be operated, such as the parity check matrix shown on the leftmost side of FIG. 8 . Since the node operation is performed using the information of the row that is the non-zero element position in the column direction (the row surrounded by the dotted line in the matrix shown second from the left (middle) in FIG. 8), As in the rightmost matrix, it is only necessary to buffer information on non-zero element positions in the row direction. The reading position can be limited by using the regularity of which row corresponds to the column to be operated.
例えば、一番上の段の行列の場合、一番右の列が対象となるので、非ゼロ係数が存在する上から1行目と2行目と4行目とが対象となる。したがって、図8の一番右に示されるように、バッファからは、上から1行目の一番右の「A」、上から2行目の一番右の「B」、上から3行目の一番右の「C」が読み出される。 For example, in the case of the top row matrix, since the rightmost column is targeted, the first, second, and fourth rows from the top where nonzero coefficients are present are targeted. Therefore, as shown in the rightmost part of FIG. The rightmost "C" of the eye is read.
その次に、上から2段目のように、右から2番目の列が対象となる。したがって、非ゼロ係数が存在する上から1行目と3行目と7行目とが対象となる。つまり、図8の一番右に示されるように、バッファからは、上から1行目の右から2番目の「B」、上から3行目の一番右の「C」、上から7行目の一番右の「A」が読み出される。 Then, like the second row from the top, the second column from the right is targeted. Therefore, the 1st, 3rd, and 7th rows from the top where non-zero coefficients exist are targeted. That is, as shown in the rightmost part of FIG. The rightmost "A" in the row is read.
その次に、上から3段目のように、右から3番目の列が対象となる。したがって、非ゼロ係数が存在する上から2行目と6行目と7行目とが対象となる。つまり、図8の一番右に示されるように、バッファからは、上から2行目の右から2番目の「C」、上から6行目の一番右の「A」、上から7行目の右から2番目の「B」が読み出される。 Then, the third column from the right is targeted, such as the third row from the top. Therefore, the 2nd, 6th, and 7th rows from the top where non-zero coefficients are present are targeted. That is, as shown in the rightmost part of FIG. The second "B" from the right in the row is read.
図9を参照してより具体的に説明する。図9の一番上の段に示されるように、BP復号のバリアブルノード演算の処理対象は、検査行列の一番右の列から開始され、その次に右から2番目の列、その次に右から3番目の列、・・・といった具合に右から順に1列ずつ指定される。チェックノード演算は、そのバリアブルノード演算の処理対象列の非ゼロ係数と同じ行の非ゼロ係数に対して行われる。 A more specific description will be given with reference to FIG. As shown in the top row of FIG. 9, the processing target of the variable node operation of BP decoding starts from the rightmost column of the parity check matrix, then the second column from the right, then The third column from the right, . . . are specified one by one in order from the right. The check node operation is performed on the nonzero coefficients in the same row as the nonzero coefficients in the target column of the variable node operation.
したがって、図9の上から2番目の段(中央の段)に示されるように、ノード演算の度に、検査行列の各係数を列方向に巡回シフトする(図中矢印のように列順を入れ替える)と、バリアブルノード演算の処理対象が検査行列の一番右の列に固定化される。 Therefore, as shown in the second row from the top (middle row) in FIG. 9, each coefficient of the parity check matrix is cyclically shifted in the column direction (the column order is changed as indicated by the arrow in the figure) each time the node operation is performed. ), the processing target of the variable node operation is fixed to the rightmost column of the parity check matrix.
また、図9の一番下の段に示されるように、ノード演算の度に、検査行列の各係数を列方向だけでなく行方向にも巡回シフトする(図中矢印のように列順および行順をそれぞれ入れ替える)と、バリアブルノード演算の処理対象だけでなくチェックノード演算の処理対象の係数の位置も固定化される。つまり、バッファからノード演算に用いる情報を読み出す領域(アドレス)を固定化することができる。 Further, as shown in the bottom row of FIG. 9, each coefficient of the parity check matrix is cyclically shifted not only in the column direction but also in the row direction (as indicated by the arrows in the figure). If the row order is changed respectively), the positions of the coefficients to be processed by the check node computation as well as the variable node computations are fixed. In other words, it is possible to fix the area (address) from which the information used for the node calculation is read from the buffer.
したがって、例えば図3のRead Dataに接続されたセレクタのような大規模なセレクタを省略することができる。また、Write Dataの配線数を低減させることができる。したがって、配線混雑性の増大を抑制することができる。また、例えば、アドレス生成部を省略することができる。これらのように、回路規模の増大を抑制することができる。RAMの代わりにレジスタを用いる場合も同様である。 Therefore, a large selector such as the selector connected to Read Data in FIG. 3 can be omitted. Also, the number of wirings for Write Data can be reduced. Therefore, an increase in wiring congestion can be suppressed. Also, for example, the address generator can be omitted. As described above, an increase in circuit scale can be suppressed. The same is true when using registers instead of RAM.
<BP復号装置>
図10は、本技術を適用した情報処理装置の一実施の形態であるBP復号装置の主な構成例を示すブロック図である。図10に示されるBP復号装置200は、例えばLDPC符号等の差集合巡回符号をBP復号する。図10に示されるように、BP復号装置200は、シフトバッファ211(Shift buffers)、演算部212(variable & check node演算器)、繰り返し制御部213(繰り返し制御回路)を有する。<BP decoding device>
FIG. 10 is a block diagram showing a main configuration example of a BP decoding device, which is an embodiment of an information processing device to which the present technology is applied. The
シフトバッファ211は受信情報rを記憶する巡回シフトバッファと中間情報zi,jを記憶する巡回シフトバッファを有する。巡回シフトバッファは、情報を記憶する領域(バッファ)を巡回的にシフトさせるバッファである。
The
受信情報rを記憶する巡回シフトバッファは、例えば、ループ状に接続される複数のバッファセル(Buffer Cells)222により構成される。この巡回シフトバッファは、各バッファセル222に受信情報rを記憶することができる。また、この巡回シフトバッファは、各バッファセル222に記憶されている受信情報rを次のバッファセル222(図10の例の場合、右隣のバッファセル222)に移動させることができる。その際、図中右端のバッファセル222の出力は、図中左端のバッファセル222に供給される。つまり、この巡回シフトバッファは、このような構成のバッファセル222のループに沿って、受信情報rを巡回的にシフトさせる(受信情報rを記憶する領域を更新する)ことができる。例えば、この巡回シフトバッファは、ノード演算に対応して(例えばノード演算が行われる度に)、受信情報rを巡回的にシフトさせる。
A cyclic shift buffer that stores the received information r is composed of, for example, a plurality of
なお、図10においては、左端のバッファセルにのみ符号を付しているが、図中横方向に並ぶ全てのバッファセル(Buffer Cells)は、いずれもバッファセル222である。また、図中左端のバッファセル222の入力側には選択部221が設けられており、外部から供給された受信情報rまたは図中右端のバッファセル222から供給された受信情報rが、図中左端のバッファセル222に供給されるようになされている。
In FIG. 10, only the leftmost buffer cell is labeled, but all the buffer cells arranged horizontally in the drawing are the
中間情報zi,jを記憶する巡回シフトバッファは、例えば、ループ状に接続される複数のバッファセル(Buffer Cells)223により構成される。この巡回シフトバッファは、各バッファセル223に中間情報zi,jを記憶することができる。また、この巡回シフトバッファは、各バッファセル223に記憶されている中間情報zi,jを次のバッファセル223(図10の例の場合、右隣のバッファセル223)に移動させることができる。その際、図中右端のバッファセル223の出力は、図中左端のバッファセル223に供給される。つまり、この巡回シフトバッファは、このような構成のバッファセル223のループに沿って、中間情報zi,jを巡回的にシフトさせる(中間情報zi,jを記憶する領域を更新する)ことができる。例えば、この巡回シフトバッファは、ノード演算に対応して(例えばノード演算が行われる度に)、中間情報zi,jを巡回的にシフトさせる。
A cyclic shift buffer that stores the intermediate information zi,j is composed of, for example, a plurality of
なお、図10においては、左端のバッファセルにのみ符号を付しているが、図中横方向に並ぶ全てのバッファセル(Buffer Cells)は、いずれもバッファセル223である。また、中間情報zi,jを記憶する巡回シフトバッファが有するバッファセル223の数は、受信情報rを記憶する巡回シフトバッファのバッファセル222と同数である。
In FIG. 10, only the leftmost buffer cell is labeled, but all the buffer cells arranged in the horizontal direction in the drawing are
さらに、中間情報zi,jを記憶する巡回シフトバッファの一部のバッファセル223の出力は、演算部212を介して次のバッファセル223に接続される。例えば、この巡回シフトバッファの所定の位置のバッファセル223の出力が演算部212に供給されるように配線されている。つまり、演算部212が、この巡回シフトバッファの所定の位置のバッファセル223から中間情報zi,jを読み出すようになされている。
Furthermore, the output of some
また、例えば、演算部212において得られる演算結果(更新された中間情報zi,j)は、更新前の中間情報zi,jを読み出した所定の位置のバッファセル223の次のバッファセル223(図10の例の場合、右隣のバッファセル223)に供給されるように配線されている。演算部212を経る接続位置は符号構成により一意に決まる。
Further, for example, the calculation result (updated intermediate information zi,j) obtained by the
演算部212は、BP復号のチェックノード演算とバリアブルノード演算を実施すると共に復号結果を出力する。
The
繰り返し制御部213は、受信情報入力時の初期化と繰り返し回数の制御を行う。初期化時には中間情報zi,jの巡回シフトバッファを0にセットし、繰り返し回数の偶奇によって読み出しと書き込みのバッファ制御を行う。
The
図11は、シフトバッファ211および演算部212の主な構成例を示す図である。上述したように、シフトバッファ211は、選択部221と、複数のバッファセル222がループ状に接続された巡回シフトバッファと、複数のバッファセル223がループ状に接続された巡回シフトバッファとを有する。
FIG. 11 is a diagram showing a main configuration example of the
演算部212は、シフトバッファ211の所定のバッファセルより情報を読み出し、更新された情報を、シフトバッファ211の所定の領域に書き込む更新部としての構成と、BP復号に関するノード演算を行うノード演算部としての構成とを有する。
The
演算部212は、その更新部の構成として、選択部231-1乃至選択部231-3、バッファ232-1乃至バッファ232-3、選択部233、バッファ234-1乃至バッファ234-3、および選択部235(図中点線241より上側に示される構成)を有する。また、演算部212は、ノード演算部の構成として、チェックノード演算部236-1乃至チェックノード演算部236-3(図中点線241と点線242との間に示される構成)と、バリアブルノード演算部237(図中点線242と点線243との間に示される構成)と、情報更新部238-1乃至情報更新部238-3(図中点線243より下側に示される構成)と、判定部239とを有する。
The
なお、選択部231-1乃至選択部231-3を互いに区別して説明する必要が無い場合、選択部231と称する。また、バッファ232-1乃至バッファ232-3を互いに区別して説明する必要が無い場合、バッファ232と称する。また、バッファ234-1乃至バッファ234-3を互いに区別して説明する必要が無い場合、バッファ234と称する。また、チェックノード演算部236-1乃至チェックノード演算部236-3を互いに区別して説明する必要が無い場合、チェックノード演算部236と称する。また、情報更新部238-1乃至情報更新部238-3を互いに区別して説明する必要が無い場合、情報更新部238と称する。 Note that the selection units 231-1 to 231-3 are referred to as the selection unit 231 when there is no need to distinguish them from each other. Also, the buffers 232-1 to 232-3 are referred to as the buffer 232 when there is no need to distinguish them from each other. The buffers 234-1 through 234-3 are referred to as buffers 234 when there is no need to distinguish them from each other. The check node computing units 236-1 to 236-3 are referred to as check node computing units 236 when there is no need to distinguish them from each other. The information updating units 238-1 to 238-3 are referred to as the information updating unit 238 when there is no need to distinguish them from each other.
また、図11においては、選択部233は、図中一番右側のみ符号を付してあるが、この選択部233と図中水平方向に並ぶ選択部は全て選択部233と称する。同様に、選択部235も図中一番右側のみ符号を付してあるが、この選択部235と図中水平方向に並ぶ選択部は全て選択部235と称する。
In FIG. 11, only the
選択部231は、繰り返し制御部213から供給される制御信号「reciving data」の値に応じて、自身に対応するバッファ232の値と初期値(例えば「0」)との内のいずれか一方を選択し、選択した値を、中間情報zi,jの巡回シフトバッファの所定の位置のバッファセル223(情報が読み出されるバッファセル223の次のバッファセル223)に供給し、記憶させる。
The selection unit 231 selects either the value of the buffer 232 corresponding to itself or the initial value (for example, “0”) according to the value of the control signal “reciving data” supplied from the
バッファ232は、中間情報zi,jの巡回シフトバッファ(のバッファセル223)に書き込む中間情報zi,jを記憶する。
The buffer 232 stores the intermediate information zi,j to be written into (the
選択部233は、繰り返し制御部213から供給される制御信号「even/odd」の値に応じて、自身に対応するバッファ234の値と自身に対応する情報更新部238から供給される更新後の中間情報zi,jとの内のいずれか一方を選択し、選択した値を、自身に対応するバッファ232に供給する。
According to the value of the control signal “even/odd” supplied from the
バッファ234は、中間情報zi,jの巡回シフトバッファの所定の位置のバッファセル223の値を取得し、記憶する。また、バッファ234は、記憶している値を、自身に対応するバッファ232、自身に対応する選択部233、または、自身に対応する選択部235に供給する。
The buffer 234 acquires and stores the value of the
選択部235は、繰り返し制御部213から供給される制御信号「even/odd」の値に応じて、自身に対応するバッファ234の複数の値のいずれかを選択し、選択した値を、自身に対応するチェックノード演算部236に供給する。
The
チェックノード演算部236は、供給された中間情報zi,jを用いて、例えば以下の式(5)のようなチェックノード演算を行う。 The check node computation unit 236 uses the supplied intermediate information zi,j to perform check node computation such as the following equation (5), for example.
・・・(5) ... (5)
また、チェックノード演算部236は、算出した値をバリアブルノード演算部237と、自身に対応する情報更新部238に供給する。
Also, the check node calculation unit 236 supplies the calculated value to the variable
バリアブルノード演算部237は、供給されたチェックノード演算結果を用いて、例えば以下の式(6)のようなバリアブルノード演算を行う。
The variable
・・・(6) ... (6)
また、バリアブルノード演算部237は、算出した値を各情報更新部238と判定部239に供給する。
Also, the variable
情報更新部238は、供給されたチェックノード演算結果とバリアブルノード演算結果とを用いて、例えば以下の式(7)のような情報更新の為の演算を行う。 The information update unit 238 uses the supplied check node calculation result and variable node calculation result to perform calculation for information update, such as the following equation (7).
・・・(7) ... (7)
また、情報更新部238は、得られた演算結果(更新された中間情報zi,j)を、自身に対応する選択部233に供給する。
Also, the information updating unit 238 supplies the obtained calculation result (the updated intermediate information zi,j) to the selecting
判定部239は、供給されたバリアブルノード演算結果に基づいて誤り判定を行う。例えば、バリアブルノード演算結果が正の値の場合、誤りでないと判定し、バリアブルノード演算結果が0以下の場合、誤りであると判定する。判定部239は、その判定結果をBP復号部の外部に出力する。
The
これらの構成は、BP復号に用いられる検査行列の構成(の非ゼロ係数の位置)に対応している。つまり、図11に示される構成は一例である。シフトバッファ211および演算部212の構成は、BP復号に用いられる検査行列の構成に対応していればよく、図11の例に限定されない。例えば、図11の構成例は、図12に示される検査行列に対応している。
These configurations correspond to the configuration of the parity check matrix used for BP decoding (positions of non-zero coefficients thereof). That is, the configuration shown in FIG. 11 is an example. The configurations of
このような構成のBP復号装置200において、初期化時は受信信号rを、受信情報を記憶する巡回シフトバッファ(バッファセル222)に供給し、記憶させる。また、選択部231を制御して、中間情報zi,jを記憶する巡回シフトバッファ(バッファセル223)に値「0」を供給し、記憶させる。すなわち、中間情報zi,jを「0」にする。以上の処理をNサイクル繰り返すことにより、受信情報の記録と0初期化は完了する。
In the
BP復号では、チェックノード演算とバリアブルノード演算とにより中間情報を算出し、次の繰り返し時にその情報を使う。中間情報を保持する巡回シフトバッファは、繰り返しの偶数回と奇数回とで読み出し側と書き込み側を切り替えて使う。中間情報zi,jの列方向の巡回シフトは、Jx2個の情報を保持するN個のバッファセル223からなる巡回シフトバッファを用いる。例えば、図11の場合、中間情報を保持する巡回シフトバッファは、ループ状に接続された7個のバッファセル223により構成される。
In BP decoding, intermediate information is calculated by check node operation and variable node operation, and the information is used in the next iteration. The cyclic shift buffer that holds the intermediate information is used by switching between the read side and the write side depending on whether it is repeated even-numbered times or odd-numbered times. Cyclic shift of the intermediate information zi,j in the column direction uses a cyclic shift buffer consisting of
シフトバッファ211は、ノード演算に対応して(ノード演算の度に)、検査行列の列方向のシフトに対応するように、中間情報zi,jを巡回シフトさせる。これにより、図9を参照して上述した行列方向の巡回シフトの内、列方向の巡回シフトを実現することができる。
The
また、演算部212の更新部は、バッファ232とバッファ234とを用いて、ノード演算により更新された中間情報zi,jを、検査行列の行方向のシフトに対応するように並べ替える。これにより、図9を参照して上述した行列方向の巡回シフトの内、行方向の巡回シフトを実現することができる。
Also, the update unit of the
つまり、以上のような構成とすることにより、BP復号装置200は、差集合巡回符号の規則性を利用してデータの巡回シフトを繰り返すことによりBP復号を完了させることができる。したがって、1回の繰り返しに必要なサイクルがNサイクルであり、繰り返し回数をlmaxとするとN×lmaxサイクルで復号が完了する。
That is, with the above configuration, the
なお、演算部212によるチェックノード演算、バリアブルノード演算、情報の更新、および復号結果を得る判定等の処理は、通常のBP復号と同様に行われる。なお、図11の例においては、パリティチェック回路が省略されているが、復号結果を他の情報と同様にシフトバッファに記録すれば実現する事は容易である。
Note that processing such as check node calculation, variable node calculation, information update, and determination for obtaining a decoding result by the
また、演算部212において、更新部およびノード演算部の構成は、検査行列の列重み(列方向の非0要素数)に依存した数を有する。例えば、列重みJの場合、演算部212は、J個の更新部およびノード演算部を有する。図11の例の場合、図12に示されるように検査行列の列方向の非0要素数が3であるため、バッファ232、バッファ234、チェックノード演算部236、および情報更新部238は、それぞれ、3ずつ設けられている。
In addition, in the
なお、規模削減のため回路のリソースシェアを行う場合にはJより少なくても良い。ただし、巡回シフトバッファのシフトタイミングは演算サイクルと同期させる必要がある。 Note that it may be less than J when circuit resources are shared for scale reduction. However, the shift timing of the cyclic shift buffer must be synchronized with the operation cycle.
また、シフトバッファ211の巡回シフトバッファと演算部212の更新部との接続位置は、検査行列の列方向の非0要素位置に対応する。図11の例の場合、検査行列の一番右の列の非0要素位置が上から1番目と2番目と4番目であるため、図11中右から1番目(左から7番目)のバッファセル223と、右から2番目(左から6番目)のバッファセル223と、右から4番目(左から4番目)のバッファセルとから中間情報zi,jが読み出され、演算部212の更新部(バッファ234)に供給される。検査行列の列方向の非0要素位置が図12の例と異なる場合も、シフトバッファ211のその位置に応じた領域(バッファセル223)から中間情報zi,jが読み出されるようにすればよい。
Also, the connection position between the cyclic shift buffer of the
以上のように、中間情報を巡回シフトしてシフトバッファ211に書き戻す事により、シフトバッファ211からの中間情報の読み出し位置が毎回同じになる。なお、BP復号では自ノードを除いた情報を用いて演算を行うが、この巡回シフトにより中間情報を読み出した時の自ノードの位置が固定される。BP復号では算出した中間情報を次の繰り返しで使うため、書き込み側と読み出し側でバッファを切り替え(even/odd)て使う。
As described above, by cyclically shifting the intermediate information and writing it back to the
<BP復号処理の流れ>
次に、以上のような構成のBP復号装置200が、BP復号を行う為に実行するBP復号処理の流れの例を、図13のフローチャートを参照して説明する。<Flow of BP decoding process>
Next, an example of the flow of BP decoding processing executed by the
BP復号処理が開始されると、繰り返し制御部213は、ステップS101において、シフトバッファ211および演算部212を制御して初期化処理を行い、受信情報rを回路に入力し、中間情報を0にする。例えば、繰り返し制御部213は、受信情報rの入力を示す制御信号「receiving data」を有効にして受信情報rをシフトバッファ211に入力すると共に、中間情報zi,jとして値「0」をシフトバッファ211に入力する。符号長Nとすると、繰り返し制御部213は、この処理をNサイクルで完了する。また、繰り返し制御部213は、最大繰り返し回数を設定して、繰り返し回数カウンタのカウント値を「0」にする。
When the BP decoding process is started, in step S101, the
ステップS102において、繰り返し制御部213は、シフトバッファ211を制御して、ノード演算1回分の巡回シフトを行わせる。また、ステップS103において、繰り返し制御部213は、演算部212を制御し、1回分のノード演算を行わせる。
In step S102, the
このような巡回シフトおよびノード演算の処理は、中間情報zi,jの1ビット目乃至Nビット目のそれぞれに対して行う必要がある。したがって、繰り返し制御部213は、ステップS104において、ステップS102およびステップS103の処理をN回繰り返したか否かを判定する。繰り返し回数がN回に達していないと判定された場合、処理はステップS102に戻る。つまり、ステップS102乃至ステップS104の処理がN回繰り返される。そして、巡回シフトおよびノード演算がN回行われたと判定された場合、処理は、ステップS105に進む。
Such cyclic shift and node operation processing must be performed for each of the 1st to Nth bits of the intermediate information zi,j. Therefore, in step S104, the
ステップS105において、繰り返し制御部213は、繰り返し回数カウンタをカウントアップする。
In step S105, the
繰り返し制御部213は、以上の処理を(lmax-1)回繰り返すように制御する。つまり、繰り返し制御部213は、ステップS106において、繰り返し回数が最大値(lmax-1)に達したか否かを判定する。繰り返し回数が最大値(lmax-1)に達していないと判定された場合、処理はステップS102に戻る。つまり、繰り返し回数が最大値(lmax-1)に達するまで、ステップS102乃至ステップS106の処理が繰り返される。
The
そして、ステップS102乃至ステップS106の処理が(lmax-1)回繰り返されると、処理はステップS107に進む。 Then, when the process from step S102 to step S106 is repeated (lmax-1) times, the process proceeds to step S107.
ステップS107において、繰り返し制御部213は、ステップS102と同様に、シフトバッファ211を制御して巡回シフトを行わせ、さらに、ステップS103と同様に、演算部212を制御してノード演算を行わせる。
In step S107, the
ステップS108において、演算部212は、復号結果を後段に出力する。
In step S108, the
ステップS108の処理が終了すると、BP復号処理が終了する。 When the process of step S108 ends, the BP decoding process ends.
以上のように、情報を記憶する記憶部を、符号の規則性を利用してシフトバッファで構成する事により、従来必要であったアドレス発生器やランダムアクセスに起因する配線混雑性、アドレスデコーダが不要となり、回路規模の増大を抑制することができる。 As described above, by constructing a storage unit for storing information with a shift buffer using the regularity of codes, wiring congestion caused by an address generator and random access and an address decoder, which were conventionally required, can be eliminated. It becomes unnecessary, and an increase in circuit scale can be suppressed.
例えばシングルポートのRAMを使う場合、同時にアクセスできるアドレスは1つしかない。この場合にノード演算を行うには、複数のアドレスから情報を読み出す必要があるため、複数サイクルの読み出しと書き込みによりノード演算の実行と更新を行う必要があった。しかしながら、上述のように符号の規則性を利用する事により、読み出し位置や書き込み位置を1通りに限定する(固定化する)ことができる。このようにすることにより、符号規則に従って、所定のバッファセルから直接ノード演算部へ情報を渡し、ノード演算結果を次のバッファセルに送ることができる。したがって1サイクルでノード演算の実行と更新を行う事ができる。つまり、これにより復号遅延を小さくする事ができる。 For example, when using single-port RAM, only one address can be accessed at a time. In this case, in order to perform a node operation, it is necessary to read information from a plurality of addresses, so it is necessary to execute and update the node operation by reading and writing in a plurality of cycles. However, by using the code regularity as described above, it is possible to limit (fix) one read position and one write position. By doing so, it is possible to transfer information from a predetermined buffer cell directly to the node operation unit according to the sign rule, and to send the node operation result to the next buffer cell. Therefore, node operations can be executed and updated in one cycle. In other words, this makes it possible to reduce the decoding delay.
<復号方式比較例>
図14に示されるグラフは、各復号方式における、受信情報の信号対雑音比に対するビットエラーレート(BER(Bit Error Rate))およびフレームエラーレート(FER(Frame Error Rate))を比較した例を示す。<Decoding method comparison example>
The graph shown in FIG. 14 shows an example of comparing the bit error rate (BER) and frame error rate (FER) with respect to the signal-to-noise ratio of received information in each decoding method. .
図14において、HDは、多数決硬判定復号を示し、VTHDは、可変閾値硬判定復号を示し、SDは、軟判定復号を示し、SDHDは、軟判定復号+多数決硬判定復号を示し、BPは、本技術を適用したBP復号(繰り返し回数50回)を示す。図14のグラフから明らかなように、本技術を適用したBP復号を用いることにより、他の方式よりも誤り訂正能力を向上させることができる。 In FIG. 14 , HD indicates majority hard-decision decoding, VTHD indicates variable threshold hard-decision decoding, SD indicates soft-decision decoding, SDHD indicates soft-decision decoding + majority hard-decision decoding, and BP indicates , BP decoding (50 iterations) to which this technology is applied. As is clear from the graph in FIG. 14, by using BP decoding to which this technology is applied, error correction capability can be improved more than other schemes.
つまり、本技術を適用することにより、誤り訂正能力の低減を抑制しながら回路規模の増大を抑制することができる。これにより、BP復号装置200は、より容易に筐体を小型化することができる。また、製造コストや消費電力の増大を抑制することもできる。
That is, by applying the present technology, it is possible to suppress an increase in circuit size while suppressing a decrease in error correction capability. As a result, the
さらに、本技術を適用することにより、誤り訂正に関する処理を容易化することもできるので、処理時間の増大や消費電力の増大を抑制することもできる。処理時間の増大を抑制することにより、誤り訂正能力の低減を抑制しながら、より高ビットレートの受信情報を処理することができる。つまり、より情報量の多い受信情報に対してより高精度な誤り訂正を行うことができる。 Furthermore, by applying the present technology, processing related to error correction can be facilitated, so an increase in processing time and an increase in power consumption can be suppressed. By suppressing an increase in processing time, it is possible to process received information at a higher bit rate while suppressing a decrease in error correction capability. That is, more highly accurate error correction can be performed for received information having a larger amount of information.
また、消費電力の増大を抑制することにより発熱量の増大を抑制することができる。したがって、筐体の小型化をさらに容易化することができる。また、経年劣化を抑制することもできるので、信頼性を向上させることができる。 Also, by suppressing an increase in power consumption, an increase in heat generation can be suppressed. Therefore, miniaturization of the housing can be further facilitated. In addition, since deterioration over time can be suppressed, reliability can be improved.
<3.第2の実施の形態>
<Shuffled BPアルゴリズム>
なお、本技術は、BP復号の派生アルゴリズムにも適用する事ができる。例えば、更新した情報を同じ繰り返し内に反映するシャッフルドBP復号(Shuffled BP)と呼ばれる復号方式にも本技術を適用することができる。<3. Second Embodiment>
<Shuffled BP Algorithm>
This technology can also be applied to derived algorithms of BP decryption. For example, the present technology can also be applied to a decoding method called shuffled BP decoding that reflects updated information within the same iteration.
このシャッフルドBP復号のアルゴリズムの例を図15に示す。この場合、情報算出は、以下の式(8)のように行われる。 An example of this shuffled BP decoding algorithm is shown in FIG. In this case, information calculation is performed as in the following equation (8).
・・・(8) ... (8)
この場合、繰り返し回数の偶奇でバッファの切り替えを行わずに、常に情報を更新する。この場合のBP復号装置200のシフトバッファ211および演算部212の主な構成例を図16に示す。図16に示されるように、この場合、図11の例と比較して、選択部233および選択部235、すなわち、繰り返し回数even/oddによる選択部が省略されている。また、自ノードの中間情報を次の演算で使わないのでバッファに記録する必要がない。例として、第1の実施の形態のBP復号ではA,B,Cの3情報を示したが、この場合は2情報で良い。動作順序は、第1の実施の形態のBP復号の場合と同様に行えば良い。
In this case, the information is always updated without switching buffers depending on whether the number of iterations is even or odd. FIG. 16 shows a main configuration example of the
このように、シャッフルドBP復号(Shuffled BP)の場合も本技術を適用することにより、第1の実施の形態の場合と同様の効果を得ることができる。 In this way, by applying the present technology to shuffled BP decoding (Shuffled BP), it is possible to obtain the same effect as in the case of the first embodiment.
<4.第3の実施の形態>
<チェックノード演算の応用>
以上に説明したBP復号においては、図17に示されるアルゴリズムの例のように、チェックノード演算において、以下の式(9)のようなGallager関数が用いられる。<4. Third Embodiment>
<Application of check node operation>
In the BP decoding described above, a Gallager function such as the following equation (9) is used in the check node calculation as in the example of the algorithm shown in FIG.
・・・(9) ... (9)
このようなGallager関数はルックアップテーブル(Table Look Up)等を用いて実装される事が多く、高精度ではあるものの、その回路規模は大きく、演算サイクルも多い。そこで、処理の複雑なチェックノード演算を簡易化するようにしてもよい。 Such a Gallager function is often implemented using a lookup table (Table Look Up) or the like, and although it is highly accurate, the circuit scale is large and the operation cycle is large. Therefore, the complicated check node operation may be simplified.
例えば、図18のAに示されるように、以下の式(10)のようなMin-Sumアルゴリズムを用いてチェックノード演算を行うようにしてもよい。 For example, as shown in A of FIG. 18, a check node operation may be performed using a Min-Sum algorithm such as Equation (10) below.
・・・(10) (10)
また、例えば、図18のBに示されるように、以下の式(11)のようなNormalized Min-Sumアルゴリズムを用いてチェックノード演算を行うようにしてもよい。 Also, for example, as shown in FIG. 18B, the check node operation may be performed using a Normalized Min-Sum algorithm such as Equation (11) below.
α: Normalize Factor
・・・(11) α: Normalize Factor
(11)
また、例えば、図18のCに示されるように、以下の式(12)のようなOffset Min-Sumアルゴリズムを用いてチェックノード演算を行うようにしてもよい。 Also, for example, as shown in FIG. 18C, the check node operation may be performed using an Offset Min-Sum algorithm such as Equation (12) below.
β: Offset Factor
・・・(12) β: Offset Factor
(12)
図17の例のBP復号アルゴリズムの場合、行重みJに応じたバッファを持つ必要があったが、これらのアルゴリズムを適用する場合、最小2値を保持することができれば良いので、バッファ量の増大を抑制することができる。 In the case of the BP decoding algorithm in the example of FIG. 17, it was necessary to have a buffer corresponding to the row weight J, but when applying these algorithms, it is sufficient to be able to hold the minimum two values, so the amount of buffer is increased. can be suppressed.
勿論、これら以外のアルゴリズムを適用するようにしてもよい。 Of course, algorithms other than these may be applied.
なお、以上においては、巡回符号として差集合巡回符号を例に説明したが、本技術は任意の巡回符号に適用することができる。 In the above description, a difference cyclic code is used as an example of a cyclic code, but the present technology can be applied to any cyclic code.
<5.第4の実施の形態>
<受信装置>
図19は、上述した実施形態を適用した受信装置の主な構成例を示すブロック図である。図19に示される受信装置700は、他の装置から伝送される無線信号を受信して、その無線信号に含まれる情報(情報はどのようなものであってもよい。例えば画像データ等。)を復元し、出力する装置である。図19に示されるように、この受信装置700は、例えば、アンテナ711、チューナ712、復調部713、誤り訂正部714、デコーダ715、および出力部716を有する。<5. Fourth Embodiment>
<Receiving device>
FIG. 19 is a block diagram showing a main configuration example of a receiver to which the above-described embodiment is applied. A receiving
チューナ712は、アンテナ711を介して受信される無線信号から所望の周波数帯(チャンネル)の信号を抽出し、抽出した信号(受信信号)を復調部713に供給する。復調部713は、供給された受信信号を復調し、得られた復調信号を誤り訂正部714に供給する。
誤り訂正部714は、供給されたLDPC(Low Density Parity Check)符号の復調信号に対してBP復号を行うことにより誤り訂正を行う。誤り訂正部714は、そのようにして得られた符号化ビットストリームをデコーダ715に供給する。
The
デコーダ715は、供給された符号化ビットストリームを復号する。デコーダ715は、その復号により得られたデータ、すなわち、送信側から送信された情報を出力部716に供給する。出力部716は、供給されたデータを外部に出力する。例えば、出力部716は、そのデータに含まれる画像データに対応する画像をモニタ等に表示したり、そのデータに含まれる音声データに対応する音声をスピーカ等から出力したり、外部入力端子等を介してそのデータを他の装置に出力したり、そのデータを記憶媒体に記憶させたり、そのデータを有線通信や無線通信等により他の装置に送信したりする。
このように構成された受信装置700において、誤り訂正部714が、上述した受信装置700の機能を有するようにしてもよい。例えば、誤り訂正部714が、BP復号装置200と同様の構成を有するようにし、図1乃至図18を参照して上述した各実施の形態と同様の手法によりBP復号を行うようにしてもよい。
In receiving
このように本技術を適用することにより、受信装置700は、回路規模の増大を抑制することができる。これにより、受信装置700は、より容易に筐体を小型化することができる。また、製造コストや消費電力の増大を抑制することもできる。
By applying the present technology in this way, the receiving
さらに、本技術を適用することにより、誤り訂正に関する処理を容易化することもできるので、処理時間の増大や消費電力の増大を抑制することもできる。処理時間の増大を抑制することにより、誤り訂正能力の低減を抑制しながら、より高ビットレートの受信情報を処理することができる。つまり、より情報量の多い受信情報に対してより高精度な誤り訂正を行うことができる。 Furthermore, by applying the present technology, processing related to error correction can be facilitated, so an increase in processing time and an increase in power consumption can be suppressed. By suppressing an increase in processing time, it is possible to process received information at a higher bit rate while suppressing a decrease in error correction capability. That is, more highly accurate error correction can be performed on received information having a larger amount of information.
また、消費電力の増大を抑制することにより発熱量の増大を抑制することができる。したがって、筐体の小型化をさらに容易化することができる。また、経年劣化を抑制することもできるので、信頼性を向上させることができる。 Also, by suppressing an increase in power consumption, an increase in heat generation can be suppressed. Therefore, miniaturization of the housing can be further facilitated. In addition, since deterioration over time can be suppressed, reliability can be improved.
<6.第5の実施の形態>
<テレビジョン受像機>
図20は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置800は、アンテナ801、受信部802、デマルチプレクサ803、デコーダ804、映像信号処理部805、表示部806、音声信号処理部807、スピーカ808、外部インタフェース(I/F)部809、制御部810、ユーザインタフェース(I/F)部811、及びバス812を備える。<6. Fifth Embodiment>
<Television receiver>
FIG. 20 shows an example of a schematic configuration of a television apparatus to which the above-described embodiments are applied. The
受信部802は、アンテナ801を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調したり、誤り訂正を行ったりする。そして、受信部802は、そのようにして得られた符号化ビットストリームをデマルチプレクサ803へ出力する。即ち、受信部802は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置800における伝送部としての役割を有する。
Receiving
デマルチプレクサ803は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ804へ出力する。また、デマルチプレクサ803は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部810に供給する。なお、デマルチプレクサ803は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
The
デコーダ804は、デマルチプレクサ803から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ804は、復号処理により生成される映像データを映像信号処理部805へ出力する。また、デコーダ804は、復号処理により生成される音声データを音声信号処理部807へ出力する。
A
映像信号処理部805は、デコーダ804から入力される映像データを再生し、表示部806に映像を表示させる。また、映像信号処理部805は、ネットワークを介して供給されるアプリケーション画面を表示部806に表示させてもよい。また、映像信号処理部805は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部805は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
The video
表示部806は、映像信号処理部805から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
The
音声信号処理部807は、デコーダ804から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ808から音声を出力させる。また、音声信号処理部807は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
The audio
外部インタフェース部809は、テレビジョン装置800と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部809を介して受信される映像ストリーム又は音声ストリームが、デコーダ804により復号されてもよい。即ち、外部インタフェース部809もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置800における伝送部としての役割を有する。
An
制御部810は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置800の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部811から入力される操作信号に応じて、テレビジョン装置800の動作を制御する。
The
ユーザインタフェース部811は、制御部810と接続される。ユーザインタフェース部811は、例えば、ユーザがテレビジョン装置800を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部811は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部810へ出力する。
バス812は、受信部802、デマルチプレクサ803、デコーダ804、映像信号処理部805、音声信号処理部807、外部インタフェース部809、及び制御部810を相互に接続する。
A
このように構成されたテレビジョン装置800において、受信部802が、上述した受信装置700の機能を有するようにしてもよい。例えば、受信部802が、チューナ712乃至誤り訂正部714の構成を有するようにし、その誤り訂正部714において行われる制御信号の誤り訂正に関する処理として、図1乃至図18を参照して上述した各実施の形態と同様の手法によりBP復号を行うようにしてもよい。
In
このように本技術を適用することにより、テレビジョン装置800は、回路規模の増大を抑制することができる。これにより、テレビジョン装置800は、より容易に筐体を小型化することができる。また、製造コストや消費電力の増大を抑制することもできる。
By applying the present technology in this way, the
さらに、本技術を適用することにより、誤り訂正に関する処理を容易化することもできるので、処理時間の増大や消費電力の増大を抑制することもできる。処理時間の増大を抑制することにより、誤り訂正能力の低減を抑制しながら、より高ビットレートの制御情報を処理することができる。つまり、より情報量の多い(より高機能な)制御情報に対してより高精度な誤り訂正を行うことができる。 Furthermore, by applying the present technology, processing related to error correction can be facilitated, so an increase in processing time and an increase in power consumption can be suppressed. By suppressing an increase in processing time, it is possible to process control information at a higher bit rate while suppressing a decrease in error correction capability. That is, more highly accurate error correction can be performed on control information with a larger amount of information (more sophisticated functions).
また、消費電力の増大を抑制することにより発熱量の増大を抑制することができる。したがって、筐体の小型化をさらに容易化することができる。また、経年劣化を抑制することもできるので、信頼性を向上させることができる。 Also, by suppressing an increase in power consumption, an increase in heat generation can be suppressed. Therefore, miniaturization of the housing can be further facilitated. In addition, since deterioration over time can be suppressed, reliability can be improved.
<7.その他>
<ソフトウエア>
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。また、例えば、上述した一連の処理の一部をソフトウエアにより実行させ、他の処理をハードウエアにより実行させることもできる。一連の処理(の一部または全部)をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。<7. Others>
<Software>
The series of processes described above can be executed by hardware or by software. Also, for example, part of the series of processes described above can be executed by software, and other processes can be executed by hardware. When executing (a part or all of) a series of processes by software, a program that constitutes the software is installed in a computer. Here, the computer includes, for example, a computer built into dedicated hardware and a general-purpose personal computer capable of executing various functions by installing various programs.
図21は、上述した一連の処理(の一部または全部)をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。 FIG. 21 is a block diagram showing a configuration example of hardware of a computer that executes (a part of or all of) the series of processes described above by a program.
図21に示されるコンピュータ900において、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903は、バス904を介して相互に接続されている。
In a
バス904にはまた、入出力インタフェース910も接続されている。入出力インタフェース910には、入力部911、出力部912、記憶部913、通信部914、およびドライブ915が接続されている。
Input/
入力部911は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部912は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部913は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部914は、例えば、ネットワークインタフェースよりなる。ドライブ915は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア921を駆動する。
The
以上のように構成されるコンピュータでは、CPU901が、例えば、記憶部913に記憶されているプログラムを、入出力インタフェース910およびバス904を介して、RAM903にロードして実行することにより、上述した一連の処理が行われる。RAM903にはまた、CPU901が各種の処理を実行する上において必要なデータなども適宜記憶される。
In the computer configured as described above, the
コンピュータ900が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア921に記録して適用することができる。その場合、プログラムは、リムーバブルメディア921をドライブ915に装着することにより、入出力インタフェース910を介して、記憶部913にインストールすることができる。
A program executed by the
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部914で受信し、記憶部913にインストールすることができる。
The program can also be provided via wired or wireless transmission media such as local area networks, the Internet, and digital satellite broadcasting. In that case, the program can be received by the
その他、このプログラムは、ROM902や記憶部913に、あらかじめインストールしておくこともできる。
Alternatively, this program can be installed in the
<補足>
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。<Supplement>
Embodiments of the present technology are not limited to the above-described embodiments, and various modifications are possible without departing from the gist of the present technology.
例えば、本技術は、装置またはシステムを構成するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。 For example, the present technology can be applied to any configuration that constitutes a device or system, such as a processor as a system LSI (Large Scale Integration) or the like, a module using multiple processors or the like, a unit using multiple modules or the like, or other units. It can also be implemented as a set or the like with additional functions (that is, a configuration of part of the device).
また例えば、上述した各処理部は、その処理部について説明した機能を有するようにすれば、どのような構成により実現するようにしてもよい。例えば、任意の処理部が、任意の回路、LSI(Large Scale Integration)、システムLSI、プロセッサ、モジュール、ユニット、セット、デバイス、装置、またはシステム等により構成されるようにしてもよい。また、それらを複数組み合わせるようにしてもよい。例えば、複数の回路、複数のプロセッサ等のように同じ種類の構成を組み合わせるようにしてもよいし、回路とLSI等のように異なる種類の構成を組み合わせるようにしてもよい。 Further, for example, each of the processing units described above may be realized by any configuration as long as it has the functions described for the processing unit. For example, any processing unit may be configured by any circuit, LSI (Large Scale Integration), system LSI, processor, module, unit, set, device, apparatus, system, or the like. Also, a plurality of them may be combined. For example, the same type of configuration such as multiple circuits and multiple processors may be combined, or different types of configuration such as a circuit and an LSI may be combined.
なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。 In this specification, a system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a single device housing a plurality of modules in one housing are both systems. .
また、例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。 Further, for example, the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units). Conversely, the configuration described above as a plurality of devices (or processing units) may be collectively configured as one device (or processing unit). Further, it is of course possible to add a configuration other than the above to the configuration of each device (or each processing unit). Furthermore, part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit) as long as the configuration and operation of the system as a whole are substantially the same. .
また、例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。 In addition, for example, the present technology can take a configuration of cloud computing in which one function is shared by a plurality of devices via a network and processed jointly.
また、例えば、上述したプログラムは、任意の装置において実行することができる。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。 Also, for example, the above-described program can be executed in any device. In that case, the device should have the necessary functions (functional blocks, etc.) and be able to obtain the necessary information.
また、例えば、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。換言するに、1つのステップに含まれる複数の処理を、複数のステップの処理として実行することもできる。逆に、複数のステップとして説明した処理を1つのステップとしてまとめて実行することもできる。 Further, for example, each step described in the flowchart above can be executed by one device, or can be shared by a plurality of devices and executed. Furthermore, when one step includes a plurality of processes, the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices. In other words, a plurality of processes included in one step can also be executed as processes of a plurality of steps. Conversely, the processing described as multiple steps can also be collectively executed as one step.
コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。 A computer-executed program may be such that the processing of the steps described in the program is executed in chronological order according to the order described herein, in parallel, when called, etc. may be executed individually at required timings. That is, as long as there is no contradiction, the processing of each step may be executed in an order different from the order described above. Furthermore, the processing of the steps describing this program may be executed in parallel with the processing of other programs, or may be executed in combination with the processing of other programs.
本明細書において複数説明した本技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。 Each of the techniques described in this specification can be implemented independently and singly unless inconsistent. Of course, it is also possible to use any number of the present techniques in combination. For example, part or all of the present technology described in any embodiment can be combined with part or all of the present technology described in other embodiments. Also, part or all of any of the techniques described above may be implemented in conjunction with other techniques not described above.
なお、本技術は以下のような構成も取ることができる。
(1) 復号に用いる複数の情報を互いに異なる領域に記憶し、前記復号の検査行列の列方向のシフトに対応するように、前記情報を記憶する領域を前記復号に関する演算に応じてシフトさせる記憶部と、
前記記憶部の所定の領域より前記情報を読み出し、前記復号に関する演算により更新された前記情報を、前記検査行列の行方向のシフトに対応するように並べ替え、前記記憶部の所定の領域に書き込む更新部と、
前記更新部により前記記憶部より読み出された前記情報を用いて前記復号に関する演算を行い、前記情報を更新する演算部と
を備える情報処理装置。
(2) 前記記憶部は、前記情報を記憶する領域を巡回的にシフトする
(1)に記載の情報処理装置。
(3) 前記記憶部は、ループ状に接続される、それぞれが前記情報を記憶する複数のバッファセルを有し、前記情報を次のバッファセルに移動させることにより、前記情報を記憶する領域を巡回的にシフトする
(2)に記載の情報処理装置。
(4) 前記情報は、外部から入力された受信情報と、前記復号に関する演算により得られる中間情報であり、
前記記憶部は、前記受信情報を巡回的にシフトさせるバッファセルのループと、前記中間情報を巡回的にシフトさせるバッファセルのループを有する
(1)乃至(3)のいずれかに記載の情報処理装置。
(5) 前記更新部は、前記記憶部の、前記検査行列の列方向の非ゼロ係数の位置に対応する領域より前記情報を読み出す
(1)乃至(4)のいずれかに記載の情報処理装置。
(6) 前記更新部は、更新され並べ替えた前記情報を、前記記憶部の、前記情報を読み出した領域の次の領域に書き込む
(1)乃至(5)のいずれかに記載の情報処理装置。
(7) 前記演算部は、
前記記憶部より読み出された前記情報を用いてチェックノード演算を行うチェックノード演算部と、
前記チェックノード演算部により得られるチェックノード演算結果を用いてバリアブルノード演算を行うバリアブルノード演算部と、
前記バリアブルノード演算部により得られるバリアブルノード演算結果を更新する情報更新部と
を備える(1)乃至(6)のいずれかに記載の情報処理装置。
(8) 前記演算部は、さらに、前記バリアブルノード演算結果に基づいて誤りの発生を判定する判定部をさらに備える
(7)に記載の情報処理装置。
(9) 前記チェックノード演算部は、Gallager関数を用いて前記チェックノード演算を行う
(7)または(8)に記載の情報処理装置。
(10) 前記チェックノード演算部は、Min-Sumアルゴリズムを用いて前記チェックノード演算を行う
(7)または(8)に記載の情報処理装置。
(11) 前記チェックノード演算部は、Normalized Min-Sumアルゴリズムを用いて前記チェックノード演算を行う
(7)または(8)に記載の情報処理装置。
(12) 前記チェックノード演算部は、Offset Min-Sumアルゴリズムを用いて前記チェックノード演算を行う
(7)または(8)に記載の情報処理装置。
(13) 前記演算部は、BP(Belief Propagation)復号に関する演算を行う
(1)乃至(12)のいずれかに記載の情報処理装置。
(14) 前記演算部は、Shuffled BP(Belief Propagation)復号に関する演算を行う
(1)乃至(12)のいずれかに記載の情報処理装置。
(15) 復号に用いる複数の情報を記憶部の互いに異なる領域に記憶し、前記復号の検査行列の列方向のシフトに対応するように、前記情報を記憶する領域を前記復号に関する演算に応じてシフトさせ、
前記記憶部の所定の領域より前記情報を読み出し、
前記記憶部より読み出された前記情報を用いて前記復号に関する演算を行い、前記情報を更新し、
更新された前記情報を、前記検査行列の行方向のシフトに対応するように並べ替え、前記記憶部の所定の領域に書き込む
情報処理方法。Note that the present technology can also take the following configuration.
(1) Storage in which a plurality of pieces of information used for decoding are stored in different areas, and the area for storing the information is shifted in accordance with the computation related to the decoding so as to correspond to the shift in the column direction of the parity check matrix for the decoding. Department and
The information is read out from a predetermined area of the storage unit, the information updated by the decoding operation is rearranged so as to correspond to the shift in the row direction of the parity check matrix, and the information is written in a predetermined area of the storage unit. update department;
An information processing apparatus comprising: an arithmetic unit that performs arithmetic operations related to the decoding using the information read from the storage unit by the update unit, and updates the information.
(2) The information processing apparatus according to (1), wherein the storage unit cyclically shifts the area for storing the information.
(3) The storage unit has a plurality of buffer cells each storing the information, connected in a loop, and by moving the information to the next buffer cell, the area for storing the information is expanded. The information processing device according to (2), which shifts cyclically.
(4) the information is received information input from the outside and intermediate information obtained by calculation related to the decoding;
The information processing according to any one of (1) to (3), wherein the storage unit has a loop of buffer cells for cyclically shifting the received information and a loop of buffer cells for cyclically shifting the intermediate information. Device.
(5) The information processing device according to any one of (1) to (4), wherein the update unit reads the information from an area of the storage unit corresponding to the position of the non-zero coefficient in the column direction of the parity check matrix. .
(6) The information processing device according to any one of (1) to (5), wherein the update unit writes the updated and rearranged information to an area next to the area from which the information was read, in the storage unit. .
(7) The computing unit
a check node calculation unit that performs check node calculation using the information read from the storage unit;
a variable node computation unit that performs variable node computation using the check node computation result obtained by the check node computation unit;
The information processing apparatus according to any one of (1) to (6), further comprising: an information update unit that updates the variable node calculation result obtained by the variable node calculation unit.
(8) The information processing apparatus according to (7), wherein the calculation unit further includes a determination unit that determines occurrence of an error based on the variable node calculation result.
(9) The information processing device according to (7) or (8), wherein the check node calculation unit performs the check node calculation using a Gallager function.
(10) The information processing apparatus according to (7) or (8), wherein the check node calculation unit performs the check node calculation using a Min-Sum algorithm.
(11) The information processing device according to (7) or (8), wherein the check node calculation unit performs the check node calculation using a Normalized Min-Sum algorithm.
(12) The information processing device according to (7) or (8), wherein the check node calculation unit performs the check node calculation using an Offset Min-Sum algorithm.
(13) The information processing device according to any one of (1) to (12), wherein the calculation unit performs calculation related to BP (Belief Propagation) decoding.
(14) The information processing device according to any one of (1) to (12), wherein the calculation unit performs calculations related to Shuffled BP (Belief Propagation) decoding.
(15) Storing a plurality of pieces of information used for decoding in different regions of a storage unit, and storing the regions for storing the information in accordance with the arithmetic operations related to the decoding so as to correspond to the shift in the column direction of the parity check matrix for the decoding. shift the
reading the information from a predetermined area of the storage unit;
performing calculations related to the decoding using the information read from the storage unit, and updating the information;
An information processing method, wherein the updated information is rearranged so as to correspond to the shift in the row direction of the parity check matrix, and the updated information is written in a predetermined area of the storage unit.
200 BP復号装置, 211 シフトバッファ, 212 演算部, 213 繰り返し制御部, 221 選択部, 222および223 バッファセル, 231 選択部, 232 バッファ, 233 選択部, 234 バッファ, 235 選択部, 236 チェックノード演算部, 237 バリアブルノード演算部, 238 情報更新部, 239 判定部, 700 受信装置, 711 アンテナ, 712 チューナ, 713 復調部, 714 誤り訂正部, 715 デコーダ, 716 出力部, 800 テレビジョン装置, 802 受信部, 900 コンピュータ
200 BP decoder, 211 shift buffer, 212 operation unit, 213 repetition control unit, 221 selection unit, 222 and 223 buffer cells, 231 selection unit, 232 buffer, 233 selection unit, 234 buffer, 235 selection unit, 236 check
Claims (15)
前記記憶部の所定の領域より前記情報を読み出し、前記復号に関する演算により更新された前記情報を、前記検査行列の行方向のシフトに対応するように並べ替え、前記記憶部の所定の領域に書き込む更新部と、
前記更新部により前記記憶部より読み出された前記情報を用いて前記復号に関する演算を行い、前記情報を更新する演算部と
を備える情報処理装置。a storage unit that stores a plurality of pieces of information used for decoding in mutually different regions, and shifts the region for storing the information according to the computation related to the decoding so as to correspond to the shift in the column direction of the parity check matrix for the decoding;
The information is read out from a predetermined area of the storage unit, the information updated by the decoding operation is rearranged so as to correspond to the shift in the row direction of the parity check matrix, and the information is written in a predetermined area of the storage unit. update department;
An information processing apparatus comprising: an arithmetic unit that performs arithmetic operations related to the decoding using the information read from the storage unit by the update unit, and updates the information.
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the storage unit cyclically shifts the area for storing the information.
請求項2に記載の情報処理装置。The storage unit has a plurality of buffer cells each storing the information, which are connected in a loop, and the area for storing the information is cyclically changed by moving the information to the next buffer cell. The information processing apparatus according to claim 2, wherein the shift is performed.
前記記憶部は、前記受信情報を巡回的にシフトさせるバッファセルのループと、前記中間情報を巡回的にシフトさせるバッファセルのループを有する
請求項1に記載の情報処理装置。The information is received information input from the outside and intermediate information obtained by calculation related to the decoding,
The information processing apparatus according to claim 1, wherein the storage unit has a loop of buffer cells for cyclically shifting the received information and a loop of buffer cells for cyclically shifting the intermediate information.
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the updating unit reads the information from a region of the storage unit corresponding to positions of non-zero coefficients in the column direction of the parity check matrix.
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the update unit writes the updated and rearranged information to an area next to the area from which the information was read, of the storage unit.
前記記憶部より読み出された前記情報を用いてチェックノード演算を行うチェックノード演算部と、
前記チェックノード演算部により得られるチェックノード演算結果を用いてバリアブルノード演算を行うバリアブルノード演算部と、
前記バリアブルノード演算部により得られるバリアブルノード演算結果を更新する情報更新部と
を備える請求項1に記載の情報処理装置。The calculation unit is
a check node calculation unit that performs check node calculation using the information read from the storage unit;
a variable node computation unit that performs variable node computation using the check node computation result obtained by the check node computation unit;
The information processing apparatus according to claim 1, further comprising an information updating unit that updates the variable node calculation result obtained by the variable node calculation unit.
請求項7に記載の情報処理装置。8. The information processing apparatus according to claim 7, wherein said calculation unit further comprises a determination unit that determines occurrence of an error based on said variable node calculation result.
請求項7に記載の情報処理装置。The information processing apparatus according to claim 7, wherein the check node calculation unit performs the check node calculation using a Gallager function.
請求項7に記載の情報処理装置。The information processing apparatus according to claim 7, wherein the check node calculation unit performs the check node calculation using a Min-Sum algorithm.
請求項7に記載の情報処理装置。The information processing apparatus according to claim 7, wherein the check node calculation unit performs the check node calculation using a Normalized Min-Sum algorithm.
請求項7に記載の情報処理装置。The information processing apparatus according to claim 7, wherein the check node calculation unit performs the check node calculation using an Offset Min-Sum algorithm.
請求項1に記載の情報処理装置。The information processing device according to claim 1, wherein the computation unit performs computation related to BP (Belief Propagation) decoding.
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the calculation unit performs calculations related to Shuffled BP (Belief Propagation) decoding.
前記記憶部の所定の領域より前記情報を読み出し、
前記記憶部より読み出された前記情報を用いて前記復号に関する演算を行い、前記情報を更新し、
更新された前記情報を、前記検査行列の行方向のシフトに対応するように並べ替え、前記記憶部の所定の領域に書き込む
情報処理方法。storing a plurality of pieces of information to be used for decoding in different regions of a storage unit, and shifting the region for storing the information according to the computation related to the decoding so as to correspond to the shift in the column direction of the parity check matrix for the decoding;
reading the information from a predetermined area of the storage unit;
performing calculations related to the decoding using the information read from the storage unit, and updating the information;
An information processing method, wherein the updated information is rearranged so as to correspond to the shift in the row direction of the parity check matrix, and the updated information is written in a predetermined area of the storage unit.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017124001 | 2017-06-26 | ||
| JP2017124001 | 2017-06-26 | ||
| PCT/JP2018/022302 WO2019003888A1 (en) | 2017-06-26 | 2018-06-12 | INFORMATION PROCESSING APPARATUS AND METHOD |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2019003888A1 JPWO2019003888A1 (en) | 2020-04-23 |
| JP7110191B2 true JP7110191B2 (en) | 2022-08-01 |
Family
ID=64740639
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019526766A Active JP7110191B2 (en) | 2017-06-26 | 2018-06-12 | Information processing device and method |
Country Status (3)
| Country | Link |
|---|---|
| JP (1) | JP7110191B2 (en) |
| BR (1) | BR112019027216A2 (en) |
| WO (1) | WO2019003888A1 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009260692A (en) | 2008-04-17 | 2009-11-05 | Pioneer Electronic Corp | Decoding apparatus and decoding method |
| US20110126078A1 (en) | 2009-11-23 | 2011-05-26 | Yeong-Luh Ueng | Decoder and decoding method for low-density parity check codes constructed based on reed-solomon codes |
| JP2011205578A (en) | 2010-03-26 | 2011-10-13 | Toshiba Corp | Error detection/correction circuit, memory controller and semiconductor memory device |
-
2018
- 2018-06-12 JP JP2019526766A patent/JP7110191B2/en active Active
- 2018-06-12 WO PCT/JP2018/022302 patent/WO2019003888A1/en not_active Ceased
- 2018-06-12 BR BR112019027216-0A patent/BR112019027216A2/en not_active IP Right Cessation
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009260692A (en) | 2008-04-17 | 2009-11-05 | Pioneer Electronic Corp | Decoding apparatus and decoding method |
| US20110126078A1 (en) | 2009-11-23 | 2011-05-26 | Yeong-Luh Ueng | Decoder and decoding method for low-density parity check codes constructed based on reed-solomon codes |
| JP2011205578A (en) | 2010-03-26 | 2011-10-13 | Toshiba Corp | Error detection/correction circuit, memory controller and semiconductor memory device |
Non-Patent Citations (1)
| Title |
|---|
| MIYATA,Yoshikuni et al.,Reduced-Complexity Decoding Algorithm for LDPC Codes for Practical Circuit Implementation in Optical,OFC/NFOEC 2007,2007年10月15日,pp.1-3 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2019003888A1 (en) | 2020-04-23 |
| WO2019003888A1 (en) | 2019-01-03 |
| BR112019027216A2 (en) | 2020-06-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11368168B2 (en) | Low density parity check decoder | |
| JP5320964B2 (en) | Cyclic shift device, cyclic shift method, LDPC decoding device, television receiver, and reception system | |
| US9544090B2 (en) | Hard input low density parity check decoder | |
| US11424762B2 (en) | Decoder for low-density parity-check codes | |
| US7376885B2 (en) | Memory efficient LDPC decoding methods and apparatus | |
| US8078936B2 (en) | Encoding method, encoding apparatus, and program | |
| BRPI0711499B1 (en) | interleaver and receiver equipment for a signal generated by the interleaver equipment | |
| WO2011029362A1 (en) | Configuration method of ldpc code check matrix and encoding method and encoding apparatus based on the configuration method | |
| US10374633B2 (en) | Method and system for LDPC decoding | |
| US7966544B2 (en) | Loading the input memory of an LDPC decoder with data for decoding | |
| Zhang et al. | Low-complexity reliability-based message-passing decoder architectures for non-binary LDPC codes | |
| US8504892B2 (en) | LDPC decoder and method for LDPC decoding based on layered algorithm applied to parity check matrix | |
| Lin et al. | An efficient fully parallel decoder architecture for nonbinary LDPC codes | |
| US8775915B2 (en) | Apparatus and method for a dual mode standard and layered belief propagation LDPC decoder | |
| JP7110191B2 (en) | Information processing device and method | |
| Ajaz et al. | Multi-Gb/s multi-mode LDPC decoder architecture for IEEE 802.11 ad standard | |
| TW201216624A (en) | Systems and methods for error correction | |
| Zhang et al. | Low complexity DVB-S2 LDPC decoder | |
| JP2007036776A (en) | Decoding device and decoding method | |
| CN101322319B (en) | Apparatus and method for decoding low-density parity-check encoded signals | |
| US20070094565A1 (en) | Decoding of multiple data streams encoded using a block coding algorithm | |
| Wu et al. | A 128 Gb/s LDPC decoder using partial syndrome-based dynamic decoding scheme for terahertz wireless multi-media networks | |
| Jayanthi et al. | An Energy Efficient Layered Decoding Architecture for LDPC Decoder | |
| JP2009027302A (en) | Decoding device and decoding method | |
| 趙雄心 | Research on LDPC Decoder Design Methodology for Error-Correcting Performance and Energy-Efficiency |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210507 |
|
| 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: 20220621 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220720 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7110191 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |