WO2021164064A1 - Method and device for channel coding and error correction decoding, and storage medium - Google Patents

Method and device for channel coding and error correction decoding, and storage medium Download PDF

Info

Publication number
WO2021164064A1
WO2021164064A1 PCT/CN2020/078295 CN2020078295W WO2021164064A1 WO 2021164064 A1 WO2021164064 A1 WO 2021164064A1 CN 2020078295 W CN2020078295 W CN 2020078295W WO 2021164064 A1 WO2021164064 A1 WO 2021164064A1
Authority
WO
WIPO (PCT)
Prior art keywords
error correction
error
sequence
channel
vector
Prior art date
Application number
PCT/CN2020/078295
Other languages
French (fr)
Chinese (zh)
Inventor
王杰林
Original Assignee
湖南遥昇通信技术有限公司
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 湖南遥昇通信技术有限公司 filed Critical 湖南遥昇通信技术有限公司
Publication of WO2021164064A1 publication Critical patent/WO2021164064A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1177Regular LDPC codes with parity-check matrices wherein all rows and columns have the same row weight and column weight, respectively

Definitions

  • the present invention relates to the field of data communication technology, in particular to a channel coding and error correction decoding method, device and storage medium.
  • the purpose of the present invention is to solve at least one of the technical problems existing in the prior art, and to provide a channel coding and error correction decoding method, device and storage medium.
  • a channel coding and error correction decoding method which includes the following steps:
  • the sending end preprocesses the vector X to obtain a vector X', and performs binary weighted encoding on the vector X'; wherein the vector X'after the preprocessing satisfies the following conditions:
  • X′ i is the first vector X′ i characters
  • r is the weight coefficient
  • F(X′ i -1,r) is the weighted cumulative distribution function of X′ i
  • n is the total The number of characters in the vector X′;
  • the transmitting end sends the sequence V to the receiving end via the BDMC channel;
  • S303 If the second error correction sequence does not meet the condition 1, S m bits are selected forward along the last character in the first error correction sequence as the third error correction sequence, and the S m bits Character is the maximum error correction range of the first error correction sequence;
  • This method first performs preprocessing of adding symbols to the input vector of the BDMC channel, and performs binary weighted coding on the preprocessed input vector to achieve lossless coding of the input vector and increase the transmission rate of the channel; Error correction decoding, when judging the decoding, by judging whether the decoded vector is the law of symbol preprocessing, error detection and error correction are performed. It is proved by theory and experiment that as the code length of the input vector becomes longer and the BDMC channel transmission rate approaches the channel capacity, the bit error rate in the vector after error correction and decoding of this method approaches 0, and the bit error rate is better than Polar codes and LDPC codes.
  • the method further includes the following steps:
  • the traversing all the error positions in the third error correction sequence, and correcting the error positions in order specifically includes the following steps:
  • sorting rules are as follows: first sort from small to large according to the value of e, and then sort from back to front according to the position of the bit error;
  • the BDMC channel includes a BSC channel and a BEC channel.
  • a channel coding and error correction decoding device including: at least one control processor and a memory for communicating with the at least one control processor; An instruction executed by the at least one control processor, the instruction being executed by the at least one control processor, so that the at least one control processor can execute the above-mentioned channel coding and error correction decoding method.
  • a computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to cause a computer to execute a channel encoding and Error correction decoding method.
  • FIG. 1 is a schematic flowchart of a channel coding and error correction decoding method provided by an embodiment of the present invention
  • FIG. 2 is a schematic diagram of p corr changing with ⁇ when the characters of the channel output vector Y are 0 and 1 provided by an embodiment of the present invention
  • FIG. 3 is a schematic diagram of p corr changing with ⁇ when the characters of the channel output vector Y are 0, 1, and e provided by an embodiment of the present invention
  • FIG. 4 is a schematic diagram of the error detection probability p corr obtained from formula (1-5) and formula (1-6) as a function of l according to an embodiment of the present invention
  • FIG. 5 is a schematic diagram of the error detection probability p corr obtained from equations (1-5) and (1-7) as a function of l according to an embodiment of the present invention
  • Fig. 6 is a schematic diagram of weighted model coding provided by an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of the relationship between the maximum error correction range S m , the minimum error detection length l m and the value of V provided by an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of the relationship between signal-to-noise ratio E b /N s (SNR) and p e according to an embodiment of the present invention
  • FIG. 9 is a schematic diagram of performance comparison of four encoding methods provided by an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of a channel coding and error correction decoding device provided by an embodiment of the present invention.
  • an embodiment of the present invention provides a channel coding and error correction decoding method, including the following steps:
  • the sending end preprocesses the vector X to obtain a vector X', and performs binary weighted encoding on the vector X'; wherein the preprocessed vector X'satisfies the following conditions:
  • X′ i is the i-th in the vector X′ character
  • r is the weight coefficient
  • F(X′ i -1,r) is the weighted cumulative distribution function of X′ i
  • n is the vector The number of characters of X'.
  • the pretreatment process is explained as follows:
  • Preprocessing refers to adding symbols regularly.
  • method one and method two are taken as examples: method one is: add a symbol 0 after each symbol 1; method two is: add a symbol 0 after each symbol 1, and then every A symbol 1 is added after the symbol 0; it should be noted that the preprocessing method used in this method is not limited to method one and method two.
  • the original sequence is: 0111010110001;
  • c max in condition 1 is 0; when preprocessing adopts method two, then c max in condition 1 is 2;
  • the vector is preprocessed before being transmitted through the BDMC channel (binary discrete memoryless channel), so that the number of consecutive symbols 1 in the vector is less than or equal to c max .
  • the number of consecutive symbols 1 in the vector is less than It is equal to 2; this rule is the basis for judging whether the data is wrong or not; the preprocessing will reduce the transmission rate of the channel due to the addition of symbols, so binary weighted coding is used on the preprocessed vector to ensure the transmission of data rate.
  • errors may occur in the data due to noise interference in the BDMC channel, so the law of the binary sequence can be used to perform linear error detection and forward error correction during decoding.
  • is the bit error rate.
  • event A be that any position in the vector X satisfies "the number of consecutive symbols 0 is less than or equal to 1"
  • event B is that any position in the channel output vector Y satisfies "the number of consecutive symbols 0 is less than or equal to 1”.
  • the probability of event A is:
  • event C be that any position in the vector X satisfies "the number of consecutive symbols 1 is less than or equal to 2"; event D is that any position in the channel output vector Y satisfies "the number of consecutive symbols 1 is less than or equal to 2".
  • the probability of event C is:
  • any position of the vector X′ satisfies “each symbol 0 is separated by one or two symbols 1”, both criteria are satisfied.
  • the channel output vector Y can be judged by the event “the number of consecutive symbols 1 is greater than c max ” Whether an error occurred.
  • m sequences conform to the law of Method 1 or Method 2.
  • the probability of misjudgment p err is:
  • p corr 1-p err
  • p err is the probability that a binary sequence of l bits conforms to the law, and is the probability of finding an error in the vector Y.
  • p err is the probability that a bit error in the vector Y cannot be found in the event "the number of consecutive symbols 1 is greater than c max ".
  • m is the Fibonacci sequence of l (l ⁇ 1).
  • p corr can be calculated by (1-5), (1-6), (1-7).
  • F(X,r) unweighted cumulative distribution function abbreviated as weighted distribution function.
  • the set of weighted distribution functions satisfying (1-10) is defined as a weighted probability model, referred to as a weighted model, denoted as ⁇ F(X',r) ⁇ .
  • [L i+1 , Hi+1 ) uniquely corresponds to symbol 0, so the symbol 0 at position i+1 is correctly decoded by Li+3 , and the symbols at positions i+2 and i+3 1 and symbol 0 can also be decoded correctly.
  • This binary weighted model interval column has at least the following properties:
  • c max 1, the weighted probability of symbol 0 and symbol 1 is with When, the vector X'can be completely restored through L n.
  • the proof is as follows: Suppose the maximum value of 1 number of consecutive symbols in the vector X′ is c max , let Have Hypothesis but when When L n > H i+1 , and the above property 1 is not satisfied, the hypothesis does not hold, so
  • H(X, r max ) is called the information entropy of the weighted model.
  • the binary weighted coding method is a method of using probability weighting to achieve lossless coding and decoding. Since the binary weighted coding method can maintain the laws of random sequences during decoding, this embodiment uses these laws to implement error detection and correction.
  • traditional entropy coding artificially removes the known laws of random sequences and then encodes them. "Symbol 0 separated", the traditional entropy coding will replace the substring "10" in the binary sequence with the symbol 1, and then use the normalized probability to encode, so as to make the compression result close to the entropy limit.
  • the sending end preprocesses the vector X to obtain the vector X', and the process of performing binary weighted encoding on the vector X'is as follows:
  • the second step input the i-th symbol, if the i-th symbol is the symbol 0, go to the third step; if the i-th symbol is the symbol 1, then go to the fourth step.
  • the third step two encoded symbols 10, according to (1-13), (1-14) and the calculated value of L i R i, Go to step 5.
  • a fourth step three encoded symbols 101, according to (1-13), (1-14) and the calculated value of L i R i, Go to step 5.
  • the sending end sends the sequence V to the receiving end via the BDMC channel.
  • the BSC Binary Symmetric Channel
  • the BEC Binary Erasure Channel
  • S302 Decoding backward along the first character in the first error correction sequence to obtain l m bits as the second error correction sequence, and l m bits are the minimum decoding length for checking that a bit error must occur in the first error correction sequence.
  • the minimum decoding length (that is, l m bits) is different.
  • step S303 If the second error correction sequence meets the condition 1, the error correction of the first error correction sequence is completed and m-bit characters are decoded, and the next set of m-bit characters is obtained as the updated first error correction sequence, and Jump to step S302; if the second error correction sequence does not meet the condition 1, S m bits are selected forward along the last character in the first error correction sequence as the third error correction sequence, and the S m bit character is the first The maximum error correction range of the error correction sequence.
  • the BSC channel error correction can be achieved by bit negation; the BEC channel error correction can be achieved by replacing the symbol e in V with the symbol 1.
  • the maximum error correction range (ie, S m bits) is different.
  • the second step is to give the interval superscript value of the i-th symbol 0 according to the above formulas (1-12), (1-13), (1-14): Go to the third step;
  • the third step judge V and The size, if Then get the symbol 0, go to step 4; if Then get the symbol 1, go to the fifth step;
  • Step 4 If the previous symbol is 0, output the symbol 0 and go to step 6; otherwise, if an error occurs in the current 3m bits in V, go to step 7;
  • Step 5 If the previous symbol is 10, output the symbol 1, and go to Step 6; otherwise, if an error occurs in the current 3m bits in V, go to Step 7;
  • the seventh step is to traverse all possible errors in the 3m bits, and negate the bit corresponding to the traversed error position, and then V is updated. Then use the current 3m bit new V value to decode A binary sequence of bits. If the sequence conforms to the law "each symbol 0 is separated by one or two symbols 1", the error has been corrected; otherwise, it continues to traverse the next possible error.
  • the eighth step the decoding is completed.
  • the error correction process of the BSC channel is divided into the following steps.
  • the first step is to obtain the 1st to mth bits in V in order, a total of m bits.
  • the second step is to decode backward at least l m (here ) Binary sequence of bits, if the sequence conforms to the rule "each symbol 0 is separated by one or two symbols 1", the binary sequence decoded by the current m bits is output; if the sequence does not conform to the rule, the mth Starting from a bit position, the error correction of 3m bits is carried out forward, and the error correction is carried out according to the actual length when it is less than 3m bits. Bit errors may appear anywhere in the 3m bits.
  • the third step is to traverse all the error positions in the 3m bits. Assuming that there are at most e bit errors in the 3m bits, there are a total of error bit positions Kind of possibility. will There are two possibilities for sorting, first sorting from small to large according to the value of e, and then sorting from back to front according to the position of the error bit.
  • the error correction process is to traverse in order
  • the symbol 1 represents the position of the error bit
  • the corresponding position of the 3m bits obtained in V is negated.
  • the probability of the first type of erroneous bit position is 000001
  • the bit position of 101100 is negated according to the bit position corresponding to 1 in the first possibility. Get 101101.
  • V is updated after negation, and then taking the first negation position as the starting point, obtain the m bits (denoted as m′) in the updated V value, and decode it backwards
  • m′ m bits
  • the fourth step is to obtain the m+1 to 2mth bits in the V value, repeat the third and fourth steps to perform error correction decoding, and iterate accordingly.
  • the fifth step is to correct errors at the end of V, because the value of V is not enough to decode l m bits at the end.
  • the value of 0 can be added after the value of V and then decoded for m bits. Obviously, the part that exceeds the total length of the vector X can only output the symbol 0. If the output symbol 1, it means that the last part of V is transmitted incorrectly. Since the total length (denoted as n) of the vector X sent by the sender is known, m bits are output after adding 0. If the symbol 1 is output at the bit position greater than n, it means that a bit occurred in the last 3m bits of V Errors can be corrected through the third step.
  • the BEC channel can also use the above-mentioned error correction decoding method.
  • V when V is received, there are t error symbols e in the current m bits, and the symbol e is replaced with the symbol 1, so the BEC channel performs error correction decoding by traversing 2 t error possibilities.
  • the binary weighted coding method is linear, and any bit error in V will cause all subsequent decoding results to be wrong.
  • the bit error rate in the channel output vector Y approaches 0 after error correction by the binary weighted coding method.
  • bit error rate of the BPSK signal BSC channel is:
  • c max 1, the weighted probability of symbol 0 and symbol 1 is with When the vector X′” can be completely restored by L n
  • each binary symbol carries 1 bit of information
  • each binary symbol carries 1.5849625 bits of information
  • the average bit can carry after encoding
  • the amount of information is (bit). If the channel inputs n symbols, and the total amount of information is n H(X)(bit), then the total amount of information transmitted by the vector X through the BDMC channel is (bit), that is, the average amount of information that each symbol can transmit in the BDMC channel is (bit/symbol).
  • the code rate based on binary weighted coding is:
  • the bit error rate in the channel output vector Y after the BDMC channel undergoes the binary weighted coding method error correction decoding is p err .
  • the BSC channel transmission rate R BSC and the BEC channel transmission rate R BEC are:
  • p e is the probability that the binary weighted coding method cannot correct errors.
  • e the lower the signal-to-noise ratio required by the binary weighted coding method is.
  • p corr the probability of error detection
  • all cases where the binary weighted coding method cannot correct errors can be found.
  • Above may be constructed error detection and retransmission channel coding algorithm in one of the forward error correction, i.e., the existence probability 1-p e directly correction, the existence probability p e to be re-transmitted.
  • the polarization code is constructed based on the CRC-Asistant SCL decoding algorithm (CRC-Asistant SCL) assisted by the cyclic redundancy code (CRC).
  • the list size is 32 and the maximum size is 1024.
  • the simulation experiment shows that the performance comparison of the four coding methods is shown in Fig. 9, and the number of simulation frames is greater than 10 5 .
  • Figure 9 shows that the error correction performance of the method in this paper is better than that of LDPC codes and polar codes.
  • the binary weighted coding method has a gain of 0.6dB compared with Polar codes and 0.8 ⁇ 1.0dB compared with LDPC codes. The gain.
  • the input vector of the BDMC channel is preprocessed by adding symbols through the transmitting end, and binary weighted coding is performed on the preprocessed input vector to realize the input vector Lossless coding increases the channel transmission rate; the receiving end performs error correction decoding after receiving the data, and performs error detection and correction by judging whether the decoded vector is the law of symbol preprocessing during decoding. It is proved by theory and experiment that as the code length of the input vector becomes longer and the BDMC channel transmission rate approaches the channel capacity, the bit error rate in the vector after error correction and decoding of this method approaches 0, and the bit error rate is better than Polar codes and LDPC codes.
  • the method is easy to implement by software and hardware, can adapt to the interference situation of the channel, and can improve the error correction ability by increasing the code length and the value of the BDMC channel transmission rate.
  • an embodiment of the present invention also provides a channel coding and error correction decoding device
  • the channel coding and error correction decoding device can be any type of smart terminal, such as mobile phones, tablet computers, personal computers Wait.
  • the channel coding and error correction decoding device includes: one or more control processors and memories.
  • a control processor is taken as an example.
  • the control processor and the memory can be connected through a bus or in other ways.
  • the connection through a bus is taken as an example.
  • the memory can be used to store non-transitory software programs, non-transitory computer-executable programs and modules, such as those corresponding to the channel coding and error correction decoding device in the embodiment of the present invention
  • the program instructions/modules control the processor to implement the channel coding and error correction decoding methods described in the foregoing embodiments by running non-transitory software programs, instructions, and modules stored in the memory.
  • the memory may include a program storage area and a data storage area.
  • the program storage area may store an operating system and an application program required by at least one function; the data storage area may store generated data.
  • the memory may include a high-speed random access memory, and may also include a non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices.
  • the memory may optionally include a memory remotely provided with respect to the control processor, and these remote memories may be connected to the channel coding and error correction decoding device through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
  • the one or more modules are stored in the memory, and when executed by the one or more control processors, a channel coding and error correction decoding method in the foregoing method embodiment is executed.
  • An embodiment of the present invention also provides a computer-readable storage medium that stores computer-executable instructions, and the computer-executable instructions are executed by one or more control processors, for example, as shown in FIG. 10
  • the execution of a control processor in the above-mentioned one or more control processors can execute a channel coding and error correction decoding method in the above-mentioned method embodiment.
  • the device embodiments described above are merely illustrative, and the units described as separate components may or may not be physically separated, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • each implementation manner can be implemented by means of software plus a general hardware platform.
  • All or part of the processes in the methods of the above embodiments can be implemented by computer programs instructing relevant hardware.
  • the programs can be stored in a computer readable storage medium. At this time, it may include the flow of the embodiment of the above-mentioned method.
  • the storage medium may be a magnetic disk, an optical disc, a read-only memory (Read Only Memory, ROM), or a random access memory (Random Access Memory, RAM), etc.

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

Disclosed are a method and device for channel coding and error correction decoding, and a storage medium. The method: first, performing preprocessing for adding a symbol to an input vector of a BDMC channel, performing binary weighted coding with respect to the preprocessed input vector to implement lossless coding of the input vector, and increasing the rate of channel transmission; then performing error correction decoding with respect to received data, and determining, when decoding, whether a decoded vector is a pattern for symbol preprocessing so as to perform error detection and error correction. Theory and experiments prove that as the code length of the input vector gets longer and the transmission rate of the BDMC channel approaches channel capacity, the bit error rate in the vector error correction decoded per the present method approaches 0, and the bit error rate is better than polar codes and LDPC codes. The present invention is easy to implement by software and hardware, is self-adaptive to cases of channel interference, and increases error correction capacity by increasing code length and the transmission rate of the BDMC channel.

Description

一种信道编码和纠错译码方法、设备以及存储介质Channel coding and error correction decoding method, equipment and storage medium 技术领域Technical field
本发明涉及数据通信技术领域,特别涉及一种信道编码和纠错译码方法、设备以及存储介质。The present invention relates to the field of data communication technology, in particular to a channel coding and error correction decoding method, device and storage medium.
背景技术Background technique
为了构造逼近信道容量的编码方法,专家学者们付出了不懈努力。2009年,Arikan提出了基于信道极化现象,在码长趋近于无限时被严格证明容量可达的编码方法,称为极化码(PolarCode)。极化码需要大量的运算才能极化出干净信道,否则极化性能有限。极化码无法适应于信道的瞬时干扰。而LDPC码理论上无法达到信道容量(香农限)。显然,在海量数据传输、数据高速可靠传输应用中发掘新的算法极其重要。In order to construct a coding method that approximates the channel capacity, experts and scholars have made unremitting efforts. In 2009, Arikan proposed a coding method based on the channel polarization phenomenon, which is strictly proved to be capable of capacity when the code length approaches infinity, called Polar Code. Polarization codes require a lot of calculations to polarize a clean channel, otherwise the polarization performance is limited. The polarization code cannot adapt to the instantaneous interference of the channel. In theory, the LDPC code cannot reach the channel capacity (Shannon limit). Obviously, it is extremely important to discover new algorithms in the application of massive data transmission and high-speed and reliable data transmission.
发明内容Summary of the invention
本发明的目的在于至少解决现有技术中存在的技术问题之一,提供了一种信道编码和纠错译码方法、设备以及存储介质。The purpose of the present invention is to solve at least one of the technical problems existing in the prior art, and to provide a channel coding and error correction decoding method, device and storage medium.
根据本发明的实施例,提供了一种信道编码和纠错译码方法,包括以下步骤:According to an embodiment of the present invention, a channel coding and error correction decoding method is provided, which includes the following steps:
S100、发送端将矢量X进行预处理得到矢量X′,并对所述矢量X′进行二元加权编码;其中,预处理之后的所述矢量X′满足以下条件:S100. The sending end preprocesses the vector X to obtain a vector X', and performs binary weighted encoding on the vector X'; wherein the vector X'after the preprocessing satisfies the following conditions:
条件1、连续的符号1个数小于或等于c max(c max=0,1,2,…);条件2、
Figure PCTCN2020078295-appb-000001
Figure PCTCN2020078295-appb-000002
Condition 1. The number of consecutive symbols is less than or equal to c max (c max =0,1,2,...); condition 2.
Figure PCTCN2020078295-appb-000001
Figure PCTCN2020078295-appb-000002
所述二元加权编码的过程如下:The process of the binary weighted coding is as follows:
根据编码公式
Figure PCTCN2020078295-appb-000003
L i=L i-1R i-1F(X′ i-1,r)对所述矢量X′进行编码,令编码后的L n=V;其中,X′ i为矢量X′中第i个字符,
Figure PCTCN2020078295-appb-000004
r为权系数,F(X′ i-1,r)为X′ i的加权累计分布函数,R 0=1,L 0=0,i∈(1,2,…,n),n为所述矢量X′的字符数;
According to the coding formula
Figure PCTCN2020078295-appb-000003
L i =L i-1 R i-1 F(X′ i -1,r) encodes the vector X′, and sets the encoded L n =V; where X′ i is the first vector X′ i characters,
Figure PCTCN2020078295-appb-000004
r is the weight coefficient, F(X′ i -1,r) is the weighted cumulative distribution function of X′ i , R 0 =1, L 0 =0, i∈(1,2,...,n), n is the total The number of characters in the vector X′;
S200、发送端将序列V经BDMC信道发送至接收端;S200. The transmitting end sends the sequence V to the receiving end via the BDMC channel;
S300、接收端接收所述序列V后,对所述序列V进行纠错译码:S300. After receiving the sequence V, the receiving end performs error correction decoding on the sequence V:
S301、以m个比特字符为窗口,获取所述序列V中连续m个比特作为第一纠错序列;S301: Using m-bit characters as a window, obtain m consecutive bits in the sequence V as a first error correction sequence;
S302、沿所述第一纠错序列中的首字符向后译码出l m个比特作为第二纠错序列,所述l m个比特为检验所述第一纠错序列必然发生比特错误的最小译码长度; S302. Decoding backward along the first character in the first error correction sequence to obtain l m bits as a second error correction sequence, and the l m bits are for checking that a bit error will inevitably occur in the first error correction sequence. Minimum decoding length;
S303、若所述第二纠错序列不符合所述条件1,则沿所述第一纠错序列中的尾字符向前选取S m个比特作为第三纠错序列,所述S m个比特字符为所述第一纠错序列的最大纠错范围; S303. If the second error correction sequence does not meet the condition 1, S m bits are selected forward along the last character in the first error correction sequence as the third error correction sequence, and the S m bits Character is the maximum error correction range of the first error correction sequence;
S304、遍历所述第三纠错序列中所有的错误位置,按序对错误位置进行更正并且在每次更正一个错误位置后进行以下处理:S304. Traverse all the error positions in the third error correction sequence, correct the error positions in order, and perform the following processing after each error position is corrected:
根据更正错误位置后的所述第三纠错序列对所述第一纠错序列、以及所述第二纠错序列进行对应位置的更正;Correcting the corresponding positions of the first error correction sequence and the second error correction sequence according to the third error correction sequence after the error position is corrected;
判断更正后的所述第二纠错序列是否符合所述条件1,若符合,则所述第一纠错序列纠错完成并译码出m个比特字符;若不符合,则更正下一个错误位置。Determine whether the corrected second error correction sequence meets the condition 1, if it does, then the first error correction sequence has completed the error correction and decoded m-bit characters; if it does not, correct the next error Location.
本发明实施例提供的一种信道编码和纠错译码方法,至少具有以下有益效果:The channel coding and error correction decoding method provided by the embodiment of the present invention has at least the following beneficial effects:
本方法首先对BDMC信道的输入矢量进行添加符号的预处理,对预处理后的输入矢量进行二元加权编码以实现对输入矢量的无损编码,提升信道传输的速率;然后对接收到数据后进行纠错译码,判断译码时通过判断译码出矢量是否符号预处理时的规律而进行检错纠错。通过理论和实验证明随着输入矢量的码长越长以及BDMC信道传输速率趋近于信道容量时,本方法纠错译码后的矢量中的误比特率趋近于0,误比特率优于极化码和LDPC码。This method first performs preprocessing of adding symbols to the input vector of the BDMC channel, and performs binary weighted coding on the preprocessed input vector to achieve lossless coding of the input vector and increase the transmission rate of the channel; Error correction decoding, when judging the decoding, by judging whether the decoded vector is the law of symbol preprocessing, error detection and error correction are performed. It is proved by theory and experiment that as the code length of the input vector becomes longer and the BDMC channel transmission rate approaches the channel capacity, the bit error rate in the vector after error correction and decoding of this method approaches 0, and the bit error rate is better than Polar codes and LDPC codes.
根据本发明的一些实施例,所述第一纠错序列纠错完成并译码出m个比特字符之后,还包括以下步骤:According to some embodiments of the present invention, after the error correction of the first error correction sequence is completed and m-bit characters are decoded, the method further includes the following steps:
获取下一组连续m个比特字符作为更新后的第一纠错序列,并跳转至步骤S302。Obtain the next set of consecutive m-bit characters as the updated first error correction sequence, and jump to step S302.
根据本发明的一些实施例,所述遍历所述第三纠错序列中所有的错误位置,按序对错误位置进行更正,具体包括以下步骤:According to some embodiments of the present invention, the traversing all the error positions in the third error correction sequence, and correcting the error positions in order, specifically includes the following steps:
遍历所述第三纠错序列中所有的错误位置,设所述第三纠错序列中最多出现e个比特错误,则计算比特错误的位置的可能性为
Figure PCTCN2020078295-appb-000005
种;
Traverse all the error positions in the third error correction sequence, and suppose that there are at most e bit errors in the third error correction sequence, then the probability of calculating the position of the bit error is
Figure PCTCN2020078295-appb-000005
kind;
Figure PCTCN2020078295-appb-000006
种可能性进行排序,排序的规则如下:首先根据e值从小至大排序,然后根据比特错误的位置从后向前排序;
will
Figure PCTCN2020078295-appb-000006
There are two possibilities for sorting, and the sorting rules are as follows: first sort from small to large according to the value of e, and then sort from back to front according to the position of the bit error;
按序将错误位置进行比特取非。Perform bit negation on the error position in sequence.
根据本发明的一些实施例,所述BDMC信道包括BSC信道以及BEC信道。According to some embodiments of the present invention, the BDMC channel includes a BSC channel and a BEC channel.
根据本发明的实施例,提供了一种信道编码和纠错译码设备,包括:至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行如上述的一种信道编码和纠错译码方法。According to an embodiment of the present invention, there is provided a channel coding and error correction decoding device, including: at least one control processor and a memory for communicating with the at least one control processor; An instruction executed by the at least one control processor, the instruction being executed by the at least one control processor, so that the at least one control processor can execute the above-mentioned channel coding and error correction decoding method.
根据本发明的实施例,提供了一种计算机可读存储介质,所述计算机可读存储介质存储 有计算机可执行指令,所述计算机可执行指令用于使计算机执行如上述的一种信道编码和纠错译码方法。According to an embodiment of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to cause a computer to execute a channel encoding and Error correction decoding method.
附图说明Description of the drawings
下面结合附图和实施例对本发明进一步地说明;The present invention will be further described below with reference to the drawings and embodiments;
图1为本发明实施例提供的一种信道编码和纠错译码方法的流程示意图;FIG. 1 is a schematic flowchart of a channel coding and error correction decoding method provided by an embodiment of the present invention;
图2为本发明实施例提供的信道输出矢量Y的字符为0和1时,p corr随ξ变化的示意图; 2 is a schematic diagram of p corr changing with ξ when the characters of the channel output vector Y are 0 and 1 provided by an embodiment of the present invention;
图3为本发明实施例提供的信道输出矢量Y的字符为0、1和e时,p corr随ξ变化的示意图; 3 is a schematic diagram of p corr changing with ξ when the characters of the channel output vector Y are 0, 1, and e provided by an embodiment of the present invention;
图4为本发明实施例提供的由式(1-5)和式(1-6)得到检错概率p corr随l变化的示意图; FIG. 4 is a schematic diagram of the error detection probability p corr obtained from formula (1-5) and formula (1-6) as a function of l according to an embodiment of the present invention;
图5为本发明实施例提供的由式(1-5)和式(1-7)得到检错概率p corr随l变化的示意图; FIG. 5 is a schematic diagram of the error detection probability p corr obtained from equations (1-5) and (1-7) as a function of l according to an embodiment of the present invention;
图6为本发明实施例提供的加权模型编码的示意图;Fig. 6 is a schematic diagram of weighted model coding provided by an embodiment of the present invention;
图7为本发明实施例提供的最大纠错范围S m、最小检错长度l m与V值的关系结构示意图; FIG. 7 is a schematic structural diagram of the relationship between the maximum error correction range S m , the minimum error detection length l m and the value of V provided by an embodiment of the present invention;
图8为本发明实施例提供的信噪比E b/N s(SNR)与p e关系结构示意图; FIG. 8 is a schematic structural diagram of the relationship between signal-to-noise ratio E b /N s (SNR) and p e according to an embodiment of the present invention;
图9为本发明实施例提供的4种编码方法的性能比较示意图;FIG. 9 is a schematic diagram of performance comparison of four encoding methods provided by an embodiment of the present invention;
图10为本发明实施例提供的一种信道编码和纠错译码设备的结构示意图。FIG. 10 is a schematic structural diagram of a channel coding and error correction decoding device provided by an embodiment of the present invention.
具体实施方式Detailed ways
下面将结合附图,对本公开实施例的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。需要说明的是,在不冲突的情况下,本公开实施例及实施例中的特征可以相互组合。另外,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本公开的每个技术特征和整体技术方案,但其不能理解为对本公开保护范围的限制。The technical solutions of the embodiments of the present disclosure will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present disclosure, rather than all of the embodiments. Based on the embodiments of the present disclosure, all other embodiments obtained by those of ordinary skill in the art without creative work shall fall within the protection scope of the present disclosure. It should be noted that the embodiments of the present disclosure and the features in the embodiments can be combined with each other if there is no conflict. In addition, the role of the drawings is to supplement the description of the text part of the specification with graphics, so that people can intuitively and vividly understand each technical feature and overall technical solution of the present disclosure, but they cannot be understood as a limitation of the protection scope of the present disclosure.
参照图1至图9,本发明的一个实施例,提供了一种信道编码和纠错译码方法,包括以下步骤:1-9, an embodiment of the present invention provides a channel coding and error correction decoding method, including the following steps:
S100、发送端将矢量X进行预处理得到矢量X′,并对矢量X′进行二元加权编码;其中,预处理之后的矢量X′满足以下条件:S100. The sending end preprocesses the vector X to obtain a vector X', and performs binary weighted encoding on the vector X'; wherein the preprocessed vector X'satisfies the following conditions:
条件1、连续的符号1个数小于或等于c max(c max=0,1,2,…);条件2、
Figure PCTCN2020078295-appb-000007
Figure PCTCN2020078295-appb-000008
Condition 1. The number of consecutive symbols is less than or equal to c max (c max =0,1,2,...); condition 2.
Figure PCTCN2020078295-appb-000007
Figure PCTCN2020078295-appb-000008
二元加权编码的过程如下:The process of binary weighted coding is as follows:
根据编码公式
Figure PCTCN2020078295-appb-000009
L i=L i-1R i-1F(X′ i-1,r)对矢量X′进行编码,令编码后的L n=V;其中,X′ i为矢量X′中第i个字符,
Figure PCTCN2020078295-appb-000010
r为权系数,F(X′ i-1,r)为X′ i的加权累计分布函数,R 0=1,L 0=0,i∈(1,2,…,n),n为矢量X′的字符数。
According to the coding formula
Figure PCTCN2020078295-appb-000009
L i =L i-1 R i-1 F(X′ i -1,r) encodes the vector X′, and sets the encoded L n =V; where X′ i is the i-th in the vector X′ character,
Figure PCTCN2020078295-appb-000010
r is the weight coefficient, F(X′ i -1,r) is the weighted cumulative distribution function of X′ i , R 0 =1, L 0 =0, i∈(1,2,...,n), n is the vector The number of characters of X'.
以下对预处理过程进行说明:The pretreatment process is explained as follows:
预处理即规律性的添加符号,这里以方法一和方法二为例:其中方法一为:每个符号1后增加一个符号0;方法二为:每个符号1后增加一个符号0,然后每个符号0后增加一个符号1;需要说明的是,本方法所使用的预处理方法不仅限于方法一和方法二。Preprocessing refers to adding symbols regularly. Here, method one and method two are taken as examples: method one is: add a symbol 0 after each symbol 1; method two is: add a symbol 0 after each symbol 1, and then every A symbol 1 is added after the symbol 0; it should be noted that the preprocessing method used in this method is not limited to method one and method two.
例如:原始序列为:0111010110001;For example: the original sequence is: 0111010110001;
经方法一处理后为:01010100100101000010;After being processed by method one, it is: 01010100100101000010;
经方法二处理后为:011011011010110101101101010101101。After being processed by method two, it is: 011011011010110101101101010101101.
当预处理采用方法一,则条件1中的c max=0;当预处理采用方法二,则条件1中的c max=2; When preprocessing adopts method one, c max in condition 1 is 0; when preprocessing adopts method two, then c max in condition 1 is 2;
矢量在经过BDMC信道(二元离散无记忆信道)传输之前采用预处理,使得矢量中连续的符号1的个数小于等于c max个,例如方法二中,使得矢量连续的符号1的个数小于等于2个;这样的规律是检验数据是否发生错误的判断依据;预处理由于添加了符号,将使得信道的传输速率降低,于是对预处理后的矢量采用二元加权编码,来保障数据的传输速率。数据经BDMC信道传输后,由于BDMC信道中噪声干扰,数据可能发生错误,于是在译码时可以利用二进制序列的规律进行线性的检错和向前纠错。 The vector is preprocessed before being transmitted through the BDMC channel (binary discrete memoryless channel), so that the number of consecutive symbols 1 in the vector is less than or equal to c max . For example, in method 2, the number of consecutive symbols 1 in the vector is less than It is equal to 2; this rule is the basis for judging whether the data is wrong or not; the preprocessing will reduce the transmission rate of the channel due to the addition of symbols, so binary weighted coding is used on the preprocessed vector to ensure the transmission of data rate. After the data is transmitted through the BDMC channel, errors may occur in the data due to noise interference in the BDMC channel, so the law of the binary sequence can be used to perform linear error detection and forward error correction during decoding.
当预处理采用方法一时:矢量X中每个符号1后增加一个符号0得到X′。若信道输出矢量Y(这里信道输出矢量Y表示接收端将信道中传输的序列V译码后的矢量)中任意位置出现连续的符号1的个数大于1,则数据发生错误。添加符号后,p(A)=1,矢量X′中符号0和符号1的概率分别为
Figure PCTCN2020078295-appb-000011
则方法一的检错概率为:
When preprocessing adopts method one: add a symbol 0 after each symbol 1 in the vector X to obtain X'. If the number of consecutive symbols 1 in any position in the channel output vector Y (here the channel output vector Y represents the vector after the receiving end decodes the sequence V transmitted in the channel) is greater than 1, then the data is in error. After adding the symbol, p(A)=1, the probability of symbol 0 and symbol 1 in the vector X′ are respectively
Figure PCTCN2020078295-appb-000011
Then the error detection probability of method one is:
Figure PCTCN2020078295-appb-000012
Figure PCTCN2020078295-appb-000012
其中,ξ为误比特率。Among them, ξ is the bit error rate.
当矢量X中符号1的概率p(1)=0.5时,
Figure PCTCN2020078295-appb-000013
当p(1)=0.5,ξ=0时,
Figure PCTCN2020078295-appb-000014
即存在
Figure PCTCN2020078295-appb-000015
的误判概率,这是因为信道输出矢量Y中任意位置连续的符号0的个数发生错误时,无法通过事件“连续的符号1的个数大于c max”进行判断。
When the probability of symbol 1 in the vector X is p(1)=0.5,
Figure PCTCN2020078295-appb-000013
When p(1)=0.5 and ξ=0,
Figure PCTCN2020078295-appb-000014
Exist
Figure PCTCN2020078295-appb-000015
The probability of misjudgment is that when an error occurs in the number of consecutive symbols 0 at any position in the channel output vector Y, it cannot be judged by the event "the number of consecutive symbols 1 is greater than c max ".
当预处理采用方法二时:矢量X中每个符号1后增加一个符号0,然后再每个符号0后增加一个符号1得到矢量X′。添加符号后,矢量X′中符号0和符号1的概率分别为
Figure PCTCN2020078295-appb-000016
显然,添加符号的过程是可逆的,且矢量X′任意位置满足“每个符号0被一个或两个符号1隔开”。矢量X′中存在两个独立的判据:任意位置连续的符号0的个数小于等于1;任意位置连续的符号1的个数小于等于2。
When preprocessing adopts method two: add a symbol 0 after each symbol 1 in the vector X, and then add a symbol 1 after each symbol 0 to obtain the vector X'. After adding symbols, the probabilities of symbol 0 and symbol 1 in vector X′ are
Figure PCTCN2020078295-appb-000016
Obviously, the process of adding symbols is reversible, and any position of the vector X′ satisfies "each symbol 0 is separated by one or two symbols 1". There are two independent criteria in the vector X′: the number of consecutive symbols 0 at any position is less than or equal to 1; the number of consecutive symbols 1 at any position is less than or equal to 2.
令事件A为矢量X中任意位置满足“连续的符号0的个数小于等于1”;事件B为信道输出矢量Y中任意位置满足“连续的符号0的个数小于等于1”。事件A的概率为:Let event A be that any position in the vector X satisfies "the number of consecutive symbols 0 is less than or equal to 1"; event B is that any position in the channel output vector Y satisfies "the number of consecutive symbols 0 is less than or equal to 1". The probability of event A is:
Figure PCTCN2020078295-appb-000017
Figure PCTCN2020078295-appb-000017
令事件C为矢量X中任意位置满足“连续的符号1的个数小于等于2”;事件D为信道输出矢量Y中任意位置满足“连续的符号1的个数小于等于2”。事件C的概率为:Let event C be that any position in the vector X satisfies "the number of consecutive symbols 1 is less than or equal to 2"; event D is that any position in the channel output vector Y satisfies "the number of consecutive symbols 1 is less than or equal to 2". The probability of event C is:
Figure PCTCN2020078295-appb-000018
Figure PCTCN2020078295-appb-000018
若信道输出矢量Y的字符为0和1,可得:p(B)=p(A)+ξ-2ξp(A),p(D)=p(C)+ξ-2ξp(C);若信道输出矢量Y的字符为0、1和e;将e替换为符号1,可得p(B)=(1-ξ)p(A),p(D)=(1-ξ)p(C)。由于信道输出矢量Y必须同时满足事件B和事件D,且p(BD)在p(B)和p(D)各计算了一次,所以检错概率为:If the characters of the channel output vector Y are 0 and 1, we can get: p(B)=p(A)+ξ-2ξp(A), p(D)=p(C)+ξ-2ξp(C); if The characters of the channel output vector Y are 0, 1, and e; replacing e with the symbol 1, we can get p(B)=(1-ξ)p(A), p(D)=(1-ξ)p(C ). Since the channel output vector Y must satisfy both event B and event D, and p(BD) is calculated once in p(B) and p(D), the error detection probability is:
p corr=p(B∪D)=p(B)+p(D)-p(BD)        (1-4) p corr =p(B∪D)=p(B)+p(D)-p(BD) (1-4)
因为矢量X′任意位置满足“每个符号0被一个或两个符号1隔开”,所以两个判据都满足通过事件“连续的符号1的个数大于c max”可以判断信道输出矢量Y是否发生错误。若矢量X中p(0)=p(1)=0.5时,则矢量X′中符号0和符号1的概率分别为是
Figure PCTCN2020078295-appb-000019
Figure PCTCN2020078295-appb-000020
Figure PCTCN2020078295-appb-000021
Figure PCTCN2020078295-appb-000022
代入(1-2)和(1-3)中得
Figure PCTCN2020078295-appb-000023
若信道输出矢量Y的字符为0和1,得
Figure PCTCN2020078295-appb-000024
Figure PCTCN2020078295-appb-000025
若信道输出矢量Y的字符为0、1和e;则
Figure PCTCN2020078295-appb-000026
Figure PCTCN2020078295-appb-000027
由此,检错概率越大,则利用事件“连续的符号1的个数大于c max”发现信道输出矢量Y中比特错误的能力越强。当p corr=1时,可发现信道输出矢量Y中所有比特错误。令矢量X中p(1)=0.5,0≤ξ≤1,信道输出矢量Y的字符为0和1时,p corr随ξ变化如图2所示。信道输出矢量Y的字符为0、1和e时,p corr随ξ变化如图3所示。
Because any position of the vector X′ satisfies “each symbol 0 is separated by one or two symbols 1”, both criteria are satisfied. The channel output vector Y can be judged by the event “the number of consecutive symbols 1 is greater than c max ” Whether an error occurred. If p(0)=p(1)=0.5 in vector X, then the probability of symbol 0 and symbol 1 in vector X'are respectively
Figure PCTCN2020078295-appb-000019
with
Figure PCTCN2020078295-appb-000020
will
Figure PCTCN2020078295-appb-000021
with
Figure PCTCN2020078295-appb-000022
Substitute in (1-2) and (1-3) to get
Figure PCTCN2020078295-appb-000023
If the characters of the channel output vector Y are 0 and 1, we get
Figure PCTCN2020078295-appb-000024
Figure PCTCN2020078295-appb-000025
If the characters of the channel output vector Y are 0, 1, and e; then
Figure PCTCN2020078295-appb-000026
Figure PCTCN2020078295-appb-000027
Therefore, the greater the error detection probability, the stronger the ability to use the event "the number of consecutive symbols 1 is greater than c max "to find bit errors in the channel output vector Y. When p corr =1, all bit errors in the channel output vector Y can be found. Let p(1)=0.5 in the vector X, 0≤ξ≤1, and when the characters of the channel output vector Y are 0 and 1, the change of p corr with ξ is shown in Figure 2. When the characters of the channel output vector Y are 0, 1, and e, the change of p corr with ξ is shown in Figure 3.
由图可以得知,方法二比方法一发现错误的能力强;It can be seen from the figure that method two has a stronger ability to find errors than method one;
BDMC信道输入矢量X′符合方法一或方法二的规律,信道输出矢量Y中l个比特共有2种可能性,其中有m个序列符合方法一或方法二所述之规律。显然,m种序列中只有一个序列是正确的,误比特率是均匀分配给了2 l-1种可能序列,所以误判概率p err为: The BDMC channel input vector X'conforms to the law of Method 1 or Method 2, and there are 2 possibilities for l bits in the channel output vector Y, among which m sequences conform to the law of Method 1 or Method 2. Obviously, only one sequence in m kinds of sequences is correct, and the bit error rate is evenly distributed to 2 l -1 possible sequences, so the probability of misjudgment p err is:
Figure PCTCN2020078295-appb-000028
Figure PCTCN2020078295-appb-000028
p corr=1-p err,p err为l个比特的二进制序列符合规律的概率,是发现矢量Y中错误的概率。p err为事件“连续的符号1的个数大于c max”无法发现矢量Y中比特错误的概率。经统计,方法一中m是l(l≥1)的斐波那契数列。 p corr =1-p err , p err is the probability that a binary sequence of l bits conforms to the law, and is the probability of finding an error in the vector Y. p err is the probability that a bit error in the vector Y cannot be found in the event "the number of consecutive symbols 1 is greater than c max ". According to statistics, in Method 1, m is the Fibonacci sequence of l (l≥1).
m l=m l-1+m l+2       (1-6) m l =m l-1 +m l+2 (1-6)
l=1,m 1=2,p corr=0.5;l=2,m 2=2,p corr=0.5;l=1,m 3=4,p corr=0.5,类推当l≥4,由式(1-5)和式(1-6)得到检错概率p corr随l变化如图4所示。方法二中m是l(l≥1)的帕多瓦数列。 l = 1, m 1 = 2, p corr = 0.5; l = 2, m 2 = 2, p corr = 0.5; l = 1, m 3 = 4, p corr = 0.5, analogously when l ≥ 4, by formula (1-5) and formula (1-6) obtain the error detection probability p corr as shown in Figure 4. In the second method, m is the Padova sequence of l (l≥1).
m l=m l-2+m l-3         (1-7) m l = m l-2 + m l-3 (1-7)
l=1,m 1=2,p corr=0.5;l=2,m 2=3,p corr=0.5;l=3,m 3=4,p corr=0.625,类推当l≥4,由式(1-5)和式(1-7)得到检错概率p corr随l变化如图5所示。 l = 1, m 1 = 2, p corr = 0.5; l = 2, m 2 = 3, p corr = 0.5; l = 3, m 3 = 4, p corr = 0.625, analogously when l ≥ 4, by formula (1-5) and formula (1-7) get the error detection probability p corr as shown in Figure 5.
由图可以看出,检错概率p corr随l趋近于1,即: It can be seen from the figure that the error detection probability p corr approaches 1 with l, namely:
Figure PCTCN2020078295-appb-000029
Figure PCTCN2020078295-appb-000029
若l有限确定值,p corr可通过(1-5),(1-6),(1-7)计算得出。 If l is a finite certain value, p corr can be calculated by (1-5), (1-6), (1-7).
由此可以得出结论:BDMC信道的输入矢量X′的码长越长,则检错概率越高,且
Figure PCTCN2020078295-appb-000030
证明如下:m的值由(1-5),(1-6),(1-7)计算得出,当l趋近于无穷时,
Figure PCTCN2020078295-appb-000031
趋近于0,所以
Figure PCTCN2020078295-appb-000032
It can be concluded that the longer the code length of the input vector X′ of the BDMC channel, the higher the error detection probability, and
Figure PCTCN2020078295-appb-000030
The proof is as follows: the value of m is calculated by (1-5), (1-6), (1-7), when l approaches infinity,
Figure PCTCN2020078295-appb-000031
Approaches 0, so
Figure PCTCN2020078295-appb-000032
以下对二元加权编码过程进行说明:The following describes the binary weighted coding process:
设定离散随机变量X,X∈A={a 1,a 2,…,a k},P{X=a i}=P(a i)(i=1,2,…,k),加权概率质量函数为
Figure PCTCN2020078295-appb-000033
p(a i)为X的质量函数,0≤p(a i)≤1,r为权系数,且:
Set discrete random variable X, X∈A={a 1 ,a 2 ,..., ak }, P{X=a i }=P(a i )(i=1,2,...,k), weighted The probability mass function is
Figure PCTCN2020078295-appb-000033
p(a i ) is the quality function of X, 0≤p(a i )≤1, r is the weight coefficient, and:
F(X)=∑ j≤ip(a j)       (1-9) F(X)=∑ j≤i p(a j ) (1-9)
若F(X,r)满足F(X,r)=r F(X),则称F(X,r)未加权累积分布函数,简称加权分布函数。显然,所有符号的加权概率之和为
Figure PCTCN2020078295-appb-000034
If F(X,r) satisfies F(X,r)=r F(X), then it is called F(X,r) unweighted cumulative distribution function, abbreviated as weighted distribution function. Obviously, the sum of the weighted probabilities of all symbols is
Figure PCTCN2020078295-appb-000034
令离散矢量(或离散序列)X =(X 1,X 2,…,X i,…,X n),X i∈A,且令F(X i-1)=F(X i)-p(X i),则矢量X′的加权分布函数记为F(X′,r)。 Let the discrete vector (or discrete sequence) X = (X 1 ,X 2 ,...,X i ,...,X n ), X i ∈ A, and let F(X i -1)=F(X i )- p(X i ), then the weighted distribution function of the vector X'is denoted as F(X',r).
Figure PCTCN2020078295-appb-000035
Figure PCTCN2020078295-appb-000035
将满足(1-10)的加权分布函数的集合定义为加权概率模型,简称加权模型,记为{F(X′,r)}。当r=1时:The set of weighted distribution functions satisfying (1-10) is defined as a weighted probability model, referred to as a weighted model, denoted as {F(X',r)}. When r=1:
Figure PCTCN2020078295-appb-000036
Figure PCTCN2020078295-appb-000036
令H n=F(X′,r),
Figure PCTCN2020078295-appb-000037
可得算数编码(区间编码)是基于r=1的加权累积分布函数的无损编码方法。定义:
Let H n =F(X′,r),
Figure PCTCN2020078295-appb-000037
Available arithmetic coding (interval coding) is a lossless coding method based on the weighted cumulative distribution function of r=1. definition:
Figure PCTCN2020078295-appb-000038
Figure PCTCN2020078295-appb-000038
Figure PCTCN2020078295-appb-000039
Figure PCTCN2020078295-appb-000039
Figure PCTCN2020078295-appb-000040
Figure PCTCN2020078295-appb-000040
其中,X i∈A,n=1,2,3,…。因X i必须取A中的值,所以p(a i)>0,i=1,2,…,k。显然公式(1-12)、(1-13)、(1-14)为区间列,[L i,H i)是矢量X′在时刻i(i=0,1,2,…,n)变量X i对应的区间上下标,R i=H i-L i是区间的长度。将(1-12)、(1-13)、(1-14)用迭代式表达为: Among them, X i ∈A, n=1, 2, 3,.... By X i must take a value A, so that p (a i)> 0, i = 1,2, ..., k. Obviously formulas (1-12), (1-13), (1-14) are interval columns, and [L i , H i ) is the vector X′ at time i (i=0,1,2,...,n) the variable X i the corresponding upper and lower standard range, R i = H i -L i is the length of the interval. Express (1-12), (1-13), (1-14) iteratively as:
R i=R i-1rp(X′ i);L i=L i-1R i-1F(X′ i-1,r);H i=R i+L i;(1-15) R i =R i-1 rp(X' i ); Li =L i-1 R i-1 F(X' i -1,r); H i =R i +L i ; (1-15)
以方法一为例,令r>1,且矢量X′从i+1位置开始的3个符号为0,1,0。根据(1-15)加权模型的编码过程如图6所示。Take method one as an example, let r>1, and the 3 symbols of the vector X'starting from position i+1 are 0,1,0. The coding process according to the (1-15) weighted model is shown in Figure 6.
根据图6,当H i+3>H i+1时,因区间[H i+1,H i+3)∈[H i+1,H i+1+R i),并且[H i+1,H i+1+R i)与符号1对应,所以第i+1个符号0可能被错误译码为符号1。当H i+3≤H i+1时,则[L i+3,H i+3)∈[L i+1,H i+1)。如图6中[L i+1,H i+1)与符号0唯一对应,所以i+1位置的符号0被L i+3正确译码,且i+2和i+3位置上的符号1和符号0也能正确译码。当0<r≤1时,任意时刻都有[L i+1,H i+1)∈[L i,H i),可无损译码。由于F(0-1)=0,F(0)=p(0),由((1-12)、(1-13)、(1-14)可得: According to Figure 6, when H i+3 > H i+1 , because of the interval [H i+1 , H i+3 ) ∈ [H i+1 , H i+1 +R i ), and [H i+ 1 , H i+1 +R i ) corresponds to symbol 1, so the i+1th symbol 0 may be erroneously decoded as symbol 1. When H i+3H i+1 , then [L i+3 , H i+3 ) ∈ [L i+1 , H i+1 ). As shown in Figure 6, [L i+1 , Hi+1 ) uniquely corresponds to symbol 0, so the symbol 0 at position i+1 is correctly decoded by Li+3 , and the symbols at positions i+2 and i+3 1 and symbol 0 can also be decoded correctly. When 0<r≤1, there are [L i+1 , H i+1 ) ∈ [L i , H i ) at any time, which can be decoded without loss. Since F(0-1)=0 and F(0)=p(0), we can obtain from ((1-12), (1-13), (1-14):
Figure PCTCN2020078295-appb-000041
Figure PCTCN2020078295-appb-000041
Figure PCTCN2020078295-appb-000042
Figure PCTCN2020078295-appb-000042
因为H i+3≤H i+1,所以: Because H i+3 ≤H i+1 , so:
Figure PCTCN2020078295-appb-000043
Figure PCTCN2020078295-appb-000043
设方程ax 2+bx+c=0,其中a=p(1)p(0),b=p(0),c=-1,且x>0。满足方程的正实数根为
Figure PCTCN2020078295-appb-000044
因p(1)=1-p(0),所以:
Set the equation ax 2 +bx+c=0, where a=p(1)p(0), b=p(0), c=-1, and x>0. The positive real roots satisfying the equation are
Figure PCTCN2020078295-appb-000044
Since p(1)=1-p(0), so:
Figure PCTCN2020078295-appb-000045
Figure PCTCN2020078295-appb-000045
Figure PCTCN2020078295-appb-000046
r max为r的最大值,显然r max仅在矢量X′中呈现规律为“每个1被一个0隔开”才能通过L i完整译码。设矢量X′中第i+1个位置起有c+2(c=1,2,3,…)个符 号为0,1,…,1,0,其中符号1的联系个数为c,因H i+c+2≤H i+1,根据(1-12)、(1-13)、(1-14)有:
make
Figure PCTCN2020078295-appb-000046
r max is the maximum value of r, r max is clearly only present in Law vectors X 'is "1 are each separated by a 0" in order to complete decoding by L i. Suppose there are c+2 (c=1, 2, 3,...) symbols starting from the i+1 position in the vector X′ as 0,1,...,1,0, and the number of connections of the symbol 1 is c, Since H i+c+2 ≤H i+1 , according to (1-12), (1-13), (1-14):
rp(0)+r 2p(0)p(1)+r 3p(0)p(1) 2+…+r c+1p(0)p(1) c≤1    (1-19) rp(0)+r 2 p(0)p(1)+r 3 p(0)p(1) 2 +…+r c+1 p(0)p(1) c ≤1 (1-19)
通过解不等式(1-19)可得r maxBy solving inequality (1-19), r max can be obtained.
设{[L n,H n]}为定义在离散矢量X′=(X 1,X 2,…,X i,…,X n)(X i∈A={0,1})上的加权模型区间列,矢量X′中连续的符号1的个数小于等于c max,r max为最大加权系数,如果满足: Let {[L n ,H n ]} be the weight defined on the discrete vector X′=(X 1 ,X 2 ,…,X i ,…,X n )(X i ∈A={0,1}) In the model interval column, the number of consecutive symbols 1 in the vector X′ is less than or equal to c max , and r max is the maximum weighting coefficient. If it satisfies:
Figure PCTCN2020078295-appb-000047
以及0<r≤r max;则称{[L n,H n]}为二元加权模型的半闭半开区间列,简称二元加权模型区间列。
Figure PCTCN2020078295-appb-000047
And 0<r≤r max ; then {[L n , H n ]} is called the half-closed and half-open interval column of the binary weighted model, referred to as the interval column of the binary weighted model.
该二元加权模型区间列至少具有以下性质:This binary weighted model interval column has at least the following properties:
性质1:存在唯一实数L n∈[L i,H i)(i=1,2,…,n),使得L n<H n∧L n<H n-1∧…∧L n<H 1;证明如下:根据上式(1-11)易得,0≤c≤c max,0≤r≤r max需同时满足,且H i+c+2≤H i+1,由于L n∈[L i+c+2,H i+c+2)(i=1,2,…,n),所以当0≤c≤c max且0≤r≤r max,有L n<H n∧L n<H n-1∧…∧L n<H 1Property 1: There is a unique real number L n ∈[L i ,H i )(i=1, 2,…,n), such that L n <H n ∧L n <H n-1 ∧…∧L n <H 1 ; The proof is as follows: According to the above formula (1-11), it is easy to obtain, 0≤c≤c max , 0≤r≤r max must be satisfied at the same time, and H i+c+2 ≤H i+1 , because L n ∈[ L i+c+2 , H i+c+2 )(i=1, 2,...,n), so when 0≤c≤c max and 0≤r≤r max , there is L n <H n ∧L n <H n-1 ∧...∧L n <H 1 .
性质2:通过L n可以完整的还原矢量X′;证明如下:因[L i,H i)(i=1,2,…,n)与变量X i为唯一的映射关系,所以当L n∈[L i,H i)(i=1,2,…,n)时,得出唯一的符号X i,从而完整的得出矢量X′。 Nature 2: L n can restore the complete vector X '; demonstrated as follows: due to [L i, H i) ( i = 1,2, ..., n) of the variable X i is a unique mapping relationship, so when L n When ∈[L i , H i ) (i=1, 2,...,n), the unique symbol X i is obtained, and the vector X'is obtained completely.
可以得出以下结论:c max=1,符号0和符号1的加权概率为
Figure PCTCN2020078295-appb-000048
Figure PCTCN2020078295-appb-000049
时,通过L n可完整还原矢量X′。证明如下:设矢量X′中连续符号1个数的最大值为c max,令
Figure PCTCN2020078295-appb-000050
Figure PCTCN2020078295-appb-000051
假设
Figure PCTCN2020078295-appb-000052
Figure PCTCN2020078295-appb-000053
Figure PCTCN2020078295-appb-000054
Figure PCTCN2020078295-appb-000055
时,L n>H i+1,不满足上述性质1,则假设不成立,所以
Figure PCTCN2020078295-appb-000056
The following conclusions can be drawn: c max = 1, the weighted probability of symbol 0 and symbol 1 is
Figure PCTCN2020078295-appb-000048
with
Figure PCTCN2020078295-appb-000049
When, the vector X'can be completely restored through L n. The proof is as follows: Suppose the maximum value of 1 number of consecutive symbols in the vector X′ is c max , let
Figure PCTCN2020078295-appb-000050
Have
Figure PCTCN2020078295-appb-000051
Hypothesis
Figure PCTCN2020078295-appb-000052
but
Figure PCTCN2020078295-appb-000053
Figure PCTCN2020078295-appb-000054
when
Figure PCTCN2020078295-appb-000055
When L n > H i+1 , and the above property 1 is not satisfied, the hypothesis does not hold, so
Figure PCTCN2020078295-appb-000056
上述二元加权模型的信息熵如下:The information entropy of the above binary weighted model is as follows:
当r=1时,
Figure PCTCN2020078295-appb-000057
由香农信息熵定义,具有概率p(a)的随机变量X的熵为:
When r=1,
Figure PCTCN2020078295-appb-000057
Defined by Shannon's information entropy, the entropy of a random variable X with probability p(a) is:
Figure PCTCN2020078295-appb-000058
Figure PCTCN2020078295-appb-000058
当r≠1时,定义具有概率p(a)的随机变量X的自信息量为:When r≠1, define the self-information amount of a random variable X with probability p(a) as:
Figure PCTCN2020078295-appb-000059
Figure PCTCN2020078295-appb-000059
设离散矢量X′=(X 1,X 2,…,X i,…,X n)(X i∈A),且{X i=a j}(j=0,1,…,k;i=1,2,…,n)中有
Figure PCTCN2020078295-appb-000060
个a j,当r的值确定,矢量X′的总信息量为:
Suppose discrete vector X′=(X 1 ,X 2 ,...,X i ,...,X n )(X i ∈A), and {X i =a j }(j=0,1,...,k; i =1,2,...,n) has
Figure PCTCN2020078295-appb-000060
A j , when the value of r is determined, the total amount of information of the vector X′ is:
Figure PCTCN2020078295-appb-000061
Figure PCTCN2020078295-appb-000061
于是平均每个符号的信息量为:So the average amount of information for each symbol is:
Figure PCTCN2020078295-appb-000062
Figure PCTCN2020078295-appb-000062
令H(X,r)为:Let H(X,r) be:
Figure PCTCN2020078295-appb-000063
Figure PCTCN2020078295-appb-000063
若满足r=r max(r max为加权概率模型无损编码的最大权系数),则称H(X,r max)为加权模型的信息熵。 If r=r max is satisfied (r max is the maximum weight coefficient of the weighted probability model lossless coding), then H(X, r max ) is called the information entropy of the weighted model.
由于任意r>r max均是无法完整还原随机序列。当0<r≤1时,-logr+H(X)≥H(X);当0<r≤r max时,-logr+H(X)<H(X),最小值为-logr max+H(X)。所以H(X,r max)为无失真编码的最小极限。 Since any r>r max cannot completely restore the random sequence. When 0<r≤1, -logr+H(X)≥H(X); when 0<r≤r max , -logr+H(X)<H(X), the minimum value is -logr max + H(X). Therefore, H(X, r max ) is the minimum limit of distortionless coding.
Figure PCTCN2020078295-appb-000064
Figure PCTCN2020078295-appb-000064
根据上述分析,在确定随机序列存在已知规律情形下,二元加权编码方法是利用概率加权的方式实现无损编译码的方法。由于二元加权编码方法在译码时可以维持随机序列的规律,所以本实施例利用这些规律实现检错纠错。本实施例采用的二元加权编码方法和传统熵编码方法的最大区别:传统熵编码通过人为去除随机序列存在已知规律然后再进行编码,比如二进制序列存在规律“每个符号1被一个和多个符号0隔开”,传统熵编码会将二进制序列中的子串“10”替换成符号1,然后利用归一化的概率进行编码,这样才能使得压缩结果接近熵极限。According to the above analysis, when it is determined that the random sequence has a known law, the binary weighted coding method is a method of using probability weighting to achieve lossless coding and decoding. Since the binary weighted coding method can maintain the laws of random sequences during decoding, this embodiment uses these laws to implement error detection and correction. The biggest difference between the binary weighted coding method used in this embodiment and the traditional entropy coding method: traditional entropy coding artificially removes the known laws of random sequences and then encodes them. "Symbol 0 separated", the traditional entropy coding will replace the substring "10" in the binary sequence with the symbol 1, and then use the normalized probability to encode, so as to make the compression result close to the entropy limit.
以方法二为例,本步骤S100中,发送端将矢量X进行预处理得到矢量X′,并对所述矢量X′进行二元加权编码的过程如下:Taking method two as an example, in this step S100, the sending end preprocesses the vector X to obtain the vector X', and the process of performing binary weighted encoding on the vector X'is as follows:
第一步、初始化参数,设R 0=1,L 0=0,i=1;
Figure PCTCN2020078295-appb-000065
(方法二中c max=2,根据上述结论有
Figure PCTCN2020078295-appb-000066
V=0(V为加权模型编码后L i的值);信道输入矢量X,且X i∈{0,1}(预处理通过第三步和第四步完成,所以不是X′)。
The first step is to initialize the parameters, set R 0 =1, L 0 =0, i=1;
Figure PCTCN2020078295-appb-000065
(In the second method, c max =2, according to the above conclusions
Figure PCTCN2020078295-appb-000066
V = 0 (V L i is the value of the weighted coding model); channel input vectors X, and X i ∈ {0,1} (pre-treated by the third step and fourth step is completed, so it is not X ').
第二步、输入第i个符号,若第i个符号为符号0,则转第三步;若第i个符号为符号1,则转第四步。The second step, input the i-th symbol, if the i-th symbol is the symbol 0, go to the third step; if the i-th symbol is the symbol 1, then go to the fourth step.
第三步、编码10两个符号,根据(1-13),(1-14)计算R i和L i的值,
Figure PCTCN2020078295-appb-000067
转第五步。
The third step, two encoded symbols 10, according to (1-13), (1-14) and the calculated value of L i R i,
Figure PCTCN2020078295-appb-000067
Go to step 5.
第四步、编码101三个符号,根据(1-13),(1-14)计算R i和L i的值,
Figure PCTCN2020078295-appb-000068
Figure PCTCN2020078295-appb-000069
转第五步。
A fourth step, three encoded symbols 101, according to (1-13), (1-14) and the calculated value of L i R i,
Figure PCTCN2020078295-appb-000068
Figure PCTCN2020078295-appb-000069
Go to step 5.
第五步、i=i+1,若i≤n,则转第二步;若i>n,V=L n,结束编码; The fifth step, i=i+1, if i≤n, go to the second step; if i>n, V=L n , end encoding;
S200、发送端将序列V经BDMC信道发送至接收端。S200. The sending end sends the sequence V to the receiving end via the BDMC channel.
BDMC信道(二元离散无记忆信道),本实施例优选其中的BSC(二进制对称信道)信道和BEC信道(二进制擦除信道)进行说明。For the BDMC channel (Binary Discrete Memoryless Channel), in this embodiment, the BSC (Binary Symmetric Channel) channel and the BEC channel (Binary Erasure Channel) are preferably described in this embodiment.
S300、接收端接收序列V后,对序列V进行纠错译码:S300. After receiving the sequence V, the receiving end performs error correction decoding on the sequence V:
S301、令m个比特字符为固定窗口,获取序列V中当前连续m个比特作为第一纠错序列。S301. Let m-bit characters be a fixed window, and obtain the current consecutive m bits in the sequence V as the first error correction sequence.
S302、沿第一纠错序列中的首字符向后译码出l m个比特作为第二纠错序列,l m个比特为检验第一纠错序列必然发生比特错误的最小译码长度。 S302: Decoding backward along the first character in the first error correction sequence to obtain l m bits as the second error correction sequence, and l m bits are the minimum decoding length for checking that a bit error must occur in the first error correction sequence.
由上可知l的大小决定了检验过程是否可靠,于是存在一个最小的l,记为l m,l m是检验V中m个比特必然发生错误的最小译码长度。 It can be seen from the above that the size of l determines whether the inspection process is reliable, so there is a minimum l, denoted as l m , l m is the minimum decoding length for m bits in the test V that will inevitably cause errors.
这里以方法二为例,对最小译码长度(即l m个比特)进行说明: Here, taking Method 2 as an example, the minimum decoding length (that is, l m bits) is described:
基于方法二的二元加权编码,当
Figure PCTCN2020078295-appb-000070
Figure PCTCN2020078295-appb-000071
时,根据事件“任意位置出现连续的符号1的个数大于c max”可以检验出V中连续m个比特是否发生错误。证明如下:
Binary weighted coding based on method two, when
Figure PCTCN2020078295-appb-000070
and
Figure PCTCN2020078295-appb-000071
When, according to the event "the number of consecutive symbols 1 appearing at any position is greater than c max ", it can be checked whether there is an error in the consecutive m bits in V. The proof is as follows:
方法二中,因为
Figure PCTCN2020078295-appb-000072
即符号1不携带信息量,所以矢量X′中编码
Figure PCTCN2020078295-appb-000073
个符号0必然输出m个比特。令
Figure PCTCN2020078295-appb-000074
二元加权译码时,c个符号0在信道输出矢量Y(即接收端收到的V纠错译码后出的矢量)中的分布状态未知。c个符号0信道输出矢量Y中的分布存在两种极端状态,完全稀疏分布如011011011…,此时m=3c;完全密集分布如0101010…,此时l m=2c。显然,当l m=3c时,能够满足c个符号0在信道输出矢量Y中的所有分布状态。当误比特发生在m个比特的最后位置(如图7所示),则最多已经译码出3c个比特,然后仍需向后译码3c个比特,并判断信道输出矢量Y是否符合规律。当
Figure PCTCN2020078295-appb-000075
Figure PCTCN2020078295-appb-000076
时,才能完整判断m个比特是否发生错误。由于每个符号0均被一个或两个符号1隔开,即最多连续译码出一个符号0,且符号1没有信息量,只表达了方法二处理后信道输入输出矢量的形态特征,即最多连续译码出两个符号1,所以方法二的线性检错过程更灵敏,检错长度仅需m。
Method two, because
Figure PCTCN2020078295-appb-000072
That is, the symbol 1 does not carry the amount of information, so the encoding in the vector X′
Figure PCTCN2020078295-appb-000073
A symbol 0 must output m bits. make
Figure PCTCN2020078295-appb-000074
In binary weighted decoding, the distribution state of c symbols 0 in the channel output vector Y (that is, the vector obtained after error correction decoding of V received at the receiving end) is unknown. There are two extreme states in the distribution of the c symbols 0 channel output vector Y, a completely sparse distribution such as 011011011..., at this time m=3c; a completely dense distribution such as 0101010..., at this time l m = 2c. Obviously, when l m =3c, all the distribution states of c symbols 0 in the channel output vector Y can be satisfied. When the bit error occurs in the last position of the m bits (as shown in Figure 7), 3c bits have been decoded at most, and then 3c bits still need to be decoded backwards, and it is judged whether the channel output vector Y conforms to the law. when
Figure PCTCN2020078295-appb-000075
Figure PCTCN2020078295-appb-000076
At this time, it can be completely judged whether an error occurs in the m bits. Since each symbol 0 is separated by one or two symbols 1, that is, at most one symbol 0 can be decoded continuously, and the symbol 1 has no information. It only expresses the morphological characteristics of the channel input and output vectors after the method two is processed, that is, at most Two symbols 1 are decoded continuously, so the linear error detection process of method 2 is more sensitive, and the error detection length is only m.
需要说明的是,这里根据预处理方法的不同,最小译码长度(即l m个比特)是不同的。 It should be noted that here, according to different preprocessing methods, the minimum decoding length (that is, l m bits) is different.
S303、若第二纠错序列符合条件1,则第一纠错序列纠错完成并译码出m个比特字符,获取下一组连续m个比特字符作为更新后的第一纠错序列,并跳转至步骤S302;若第二纠错序列不符合条件1,则沿第一纠错序列中的尾字符向前选取S m个比特作为第三纠错序列,S m个比 特字符为第一纠错序列的最大纠错范围。 S303. If the second error correction sequence meets the condition 1, the error correction of the first error correction sequence is completed and m-bit characters are decoded, and the next set of m-bit characters is obtained as the updated first error correction sequence, and Jump to step S302; if the second error correction sequence does not meet the condition 1, S m bits are selected forward along the last character in the first error correction sequence as the third error correction sequence, and the S m bit character is the first The maximum error correction range of the error correction sequence.
这里以方法二为例,对最大纠错范围(即S m个比特)进行说明: Here, taking Method 2 as an example, the maximum error correction range (ie S m bits) is explained:
基于方法二的二元加权编码,当
Figure PCTCN2020078295-appb-000077
Figure PCTCN2020078295-appb-000078
时,V中比特错误仅发生在3m个比特内(即方法二中S m=3m)。证明如下:
Binary weighted coding based on method two, when
Figure PCTCN2020078295-appb-000077
and
Figure PCTCN2020078295-appb-000078
At this time, the bit error in V only occurs within 3m bits (that is, S m = 3m in the second method). The proof is as follows:
证明固定译码
Figure PCTCN2020078295-appb-000079
个比特的二进制序列,在l m个比特的二进制序列中,若符号0密集分布(方法二中符号0密集分布仅一种可能性,如10101010…),则符号0的个数为
Figure PCTCN2020078295-appb-000080
Figure PCTCN2020078295-appb-000081
个符号0编码后的比特数最多,所以由l m个比特的二进制序列,编码后最多输出
Figure PCTCN2020078295-appb-000082
个比特。所以V中比特错误只发生在3m个比特内。
Proof of fixed decoding
Figure PCTCN2020078295-appb-000079
A binary sequence of bits. In a binary sequence of l m bits, if the symbols 0 are densely distributed (the dense distribution of symbols 0 in method 2 is only one possibility, such as 10101010...), then the number of symbols 0 is
Figure PCTCN2020078295-appb-000080
because
Figure PCTCN2020078295-appb-000081
The number of bits encoded by the symbol 0 is the largest, so the binary sequence of l m bits can be output at most after encoding
Figure PCTCN2020078295-appb-000082
Bits. Therefore, bit errors in V only occur within 3m bits.
令S m=3m,则S m为最大纠错范围。最大纠错范围S m、最小检错长度l m与V值的关系如图7所示。 Let S m =3m, then S m is the maximum error correction range. The relationship between the maximum error correction range S m , the minimum error detection length l m and the value of V is shown in FIG. 7.
根据图7,显然,若能准确的找到错误比特的位置,通过比特取非的方式可实现BSC信道纠错;将V中符号e替换成符号1的方式可实现BEC信道纠错。According to Figure 7, it is obvious that if the position of the error bit can be found accurately, the BSC channel error correction can be achieved by bit negation; the BEC channel error correction can be achieved by replacing the symbol e in V with the symbol 1.
需要说明的是,这里根据预处理方法的不同,最大纠错范围(即S m个比特)是不同的。 It should be noted that here, according to different preprocessing methods, the maximum error correction range (ie, S m bits) is different.
S304、遍历第三纠错序列中所有的错误位置,按序对错误位置进行更正并且在每次更正一个错误位置后进行以下处理:S304. Traverse all the error positions in the third error correction sequence, correct the error positions in order, and perform the following processing after each error position is corrected:
根据更正错误位置后的第三纠错序列对第一纠错序列、以及第二纠错序列进行对应位置的更正;判断更正后的第二纠错序列是否符合条件1,若符合,则第一纠错序列纠错完成并译码出m个比特字符,获取下一组连续m个比特字符作为更新后的第一纠错序列,并跳转至步骤S302;若不符合,则更正下一个错误位置。Correct the corresponding positions of the first error correction sequence and the second error correction sequence according to the third error correction sequence after correcting the error position; determine whether the corrected second error correction sequence meets the condition 1, if so, then the first Error correction sequence The error correction is completed and m-bit characters are decoded, and the next set of consecutive m-bit characters is obtained as the updated first error correction sequence, and jump to step S302; if not, correct the next error Location.
以下举例说明接收端在接收到序列V后,对序列V的纠错译码过程:The following example illustrates the error correction and decoding process of the sequence V after the receiving end receives the sequence V:
以预处理为方法二,传输信道为BSC信道为例,具体过程如下:Take preprocessing as method two and the transmission channel as BSC channel as an example, the specific process is as follows:
第一步、初始化参数,设R 0=1,L 0=0,i=1,j=0;
Figure PCTCN2020078295-appb-000083
接收获得V和n。
The first step is to initialize the parameters, set R 0 =1, L 0 =0, i=1, j=0;
Figure PCTCN2020078295-appb-000083
Receive V and n.
第二步、根据上述公式(1-12)、(1-13)、(1-14)给出第i个符号0的区间上标值:
Figure PCTCN2020078295-appb-000084
转第三步;
The second step is to give the interval superscript value of the i-th symbol 0 according to the above formulas (1-12), (1-13), (1-14):
Figure PCTCN2020078295-appb-000084
Go to the third step;
第三步、判断V和
Figure PCTCN2020078295-appb-000085
的大小,若
Figure PCTCN2020078295-appb-000086
则得到符号0,转步骤第四步;若
Figure PCTCN2020078295-appb-000087
则得到符号1,转第五步;
The third step, judge V and
Figure PCTCN2020078295-appb-000085
The size, if
Figure PCTCN2020078295-appb-000086
Then get the symbol 0, go to step 4; if
Figure PCTCN2020078295-appb-000087
Then get the symbol 1, go to the fifth step;
第四步、若前一个符号为0,输出符号0,转第六步;否则V中当前3m比特中发生错误,转第七步; Step 4. If the previous symbol is 0, output the symbol 0 and go to step 6; otherwise, if an error occurs in the current 3m bits in V, go to step 7;
第五步、若前一个符号为10,输出符号1,转第六步;否则V中当前3m比特中发生错误,转第七步; Step 5. If the previous symbol is 10, output the symbol 1, and go to Step 6; otherwise, if an error occurs in the current 3m bits in V, go to Step 7;
第六步、i=i+1,若i≤n,则转步骤A200;若i>n,则转第八步; Step 6, i=i+1, if i≤n, go to step A200; if i>n, go to step 8;
第七步、遍历3m比特中所有可能的错误,将遍历的错误位置对应的比特取非,则V被更新了。然后用当前3m比特的新的V值译码
Figure PCTCN2020078295-appb-000088
个比特的二进制序列。若该序列符合规律“每个符号0被一个或两个符号1隔开”则说明错误被纠正;否则继续遍历下一种可能的错误。
The seventh step is to traverse all possible errors in the 3m bits, and negate the bit corresponding to the traversed error position, and then V is updated. Then use the current 3m bit new V value to decode
Figure PCTCN2020078295-appb-000088
A binary sequence of bits. If the sequence conforms to the law "each symbol 0 is separated by one or two symbols 1", the error has been corrected; otherwise, it continues to traverse the next possible error.
第八步、译码完成。The eighth step, the decoding is completed.
以下举例说明对序列V的具体纠错过程:The following examples illustrate the specific error correction process for sequence V:
以预处理为方法二,传输信道为BSC信道为例,具体过程如下:Take preprocessing as method two and the transmission channel as BSC channel as an example, the specific process is as follows:
基于方法二,BSC信道的纠错过程分为以下步骤。Based on the second method, the error correction process of the BSC channel is divided into the following steps.
第一步、按序获取V中第1个到第m个比特,共m个比特。The first step is to obtain the 1st to mth bits in V in order, a total of m bits.
第二步、至少向后译码l m(这里
Figure PCTCN2020078295-appb-000089
)个比特的二进制序列,若序列符合规律“每个符号0被一个或两个符号1隔开”,则输出当前m个比特译码出的二进制序列;若序列不符合规律,则以第m个比特位置开始,向前最多进行3m个比特的纠错,不够3m比特时按实际长度向前纠错。比特错误可能出现在3m个比特中的任意位置。
The second step is to decode backward at least l m (here
Figure PCTCN2020078295-appb-000089
) Binary sequence of bits, if the sequence conforms to the rule "each symbol 0 is separated by one or two symbols 1", the binary sequence decoded by the current m bits is output; if the sequence does not conform to the rule, the mth Starting from a bit position, the error correction of 3m bits is carried out forward, and the error correction is carried out according to the actual length when it is less than 3m bits. Bit errors may appear anywhere in the 3m bits.
第三步、遍历3m个比特中所有的错误位置,设3m个比特中最多出现e个比特错误,则错误比特的位置总共有
Figure PCTCN2020078295-appb-000090
种可能性。将
Figure PCTCN2020078295-appb-000091
种可能性进行排序,先根据e的值从小到大排序,然后根据错误比特位置的从后向前排序。
The third step is to traverse all the error positions in the 3m bits. Assuming that there are at most e bit errors in the 3m bits, there are a total of error bit positions
Figure PCTCN2020078295-appb-000090
Kind of possibility. will
Figure PCTCN2020078295-appb-000091
There are two possibilities for sorting, first sorting from small to large according to the value of e, and then sorting from back to front according to the position of the error bit.
例如:m=2,e=2时,用符号0代表正确位置,用符号1代表错误位置,则
Figure PCTCN2020078295-appb-000092
种可能性排序后结果如000001,000010,…,100000,000011,000101,…,100001,000110,001010,…。
For example: when m=2 and e=2, the symbol 0 represents the correct position, and the symbol 1 represents the wrong position, then
Figure PCTCN2020078295-appb-000092
The results after sorting the possibilities are 000001, 000010,..., 100000, 000011, 000101,..., 100001, 000110, 001010,....
显然,纠错过程就是按序遍历
Figure PCTCN2020078295-appb-000093
种可能性,每一种可能性中符号1代表错误比特的位置,将V中获取的3m个比特对应位置进行比特取非。例如m=2,e=2时,设3m个比特序列为101100,第1种错误比特位置的可能性为000001,根据第1种可能性中1所对应的比特位置对101100进行比特取非,得101101。
Obviously, the error correction process is to traverse in order
Figure PCTCN2020078295-appb-000093
There are two possibilities. In each possibility, the symbol 1 represents the position of the error bit, and the corresponding position of the 3m bits obtained in V is negated. For example, when m=2 and e=2, set the 3m bit sequence as 101100, the probability of the first type of erroneous bit position is 000001, and the bit position of 101100 is negated according to the bit position corresponding to 1 in the first possibility. Get 101101.
取非后V被更新,然后以首个取非位置为起点,获取更新后V值中m个比特(记为m′),向后译码
Figure PCTCN2020078295-appb-000094
个比特的序列,判断序列是否符合规律,若序列不符合规律则检验下一种可能性;若序列符合规律则错误被纠正,输出m′所译码出的比特序列。于是V值中第1个到 第m个比特通过纠错并译码完成。
V is updated after negation, and then taking the first negation position as the starting point, obtain the m bits (denoted as m′) in the updated V value, and decode it backwards
Figure PCTCN2020078295-appb-000094
For a sequence of bits, it is judged whether the sequence conforms to the law, if the sequence does not conform to the law, the next possibility is checked; if the sequence conforms to the law, the error is corrected, and the bit sequence decoded by m'is output. Then the 1st to mth bits in the V value are completed through error correction and decoding.
第四步、获取V值中第m+1个到第2m个比特,重复第三步和第四步进行纠错译码,依此迭代。The fourth step is to obtain the m+1 to 2mth bits in the V value, repeat the third and fourth steps to perform error correction decoding, and iterate accordingly.
第五步,V的末尾纠错,因为V值传输到最后不足以译码l m个比特。可在V值后补充0值再译码m个比特,显然,超出矢量X总长度的部分,只能输出符号0,若输出符号1则说明V的最后部分传输出错。由于发送端发送的矢量X的总长度(记为n)已知,补充0值后输出m个比特,若大于n的比特位置上输出了符号1,则说明V最后3m个比特中发生了比特错误,通过第三步进行纠错即可。 The fifth step is to correct errors at the end of V, because the value of V is not enough to decode l m bits at the end. The value of 0 can be added after the value of V and then decoded for m bits. Obviously, the part that exceeds the total length of the vector X can only output the symbol 0. If the output symbol 1, it means that the last part of V is transmitted incorrectly. Since the total length (denoted as n) of the vector X sent by the sender is known, m bits are output after adding 0. If the symbol 1 is output at the bit position greater than n, it means that a bit occurred in the last 3m bits of V Errors can be corrected through the third step.
显然,BEC信道也可以采用上述纠错译码方法。设V在接收时,当前m个比特中存在t个错误符号e,将符号e替换为符号1,于是BEC信道通过遍历2 t种错误可能性进行纠错译码。二元加权编码方法是线性的,V中任何的比特错误都将造成过后续译码结果全部错误。 Obviously, the BEC channel can also use the above-mentioned error correction decoding method. Suppose that when V is received, there are t error symbols e in the current m bits, and the symbol e is replaced with the symbol 1, so the BEC channel performs error correction decoding by traversing 2 t error possibilities. The binary weighted coding method is linear, and any bit error in V will cause all subsequent decoding results to be wrong.
当码长趋近于无穷时,经二元加权编码方法纠错后信道输出矢量Y中误比特率趋近于0。证明如下:当e=3m且m趋近于无穷时,l m趋近无穷,则序列V的码长趋近于无穷,有p corr=1,所以对
Figure PCTCN2020078295-appb-000095
种错误类型进行检验时,可发现纠错译码后信道输出矢量Y中任何比特错误,于是仅唯一一种可能性能够通过纠错译码后得到正确的矢量信道输出矢量Y。
When the code length approaches infinity, the bit error rate in the channel output vector Y approaches 0 after error correction by the binary weighted coding method. The proof is as follows: when e=3m and m approaches infinity, l m approaches infinity, then the code length of sequence V approaches infinity, and p corr =1, so
Figure PCTCN2020078295-appb-000095
When checking for this error type, any bit error in the channel output vector Y can be found after error correction decoding, so there is only one possibility that the correct vector channel output vector Y can be obtained after error correction decoding.
以BSC信道为例,BPSK信号BSC信道的误比特率为:Taking the BSC channel as an example, the bit error rate of the BPSK signal BSC channel is:
Figure PCTCN2020078295-appb-000096
Figure PCTCN2020078295-appb-000096
其中,erf为误差函数。相应的信道容量为C=1-H(ε)=1+εlog 2ε+(1-ε)log 2(1-ε)。令传输时存在的误比特率为ξ,可得方程R(1+ξlog 2ξ+(1-ξ)log 2(1-ξ))=C。根据上述结论:“当码长趋近于无穷时,经二元加权编码方法纠错后信道输出矢量Y中误比特率趋近于0”,当m趋近于无穷时且e=3m时,ξ趋近于0,所以R趋近于C,信道容量可达。 Among them, erf is the error function. The corresponding channel capacity is C=1-H(ε)=1+εlog 2 ε+(1-ε)log 2 (1-ε). Supposing the bit error rate during transmission is ξ, the equation R(1+ξlog 2 ξ+(1-ξ)log 2 (1-ξ))=C can be obtained. According to the above conclusion: "When the code length approaches infinity, the bit error rate in the channel output vector Y after error correction by the binary weighted coding method approaches 0", when m approaches infinity and e=3m, ξ approaches 0, so R approaches C, and the channel capacity can be reached.
设BDMC信道输入矢量为X′=(X 1,X 2,…,X i,…)(X i∈{0,,1}),其中p(0)=p(1)=0.5。基于上述结论:“c max=1,符号0和符号1的加权概率为
Figure PCTCN2020078295-appb-000097
Figure PCTCN2020078295-appb-000098
时,通过L n可完整还原矢量X′”,c max=1,符号0和符号1的加权概率为
Figure PCTCN2020078295-appb-000099
Figure PCTCN2020078295-appb-000100
时,通过L n可完整还原矢量X′,有
Figure PCTCN2020078295-appb-000101
若BDMC信道输出矢量Y中误比特率ξ=0,则根据上述结论:“H(X,r max)为加权模型无失真编码的最小极限”,BDMC信道中平均传输每个符号所携带的信息量(即每个符号所需的比特)为:
Suppose the BDMC channel input vector is X′=(X 1 , X 2 ,...,X i ,...)(X i ε{0,,1}), where p(0)=p(1)=0.5. Based on the above conclusion: "c max = 1, the weighted probability of symbol 0 and symbol 1 is
Figure PCTCN2020078295-appb-000097
with
Figure PCTCN2020078295-appb-000098
When the vector X′” can be completely restored by L n , c max = 1, the weighted probability of symbol 0 and symbol 1 is
Figure PCTCN2020078295-appb-000099
with
Figure PCTCN2020078295-appb-000100
When the vector X′ can be completely restored through L n, there is
Figure PCTCN2020078295-appb-000101
If the bit error rate ξ = 0 in the output vector Y of the BDMC channel, according to the above conclusion: "H(X, r max ) is the minimum limit of the weighted model distortionless coding", the average information carried by each symbol is transmitted in the BDMC channel The quantity (that is, the bits required for each symbol) is:
Figure PCTCN2020078295-appb-000102
Figure PCTCN2020078295-appb-000102
或者有
Figure PCTCN2020078295-appb-000103
于是:
Or have
Figure PCTCN2020078295-appb-000103
then:
H(X,r)=-log 2r maxp(0)-p(1)log 2r maxp(1)      (1-28) H(X,r)=-log 2 r max p(0)-p(1)log 2 r max p(1) (1-28)
通过(1-27)计算,d=2时,每个二进制符号携带信息量为1比特,d=3时,每个二进制符号携带信息量为1.5849625比特,则编码后平均每个比特能携带的信息量为
Figure PCTCN2020078295-appb-000104
(bit)。若信道输入n个符号,且总的信息量为n H(X)(bit),则矢量X通过BDMC信道传输的总信息量为
Figure PCTCN2020078295-appb-000105
(bit),即BDMC信道平均每个符号能传送的信息量为
Figure PCTCN2020078295-appb-000106
(bit/符号)。基于二元加权编码的码率为:
Calculated by (1-27), when d=2, each binary symbol carries 1 bit of information, when d=3, each binary symbol carries 1.5849625 bits of information, then the average bit can carry after encoding The amount of information is
Figure PCTCN2020078295-appb-000104
(bit). If the channel inputs n symbols, and the total amount of information is n H(X)(bit), then the total amount of information transmitted by the vector X through the BDMC channel is
Figure PCTCN2020078295-appb-000105
(bit), that is, the average amount of information that each symbol can transmit in the BDMC channel is
Figure PCTCN2020078295-appb-000106
(bit/symbol). The code rate based on binary weighted coding is:
Figure PCTCN2020078295-appb-000107
(bit/符号)        (1-29)
Figure PCTCN2020078295-appb-000107
(bit/symbol) (1-29)
若e=3m且m为有限值,则BDMC信道经过二元加权编码方法纠错译码后信道输出矢量Y中的误比特率为p err。于是BSC信道传输速率R BSC和BEC信道传输速率R BEC为: If e=3m and m is a finite value, the bit error rate in the channel output vector Y after the BDMC channel undergoes the binary weighted coding method error correction decoding is p err . Then the BSC channel transmission rate R BSC and the BEC channel transmission rate R BEC are:
Figure PCTCN2020078295-appb-000108
Figure PCTCN2020078295-appb-000108
Figure PCTCN2020078295-appb-000109
Figure PCTCN2020078295-appb-000109
根据(1-26),当码率R和
Figure PCTCN2020078295-appb-000110
确定时,ε为V中的误比特率,若e<3m,则3m个比特中出现大于e个比特错误的概率为:
According to (1-26), when the bit rate R and
Figure PCTCN2020078295-appb-000110
When determining, ε is the bit error rate in V. If e<3m, the probability of more than e bit errors in 3m bits is:
Figure PCTCN2020078295-appb-000111
Figure PCTCN2020078295-appb-000111
当m,ε和e确定是,p e为二元加权编码方法无法纠错的概率。e=3m时3m个比特中出现3m+1个错误的情形不存在,于是p e=0。 When m, ε, and e are determined to be yes, p e is the probability that the binary weighted coding method cannot correct errors. When e=3m, 3m+1 errors in 3m bits do not exist, so p e =0.
以下为本方法在BSC信道的仿真实验数据:The following is the simulation experiment data of this method in the BSC channel:
基于方法一或方法二设置d的值,仿真BPSK信号BSC信道传输41943040bit的二进制随机序列(随机序列中符号0和符号1的概率接近0.5,即矢量X中p(0)≈p(1)),实验得出传输速率如下表所示:Set the value of d based on method 1 or method 2, and simulate BPSK signal BSC channel to transmit 41943040bit binary random sequence (the probability of symbol 0 and symbol 1 in the random sequence is close to 0.5, that is, p(0)≈p(1) in vector X) , The transmission rate obtained by the experiment is shown in the following table:
Figure PCTCN2020078295-appb-000112
Figure PCTCN2020078295-appb-000112
表1Table 1
从表1可以得出实验结果满足上述结论:“H(X,r max)为加权模型无失真编码的最小极限”。而由于上述结论:“当码长趋近于无穷时,经二元加权编码方法纠错后矢量Y中误比特率趋近于0”,无法在实验室中实现。令m=32,根据上述最小译码长度(即l m个比特)以及最大纠错范围(即S m个比特)的结论,有l m=122bit,S m=96bit,当l m=122bit时,p err=2.50254*10 -22(p err为个比特的二进制序列符合规律的概率,是发现信道输出矢量Y中错误的概率)于是发现错误的概率p err≈1。根据式(1-26)和(1-32)当e=7,15,25时信噪比E b/N s(SNR)与p e(使用二元加权编码方法无法纠错的概率)的关系如图8所示; It can be drawn from Table 1 that the experimental results meet the above conclusion: "H(X, r max ) is the minimum limit of the weighted model without distortion coding". However, due to the above conclusion: "When the code length approaches infinity, the bit error rate in the vector Y approaches 0 after error correction by the binary weighted coding method", which cannot be achieved in the laboratory. Let m=32, according to the conclusion of the minimum decoding length (ie l m bits) and the maximum error correction range (ie S m bits), there are l m =122bit and S m =96bit, when l m =122bit , p err = 2.50254 * 10 -22 (p err bit binary sequence is consistent with the law of probability, the probability of the channel output vector Y errors found) then the probability of error found p err ≈1. According to equations (1-26) and (1-32) when e=7,15,25, the signal-to-noise ratio E b /N s (SNR) and p e (the probability that the error cannot be corrected using the binary weighted coding method) The relationship is shown in Figure 8;
在图8中,e越大,二元加权编码方法所需要的信噪比越低。因p corr≈1(p corr为检错概率),所以二元加权编码方法无法纠错的情形均可被发现。可构建上述检错重传和向前纠错于一体的信道编码算法,即存在概率1-p e可直接纠错,存在概率p e需重新传输。 In Fig. 8, the larger e is, the lower the signal-to-noise ratio required by the binary weighted coding method is. Because p corr ≈1 (p corr is the probability of error detection), all cases where the binary weighted coding method cannot correct errors can be found. Above may be constructed error detection and retransmission channel coding algorithm in one of the forward error correction, i.e., the existence probability 1-p e directly correction, the existence probability p e to be re-transmitted.
令d=3.999,m=32,e=7,12,16,18,由表1可得码率为1/2。仿真BI-AWGN信道,码率为1/2,本文方法和Polar、Turbo码长为1024,LDPC的码长为1056。Turbo码基于WCDMA和LTE标准,Log-MAP解码算法最大迭代I max=8。LDPC码基于WiMax标准,采用标准BP算法,且最大迭代I max=200。极化码基于循环冗余码(CRC)辅助的列表串行消除(Successive-Cancellation List,SCL)译码算法(CRC-Asistant SCL)构造,列表大小为32,最大尺寸为1024。仿真实验得出4种编码方法的性能比较如图9所示,仿真帧数大于10 5Let d=3.999, m=32, e=7,12,16,18, and the code rate from Table 1 is 1/2. Simulate BI-AWGN channel, the code rate is 1/2, the code length of this method and Polar and Turbo is 1024, and the code length of LDPC is 1056. The Turbo code is based on WCDMA and LTE standards, and the Log-MAP decoding algorithm has a maximum iteration I max =8. The LDPC code is based on the WiMax standard, adopts the standard BP algorithm, and has a maximum iteration I max =200. The polarization code is constructed based on the CRC-Asistant SCL decoding algorithm (CRC-Asistant SCL) assisted by the cyclic redundancy code (CRC). The list size is 32 and the maximum size is 1024. The simulation experiment shows that the performance comparison of the four coding methods is shown in Fig. 9, and the number of simulation frames is greater than 10 5 .
由图9可得本文方法纠错性能优于LDPC码和极化码,当e=18时,二元加权编码方法相比Polar码有0.6dB的增益,相比于LDPC码有0.8~1.0dB的增益。Figure 9 shows that the error correction performance of the method in this paper is better than that of LDPC codes and polar codes. When e=18, the binary weighted coding method has a gain of 0.6dB compared with Polar codes and 0.8~1.0dB compared with LDPC codes. The gain.
本实施例提供的一种信道编码和纠错译码方法,通过发送端对BDMC信道的输入矢量进行添加符号的预处理,对预处理后的输入矢量进行二元加权编码以实现对输入矢量的无损编码,提升信道传输的速率;接收端接收到数据后进行纠错译码,判断译码时通过判断译码出矢量是否符号预处理时的规律而进行检错纠错。通过理论和实验证明随着输入矢量的码长越长以及BDMC信道传输速率趋近于信道容量时,本方法纠错译码后的矢量中的误比特率趋近于0,误比特率优于极化码和LDPC码。本方法易于软硬件实现,可自适应于信道的干扰情况,可以通过增大码长和BDMC信道传输速率的值提高纠错能力。In the channel coding and error correction decoding method provided by this embodiment, the input vector of the BDMC channel is preprocessed by adding symbols through the transmitting end, and binary weighted coding is performed on the preprocessed input vector to realize the input vector Lossless coding increases the channel transmission rate; the receiving end performs error correction decoding after receiving the data, and performs error detection and correction by judging whether the decoded vector is the law of symbol preprocessing during decoding. It is proved by theory and experiment that as the code length of the input vector becomes longer and the BDMC channel transmission rate approaches the channel capacity, the bit error rate in the vector after error correction and decoding of this method approaches 0, and the bit error rate is better than Polar codes and LDPC codes. The method is easy to implement by software and hardware, can adapt to the interference situation of the channel, and can improve the error correction ability by increasing the code length and the value of the BDMC channel transmission rate.
参照图10,本发明的一个实施例,还提供了一种信道编码和纠错译码设备,该信道编码和纠错译码设备可以是任意类型的智能终端,例如手机、平板电脑、个人计算机等。10, an embodiment of the present invention also provides a channel coding and error correction decoding device, the channel coding and error correction decoding device can be any type of smart terminal, such as mobile phones, tablet computers, personal computers Wait.
具体地,该信道编码和纠错译码设备包括:一个或多个控制处理器和存储器,图10中以一个控制处理器为例。控制处理器和存储器可以通过总线或者其他方式连接,图10中以通过 总线连接为例。Specifically, the channel coding and error correction decoding device includes: one or more control processors and memories. In FIG. 10, a control processor is taken as an example. The control processor and the memory can be connected through a bus or in other ways. In Figure 10, the connection through a bus is taken as an example.
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态性计算机可执行程序以及模块,如本发明实施例中的信道编码和纠错译码设备对应的程序指令/模块,控制处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而实现上述实施例所述的一种信道编码和纠错译码方法。As a non-transitory computer-readable storage medium, the memory can be used to store non-transitory software programs, non-transitory computer-executable programs and modules, such as those corresponding to the channel coding and error correction decoding device in the embodiment of the present invention The program instructions/modules control the processor to implement the channel coding and error correction decoding methods described in the foregoing embodiments by running non-transitory software programs, instructions, and modules stored in the memory.
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储产生的数据。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于控制处理器远程设置的存储器,这些远程存储器可以通过网络连接至该信道编码和纠错译码设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。The memory may include a program storage area and a data storage area. The program storage area may store an operating system and an application program required by at least one function; the data storage area may store generated data. In addition, the memory may include a high-speed random access memory, and may also include a non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some embodiments, the memory may optionally include a memory remotely provided with respect to the control processor, and these remote memories may be connected to the channel coding and error correction decoding device through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
所述一个或者多个模块存储在所述存储器中,当被所述一个或者多个控制处理器执行时,执行上述方法实施例中的一种信道编码和纠错译码方法。The one or more modules are stored in the memory, and when executed by the one or more control processors, a channel coding and error correction decoding method in the foregoing method embodiment is executed.
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,被图10中的一个控制处理器执行,可使得上述一个或多个控制处理器执行上述方法实施例中的一种信道编码和纠错译码方法。An embodiment of the present invention also provides a computer-readable storage medium that stores computer-executable instructions, and the computer-executable instructions are executed by one or more control processors, for example, as shown in FIG. 10 The execution of a control processor in the above-mentioned one or more control processors can execute a channel coding and error correction decoding method in the above-mentioned method embodiment.
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。The device embodiments described above are merely illustrative, and the units described as separate components may or may not be physically separated, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
通过以上的实施方式的描述,本领域技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现。本领域技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ReadOnly Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。Through the description of the above implementation manners, those skilled in the art can clearly understand that each implementation manner can be implemented by means of software plus a general hardware platform. Those skilled in the art can understand that all or part of the processes in the methods of the above embodiments can be implemented by computer programs instructing relevant hardware. The programs can be stored in a computer readable storage medium. At this time, it may include the flow of the embodiment of the above-mentioned method. Wherein, the storage medium may be a magnetic disk, an optical disc, a read-only memory (Read Only Memory, ROM), or a random access memory (Random Access Memory, RAM), etc.
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所述技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。The embodiments of the present invention are described in detail above with reference to the accompanying drawings, but the present invention is not limited to the above-mentioned embodiments, and within the scope of knowledge possessed by a person of ordinary skill in the technical field, it is possible to make various changes without departing from the purpose of the present invention. Kind of change.

Claims (7)

  1. 一种信道编码和纠错译码方法,其特征在于,包括以下步骤:A channel coding and error correction decoding method is characterized in that it comprises the following steps:
    S100、发送端将矢量X进行预处理得到矢量X′,并对所述矢量X′进行二元加权编码;其中,预处理之后的所述矢量X′满足以下条件:S100. The sending end preprocesses the vector X to obtain a vector X', and performs binary weighted encoding on the vector X'; wherein the vector X'after the preprocessing satisfies the following conditions:
    条件1、连续的符号1个数小于或等于c max(c max=0,1,2,…);条件2、
    Figure PCTCN2020078295-appb-100001
    Figure PCTCN2020078295-appb-100002
    Condition 1. The number of consecutive symbols is less than or equal to c max (c max =0,1,2,...); condition 2.
    Figure PCTCN2020078295-appb-100001
    Figure PCTCN2020078295-appb-100002
    所述二元加权编码的过程如下:The process of the binary weighted coding is as follows:
    根据编码公式
    Figure PCTCN2020078295-appb-100003
    L i=L i-1R i-1F(X′ i-1,r)对所述矢量X′进行编码,令编码后的L n=V;其中,X′ i为矢量X′中第i个字符,
    Figure PCTCN2020078295-appb-100004
    r为权系数,F(X′ i-1,r)为X′ i的加权累计分布函数,R 0=1,L 0=0,i∈(1,2,…,n),n为所述矢量X′的字符数;
    According to the coding formula
    Figure PCTCN2020078295-appb-100003
    L i =L i-1 R i-1 F(X′ i -1,r) encodes the vector X′, and sets the encoded L n =V; where X′ i is the first vector X′ i characters,
    Figure PCTCN2020078295-appb-100004
    r is the weight coefficient, F(X′ i -1,r) is the weighted cumulative distribution function of X′ i , R 0 =1, L 0 =0, i∈(1,2,...,n), n is the total The number of characters in the vector X′;
    S200、发送端将序列V经BDMC信道发送至接收端;S200. The transmitting end sends the sequence V to the receiving end via the BDMC channel;
    S300、接收端接收所述序列V后,对所述序列V进行纠错译码:S300. After receiving the sequence V, the receiving end performs error correction decoding on the sequence V:
    S301、以m个比特字符为窗口,获取所述序列V中连续m个比特作为第一纠错序列;S301: Using m-bit characters as a window, obtain m consecutive bits in the sequence V as a first error correction sequence;
    S302、沿所述第一纠错序列中的首字符向后译码出l m个比特作为第二纠错序列,所述l m个比特为检验所述第一纠错序列必然发生比特错误的最小译码长度; S302. Decoding backward along the first character in the first error correction sequence to obtain l m bits as a second error correction sequence, and the l m bits are for checking that a bit error will inevitably occur in the first error correction sequence. Minimum decoding length;
    S303、若所述第二纠错序列不符合所述条件1,则沿所述第一纠错序列中的尾字符向前选取S m个比特作为第三纠错序列,所述S m个比特字符为所述第一纠错序列的最大纠错范围; S303. If the second error correction sequence does not meet the condition 1, S m bits are selected forward along the last character in the first error correction sequence as the third error correction sequence, and the S m bits Character is the maximum error correction range of the first error correction sequence;
    S304、遍历所述第三纠错序列中所有的错误位置,按序对错误位置进行更正并且在每次更正一个错误位置后进行以下处理:S304. Traverse all the error positions in the third error correction sequence, correct the error positions in order, and perform the following processing after each error position is corrected:
    根据更正错误位置后的所述第三纠错序列对所述第一纠错序列、以及所述第二纠错序列进行对应位置的更正;Correcting the corresponding positions of the first error correction sequence and the second error correction sequence according to the third error correction sequence after the error position is corrected;
    判断更正后的所述第二纠错序列是否符合所述条件1,若符合,则所述第一纠错序列纠错完成并译码出m个比特字符;若不符合,则更正下一个错误位置。Determine whether the corrected second error correction sequence meets the condition 1, if it does, then the first error correction sequence has completed the error correction and decoded m-bit characters; if it does not, correct the next error Location.
  2. 根据权利要求1所述的一种信道编码和纠错译码方法,其特征在于,所述S303中,还包括以下步骤:The method for channel coding and error correction decoding according to claim 1, characterized in that, in S303, the method further comprises the following steps:
    若所述第二纠错序列符合所述条件1,则所述第一纠错序列纠错完成并译码出m个比特字符;If the second error correction sequence meets the condition 1, the error correction of the first error correction sequence is completed and m-bit characters are decoded;
    获取下一组连续m个比特字符作为更新后的第一纠错序列,并跳转至步骤S302。Obtain the next set of consecutive m-bit characters as the updated first error correction sequence, and jump to step S302.
  3. 根据权利要求1所述的一种信道编码和纠错译码方法,其特征在于,所述第一纠错序 列纠错完成并译码出m个比特字符之后,还包括以下步骤:The channel coding and error correction decoding method according to claim 1, characterized in that, after the error correction of the first error correction sequence is completed and m-bit characters are decoded, the method further comprises the following steps:
    获取下一组连续m个比特字符作为更新后的第一纠错序列,并跳转至步骤S302。Obtain the next set of consecutive m-bit characters as the updated first error correction sequence, and jump to step S302.
  4. 根据权利要求1所述的一种信道编码和纠错译码方法,其特征在于,所述遍历所述第三纠错序列中所有的错误位置,按序对错误位置进行更正,具体包括以下步骤:The channel coding and error correction decoding method according to claim 1, wherein the traversing all the error positions in the third error correction sequence, and correcting the error positions in order, specifically includes the following steps :
    遍历所述第三纠错序列中所有的错误位置,设所述第三纠错序列中最多出现e个比特错误,则计算比特错误的位置的可能性为
    Figure PCTCN2020078295-appb-100005
    种;
    Traverse all the error positions in the third error correction sequence, and suppose that there are at most e bit errors in the third error correction sequence, then the probability of calculating the position of the bit error is
    Figure PCTCN2020078295-appb-100005
    kind;
    Figure PCTCN2020078295-appb-100006
    种可能性进行排序,排序的规则如下:首先根据e值从小至大排序,然后根据比特错误的位置从后向前排序;
    will
    Figure PCTCN2020078295-appb-100006
    There are two possibilities for sorting, and the sorting rules are as follows: first sort from small to large according to the value of e, and then sort from back to front according to the position of the bit error;
    按序将错误位置进行比特取非。Perform bit negation on the error position in sequence.
  5. 根据权利要求1至4任一项所述的一种信道编码和纠错译码方法,其特征在于,所述BDMC信道包括BSC信道以及BEC信道。The channel coding and error correction decoding method according to any one of claims 1 to 4, wherein the BDMC channel includes a BSC channel and a BEC channel.
  6. 一种信道编码和纠错译码设备,其特征在于,包括:至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行如权利要求1至5任一项所述的一种信道编码和纠错译码方法。A channel coding and error correction decoding device, which is characterized by comprising: at least one control processor and a memory for communicating with the at least one control processor; the memory stores the memory that can be controlled by the at least one An instruction executed by the processor, the instruction being executed by the at least one control processor, so that the at least one control processor can execute the channel coding and error correction translation according to any one of claims 1 to 5 Code method.
  7. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至5任一项所述的一种信道编码和纠错译码方法。A computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to make a computer execute any one of claims 1 to 5 A channel coding and error correction decoding method.
PCT/CN2020/078295 2020-02-20 2020-03-06 Method and device for channel coding and error correction decoding, and storage medium WO2021164064A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010105029.1A CN111294058B (en) 2020-02-20 2020-02-20 Channel coding and error correction decoding method, equipment and storage medium
CN202010105029.1 2020-02-20

Publications (1)

Publication Number Publication Date
WO2021164064A1 true WO2021164064A1 (en) 2021-08-26

Family

ID=71027502

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/078295 WO2021164064A1 (en) 2020-02-20 2020-03-06 Method and device for channel coding and error correction decoding, and storage medium

Country Status (2)

Country Link
CN (1) CN111294058B (en)
WO (1) WO2021164064A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115883023A (en) * 2023-01-29 2023-03-31 北京蓝玛星际科技有限公司 GSM error correction decoding method, equipment, device and storage medium

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112883386B (en) * 2021-01-15 2024-02-13 湖南遥昇通信技术有限公司 Digital fingerprint processing and signature processing method, device and storage medium
CN113556381B (en) * 2021-06-15 2022-09-30 湖南幻影三陆零科技有限公司 Optimization method of HTTP request, terminal and storage medium
CN113783659A (en) * 2021-08-24 2021-12-10 湖南遥昇通信技术有限公司 Data processing method, device and medium based on binary erasure channel
CN113922947B (en) * 2021-09-18 2023-11-21 湖南遥昇通信技术有限公司 Self-adaptive symmetrical coding method and system based on weighted probability model
CN113938273B (en) * 2021-09-30 2024-02-13 湖南遥昇通信技术有限公司 Symmetric encryption method and system capable of resisting quantitative parallel computing attack
CN114039718B (en) * 2021-10-18 2023-12-19 湖南遥昇通信技术有限公司 Hash coding method and system of self-adaptive weighted probability model
CN117220832B (en) * 2023-11-07 2024-03-15 苏州联讯仪器股份有限公司 Error code insertion method, device, system and computer storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108141314A (en) * 2015-10-02 2018-06-08 三菱电机株式会社 For determining the method and apparatus of the feature of error-correcting code system
EP3480959A1 (en) * 2017-11-03 2019-05-08 Mitsubishi Electric R & D Centre Europe B.V. Belief propagation decoding of polar codes with prioritized updating of kernels which have not reached stability
CN110383697A (en) * 2017-03-13 2019-10-25 三菱电机株式会社 The method of the structure of dividing and ruling of the encoder of encoder and configuration based on polar code based on polar code
CN110474876A (en) * 2019-07-15 2019-11-19 湖南遥昇通信技术有限公司 A kind of data encoding coding/decoding method, device, equipment and storage medium
CN110635807A (en) * 2019-08-05 2019-12-31 湖南瑞利德信息科技有限公司 Data coding method and decoding method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8418041B2 (en) * 2008-12-03 2013-04-09 Electronics And Telecommunications Research Institute MPE-FEC RS decoder and decoding method thereof
US10412414B2 (en) * 2012-08-13 2019-09-10 Gurulogic Microsystems Oy Decoder and method for decoding encoded input data containing a plurality of blocks or packets
CN106972865B (en) * 2017-03-20 2020-05-08 中山大学 Recursive packet Markov superposition coding method
CN108416427A (en) * 2018-02-22 2018-08-17 重庆信络威科技有限公司 Convolution kernel accumulates data flow, compressed encoding and deep learning algorithm
CN110311689A (en) * 2018-03-22 2019-10-08 中兴通讯股份有限公司 A kind of interpretation method, device and the computer readable storage medium of Polar code
CN109450596B (en) * 2018-11-12 2022-02-01 湖南瑞利德信息科技有限公司 Encoding method, decoding method, encoding device, decoding device, storage medium, and terminal

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108141314A (en) * 2015-10-02 2018-06-08 三菱电机株式会社 For determining the method and apparatus of the feature of error-correcting code system
CN110383697A (en) * 2017-03-13 2019-10-25 三菱电机株式会社 The method of the structure of dividing and ruling of the encoder of encoder and configuration based on polar code based on polar code
EP3480959A1 (en) * 2017-11-03 2019-05-08 Mitsubishi Electric R & D Centre Europe B.V. Belief propagation decoding of polar codes with prioritized updating of kernels which have not reached stability
CN110474876A (en) * 2019-07-15 2019-11-19 湖南遥昇通信技术有限公司 A kind of data encoding coding/decoding method, device, equipment and storage medium
CN110635807A (en) * 2019-08-05 2019-12-31 湖南瑞利德信息科技有限公司 Data coding method and decoding method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HU, HENGMING ET AL.: "Research of Polar Codes Based on Binary Symmetric Channel", COMPUTER ENGINEERING, vol. 45, no. 4, 30 April 2019 (2019-04-30), pages 78 - 81, XP055840126, ISSN: 1000-3428 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115883023A (en) * 2023-01-29 2023-03-31 北京蓝玛星际科技有限公司 GSM error correction decoding method, equipment, device and storage medium

Also Published As

Publication number Publication date
CN111294058B (en) 2020-11-24
CN111294058A (en) 2020-06-16

Similar Documents

Publication Publication Date Title
WO2021164064A1 (en) Method and device for channel coding and error correction decoding, and storage medium
CN109660264B (en) High performance polar code decoding algorithm
CN108462558B (en) Method and device for decoding polarization code SCL and electronic equipment
CN112039531B (en) Jerling code error correction optimization method and device
WO2020113945A1 (en) Polar code construction method and apparatus, electronic device, and readable storage medium
WO2014173133A1 (en) Decoding method and decoding apparatus for polar code
CN107565978B (en) BP decoding method based on Tanner graph edge scheduling strategy
US10892783B2 (en) Apparatus and method for decoding polar codes
US11876531B2 (en) Smart decoder
CN109495211B (en) Channel coding and decoding method
Wang et al. A low-complexity belief propagation based decoding scheme for polar codes-decodability detection and early stopping prediction
Winkelbauer et al. On quantization of log-likelihood ratios for maximum mutual information
Teng et al. Convolutional neural network-aided bit-flipping for belief propagation decoding of polar codes
CN104184480B (en) A kind of LDPC for reducing complexity improves interpretation method
WO2020107218A1 (en) Method for polar decoding with dynamic successive cancellation list size and polar decoder
CN107181567B (en) Low-complexity MPA algorithm based on threshold
WO2020088256A1 (en) Decoding method and device
Wang et al. Spiking semantic communication for feature transmission with harq
US11515895B2 (en) Block code encoding and decoding methods, and apparatus therefor
CN114519346A (en) Decoding processing method, device, equipment and medium based on language model
CN114362763A (en) Joint decoding method and device, storage medium and electronic equipment
Zhou et al. Performance analysis of LDPC decoding algorithm
Tang et al. Normalized Neural Network for Belief Propagation LDPC Decoding
CN111835363A (en) LDPC code decoding method based on alternative direction multiplier method
Jiang et al. Correcting errors by natural redundancy

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20920544

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20920544

Country of ref document: EP

Kind code of ref document: A1