CN103944673A - Low-delay progressive decoding method suitable for rateless codes - Google Patents

Low-delay progressive decoding method suitable for rateless codes Download PDF

Info

Publication number
CN103944673A
CN103944673A CN201410135606.6A CN201410135606A CN103944673A CN 103944673 A CN103944673 A CN 103944673A CN 201410135606 A CN201410135606 A CN 201410135606A CN 103944673 A CN103944673 A CN 103944673A
Authority
CN
China
Prior art keywords
decoding
node
check
value
represent
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.)
Granted
Application number
CN201410135606.6A
Other languages
Chinese (zh)
Other versions
CN103944673B (en
Inventor
张朝阳
屠坤
姚创沐
张婧
余启联
杨潇翔
付攀玉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201410135606.6A priority Critical patent/CN103944673B/en
Publication of CN103944673A publication Critical patent/CN103944673A/en
Application granted granted Critical
Publication of CN103944673B publication Critical patent/CN103944673B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Error Detection And Correction (AREA)

Abstract

The invention discloses a low-delay progressive decoding method suitable for rateless codes. According to the method, a serial BP decoding algorithm with verification nodes as a decoding sequence is adopted, the decoding complexity is halved compared with that of a common BP decoding algorithm, decoding is started earlier, a result of fore decoding is utilized in latter decoding, and the method is quite suitable for the flow attribute of the rateless codes. In addition, according to the method, parallel execution is carried out on the linear operation in the BP decoding process by adopting a function based on SSE instruction set optimization, different code data are decoded by starting multiple threads, and the parallel computing power of a CPU is fully utilized. Furthermore, a table look-up method is adopted in complex nonlinear function calculation, the complexity of the decoding operation is further reduced, and thus the delay of the decoding of the rateless codes is lowered and minimized.

Description

A kind of progressive interpretation method of low time delay of applicable no-rate codes
Technical field
The present invention relates to the communications field without speed decoding technique, relate in particular to a kind of progressive interpretation method of low time delay of applicable no-rate codes.
Background technology
General chnnel coding, when design, is first estimated channel parameter according to channel condition information conventionally, is fixed as the channel error correction coding (obtain n output symbol by k incoming symbol, code check is R=k/n) of R according to code check of channel parameter design.When the channel parameter of estimating is greater than actual channel parameter, although can realize transmitting, caused the waste of transmission, because now can use the channel error correction coding of higher code check; When the channel parameter of estimating is less than actual channel parameter, can not realize transmitting, now need the channel error correction coding of lower code check.And many times, channel still changes at any time or cannot judge in advance, these traditional codings just seemed and were difficult to deal with this time.So there is the no-rate codes that code check is variable.For no-rate codes, the coded data packet being produced by initial data produces continually along with cataloged procedure, the amount doesn't matter according to the needs of decoding, as long as guarantee decoding success.The code check of actual transmissions depends on the encoded packets number of actual transmission, needs the encoded packets number sending to depend on channel conditions at that time.
No-rate codes has three important property: 1) adaptive link rate adapted: its final speed is decided by the characteristic of channel, need to before transmission, not estimate the characteristic of channel and cbr (constant bit rate), and the code check of actual transmissions depends on channel conditions at that time.2) without speed attribute (stream attribute): transmitting terminal is output encoder bag endlessly, form one can Hold coding packet flow, and without any rate constraint; 3) bucket ponding effect: receiving terminal is constantly collected encoded packets, collects abundant encoded packets and can recover all raw data packets.Three important property just because of no-rate codes, make it at broadcast channel, cognition, and Internet Transmission, the larger various aspects such as communication situation of feedback cost are with a wide range of applications.
The decoding algorithm that no-rate codes is conventional has limit null method and BP(to put information) decoding algorithm.Because limit null method is only applicable to except deleting channel, what generally adopt is BP decoding algorithm.To conventional BP decoding algorithm, the process of an iteration be for, first to all limits, upgrade the information of putting that passes to check-node from variable node; Then to all limits, upgrade the information of putting of the node from check-node to variable; Then calculate the information of the putting sum of all variable nodes, and variable node is carried out to hard decision; Judge whether the variable node after hard decision meets verification relation, if meet or surpass maximum iteration time, finish decoding, otherwise proceed next round iteration.Due to upgrade check-node pass to variable node put information time, can relate to the multiplication and division computing of more complicated, so the complexity of BP decoding algorithm is relatively high.Conventionally BP decoding is all to complete by hardware.Someone had proposed new serial BP decoding algorithm afterwards.Serial BP decoding algorithm be take variable node or check-node and is put information as sequential update.Than common BP decoding algorithm, serial BP decoding algorithm is at every iteration complexity of taking turns identical in the situation that, and iterations will reduce half.
No-rate codes, in actual application, if decoding is carried out by CPU computing, even if adopted serial BP decoding algorithm, still exists decoding delay to be called the bottleneck of system throughput at present.Under special lower signal to noise ratio, because the iterations of BP decoding is more, add and in the process of iteration, have complicated nonlinear operation, cause decoding delay very large, seriously limited the throughput efficiency of system.
Summary of the invention
The object of the invention is for the deficiencies in the prior art, a kind of progressive interpretation method of low time delay of applicable no-rate codes is provided.
The object of the invention is to be achieved through the following technical solutions: a kind of progressive interpretation method of low time delay of applicable no-rate codes, serial BP decoding, progressive decoding, function parallel processing, look-up table and multithreading treatment technology based on the optimization of SSE instruction set have been adopted, the no-rate codes that this invention adopts is Raptor code, establishes v irepresent i variable node, c jrepresent j check-node; Ω (c j) represent and c jthe all variable nodes that are connected, C ji represent to remove v ioutside other and c jthe set of connected variable node; Ω (v i) represent and v ithe all check-nodes that are connected, use L ch(v i) expression v ithe initial LLR information that comes from channel, defined variable node v ito check-node c jthe LLR information of transmitting is L (q ij), check-node c jto variable node v ithe LLR information of transmitting is L (r ji), one time iteration finishes rear variable node v ilLR information sum be Q i.If N threadrepresent the number of threads of opening, the progressive interpretation method of low time delay that is applicable to no-rate codes is specific as follows:
1) receiving terminal constantly receives new encoded packets, if current code check lower than channel capacity, continues to wait for, receives new encoded packets, otherwise, enter step 2);
2) if decoding thread is also not activated or finishes, start N threadindividual serial BP decoding thread, to adding for the first time the LLR information sum Q of the variable node of decoding icarry out initialization as follows:
current iterations is set to 0, decoding Tanner figure is grown into size corresponding to the current encoded packets of receiving, enter 3);
3) each decoding thread, carries out the decoding of serial BP decoding algorithm to different coded datas, and decode procedure is as follows:
A) judge whether current iterations reaches maximum iteration time; If so, decoding finishes; Otherwise enter b);
B) press check-node order, from first check-node to last check-node by step c) and d) upgrade successively LLR information, then enter e);
C) to j check-node c j, upgrade and c jthe all variable nodes that are connected are taken turns and in iteration, are passed to c at this jlLR information { L (qi j) }:
To all v i∈ Ω (c j) calculate L (q ij)=Q i-L (r ji), Q i=Q i-L (r ji).Enter d);
D) upgrade check-node c jpass to the LLR information { L (r of all variable nodes that are attached thereto ji) and variable node LLR sum { Q i}:
To all v i∈ Ω (c j), q i=Q i+ L (r ji);
α wherein ij=sign[L (q ij)], sign[L (q ij)] expression L (q ij) symbol, β ij=| L (q ij) |, here value be to calculate by look-up table, ∏ represents to connect and takes advantage of, v i'represent set C jany variable node in i.
E) all variable nodes of LDPC code part are carried out to hard decision: v ^ i = 1 if Q i < 0 0 else , Enter f); the hard decision value that represents variable node;
F) judge whether court verdict meets verification and be 0.If meet verification relation, decoding finishes, and finishes decoding thread; Otherwise iterations adds 1, return a).
Further, step 3) steps d of the inside), calculating be by each circuit-switched data is carried out to computation of table lookup.Due to function successively decreases rapidly along with the increase of x, and x maximum is got to 6; The present invention's design function form is 0.01 by step footpath, has calculated [0,6] scope value, and is normalized to 100 times, and x surpasses 6 functional value gets 0.Therefore the LLR value of information of iteration is also all normalized to 100 times; In addition due to actual value be infinitely great, need to be with a larger value representation; the selection principle of value is to prevent { Q ilarge as much as possible under the prerequisite of overflowing.The present invention chooses value is 760.
Further, step 3) the step c of the inside) and steps d) plus and minus calculation be all the function parallel processing of optimizing based on SSE instruction set by using.
The invention has the beneficial effects as follows: the function method for parallel processing that the present invention uses serial BP decoding algorithm, progressive interpretation method, multithreading processing, look-up table and optimizes based on SSE instruction set, not only can well adapt to the transmission method of no-rate codes, and there is lower decoding delay.
Accompanying drawing explanation
Fig. 1 is the Tanner figure schematic diagram of Raptor code;
Embodiment
Below in conjunction with accompanying drawing, further illustrate the present invention.
The progressive interpretation method of low time delay of a kind of applicable no-rate codes of the present invention, serial BP decoding, progressive decoding, function parallel processing, look-up table and multithreading treatment technology based on the optimization of SSE instruction set have been adopted, the no-rate codes that this invention adopts is Raptor code, establishes v irepresent i variable node, c jrepresent j check-node; Ω (c j) represent and c jthe all variable nodes that are connected, C ji represent to remove v ioutside other and c jthe set of connected variable node; Ω (v i) represent and v ithe all check-nodes that are connected, use L ch(v i) expression v ithe initial LLR information that comes from channel, defined variable node v ito check-node c jthe LLR information of transmitting is L (q ij), check-node c jto variable node v ithe LLR information of transmitting is L (r ji), one time iteration finishes rear variable node v ilLR information sum be Q i.If N threadrepresent the number of threads of opening, the progressive interpretation method of low time delay that is applicable to no-rate codes is specific as follows:
1) receiving terminal constantly receives new encoded packets, if current code check lower than channel capacity, continues to wait for, receives new encoded packets, otherwise, enter step 2);
2) if decoding thread is also not activated or finishes, start N threadindividual serial BP decoding thread, to adding for the first time the LLR information sum Q of the variable node of decoding icarry out initialization as follows:
current iterations is set to 0, decoding Tanner figure is grown into size corresponding to the current encoded packets of receiving, enter 3);
3) each decoding thread, carries out the decoding of serial BP decoding algorithm to different coded datas, and decode procedure is as follows:
A) judge whether current iterations reaches maximum iteration time; If so, decoding finishes; Otherwise enter b);
B) press check-node order, from first check-node to last check-node by step c) and d) upgrade successively LLR information, then enter e);
C) to j check-node c j, upgrade and c jthe all variable nodes that are connected are taken turns and in iteration, are passed to c at this jlLR information { L (q ij) }:
To all v i∈ Ω (c j) calculate L (q ij)=Q i-L (r ji), Q i=Q i-L (r ji).Enter d);
D) upgrade check-node c jpass to the LLR information { L (r of all variable nodes that are attached thereto ji) and variable node LLR sum { Q i}:
To all v i∈ Ω (c j), q i=Q i+ L (r ji);
α wherein ij=sign[L (q ij)], sign[L (q ij)] expression L (q ij) symbol, β ij=| L (q ij) |, here value be to calculate by look-up table, ∏ represents to connect and takes advantage of, v i'represent set C jany variable node in i.
E) all variable nodes of LDPC code part are carried out to hard decision: v ^ i = 1 if Q i < 0 0 else , Enter f); the hard decision value that represents variable node;
F) judge whether court verdict meets verification and be 0.If meet verification relation, decoding finishes, and finishes decoding thread; Otherwise iterations adds 1, return a).
Further, step 3) steps d of the inside), calculating be by each circuit-switched data is carried out to computation of table lookup.Due to function successively decreases rapidly along with the increase of x, and x maximum is got to 6; The present invention's design function form is 0.01 by step footpath, has calculated [0,6] scope value, and is normalized to 100 times, and x surpasses 6 functional value gets 0.Therefore the LLR value of information of iteration is also all normalized to 100 times; In addition due to actual value be infinitely great, need to be with a larger value representation; the selection principle of value is to prevent { Q ilarge as much as possible under the prerequisite of overflowing.The present invention chooses value is 760.
Further, step 3) the step c of the inside) and steps d) plus and minus calculation be all the function parallel processing of optimizing based on SSE instruction set by using.

Claims (3)

1. the progressive interpretation method of low time delay of an applicable no-rate codes, it is characterized in that, the method has adopted serial BP decoding, progressive decoding, function parallel processing, look-up table and multithreading treatment technology based on the optimization of SSE instruction set, and the no-rate codes that this invention adopts is Raptor code, establishes v irepresent i variable node, c jrepresent j check-node; Ω (c j) represent and c jthe all variable nodes that are connected, C ji represent to remove v ioutside other and c jthe set of connected variable node; Ω (v i) represent and v ithe all check-nodes that are connected, use L ch(v i) expression v ithe initial LLR information that comes from channel, defined variable node v ito check-node c jthe LLR information of transmitting is L (q ij), check-node c jto variable node v ithe LLR information of transmitting is L (r ji), one time iteration finishes rear variable node v ilLR information sum be Q i, establish N threadrepresent the number of threads of opening, the progressive interpretation method of low time delay that is applicable to no-rate codes is specific as follows:
1) receiving terminal constantly receives new encoded packets, if current code check lower than channel capacity, continues to wait for, receives new encoded packets, otherwise, enter step 2);
2) if decoding thread is also not activated or finishes, start N threadindividual serial BP decoding thread, to adding for the first time the LLR information sum Q of the variable node of decoding icarry out initialization as follows:
current iterations is set to 0, decoding Tanner figure is grown into size corresponding to the current encoded packets of receiving, enter 3);
3) each decoding thread, carries out the decoding of serial BP decoding algorithm to different coded datas, and decode procedure is as follows:
A) judge whether current iterations reaches maximum iteration time; If so, decoding finishes; Otherwise enter b);
B) press check-node order, from first check-node to last check-node by step c) and d) upgrade successively LLR information, then enter e);
C) to j check-node c j, upgrade and c jthe all variable nodes that are connected are taken turns and in iteration, are passed to c at this jlLR information { L (q ij) }:
To all v i∈ Ω (c j) calculate L (q ij)=Q i-L (r ji), Q i=Q i-L (r ji), enter d);
D) upgrade check-node c jpass to the LLR information { L (r of all variable nodes that are attached thereto ji) and variable node LLR sum { Q i}:
To all v i∈ Ω (c j), q i=Q i+ L (r ji);
α wherein ij=sign[L (q ij)], sign[L (q ij)] expression L (q ij) symbol, β ij=| L (q ij) |, here value be to calculate by look-up table, ∏ represents to connect and takes advantage of, v i'represent set C jany variable node in i;
E) all variable nodes of LDPC code part are carried out to hard decision: v ^ i = 1 if Q i < 0 0 else , Enter f); the hard decision value that represents variable node;
F) judge whether court verdict meets verification and be 0, if meet verification relation, decoding finishes, and finishes decoding thread; Otherwise iterations adds 1, return a).
2. the progressive interpretation method of low time delay of a kind of applicable no-rate codes according to claim 1, is characterized in that step 3) the inside steps d), calculating be by each circuit-switched data is carried out to computation of table lookup, due to function successively decreases rapidly along with the increase of x, and x maximum is got to 6; The present invention's design function form is 0.01 by step footpath, has calculated [0,6] scope value, and is normalized to 100 times, and x surpasses 6 functional value gets 0, so the LLR value of information of iteration is also all normalized to 100 times; In addition due to actual value be infinitely great, need to be with a larger value representation; the selection principle of value is to prevent { Q ilarge as much as possible under the prerequisite of overflowing, the present invention chooses value is 760.
3. the progressive interpretation method of low time delay of a kind of applicable no-rate codes according to claim 1, is characterized in that step 3) the step c of the inside) and steps d) plus and minus calculation be all the function parallel processing of optimizing based on SSE instruction set by using.
CN201410135606.6A 2014-04-04 2014-04-04 A kind of low time delay progressive interpretation method of suitable no-rate codes Active CN103944673B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410135606.6A CN103944673B (en) 2014-04-04 2014-04-04 A kind of low time delay progressive interpretation method of suitable no-rate codes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410135606.6A CN103944673B (en) 2014-04-04 2014-04-04 A kind of low time delay progressive interpretation method of suitable no-rate codes

Publications (2)

Publication Number Publication Date
CN103944673A true CN103944673A (en) 2014-07-23
CN103944673B CN103944673B (en) 2017-11-03

Family

ID=51192180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410135606.6A Active CN103944673B (en) 2014-04-04 2014-04-04 A kind of low time delay progressive interpretation method of suitable no-rate codes

Country Status (1)

Country Link
CN (1) CN103944673B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104935411A (en) * 2015-06-18 2015-09-23 浙江大学 Rateless code joint degree dynamic decoding method based on diversity
CN106911621A (en) * 2017-01-03 2017-06-30 浙江大学 A kind of channel equalization and tracking based on V OFDM
CN109450594A (en) * 2018-10-11 2019-03-08 浙江工业大学 The no-rate codes degree distribution optimization method of cloud access network uplink

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202549A (en) * 2007-08-14 2008-06-18 东南大学 Method for improving standard degree of confidence propagation decoding performance

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202549A (en) * 2007-08-14 2008-06-18 东南大学 Method for improving standard degree of confidence propagation decoding performance

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
NAZANIN RAHNAVARD: "Rateless Codes With Unequal Error Protection Property", 《IEEE TRANSACTIONS ON INFORMATION THEORY》 *
吕谷: "深空通信中喷泉码编译码算法研究", 《中国优秀硕士学位论文全文数据库》 *
吴可镝: "无线通信系统中无速率码的编译码技术与应用研究", 《中国博士学位论文全文数据库》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104935411A (en) * 2015-06-18 2015-09-23 浙江大学 Rateless code joint degree dynamic decoding method based on diversity
CN104935411B (en) * 2015-06-18 2018-03-06 浙江大学 A kind of no-rate codes joint number of degrees dynamic decoding method based on diversity
CN106911621A (en) * 2017-01-03 2017-06-30 浙江大学 A kind of channel equalization and tracking based on V OFDM
CN106911621B (en) * 2017-01-03 2020-01-21 浙江大学 Channel equalization and tracking method based on V-OFDM
CN109450594A (en) * 2018-10-11 2019-03-08 浙江工业大学 The no-rate codes degree distribution optimization method of cloud access network uplink
CN109450594B (en) * 2018-10-11 2021-01-19 浙江工业大学 Rate-free code degree distribution optimization method for uplink of cloud access network

Also Published As

Publication number Publication date
CN103944673B (en) 2017-11-03

Similar Documents

Publication Publication Date Title
CN105187073B (en) A kind of the BP interpretation methods and device of polarization code
CN107395324B (en) Low-decoding-complexity rate-matching polarization code transmission method based on QUP method
CN108462558B (en) Method and device for decoding polarization code SCL and electronic equipment
CN109586730A (en) It is a kind of based on the polarization code BP decoding algorithm intelligently post-processed
CN108039891B (en) Polarization code BP decoding method and device based on multistage updating process
CN101425871B (en) Multi-element error correcting code transmitting and receiving apparatus, data communication system and related method
CN107911195B (en) CVA-based tail-biting convolutional code channel decoding method
CN101132252B (en) Quantified minimizing and coding method for low-density parity code
CN1770641A (en) Minimal sum decoding method based on grading excursion correction
CN105356971A (en) SCMA decoder based on probability calculation
CN109981112A (en) A kind of sequencing statistical decoding method of partial cyclic redundancy check auxiliary
CN104954099B (en) The optimum design method without rate code is accumulated under decoding iteration count constraint
CN104092468A (en) LDPC linear programming decoding method based on acceleration alternating direction multiplier method
CN103944673A (en) Low-delay progressive decoding method suitable for rateless codes
CN102064917B (en) Demodulation decoding method for LDPC (Low Density Parity Code) modulation system
CN101562456A (en) Code assisting frame synchronizing method based on soft decoding information of low-density parity check codes
CN101262232A (en) A decoding algorithm for overlapping coding multiplexing
CN109194336B (en) Method, system and device for coding and decoding cascade Spinal code
CN103501182B (en) A kind of blind estimating method of convolutional code generator polynomial
CN109495116A (en) The SC-BP hybrid decoding method of polarization code and its adjustable hardware structure
CN102832954B (en) Turbo code iterative decoding stopping method based on soft information average minimum value
CN111641473B (en) Method for shortening polarization code and communication method and system
CN108933606B (en) System convolutional code blind identification method of error-tolerant code
CN107707333B (en) Method and device for stopping early iteration of polarization code based on code word estimated value
CN107612557B (en) Improved Shuffled BP algorithm

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant