CN102916707B - Compatible convolutional code generator polynomial defining method, coding method and encoder - Google Patents

Compatible convolutional code generator polynomial defining method, coding method and encoder Download PDF

Info

Publication number
CN102916707B
CN102916707B CN201210382553.9A CN201210382553A CN102916707B CN 102916707 B CN102916707 B CN 102916707B CN 201210382553 A CN201210382553 A CN 201210382553A CN 102916707 B CN102916707 B CN 102916707B
Authority
CN
China
Prior art keywords
convolutional code
generator polynomial
code generator
vector
rate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201210382553.9A
Other languages
Chinese (zh)
Other versions
CN102916707A (en
Inventor
吴湛击
王悦超
吴广豪
高翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201210382553.9A priority Critical patent/CN102916707B/en
Publication of CN102916707A publication Critical patent/CN102916707A/en
Application granted granted Critical
Publication of CN102916707B publication Critical patent/CN102916707B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses a kind of compatible convolutional code generator polynomial defining method, coding method and encoder.The method determines the target convolutional code generator polynomial of 1/ (k+1) code check as follows, k is positive integer: if k=1, then calculate its free distance by all convolutional code generator polynomial of traversal 1/2 rate convolutional code, using travel through a predetermined number convolutional code generator polynomial vector that in the convolutional code generator polynomial obtained, free distance is larger or the maximum convolutional code generator polynomial vector of free distance one of at least as target convolutional code generator polynomial vector; If k & is gt; 1, then first determine the target convolutional code generator polynomial vector of 1/k rate convolutional code, be designated as set of vectors A k, then based on set of vectors A kdetermine the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code.The present invention reduces amount of calculation, reduce the requirement to hardware, highly versatile, be very applicable to HARQ.

Description

Compatible convolutional code generator polynomial defining method, coding method and encoder
Technical field
The present invention relates to communication technical field, particularly relate to a kind of compatible convolutional code generator polynomial lookup method and convolution coding method.
Background technology
The founder Shannon of present information opinion and coding theory proposed noisy channel coding theorem in 1948, and definition gives digital communication system and realizes reliable communication method and on particular channel, realize the rate of information throughput upper limit of reliable communication.Shannon gives the existence proof of effective error control coding simultaneously, thus facilitates the fast development of field of channel coding research.
Convolution code is a kind of linear error correction code that Elias proposed in nineteen fifty-five.Different from block encoding, in convolution coding process, take full advantage of the correlation between each code element, the information word of this group not only determines the supervision unit of this group, and participates in the supervision unit determining some groups later.Simultaneously in decode procedure, extract decoding information the code character not only received from this moment, but also the decoding received in some moment after utilizing is extracted for information about.After Viterbi decoding algorithm proposes, convolution code is widely used in mobile communication, satellite communication, deep space communication and data compression system because its coding gain is high, decoding latency is little and have the ability of very strong correction random error.Having a wide range of applications in the communications existing, especially in satellite communication a large amount of convolution code that adopts as channel coding method, in 3G (Third Generation) Moblie also using convolution code as one of main code mode.
Although performance is better than block code, convolution code does not have mathematic(al) structure that block code is tight like that and mathematical analysis means.In the analytic process of convolution code, do not find effective mathematical tool as block code so far yet, so that performance evaluation is very difficult.Up to now, from analyzing, the comparison of results that obtains is few, and the generator polynomial by means of computer searching often with maximum free distance is to construct convolution code.Free distance weighs the important factor of of convolution code performance, and the computational methods of free distance mainly concentrate on searches.
The performance of convolution code depends on adopted coding/decoding method and the range performance of code.When using identical coding/decoding method, for promoting the performance of convolution code, the way using preferably range performance need be taked.When algebraic decoding, decoding constraint degree equals the constraint degree of code, and at this moment, the distance metric of convolution code is minimum range d min.And when probabilistic decoding (Veterbi decoding), decoding constraint degree is greater than the constraint degree of code, at this moment, the distance metric of code is minimum free distance.
If sequence M to be encoded is a semo-infinite sequence, if (i+1) individual information code character before intercepting M, and is referred to as i-th grade of brachymemma (from the 0th grade meter), and uses M irepresent, after encoded device coding, obtain a code word row C be made up of (i+1) individual subcode i, claim C ifor i-th grade of brachymemma of code sequence C.Utilize the generator matrix of code, C ican write:
C i=M i[G i]
I-th rank column distance is defined as:
d i=min{d(C' i,C” i)}
G irepresent the generator matrix of code, d iit is the bounded positive integer sequence of monotone nondecreasing.Because convolution code is linear code, so any two code word sums must be another code word, i.e. C' iwith C " ibetween distance must be the weight of another code word.Therefore, the i-th rank column distance to be exactly the 0th subcode be non-zero, the minimum weight of the long code word for (i+1) individual subcode.When i=m (register capacity), C i=C m, C mfor initial brachymemma code character, claim d mfor the minimum range of convolution code, also use d minrepresent.So, the minimum range of convolution code be exactly the 0th subcode for complete zero time, initial brachymemma code character C mthe minimum weight of middle code word.Due in algebraic decoding situation, adopt the constraint degree of decoding during feedback decoding to equal the constraint degree of code, therefore, the tolerance of feedback decoding time-code is exactly minimum range, is designated as d min.
As i → ∞, d ithe length that when be the 0th information code character not being zero entirely, encoder exports is the minimum weight of the code sequence of any infinite length, definition
lim i → ∞ d i = d f
Above formula shows, as i → ∞, and d ireach minimum free distance the most at last or be called for short free distance d f.In order to determine the free distance d of certain yard f, we are unnecessary also can not compare the code sequence of infinite length, usually, when i reaches 3m or 4m, and d ijust no longer increase, at this moment d ijust reach d fvalue.We can by state diagram, and the nonzero path of getting back to again all-zero state from all-zero state has many bars, and wherein have a weight the lightest, this minimum weight is exactly the free distance d of code f.Due to the non-drop characteristic of column distance, for same code, free distance d fat least equal minimum range d min.
The scheme calculating the free distance of convolution code has a lot, calculates the free distance of convolution code with Viterbi decoding algorithm.Using full null sequence as receiving sequence, so Hamming distance is exactly the code weight of the coded sequence on grid chart, is made up of the following step.
The first step: from the 0th moment to the m+1 moment, expands to 2 from nought state is progressively double mindividual state.1 moment only had a state.
Second step: from time quantum j=m, calculates the part tolerance entering the path of each state.Store path (i.e. survivor path) and its metric of each state.Here the previous state value on the survivor path of the path stored normally corresponding to this state.
3rd step: j increases by 1.Calculate the part tolerance entering all paths of each state.This metric is the metric that the branch metric entering this state adds the survivor path at the back be connected with this branch.For each state, have 2 kindividual such metric, therefrom selects and stores the path (i.e. survivor path) and its metric with maximum metric, and deleting other paths.
4th step: if the metric of the non-zero status in j moment (has 2 k-1) be all not less than the metric of j moment nought state, so the metric of j moment nought state is exactly free distance d f, iterative computation stops, otherwise turns the 3rd step.
The present inventor is realizing in process of the present invention, finds that prior art exists large, high to the hardware device requirement feature of amount of calculation.
Summary of the invention
One of technical problem to be solved by this invention needs to provide a kind of acquisition performance more excellent compatible convolutional code generator polynomial defining method for speed, performance preferably coding method and the better simply encoder of structure.
In order to solve the problems of the technologies described above, the invention provides a kind of compatible convolutional code generator polynomial defining method.The method determines the target convolutional code generator polynomial of 1/ (k+1) code check as follows, and k is positive integer:
If k=1, then calculate its free distance by all convolutional code generator polynomial of traversal 1/2 rate convolutional code, using travel through a predetermined number convolutional code generator polynomial vector that in the convolutional code generator polynomial obtained, free distance is larger or the maximum convolutional code generator polynomial vector of free distance one of at least as target convolutional code generator polynomial vector;
If k>1, then first determine the target convolutional code generator polynomial vector of 1/k rate convolutional code, be designated as set of vectors A k, then based on set of vectors A kdetermine the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code.
Further, described based on described set of vectors A kdetermine that the step of the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code can comprise:
For described set of vectors A kin each multinomial vector g, by first the k of g multiplication multinomial being searched the multinomial convolutional code generator polynomial vector determining multiple 1/ (k+1) rate convolutional code of kth+1 again as front k multiplication multinomial;
The convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code determined for each multinomial vector is defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
Further, described based on described set of vectors A kdetermine that the step of the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code can comprise:
For described set of vectors A kin each multinomial vector g, using the k of g multiplication multinomial as front k multiplication multinomial, by traveling through 2 lplant kth+1 multiplication multinomial, obtain 2 lthe convolutional code generator polynomial vector of individual 1/ (k+1) rate convolutional code, wherein L is the number of convolution coder register;
Will for A kin the convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code that obtains of each multinomial vector be defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
In addition, the convolutional code generator polynomial that will use when one of described target convolutional code generator polynomial vector being defined as actual coding by emulation testing.
According to another aspect of the invention, a kind of compatible convolutional coding method is provided.One of target convolutional code generator polynomial vector that the method utilizes above-mentioned arbitrary technical scheme to determine is encoded.
The method is particularly useful for hybrid HARQ incremental redundancy strategy.
In addition, can to carry out code check be less than 1/k be greater than the convolution coding of 1/ (k+1) time, first utilization is searched a convolutional code generator polynomial in the convolutional code generator polynomial set of vectors of 1/ (k+1) code check mentioned and is encoded, and then the convolution code obtained of encoding is punched, and then obtain target bit rate convolution code.
According to another aspect of the invention, a kind of encoder is provided.This encoder comprises judging unit, computing unit and coding unit, wherein:
Described judging unit is used for, and when determining the target convolutional code generator polynomial of 1/ (k+1) code check, judge whether the target convolutional code generator polynomial will determining 1/2 code check, k is positive integer.
Described computing unit is used for, if k=1, then calculate its free distance by all convolutional code generator polynomial of traversal 1/2 rate convolutional code, using travel through a predetermined number convolutional code generator polynomial vector that in the convolutional code generator polynomial obtained, free distance is larger or the maximum convolutional code generator polynomial vector of free distance one of at least as target convolutional code generator polynomial vector; If k>1, then first search the target convolutional code generator polynomial vector of 1/k rate convolutional code, form set of vectors A k, then based on set of vectors A kdetermine the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code;
Described coding unit, encodes for using one of target convolutional code generator polynomial vector.
Described computing unit also can be further used for:
For described set of vectors A kin each multinomial vector g, by first the k of g multiplication multinomial being searched as front k multiplication multinomial the convolutional code generator polynomial vector that kth+1 multinomial determines multiple 1/ (k+1) rate convolutional code again;
By A kin the convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code determined for each multinomial vector be defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
Described computing unit also can be further used for:
For described set of vectors A kin each multinomial vector g, using the k of g multiplication multinomial as front k multiplication multinomial, by traveling through 2 lplant kth+1 multiplication multinomial, obtain 2 lthe convolutional code generator polynomial vector of individual 1/ (k+1) rate convolutional code, wherein L is the number of the convolution coder register of described encoder;
The convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code obtained for each multinomial vector is defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
Compared with prior art, one or more embodiment of the present invention can have the following advantages by tool:
According in compatible convolutional code generator polynomial defining method of the present invention, by the generator polynomial set of vectors A based on the 1/k rate convolutional code generated kdetermine the generator polynomial of 1/ (k+1) rate convolutional code, because convolution code buffer status is identical, just branch metric is different, therefore when being applied to HARQ (hybrid HARQ), decrease amount of calculation, reduce the requirement to hardware.
In addition, according to coding method of the present invention, due to the complete compatible high rate codewords of low bit-rate code word, therefore highly versatile, is very applicable to HARQ.In addition, due to based on the design of similar grid chart, there is lower encoding and decoding complexity.
Other advantages of the present invention, target, to set forth in the following description to a certain extent with feature, and to a certain extent, based on will be apparent to those skilled in the art to investigating hereafter, or can be instructed from the practice of the present invention.
Accompanying drawing explanation
Accompanying drawing is used to provide a further understanding of the present invention, and forms a part for specification, with embodiments of the invention jointly for explaining the present invention, is not construed as limiting the invention.In the accompanying drawings:
Figure 1A is the convolutional code generator polynomial lookup method according to the embodiment of the present invention.
Figure 1B is based on set of vectors A according to the embodiment of the present invention kdetermine the flow chart of the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code.
What Fig. 2 ran the present embodiment method is 1/4 rate convolutional code encoder schematic diagram.
Fig. 3 is that under additive white Gaussian noise channel, 1/2 code check binary convolution code (BCC, BinaryConvolutionalCode) repeats (being equivalent to 1/4 code check) delivery plan and code-rate-compatible delivery plan performance comparison schematic diagram of the present invention.
Fig. 4 is that grand lower 1/2 code check binary convolution code (BCC, BinaryConvolutionalCode) in spatial Channel Model city repeats (being equivalent to 1/4 code check) delivery plan and code-rate-compatible delivery plan performance comparison schematic diagram of the present invention.
Embodiment
For making the object, technical solutions and advantages of the present invention clearly, below in conjunction with accompanying drawing, the present invention is described in further detail.
In addition, can perform in the computer system of such as one group of computer executable instructions in the step shown in the flow chart of accompanying drawing, and, although show logical order in flow charts, but in some cases, can be different from the step shown or described by order execution herein.
Each step of the lookup method of the convolutional code generator polynomial (abbreviation generator polynomial) of the present embodiment is described below with reference to Figure 1A.In the method, determine the convolutional code generator polynomial of 1/ (k+1) code check as follows, wherein, k is positive integer.
Step S110, judges whether the convolutional code generator polynomial will searching 1/2 code check, namely judges whether k equals 1.If the determination result is YES, then step S120 is entered, otherwise, enter step S140.
Step S120, to search the convolution code of 1/2 code check, i.e. k=1, then calculate its free distance by all generator polynomials of traversal 1/2 rate convolutional code, enter step S130.
Step S130, by travel through free distance in the generator polynomial obtained maximum generator polynomial set of vectors (be designated as A 2) as target convolutional code generator polynomial vector (also known as lookup result).Be preferably traversal 2 l× 2 l, L represents the number of convolution coder register.
Step S140, determines the target convolutional code generator polynomial vector of 1/k rate convolutional code, is designated as set of vectors A k, then enter step S150.
A kexpression can be A k = { ( g 11 , g 12 , ... , g 1 k ) , ( g 21 , g 22 , ... , g 2 k ) , ... , ( g r k 0 , g r k 1 , ... , g r k k ) } , Wherein, represent set of vectors A kr kindividual element (generator polynomial vector). represent this r ka kth multiplication multinomial of individual element.
Step S150, based on set of vectors A kdetermine the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code.
Each sub-step of step S150 is described in detail below in conjunction with Figure 1B.
Step S251, for described set of vectors A kin each multinomial vector g, by first the k of g multiplication multinomial being searched the multinomial convolutional code generator polynomial vector determining multiple 1/ (k+1) rate convolutional code of kth+1 again as front k multiplication multinomial.Preferably, by traveling through 2 lplant kth+1 multiplication multinomial, to obtain 2 lthe convolutional code generator polynomial vector of individual 1/ (k+1) rate convolutional code, can by whole 2 lthe individual all or part of convolutional code generator polynomial vector as aforementioned multiple 1/ (k+1) rate convolutional code, wherein L is the number of convolution coder register.
Step S252, is defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate by the convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code determined for each multinomial vector.
Step S253, using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.Predetermined number can be set by parameter configuration or set by program code is fixing in systems in which.
Further, emulation testing can be carried out to choose one of target convolutional code generator polynomial vector as finally wanting the actual generator polynomial used in embody rule environment (as BSC, Rayleigh fading etc.).
Below by the finding step of convolutional code generator polynomial during detailed description k=4.
To find 1/4 rate convolutional code generator polynomial, to adopt 6 registers to be described.
(1) first by the convolutional code generator polynomial of computer searching 1/2 code check, by utilizing the convolution code free distance found to be 10 to the maximum, obtaining generator polynomial set, with octal representation, being set to A 2.A 2in comprise 133 8, 171 8deng;
(2) at A 2on the basis of middle generator polynomial, the convolutional code generator polynomial of searching 1/3 code check, finds the convolutional code generator polynomial of 1/3 code-rate-compatible.If 1/3 rate convolutional code the first two generator polynomial is 133 8, 171 8, the 3rd generator polynomial is searched by conventional method and is obtained.As 133 8, 171 8, 117 8, free distance is 15, can obtain corresponding generator polynomial set under this code check equally, be set to A 3.Wherein A 3comprise 133 8, 171 8, 117 8etc..
(3) at A 3the convolution code of searching 1/4 code check on the basis of middle generator polynomial, utilize and calculate freely apart from maximum principle, search the convolutional code generator polynomial of 1/4 code-rate-compatible, the 4th generator polynomial is searched by conventional method and is obtained.As 133 8, 171 8, 117 8, 165 8, free distance is 20.Like this, corresponding generator polynomial set of vectors under this code check can be obtained, be set to A 4.Wherein A 4comprise 133 8, 171 8, 117 8, 165 8.
Can be applied to preferably in HARQ incremental redundancy strategy according to code-rate-compatible convolutional code generator polynomial of the present invention.
The following detailed description of the application of code-rate-compatible convolutional code generator polynomial in HARQ incremental redundancy strategy.
First the convolutional code generator polynomial of 1/k code-rate-compatible is searched according to said method.For k=4.HARQ incremental redundancy strategy is based on low bit-rate (1/4 code check) encoder, then by punching to the output of encoder, thus produces different redundancy versions.When first time transmits, only have in the redundancy versions after punching one to be transmitted, be so just equivalent to the transmission of high code check.When needing due to decoding error to retransmit, extra coded-bit needs to be transmitted.
As shown in Figure 2, be 1/4 encoder for convolution codes, totally 6 registers, similar with 1/2 structure of convolution code encoder used in 802.11ac agreement.At this, suppose that female code is 1/4 code check, there is N number of information bit (having added cyclic redundancy code bit in information bit), data bit after coding adds up to 4N, then this 4N is divided into groups, be divided into 4 groups, the road that each group represents encoder exports, and is expressed as A, B, C, D.First time, when retransmitting, sends 4N bit, i.e. A, B two-way, is equivalent to high code check (1/2 code check) transmission.When recipient carries out decoding to the data received, detect with cyclic redundancy code bit.If decoding error and need retransmit time, extra coded-bit then needs to be transmitted, now transmit C road, in conjunction with A, B two-way, totally 3 circuit-switched data, transmission is now equivalent to the transmission of 1/3 code check, namely transmit data for 1/3 rate convolutional code coding and obtain.It should be noted that this 1/3 rate convolutional code and 1/2 rate convolutional code compatibility.If receiving terminal decoding still mistake, when needing secondary to retransmit, then transmit D circuit-switched data bit, this transmits to be equivalent to transmit with low bit-rate 1/4, and equally, 1/4 code check and 1/2,1/3 rate convolutional code have the feature of code-rate-compatible.The data (representing with Y) that data (representing with X) after 1/4 rate convolutional code coding obtain after encoding with 1/2,1/3 rate convolutional code have the relation comprised, and X comprises Y.As can be seen from figure we also, in 3 kinds of rate convolutional code encoders, register used is identical, and therefore the state of encoder for convolution codes is constant, just exports and add two-way on the basis of two-way before.This is of value to the realization of receiving terminal decoding algorithm, because this simplify hardware designs.
The present invention adopts the mode of expansion can search for low bit-rate compatible convolutional flexibly, and the algorithm in the method has certain algorithm advantage compared to the method for exhaustion.And the convolutional code generator polynomial of better performances can be found fast to code-rate-compatible problem.If there is the method for exhaustion, then need traversal
it is secondary,
And by the method in the present invention, then only need traversal
2 l× 2 l+ r 2× 2 l+ r 3× 2 l+ ... + r n-1× 2 lit is secondary,
Wherein r 2, r 3..., r n-1be code check be respectively 1/2,1/3 ..., the number of the generator polynomial vector of the maximum free distance of convolution code of 1/ (n-1).Generally there is r i< < 2 l, i=2,3 ..., n-1, therefore can greatly reduce in volumes of searches and amount of calculation.
Meanwhile, because convolution code buffer status is identical, just branch metric is different, therefore when being applied to HARQ, simplifies hardware designs.
The method that we provide with this patent, has searched for 1/4 code check generator polynomial g 0=133 8, g 1=171 8, g 2=117 8, g 3=165 8and under white Gaussian noise (AWGN) channel (as Fig. 3) and city macrocellular spatial fading channel (SCM-UMa) (as Fig. 4), carry out simulation work respectively, and do contrast with the MCS0-ARQ retransmission scheme in IEEE802.11ah.MCS0 iteration scheme is 1/2 convolution code used, and retransmit and send, other conditions are identical.In 802.11ah, 1/2 rate convolutional code encoder adopts industrial standard to produce multinomial, g 0=133 8and g 1=171 8.Can obtain from figure, under white Gaussian noise (AWGN) channel, at Packet Error Ratio PER=0.1 place, compared with ARQ repeating method, 1/4 rate convolutional code scheme has the gain of 0.7dB.Under SCM-UMa channel, at Packet Error Ratio PER=0.1 place, 1/4 rate convolutional code promotes 1.2dB than equal gain combining (EGC) ARQ repeating method in performance, improves 0.85dB than maximum-ratio combing ARQ repeating method.
According to a further aspect in the invention, a kind of encoder is additionally provided.This encoder comprises judging unit, computing unit and coding unit.This judging unit is used for when determining the target convolutional code generator polynomial of 1/ (k+1) code check, judges whether the target convolutional code generator polynomial will determining 1/2 code check.This computing unit is for performing the process in above-mentioned S120 to S150.Coding unit uses one of target convolutional code generator polynomial vector to encode.
Those skilled in the art should be understood that, above-mentioned of the present invention each module or each step can realize with general calculation element, they can concentrate on single calculation element, or be distributed on network that multiple calculation element forms, alternatively, they can realize with the executable program code of calculation element, thus, they can be stored and be performed by calculation element in the storage device, or they are made into each integrated circuit modules respectively, or the multiple module in them or step are made into single integrated circuit module to realize.Like this, the present invention is not restricted to any specific hardware and software combination.
Although the execution mode disclosed by the present invention is as above, the execution mode that described content just adopts for the ease of understanding the present invention, and be not used to limit the present invention.Technical staff in any the technical field of the invention; under the prerequisite not departing from the spirit and scope disclosed by the present invention; any amendment and change can be done what implement in form and in details; but scope of patent protection of the present invention, the scope that still must define with appending claims is as the criterion.

Claims (8)

1. a compatible convolutional code generator polynomial defining method, is characterized in that, determines the target convolutional code generator polynomial of 1/ (k+1) code check as follows, and k is positive integer:
If k=1, then calculate its free distance by all convolutional code generator polynomial of traversal 1/2 rate convolutional code, using travel through a predetermined number convolutional code generator polynomial vector that in the convolutional code generator polynomial obtained, free distance is larger or the maximum convolutional code generator polynomial vector of free distance one of at least as target convolutional code generator polynomial vector;
If k>1, then first determine the target convolutional code generator polynomial vector of 1/k rate convolutional code, be designated as set of vectors A k, then based on set of vectors A kdetermine the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code;
Wherein, described based on described set of vectors A kdetermine that the step of the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code comprises:
For described set of vectors A kin each multinomial vector g, by first the k of g multiplication multinomial being searched as front k multiplication multinomial the convolutional code generator polynomial vector that kth+1 multinomial determines multiple 1/ (k+1) rate convolutional code again;
The convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code determined for each multinomial vector is defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
2. method according to claim 1, is characterized in that, described based on described set of vectors A kdetermine that the step of the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code comprises:
For described set of vectors A kin each multinomial vector g, using the k of g multiplication multinomial as front k multiplication multinomial, by traveling through 2 lplant kth+1 multiplication multinomial, obtain 2 lthe convolutional code generator polynomial vector of individual 1/ (k+1) rate convolutional code, wherein L is the number of convolution coder register;
Will for A kin the convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code that obtains of each multinomial vector be defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
3. method according to any one of claim 1 to 2, is characterized in that, the convolutional code generator polynomial that will use when one of described target convolutional code generator polynomial vector being defined as actual coding by emulation testing.
4. a compatible convolutional coding method, is characterized in that, utilizes one of target convolutional code generator polynomial vector determined any one of claim 1 to 3 to encode.
5. method according to claim 4, is characterized in that, is applicable to hybrid HARQ incremental redundancy strategy.
6. the method according to claim 4 or 5, it is characterized in that, to carry out code check be less than 1/k be greater than the convolution coding of 1/ (k+1) time, a convolutional code generator polynomial in the convolutional code generator polynomial set of vectors of searching 1/ (k+1) code check mentioned first is utilized in claim 1 or 2 to encode, and then the convolution code obtained of encoding is punched, and then obtain target bit rate convolution code.
7. an encoder, is characterized in that, comprises judging unit, computing unit and coding unit, wherein:
Described judging unit is used for, and when determining the target convolutional code generator polynomial of 1/ (k+1) code check, judge whether the target convolutional code generator polynomial will determining 1/2 code check, k is positive integer;
Described computing unit is used for, if k=1, then calculate its free distance by all convolutional code generator polynomial of traversal 1/2 rate convolutional code, using travel through a predetermined number convolutional code generator polynomial vector that in the convolutional code generator polynomial obtained, free distance is larger or the maximum convolutional code generator polynomial vector of free distance one of at least as target convolutional code generator polynomial vector; If k>1, then first search the target convolutional code generator polynomial vector of 1/k rate convolutional code, form set of vectors A k, then based on set of vectors A kdetermine the target convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code;
Described coding unit, encodes for using one of target convolutional code generator polynomial vector;
Wherein, described computing unit is further used for:
For described set of vectors A kin each multinomial vector g, by first the k of g multiplication multinomial being searched as front k multiplication multinomial the convolutional code generator polynomial vector that kth+1 multinomial determines multiple 1/ (k+1) rate convolutional code again;
By A kin the convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code determined for each multinomial vector be defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
8. encoder according to claim 7, is characterized in that, described computing unit is further used for:
For described set of vectors A kin each multinomial vector g, using the k of g multiplication multinomial as front k multiplication multinomial, by traveling through 2 lplant kth+1 multiplication multinomial, obtain 2 lthe convolutional code generator polynomial vector of individual 1/ (k+1) rate convolutional code, wherein L is the number of the convolution coder register of described encoder;
The convolutional code generator polynomial vector of all 1/ (k+1) rate convolutional code obtained for each multinomial vector is defined as the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code for candidate;
Using described be used for convolutional code generator polynomial vector that in the convolutional code generator polynomial vector of 1/ (k+1) rate convolutional code of candidate, free distance is maximum one of at least or the larger predetermined number convolutional code generator polynomial vector of free distance as target convolutional code generator polynomial vector.
CN201210382553.9A 2012-10-10 2012-10-10 Compatible convolutional code generator polynomial defining method, coding method and encoder Expired - Fee Related CN102916707B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210382553.9A CN102916707B (en) 2012-10-10 2012-10-10 Compatible convolutional code generator polynomial defining method, coding method and encoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210382553.9A CN102916707B (en) 2012-10-10 2012-10-10 Compatible convolutional code generator polynomial defining method, coding method and encoder

Publications (2)

Publication Number Publication Date
CN102916707A CN102916707A (en) 2013-02-06
CN102916707B true CN102916707B (en) 2016-02-24

Family

ID=47614959

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210382553.9A Expired - Fee Related CN102916707B (en) 2012-10-10 2012-10-10 Compatible convolutional code generator polynomial defining method, coding method and encoder

Country Status (1)

Country Link
CN (1) CN102916707B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103501182B (en) * 2013-09-18 2016-06-22 电子科技大学 A kind of blind estimating method of convolutional code generator polynomial
US11239948B2 (en) * 2019-03-06 2022-02-01 Huawei Technologies Co., Ltd. BCC puncturing patterns for data retransmission in wireless network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1855733A (en) * 2005-04-29 2006-11-01 华为技术有限公司 Convolution coding method and coder therefor
CN101039119A (en) * 2006-03-17 2007-09-19 财团法人工业技术研究院 Encoding and decoding methods and systems
CN102684843A (en) * 2012-06-07 2012-09-19 哈尔滨工业大学 Obtaining method of optimal generation polynomial in type-II hybrid automatic repeat request (HARQ) system and repeat system adopting method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1855733A (en) * 2005-04-29 2006-11-01 华为技术有限公司 Convolution coding method and coder therefor
CN101039119A (en) * 2006-03-17 2007-09-19 财团法人工业技术研究院 Encoding and decoding methods and systems
CN102684843A (en) * 2012-06-07 2012-09-19 哈尔滨工业大学 Obtaining method of optimal generation polynomial in type-II hybrid automatic repeat request (HARQ) system and repeat system adopting method

Also Published As

Publication number Publication date
CN102916707A (en) 2013-02-06

Similar Documents

Publication Publication Date Title
US10673462B2 (en) Coding method and coding device
Marcelis et al. DaRe: Data recovery through application layer coding for LoRaWAN
CN106230555B (en) The stages cycle redundancy check method of polarization code
CN103281166A (en) Hybrid automatic repeat request transmission method based on polarization code
CN101867379B (en) Cyclic redundancy check-assisted convolutional code decoding method
CN105680883A (en) Polarization code and multi-bit even parity check code cascaded error correction coding method
US7831884B2 (en) Method of correcting message errors using cyclic redundancy checks
US8548027B2 (en) Multi-ary error-correcting code transmitting and receiving apparatuse, data transmission system, and relevant method
CN101656541B (en) Coding method and device of RS codes
CN102694625A (en) Polarization code decoding method for cyclic redundancy check assistance
CN1433589A (en) Reduced search symbol estimation algorithm
CN106254030B (en) Two-way coding and decoding method without rate Spinal code
CN103236900B (en) A kind of Serial concatenated turbo codes interleaver parameter blind estimating method
CN105634506A (en) Soft decision decoding method of quadratic residue (QR) code based on shifting search algorithm
CN108494527A (en) A kind of data transmission and reception method based on LoRa
CN107231158A (en) A kind of polarization code iterative receiver, system and polarization code iterative decoding method
US8386877B2 (en) Communication system, transmitter, error correcting code retransmitting method, and communication program
CN110233698A (en) Coding and interpretation method, sending device, receiving device, the medium of polarization code
CN102916707B (en) Compatible convolutional code generator polynomial defining method, coding method and encoder
CN110535560A (en) A kind of polarization code combines coding and interpretation method
CN105391455A (en) Return-to-zero Turbo code starting point and depth blind identification method
CN100581089C (en) Woven convolutional code error detection and correction coder, and encoder in TD-SCDMA system
CN102882654A (en) Encoding constraint and probability calculation based encoding and decoding synchronization method
CN103532666B (en) Improve the method for data transmission efficiency and LT code performance in distributed transmission
CN103338044A (en) Protograph code for deep space optical communication system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160224

Termination date: 20211010