CN109217880B - Linear type polar code decoder and design method thereof - Google Patents
Linear type polar code decoder and design method thereof Download PDFInfo
- Publication number
- CN109217880B CN109217880B CN201811361914.5A CN201811361914A CN109217880B CN 109217880 B CN109217880 B CN 109217880B CN 201811361914 A CN201811361914 A CN 201811361914A CN 109217880 B CN109217880 B CN 109217880B
- Authority
- CN
- China
- Prior art keywords
- node
- polar code
- code decoder
- time
- register
- 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
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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
The invention discloses a linear polar code decoder and a design method thereof, which realize decoding by adopting fewer operation nodes and registers and have low hardware complexity. The invention not only can establish the quantitative relation between the hardware resource consumption and the time delay of the polar code decoder, but also provides the mapping relation from each step of calculation to the time axis, and provides guidance for the design of a control circuit and the hardware framework of the linear polar code decoder.
Description
Technical Field
The invention relates to a decoding technology, in particular to a linear type polarization code decoder and a design method thereof.
Background
In 2009, e.arika first realized a coding scheme of capacity of a symmetric binary input discrete memoryless channel and a binary erasure channel. This new type of polarization Code encoding is called a polarization Code (Polar Code). The polar code is one of the 5G coding schemes because it can reach shannon limit and has the coding and decoding capability of practical linear complexity. Therefore, the research of the polar code decoder is regarded by the researchers.
For the decoding algorithm of the polar code, from the initial continuous elimination decoding algorithm to the list continuous elimination decoding algorithm to the adaptive list continuous elimination decoding algorithm, with the research, the error rate of the polar code decoding under the condition of short code is lower and lower, but the complexity of hardware is higher and higher, so how to reduce the hardware complexity of the polar code decoder is an urgent problem to be solved.
Disclosure of Invention
The purpose of the invention is as follows: the invention provides a linear polar code decoder and a design method thereof, aiming at the problems in the prior art.
The technical scheme is as follows: the decoder of the invention comprises 2nA computing node PE andone register P, m ═ log2M, M is the length of the receiving sequence, and n is a non-negative integer; wherein:
register Pλ(a1a2...am-λ) For storingThe value of (a) is,b-th representing a lambda-th layer1b2...bλA of a channel1a2...am-λChannel transition probability of a branch, b1b2...bλ、a1a2...am-λAre all binary numbers, b1,...,bλ∈{0,1},a1,a2,...,am-λ∈{0,1},λ=1,...,m;
Operation node PE [ a ]1a2...an]For performing the following computational operations:
O[a1a2...an]
=z(I[a1a2...an0],I[a1a2...an1],C[a1a2...an],bλ)
=(1-bλ)f(I[a1a2...an0],I[a1a2...an1])
+bλ·g(I[a1a2...an0],I[a1a2...an1],C[a1a2...an])
in the formula, a1,a2,...,an∈{0,1},O[a1a2...an]Representing an operational node PE [ a ]1a2...an]Is output of (I a)1a2...an0]、I[a1a2...an1]Representing an operational node PE [ a ]1a2...an]Z () represents the operation function performed by the operation node PE, f (), g () represent b, respectively1b2...bλThe function is calculated for the channel transition probabilities for even and odd numbers,in order to be a feedback value, the feedback value,denotes the a1...am-λb1...bλ-1Estimate of 0 codewords, a1...am-λb1...b λ-10 is a binary number;
the connection relationship between the register and the operation node is as follows:
when λ ∈ {1, 2., m-n-1}, there are:
When λ is m-n, there are:
when λ ∈ { m-n + 1., m-1, m }, there is:
In the formula, t1,...,tm-n-λValues of 0 and 1, t1...tm-n-λa1...anIs a binary number and is used as a reference,when a plurality of registers are connected to one input or one output of the operation node at the same time, a time control switch is added on the connecting line to control the input and the output of the operation node. .
Wherein, the time updating set of the time control switch is as follows:
when λ ∈ {1, 2., m-n-1}, there are:
Bλ,o(t1...tm-n-λa1...an)={a+Rλ|a∈Bλ},Rλ=t1...tm-n-λ
When λ ∈ { m-n., m }, there are:
Bλ,o(a1...am-λ)=Bλ
Bλ-1,i(a1a2...am-λ0)=Bλ-1,i(a1a2...am-λ1)=Bλ,o(a1...am-λ)
in the formula, the shape is as Bλ,o(. indicates) register Pλ(x) a time set connected to the output of the corresponding operational node and updated by the operational output, shaped as Bλ,i(. indicates) register Pλ(x) is connected with the input of the corresponding operation node and is used as a time set of the input of the operation node;
d(λ)=w(λ)+Tλ+1
w (λ) represents 2nLinear type polar code decoder of node decodes length 2m-λ-1The required delay.
The design method of the linear polarization code decoder comprises the following steps:
(1) calculating the number of the required minimum operation nodes according to the tolerable delay length;
(2) the decoder structure is designed according to the decoder of claim 1 based on the number of operational nodes and the known length of the received sequence.
Further, the step (1) specifically comprises:
obtaining the tolerable delay length ThAnd calculating the number N of minimum operation nodes which satisfy the following inequality:
2m+1+(m-n-2)·2m-n≤Th
wherein m is log2M, M is the length of the receiving sequence, and n is log2N。
in the formula, b1′b2′...bλ′=b1b2...bλ-1,T(b1b2...bλ) To be calculated fromToThe time that is consumed is the time required for,b-th representing a lambda-th layer1b2...bλThe channel transition probability of a channel is,
has the advantages that: compared with the prior art, the invention has the following remarkable advantages: the invention achieves the purpose of reducing the complexity of hardware within the expected delay allowable range, not only can establish the quantitative relation between the hardware resource consumption and the delay of the polar code decoder, but also provides the mapping relation of each step of calculation to a time axis, and provides guidance for the design of a control circuit and the hardware framework of the linear polar code decoder.
Drawings
FIG. 1 is a block diagram of a decoder architecture for an 8-bit-2 compute node using the present invention;
fig. 2 is a block diagram of a decoder for 8-bit-1 computational nodes using the present invention.
Detailed Description
First, analysis of technical problem
The essence of the conventional successive erasure decoding algorithm is that for a length of M-2mReceive sequence ofTo calculate the M-pair probabilities, i.e. to calculate the M-pairsWherein the content of the first and second substances, for a decoded sequence that has been previously estimated,indicating to the receiving sequenceThe estimated value of each of the code words,representing the channel transition probability when the input is 0,representing the channel transition probability when the input is 1. The continuous elimination polar code decoding algorithm adopts a recursion mode to calculate the M pairs of probabilities, and the condition of recursion ending is thatBy abbreviationsDenotes the second of the lambda layerChannel transition probability of each channel. The continuous elimination polar code decoding algorithm calculates the M pairs of probabilities in a recursive mode, thereby further definingAs an intermediate state in the computation of M pairs of probabilities. The recurrence relation is shown as the following equation
Second, the technical problem is solved
For the above analysis, the decoder may be constructed using registers and operation nodes in binary representation. The decoder comprises 2nA computing node PE andone register P, m ═ log2M, M is the length of the receiving sequence, and n is a non-negative integer; wherein:
register Pλ(a1a2...am-λ) For storingThe value of (a) is,b-th representing a lambda-th layer1b2...bλA of a channel1a2...am-λChannel transition probability of a branch, b1b2...bλ、a1a2...am-λAre all binary numbers, b1,...,bλ∈{0,1},a1,a2,...,am-λ∈{0,1},λ=1,...,m;
Operation node PE [ a ]1a2...an]For performing the following computational operations:
O[a1a2...an]
=z(I[a1a2...an0],I[a1a2...an1],C[a1a2...an],bλ)
=(1-bλ)f(I[a1a2...an0],I[a1a2...an1])
+bλ·g(I[a1a2...an0],I[a1a2...an1],C[a1a2...an])
in the formula, a1,a2,...,an∈{0,1},O[a1a2...an]Representing an operational node PE [ a ]1a2...an]Is output of (I a)1a2...an0]、I[a1a2...an1]Representing an operational node PE [ a ]1a2...an]Z () represents the operation function performed by the operation node PE, f (), g () represent b, respectively1b2...bλThe function is calculated for the channel transition probabilities for even and odd numbers,in order to be a feedback value, the feedback value,denotes the a1...am-λb1...bλ-1Estimate of 0 codewords, a1...am-λb1...b λ-10 is a binary number;
the connection relationship between the register and the operation node is as follows:
when λ ∈ {1, 2,. m-n-1}, there is:
When λ is m-n, there are:
when λ ∈ { m-n + 1., m-1, m }, there is:
In the formula, t1,...,tm-n-λValues of 0 and 1, t1...tm-n-λa1...anIs a binary number and is used as a reference,when a plurality of registers are connected to one input or one output of the operation node at the same time, a time control switch is added on the connecting line to control the input and the output of the operation node.
Wherein, the time updating set of the time control switch is as follows:
when λ ∈ {1, 2., m-n-1}, there are:
Bλ,o(t1...tm-n-λa1...an)={a+Rλ|a∈Bλ},Rλ=t1...tm-n-λ
When λ ∈ { m-n., m }, there are:
Bλ,o(a1...am-λ)=Bλ
Bλ-1,i(a1a2...am-λ0)=Bλ-1,i(a1a2...am-λ1)=Bλ,o(a1...am-λ)
in the formula, the shape is as Bλ,o(. indicates) register Pλ(x) a time set connected to the output of the corresponding operational node and updated by the operational output, shaped as Bλ,i(. indicates) register Pλ(x) is connected with the input of the corresponding operation node and is used as a time set of the input of the operation node;
d(λ)=w(λ)+Tλ+1
w (λ) represents 2nLinear type polar code decoder of node decodes length 2m-λ-1The required delay.
In designing a linear polar code decoder, the adopted design method comprises the following steps:
(1) calculating the number of the required minimum operation nodes according to the tolerable delay length; the method specifically comprises the following steps: obtaining the tolerable delay length ThAnd calculating the minimum number N of operation nodes which satisfies the following inequality as 2n:
2m+1+(m-n-2)·2m-n≤Th
(2) And designing a decoder structure according to the decoder according to the number of the operation nodes and the known receiving sequence length.
The following description will be given by taking the number of operation nodes as 2 and the length M of the received sequence as 8. In this case, n is 1 and m is 3, and the constructed decoder is as shown in fig. 1. Includes 2 operation nodes PE 0 and PE 1 and 15 registers P.
The connection relationship between the register and the operation node is as follows:
when λ is 1, there are:
when c is going to1、a1When the values are 0 and 1, respectively, the following are provided
When λ -m-n-2, there are:
when a is1When the values are 0 and 1, respectively, the following are provided
When λ is 3, there are:
when a plurality of registers are simultaneously connected to one input or one output of the operation node, a time control switch is added on the connecting line to control the input and the output of the operation node.
The time update set of the time controlled switch is calculated as follows, when m is 3 and n is 1:
d(0)=8,d(1)=3,d(2)=1,T1=2,T2=1,T3=1
then it can be calculated according to the formula:
B1={1,1+d(0)}={1,9}
B2={a+T1,a+T1+d(1)|a∈B1}={3,6,11,14,}
B3={a+T2,a+T2+d(2)|a∈B2}={4,5,7,8,12,13,15,16}
then the set of strobe times for each register can be calculated:
B1,o(00)=B1,o(01)={1,9}
B1,o(10)=B1,o(11)={2,10}
B2,o(0)=B2,o(1)={3,6,11,14}
B3,o={4,5,7,8,12,13,15,16}
B0,i(000)=B0,i(001)=B0,i(010)=B0,i(011)={1,9}
B0,i(100)=B0,i(101)=B0,i(110)=B0,i(111)={2,10}
B1,i(00)=B1,i(01)=B1,i(10)=B1,i(11)={3,6,11,14}
B0,i(0)=B2,i(1)={4,5,7,8,12,13,15,16}
for example, B0,i(000) The register P is represented by {1, 9}0(000) And operation node PE [0] when t is 1 and t is 9]Is turned on as the operational node PE [0]]The input of (2) is operated.
In addition, when the operation node is 1, the decoder architecture is as shown in fig. 2, and the connection manner and the switching time set are as described above and are not described again.
While the invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not to be limited to the disclosed embodiment, but on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
Claims (5)
1. A linear polar code decoder, comprising: comprises 2nA computing node PE andone register P, m ═ log2M, M is the length of the receiving sequence, and n is a non-negative integer; wherein:
register Pλ(a1a2...am-λ) For storingThe value of (a) is,b-th representing a lambda-th layer1b2...bλA of a channel1a2...am-λChannel transition probability of a branch, b1b2...bλ、a1a2...am-λAre all binary numbers, b1,...,bλ∈{0,1},a1,a2,...,am-λ∈{0,1},λ=1,...,m;
Operation node PE [ a ]1a2...an]For performing the following computational operations:
in the formula, a1,a2,...,an∈{0,1},O[a1a2...an]Representing an operational node PE [ a ]1a2...an]Is output of (I a)1a2...an0]、I[a1a2...an1]Representing an operational node PE [ a ]1a2...an]Z () represents the operation function performed by the operation node PE, f (), g () represent b, respectively1b2...bλThe function is calculated for the channel transition probabilities for even and odd numbers,in order to be a feedback value, the feedback value,denotes the a1...am-λb1...bλ-1Estimate of 0 codewords, a1...am-λb1...bλ-10 is a binary number;
the connection relationship between the register and the operation node is as follows:
when λ ∈ {1, 2., m-n-1}, there are:
When λ is m-n, there are:
when λ ∈ { m-n + 1., m-1, m }, there is:
In the formula, t1,...,tm-n-λValues of 0 and 1, t1...tm-n-λa1...anIs a binary number and is used as a reference,when a plurality of registers are connected to one input or one output of the operation node at the same time, a time control switch is added on the connecting line to control the input and the output of the operation node.
2. The linear polar code decoder according to claim 1, wherein:
wherein, the time updating set of the time control switch is as follows:
when λ ∈ {1, 2., m-n-1}, there are:
Bλ,o(t1...tm-n-λa1...an)={a+Rλ|a∈Bλ},Rλ=t1...tm-n-λ
When λ ∈ { m-n., m }, there are:
Bλ,o(a1...am-λ)=Bλ
Bλ-1,i(a1a2...am-λ0)=Bλ-1,i(a1a2...am-λ1)=Bλ,o(a1...am-λ)
in the formula, the shape is as Bλ,o(. indicates) register Pλ(x) a time set connected to the output of the corresponding operational node and updated by the operational output, shaped as Bλ,i(. indicates) register Pλ(x) is connected with the input of the corresponding operation node and is used as a time set of the input of the operation node;
wherein:
d(λ)=w(λ)+Tλ+1
w (λ) represents 2nLinear type polar code decoder of node decodes length 2m-λ-1The required delay.
3. A method for designing a linear polar code decoder, the method comprising:
(1) calculating the number of the required minimum operation nodes according to the tolerable delay length;
(2) the decoder structure is designed according to the decoder of claim 1 based on the number of operational nodes and the known length of the received sequence.
4. The linear polar code decoder design method according to claim 3, wherein: the step (1) specifically comprises the following steps:
obtaining the tolerable delay length ThAnd calculating the number N of minimum operation nodes which satisfy the following inequality:
2m+1+(m-n-2)·2m-n≤Th
wherein m is log2M, M is the length of the receiving sequence, and n is log2N。
5. The linear polar code decoder design method according to claim 3, wherein: computingThe time spent was:
in the formula, b1′b2′...bλ′=b1b2...bλ-1,T(b1b2...bλ) To be calculated fromToThe time that is consumed is the time required for,b-th representing a lambda-th layer1b2...bλThe channel transition probability of a channel is,
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811361914.5A CN109217880B (en) | 2018-11-15 | 2018-11-15 | Linear type polar code decoder and design method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811361914.5A CN109217880B (en) | 2018-11-15 | 2018-11-15 | Linear type polar code decoder and design method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109217880A CN109217880A (en) | 2019-01-15 |
CN109217880B true CN109217880B (en) | 2022-02-11 |
Family
ID=64995915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811361914.5A Active CN109217880B (en) | 2018-11-15 | 2018-11-15 | Linear type polar code decoder and design method thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109217880B (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0243816A (en) * | 1988-08-03 | 1990-02-14 | Mitsubishi Electric Corp | Expanding circuit |
CN1279844A (en) * | 1997-10-06 | 2001-01-10 | 趣点公司 | Beamformed ultrasonic imager with delta-sigma feedback control |
CN102823153A (en) * | 2010-04-07 | 2012-12-12 | 瑞典爱立信有限公司 | A precoder structure for mimo precoding |
CN104158549A (en) * | 2014-07-24 | 2014-11-19 | 南京大学 | Efficient decoding method and decoding device for polar code |
CN105262593A (en) * | 2015-09-25 | 2016-01-20 | 长春理工大学 | Space network cross-domain anonymous identity authentication method based on hyper-chaos encryption |
CN105306121A (en) * | 2009-10-01 | 2016-02-03 | 瑞典爱立信有限公司 | Multi-granular feedback reporting and feedback processing for precoding in telecommunications |
CN105337696A (en) * | 2015-10-08 | 2016-02-17 | 东南大学 | Polarization decoding method based on subsection CRC |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9860688B2 (en) * | 2014-09-03 | 2018-01-02 | CloudLeaf, Inc. | Systems, methods and devices for asset status determination |
-
2018
- 2018-11-15 CN CN201811361914.5A patent/CN109217880B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0243816A (en) * | 1988-08-03 | 1990-02-14 | Mitsubishi Electric Corp | Expanding circuit |
CN1279844A (en) * | 1997-10-06 | 2001-01-10 | 趣点公司 | Beamformed ultrasonic imager with delta-sigma feedback control |
CN105306121A (en) * | 2009-10-01 | 2016-02-03 | 瑞典爱立信有限公司 | Multi-granular feedback reporting and feedback processing for precoding in telecommunications |
CN102823153A (en) * | 2010-04-07 | 2012-12-12 | 瑞典爱立信有限公司 | A precoder structure for mimo precoding |
CN104158549A (en) * | 2014-07-24 | 2014-11-19 | 南京大学 | Efficient decoding method and decoding device for polar code |
CN105262593A (en) * | 2015-09-25 | 2016-01-20 | 长春理工大学 | Space network cross-domain anonymous identity authentication method based on hyper-chaos encryption |
CN105337696A (en) * | 2015-10-08 | 2016-02-17 | 东南大学 | Polarization decoding method based on subsection CRC |
Non-Patent Citations (5)
Title |
---|
LLR-Based SC Decoding of Polar Codes for Two-User Binary-Input MAC;Jong-Hwan Kim 等;《IEEE Communications Letters》;20171026;第22卷(第2期);256-259 * |
Polar码在WLAN 无线通信中的应用与研究;杨学良;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180415(第04(2018年)期);I136-257 * |
一种改进的Polar码的BP译码算法;洪银芳 等;《西安电子科技大学学报》;20160831;第26卷(第4期);39-44 * |
改进DCO-OFDM系统中的接收端检测算法;张明轩 等;《东南大学学报(自然科学版)》;20160920;第46卷(第5期);912-916 * |
极化码SCS译码器的FPGA实现;席艺 等;《帆船电子工程》;20181020;第38卷(第10期);98-103 * |
Also Published As
Publication number | Publication date |
---|---|
CN109217880A (en) | 2019-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yuan et al. | Architecture optimizations for BP polar decoders | |
Zhang et al. | Reduced-latency SC polar decoder architectures | |
Hayashi | Second-order asymptotics in fixed-length source coding and intrinsic randomness | |
TWI699977B (en) | Method employed in ldpc decoder and the decoder | |
US7808406B2 (en) | Method and apparatus for realizing arithmetic coding/decoding | |
US20180076831A1 (en) | Partial sum computation for polar code decoding | |
Lacruz et al. | Simplified trellis min–max decoder architecture for nonbinary low-density parity-check codes | |
Yuan et al. | Successive cancellation list polar decoder using log-likelihood ratios | |
CN112087236A (en) | Low density parity check decoder and method for saving power thereof | |
US6999531B2 (en) | Soft-decision decoding of convolutionally encoded codeword | |
KR20060048750A (en) | Decoder and decoding method for decoding low-density parity-check codes with parity check matrix | |
Jayasooriya et al. | A new density evolution approximation for LDPC and multi-edge type LDPC codes | |
CN109075805B (en) | Apparatus and method for implementing polarization code | |
US6223319B1 (en) | Turbo code decoder with controlled probability estimate feedback | |
CN117337432A (en) | Decoder and system for decoding encoded data using neural networks | |
AU2005218001B2 (en) | Binary representation of number based on processor word size | |
CN109217880B (en) | Linear type polar code decoder and design method thereof | |
CN1983334A (en) | Method and device for realizing arithmetic coding and decoding | |
CN110798224A (en) | Compression coding, error detection and decoding method | |
KR20120101530A (en) | Data compression device, data compression method, and program | |
Feygin et al. | Minimizing error and VLSI complexity in the multiplication free approximation of arithmetic coding | |
CN109787718B (en) | Simplified decoding method of efficient LDPC code facing quantum key distribution system | |
WO2021156110A1 (en) | Improved quality value compression framework in aligned sequencing data based on novel contexts | |
JP3536921B2 (en) | Correlation matrix learning method, apparatus and program | |
WO2009017834A2 (en) | Coordinate-ascent method for linear programming decoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |