CN101183875B - Velocity matching method for limited longness circulation caching of Turbo code - Google Patents

Velocity matching method for limited longness circulation caching of Turbo code Download PDF

Info

Publication number
CN101183875B
CN101183875B CN2007101959398A CN200710195939A CN101183875B CN 101183875 B CN101183875 B CN 101183875B CN 2007101959398 A CN2007101959398 A CN 2007101959398A CN 200710195939 A CN200710195939 A CN 200710195939A CN 101183875 B CN101183875 B CN 101183875B
Authority
CN
China
Prior art keywords
bit
data
circular buffer
automatic repeat
redundancy versions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2007101959398A
Other languages
Chinese (zh)
Other versions
CN101183875A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN2007101959398A priority Critical patent/CN101183875B/en
Publication of CN101183875A publication Critical patent/CN101183875A/en
Application granted granted Critical
Publication of CN101183875B publication Critical patent/CN101183875B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a rate matching method for finite length loop buffer of a turbo code, comprising the steps: turbo coding is carried out to data bits of an input data block, upon which the size of a one-dimensional finite length loop buffer is decided; the initial positions of hybrid automatic repeat request data packets appointed by a plurality of predefined redundancy version values are evenly or approximately distributed in the one-dimensional finite length loop buffer; a redundancy version value is selected from the predefined redundancy version values in line with times of the hybrid automatic repeat requests; then data bits with specific length are read in turn from the initial position of hybrid automatic repeat request data packets appointed by the selected redundancy version values, thus a hybrid automatic repeat request data packet is formed and then sent out. The invention has the advantages of reduced size of circular buffer and improved repeat performance of hybrid automatic repeat request data packet.

Description

A kind of speed matching method of limited length circular buffer of Turbo code
Technical field
The present invention relates to the communications field, relate more specifically to a kind of speed matching method of limited length circular buffer of Turbo code.
Background technology
In wireless communication system, channel code chain is the bottom technology of physical layer, has determined the bottom transmission performance and the transmission reliability of wireless communication system.In up-to-date 3GPP LTE research on standard, channel code chain has adopted a series of up-to-date technology, when simplifying implementation complexity, has improved the physical layer transmission performance.Wherein, in up-to-date 3GPP standard agreement, adopted 1. and replaced the channel coding schemes of the Turbo code of (Quadratic PolynomialPermutation is called for short QPP) interleaver as data service based on quadratic polynomial; Adopt 2. and realize sending the length of data and the coupling of distribute of the size of physical channel resources based on the speed matching method of circular buffer (Circular Buffer).Simultaneously, in order to obtain the higher availability of frequency spectrum and hardware circuit solution, adopted 3. high-order modulating such as 16QAM, 64QAM.
In many channel coding technologies, Turbo code is one of best forward error correction coding of generally acknowledging at present.The error-correcting performance of Turbo code is superior more than the error-correcting performance of other coding, and the decoding number of iterations is many more, and the performance of decoding error correction is good more, therefore been proposed in the very high transfer of data occasion of reliability requirement more usually and uses.Usually the binary system Turbo coding of using is a kind of parallel cascade codes that has inner interleaver, is generally formed by two identical recursive systematic convolutional code (RSC) component code encoder parallel cascades of structure.Interleaver in the Turbo code carried out random permutation with the bit position in the binary message sequence of input before second component code encoder, when interleaver was fully big, Turbo code just had the characteristic of approximate random long code.WCDMA (WCDMA) and the time-division synchronous horse divide in multiple access (TD-SCDMA) system and just used a kind of like this binary system Turbo code, structure is as shown in Figure 1.The binary message sequence X of input kGenerate one tunnel verification sequence Z through first component code encoder kSimultaneously, the binary message sequence X of input kAfter interleaver in the process Turbo code interweaves, generate another road verification sequence Z by second component code encoder k'.At this moment, if not to the coded-bit punching, then the bit rate output of Turbo coding is 1/3, and the sequences of code bits that output obtains is x 1, z 1, z 1', x 2, z 2, z 2' ..., x K, z K, z K', wherein, K is the length of the binary message sequence of input.After all information bit sequence codings are accomplished, need from the feedback of shift register, take out the tail bit and carry out lattice shape computing termination.3 tail bits at first are used to stop first component code encoder, and three last tail bits are used to stop second component code encoder.Can obtain the transmission bit that 12 lattice shape computings stop by above operation, its bit-order is x K+1, z K+1, x K+2, z K+2, x K+3, z K+3, x K+1', z K+1', x K+2', z K+2', x K+3', z K+3', be added on after the sequences of code bits, just accomplished the Turbo coding one time.
As substituting of 3GPP Rel-6 speed matching algorithm; Rate-matched (Circular Buffer Rate Matching based on cyclic buffer; Be called for short CB RM) method of deleting surplus pattern that can generate function admirable simply is provided, its concrete structure is as shown in Figure 2.In the circular buffering speed matching method, each data flow will be arranged by sub-interleaver separately again, be called as in the piece interweave (sub-block interleaver).Usually, realize that in order to simplify hardware the columns of block interleaver is fixed; Line number changes along with the change of weaving length; Therefore circular buffer can be regarded the ranks buffer memory of " R capable * C row " as, promptly regards the virtual cache of " R capable * C row " as, and is as shown in Figure 3.Interweaving in the piece that is adopted in the circular buffering speed matching method like 3GPP is exactly the block interleaver that a columns is fixed as 32 row.Because systematic bits, first check bit and three data flow of second check bit are arranged in the circular buffer, so circular buffer can be regarded the virtual cache that a columns is 96 row as.In single output buffers, the systematic bits after resetting is placed on the starting position, place the check bit data flow of two rearrangements subsequently alternately, be called as interblock and interweave.For the code check (Rate) of expectation, it is that somewhere starting point from circular buffer calls over L bit that the bit of circular buffering rate-matched is selected, as the output of rate-matched.Generally speaking, the bit that is selected for transmission can be read out from any one some beginning of circular buffer, if arrive the end of circular buffer, then can continue read data around the starting position to circular buffer, till L bit read in completion.
Mixing automatic repeat requests (HARQ) is extremely important link adaptation techniques in a kind of digital communication system.Receiving terminal is deciphered the HARQ packet of its reception, if decoding correctly then the feeding back ACK signal give transmitting terminal, notify it to send new HARQ packet; Give transmitting terminal if decoding failure then feeds back the NAK signal, the request transmitting terminal resends the HARQ packet.Receiving terminal merges decoding through the packet that repeatedly retransmits being carried out steadily increase redundancy (Increasing Redundancy is called for short IR) or Chase, can improve its decoding probability of success, realizes the high reliability request of link transmission.
Mixing under the automatic repeat requests mode start position that in circular buffer, can specify different positions to read as each transmitting HARQ packet.A plurality of start positions that the HARQ packet reads have promptly been confirmed in the definition of redundancy versions in circular buffer, the redundancy versions value has just been confirmed the concrete start position that this transmitting HARQ packet reads in circular buffer.For example, in the 3GPP system, defined 4 kinds of cyclic redundancies (RV) version (RV=0,1,2,3) based on the HARQ processing procedure of circular buffering rate-matched.The long child bag of L that each HARQ retransmits is to be begun by the starting point from the redundancy versions definition, the L that chooses clockwise bit composition.
The HARQ function comprises twice rate-matched and a virtual I R buffer memory, and the rate-matched process matches virtual I R buffer memory with the input bit number for the first time, and virtual I R buffer memory is disposed by high level.If the input bit number is no more than the ability of virtual I R, any bit of then need not being struck off, otherwise need remove unnecessary bit.For the second time the rate-matched process is in order to meet the requirement of channel, the bit number after the first time rate-matched is matched total bit number of a plurality of physical channels.
The length of limited length circular buffer is limited, and its rate-matched is on the basis of limit buffer storage length, according to the bit rate output of expectation, selects L coded-bit, as the output of circulating buffer memory rate coupling; Similar with the rate-matched of non-limited circular buffer, the bit that is selected for transmission can begin to read out in any position from circular buffer.If reach the end of circular buffer, then can continue reading of data around starting position to circular buffer.Usually, in limited length circular buffer, can specify different positions, promptly formulate the start position of the corresponding HARQ bag of redundancy versions value as the start position that each transmitting HARQ packet reads.
In the speed matching method of existing limited length circular buffer; The HARQ starting point that each redundancy versions is corresponding is uneven distribution in circular buffer; Possibly make in HARQ bag retransmission processes; The part code word occurs repeatedly overlapping, and other a part of code word does not then have overlapping, can cause the decline of retransmission performance like this.
Summary of the invention
The invention provides a kind of speed matching method of limited length circular buffer of Turbo code,, improve the retransmission performance of mixing automatic repeat requests data bag to reduce the size of circular buffer.
The speed matching method of the limited length circular buffer of Turbo code according to an embodiment of the invention; May further comprise the steps: the data bit to input block carries out the Turbo coding, and confirms the size of one dimension limited length circular buffer according to coding result; With the original position of the automatic repeat requests data of the mixing bag of predefined each redundancy versions value appointment evenly or approximate being evenly distributed in the one dimension limited length circular buffer; And according to mixing automatic repeat requests number of times; From each redundancy versions value, select a redundancy versions value; And begin data bit that order reads length-specific from the original position of the automatic repeat requests data of the mixing bag of selected redundancy versions value appointment and form and mix automatic repeat requests data bag, and will mix automatic repeat requests data bag and send.
Wherein, confirm the size of one dimension limited length circular buffer: N through following method Cb=min (N IR, K w), wherein, minimum operation, N are got in min () expression IRBe the size of the available cache memory of input block, K WIt is the size of actual cycle buffer memory.
Wherein, the original position of the automatic repeat requests data of the mixing bag of each redundancy versions value appointment is: k 0 = Operation ( N Cb N Rv · Rv Idx ) + Offset , Wherein, N RvThe number of expression redundancy versions value, rv IdxExpression redundancy versions value, the redundancy versions value set 0,1 ... N RvValue among the-1}, offset representes the original position of the automatic repeat requests data of mixing bag of first redundancy versions value appointment with respect to the skew bit number of the starting point of one dimension limited length circular buffer, offset is an integer, and 0≤offset<N Cb, operation () representes rounding operation, operation method is to round up, round downwards or round off and round.
Wherein, In forming the step of mixing automatic repeat requests data bag; Begin from the original position of the automatic repeat requests data of the mixing bag of selected redundancy versions value appointment, with from a left side and right order reads the data bit of length-specific and forms and mix automatic repeat requests data bag.In the process of the data bit that reads length-specific, skip and do not read the filling bit that channel encoder adds, and under the situation at the end that arrives the one dimension limited length circular buffer, around continuing to read to the starting position of one dimension limited length circular buffer.
The speed matching method of the limited length circular buffer of Turbo code according to another embodiment of the invention; May further comprise the steps: the data bit to input block carries out the Turbo coding; Data bit behind the coding is carried out the circulating buffer memory rate coupling, and the size of definite two-dimensional finite length circular buffer; According to the automatic repeat requests data of the mixing bag corresponding redundancy value that desire is formed, confirm in two-dimensional finite length circular buffer, to read the original position of forming the data bit that mixes automatic repeat requests data bag; And begin from original position, the data bit that reads length-specific by row along the order of row is formed and is mixed automatic repeat requests data bag, and will mix automatic repeat requests data bag and send.Wherein, two-dimensional finite length circular buffer is R Subblock TC* C Limited TCMatrix, R Subblock TCBe the line number of two-dimensional finite length circular buffer,
Figure DEST_PATH_GSB00000499807200011
Be the columns of two-dimensional finite length circular buffer, original position exists
Figure DEST_PATH_GSB00000499807200012
Figure DEST_PATH_GSB00000499807200013
Go up evenly perhaps approximate value equably.
Wherein, Before the data bit to input block carries out the Turbo coding; Judge whether input block satisfies the requirement of the Bit data size of the interleaver that is used for the Turbo coding,, then before the Bit data of input block, fill the filling bit of specific quantity if do not satisfy.
Wherein, the process of the data bit behind the coding being carried out the circulating buffer memory rate coupling may further comprise the steps: the data bit to behind the coding carries out bit separation, output system bit stream, first check bit stream and second check bit stream; Respectively systematic bits stream, first check bit stream and second check bit stream are input to equal-sized sub-block interleaver; According to given rearrangement vector; Respectively systematic bits stream, first check bit stream and second check bit are flow between ranks and reset, and along the order of row respectively from each sub-block interleaver read systematic bits stream after the rearrangement, first check bit stream after resetting and reset after second check bit stream; And the systematic bits stream after the maintenance rearrangement is constant, second check bit after stream of first check bit after the rearrangement and the rearrangement is flowed carry out Bit Interleave.
Wherein, through following interleave method first check bit stream after resetting and second check bit stream after the rearrangement are carried out Bit Interleave:
Figure DEST_PATH_GSB00000499807200014
Wherein, k=0 ..., K -1,
Figure DEST_PATH_GSB00000499807200016
Be the data bit in first check bit stream after resetting,
Figure DEST_PATH_GSB00000499807200017
It is the data bit in second check bit stream after resetting.
Wherein, in two-dimensional finite length circular buffer, reading the original position of forming the data bit that mixes automatic repeat requests data bag is:
Figure DEST_PATH_GSB00000499807200018
Wherein, N RvThe number rv of expression redundancy versions value IdxExpression redundancy versions value, its set 0,1 ... N RvValue among the-1}, offset representes the skew columns of the original position of the automatic repeat requests data of the mixing bag that first redundancy versions value is corresponding with respect to the starting point of the row of first in the two-dimensional finite length circular buffer, the offset integer, and
Figure DEST_PATH_GSB00000499807200021
Operation () representes rounding operation, and operation method is to round up, round downwards or round off and round.
Wherein, in the process of the data bit that reads length-specific, skip and do not read the filling bit that channel encoder adds, and under the situation at the end that arrives two-dimensional finite length circular buffer, around continuing to read to the starting position of two-dimensional finite length circular buffer.
Through the present invention, can reduce the size of circular buffer, improve the retransmission performance of mixing automatic repeat requests data bag.
Description of drawings
Accompanying drawing described herein is used to provide further understanding of the present invention, constitutes the application's a part, and illustrative examples of the present invention and explanation thereof are used to explain the present invention, do not constitute improper qualification of the present invention.In the accompanying drawings:
Fig. 1 is the structure of Turbo encoder;
Fig. 2 is the structure of circular buffering rate-matched;
Fig. 3 is the continuous transmission structure of virtual circular buffering rate-matched;
Fig. 4 is the structure of two-dimensional finite length circular buffer;
Fig. 5 is the FB(flow block) of speed matching method of the one dimension limited length circular buffer of Turbo code;
Fig. 6 is the sketch map that the one dimension limited length circular buffer of Turbo code sends the HARQ packet; And
Fig. 7 is the FB(flow block) of speed matching method of the two-dimensional finite length circular buffer of Turbo code.
Embodiment
The speed matching method of the limited length circular buffer of Turbo code according to an embodiment of the invention (for the one dimension limited length circular buffer) may further comprise the steps:
Steps A 1 is carried out the Turbo coding to the Bit data of input block;
Steps A 2 is confirmed the size of limited length circular buffer;
Steps A 3: with the original position k of the HARQ packet of each redundancy versions value appointment 0Evenly perhaps being similar to and being evenly distributed in length is N CbLimited length circular buffer in;
Steps A 4 according to the HARQ number of retransmissions, is selected the redundancy versions value, and the original position corresponding from the redundancy versions value begins, and rightly calls over the Bit data that length is L from a left side, forms current HARQ packet;
Steps A 5 is sent current HARQ packet to the subsequent treatment module.
Wherein, confirm the size of limited length circular buffer: N through following method Cb=min (N IR, K w).Wherein, minimum operation is got in min () expression.N IRBe the size of the available cache memory (for example, for the first time the virtual I R buffer memory of rate-matched) of input block, K wIt is the size of actual cycle buffer memory.Certainly, the present invention is not limited to above definite N CbMethod.
Wherein, the original position of the HARQ packet of each redundancy versions value correspondence does k 0 = Operation ( N Cb N Rv · Rv Idx ) + Offset . Wherein, N RvThe number of expression redundancy versions value, N Rv=3,4,6 or 8; Rv IdxRepresent each redundancy versions value, it the set 0,1 ... N RvValue among the-1}; Offset representes first redundancy versions value (rv Idx=0) starting point of the HARQ packet of appointment is with respect to the bit number of the starting point skew of limited length circular buffer, and offset is an integer, and 0≤offset<N CbOperation () representes rounding operation, and the method for computing can be to round up (ceil), round (floor) downwards, or round off and round (round).
Wherein, Begin from the finite length metadata cache, to read in proper order L bit (L is the size of current HARQ packet) from the corresponding start position of current redundancy versions value and form current HARQ packet; If in reading the process of bit, run into known " filling " bit (padding bits) that channel encoder adds; Then skip and do not read, till reading L significant bit.According to the characteristics of circular buffer,, then can continue reading of data around starting position to limited length circular buffer if reach the end of limited length circular buffer.
The speed matching method of the limited length circular buffer of Turbo code according to another embodiment of the invention is (for two-dimensional finite length circular buffer; Two-dimensional finite length circular buffer is the matrix array of the capable C row of R; The redundancy versions value is used for confirming which the row beginning reading of data from matrix; As shown in Figure 4), may further comprise the steps:
Step B1 carries out the Turbo coding to the Bit data of input block;
Step B2 carries out the circulating buffer memory rate coupling to the Bit data behind the Turbo coding;
Step B3 confirms the physical length of limited length circular buffer;
Step B4 according to current HARQ packet corresponding redundancy value, confirms the original position k0 of reading of data.Wherein, the redundancy versions value is used for confirming from R Subblock TC* C Limited TCWhich row beginnings read data of two-dimensional finite length circular buffer, wherein, R Subblock TCBe the line number of two-dimensional finite length circular buffer, C Limited TCIt is the columns of two-dimensional finite length circular buffer.The redundancy versions value 0,1.。, N RvThe N of appointment RvBe listed in the column index sequence [0,1 ..., C Limited TC-1] go up evenly perhaps approximate value equably, the next adjacent element of establishing last element in the column index sequence here is first element;
Step B5 begins from the described original position of step B4, by being listed as the code word bits of reading length L from top to bottom, forms current HARQ packet along the order that is listed as;
Step B6 sends current HARQ packet to the subsequent treatment module.
Wherein, the coding among the step B1 is based on the Turbo coding of specific interleaver, so step B1 comprises necessary filling substep; That is: whether the Bit data size of before coding, at first judging input block (for example satisfies particular requirement; The requirement of the Bit data size of interleaver), if do not satisfy, then before the Bit data of input block, fill " filling " bit of some; Otherwise, need before the Bit data of input block, not fill.
Wherein, step B2 comprises following substep: the Bit data to behind the Turbo coding carries out bit separation, output system bit stream S, first check bit stream P (1), and second check bit stream P (2)With the systematic bits stream S that separates output, first check bit stream P (1), and second check bit stream P (2)Being input to size respectively does
Figure DEST_PATH_GSB00000499807200031
Three sub-block interleavers in; Reset between being listed as respectively being input to data bit flow in the sub-block interleaver, resetting vector is given known vector, pursues the row from top to down along the order of row and from each sub-block interleaver, reads respectively; And keep systematic bits stream S constant, to first check bit stream P after resetting (1)With second check bit stream P (2)Carry out Bit Interleave, interleave method is following: w k=S,
Figure DEST_PATH_GSB00000499807200032
Figure DEST_PATH_GSB00000499807200033
Wherein, k=0 ..., K -1.The method that it is pointed out that Bit Interleave can be not limited to this.
Wherein, Sub-block interleaver is followed the principle that row goes into to list; Its columns
Figure DEST_PATH_GSB00000499807200034
is a specific constant, and its line number
Figure DEST_PATH_GSB00000499807200035
is confirmed through
Figure DEST_PATH_GSB00000499807200036
.Wherein, D is the length of data bit flow.if then need add individual " dummy bit " to each data bit flow; The position of adding dummy bit can be in the foremost of each data bit flow, but also is not limited to this.
Wherein, the physical length of limited length circular buffer is N Cb=min (N IR, K w).Wherein, minimum operation, N are got in min () expression IRBe the size of the available cache memory (for example, for the first time the virtual I R buffer memory of rate-matched) of input block, K wBe the size of actual cycle buffer memory, K w=3K Certainly, the method for calculating limited length circular buffer is not limited to this.
Wherein, the original position of the HARQ packet of each redundancy versions value correspondence does
Figure DEST_PATH_GSB00000499807200041
Wherein, N RvThe number of expression redundancy versions value, N Rv=3,4,6, or 8; Rv IdxRepresent each redundancy versions value, it the set 0,1 ... M RvValue among the-1}; Offset representes first redundancy versions value (rv Idx=0) the skew columns of the starting point of first of the relative two-dimensional finite length of the starting point circular buffer of the corresponding HARQ packet row, offset is known specific integer, and
Figure DEST_PATH_GSB00000499807200042
Operation () representes rounding operation, and operation method can be to round up (ceil), round (floor) downwards, or round off and round (round).
Wherein, Begin from the finite length metadata cache, to read in proper order L bit (L is the size of current HARQ packet) from the corresponding start position of current redundancy versions value and form current HARQ packet; If in reading the process of bit, run into " filling " bit (padding bits) and " dummy bit "; Then skip and do not read, till reading L significant bit.According to the characteristics of circular buffer,, then can continue reading of data around starting position to circular buffer if reach the end of circular buffer.
With reference to accompanying drawing, embodiment of the present invention is described in further detail below.
With reference to figure 5, the speed matching method for the limited length circular buffer of the Turbo code of one-dimentional structure is described.As shown in Figure 5, this method may further comprise the steps:
S502 is that the information bit sequence of m=80 is carried out the Turbo coding to length, in order to satisfy the requirement of interleaver Bit data size, before information bit sequence, fills F=20 " fillings " bit, length N=312 of the information bit sequence of then exporting.
S504, the code block available cache memory size N that supposing the system is provided with IR=230, the length K of circular buffer w=400, the big or small N of limited length circular buffer then Cb=min (N IR, K w)=min (230,400)=230.
S506 supposes the number N of current redundancy versions value Rv=4, also can be 3,6 or 8.Bit index is established first redundancy versions value (rv since 0 Idx=0) differs offset=30 bit between the starting point of the starting point of corresponding HARQ packet and limited length circular buffer, then first redundancy versions value (rv Idx=0) the original position index of corresponding HARQ packet does k 0 = Operation ( N Cb N Rv · Rv Idx ) + Offset = 0 + 30 = 30 . Second redundancy versions value (rv Idx=1) the original position index of corresponding HARQ packet does k 0 = Operation ( N Cb N Rv · Rv Idx ) + Offset = 57 + 30 = 87 , Wherein, the operation method of operation () is to round (floor) downwards.The 3rd redundancy versions value (rv Idx=2) the original position index of corresponding HARQ packet does k 0 = Operation ( N Cb N Rv · Rv Idx ) + Offset = 116 + 30 = 146 , Wherein, the operation method of operation () employing is round up (ceil).The 4th redundancy versions value (rv Idx=3) the original position index of corresponding HARQ packet does k 0 = Operation ( N Cb N Rv · Rv Idx ) + Offset = 174 + 30 = 204 , Wherein, the operation method of operation () employing is round up (ceil).
S508, the HARQ length of data package of transmission and the maximum retransmission of HARQ are by default.Suppose to retransmit for maximum four times, the redundancy versions value that retransmits for four times be 0,2,1,3}, needing the HARQ length of data package of transmission is L=100 bit.
Wherein, run into " filling " bit (padding bits), then skip and do not read, till reading L significant bit if read in the process of bit.The call number of data begins from the starting point of limited length circular buffer, with 0 beginning number consecutively.As shown in Figure 6; For the first time call number is that 30 bit begins in circular buffer from a left side and rightly calls over the data bit that length is L from limited length circular buffer; For the second time call number is that 146 bit begins in circular buffer from a left side and rightly calls over the data bit that length is L from limited length circular buffer; Call number is that 87 bit begins in circular buffer from a left side and rightly calls over the data bit that length is L from limited length circular buffer for the third time, the 4th time from limited length circular buffer call number be that 204 bit begins in circular buffer from a left side and rightly calls over the data bit that length is L.According to the characteristics of circular buffer,, then can continue reading of data around starting position to circular buffer if reach the end of circular buffer.More than the data that read for four times form respectively and need the HARQ packet that sends.
S510 sends current HARQ packet to the subsequent treatment module.
With reference to figure 7, the speed matching method for the limited length circular buffer of the Turbo code of two-dimensional structure is described.As shown in Figure 7, this method may further comprise the steps:
S702 is that the information bit sequence of m=80 is carried out the Turbo coding to length, for the requirement of the Bit data size that satisfies interleaver, before information bit sequence, fills F=20 " filling " bit.
S704 carries out bit separation to the data bit behind the Turbo coding, output system bit stream S, first check bit stream P (1), and second check bit stream P (2)Wherein, S, P (1)And P (2)Length all be 104.
Systematic bits is flowed S, first check bit stream P (1), and second check bit stream P (2)Being input to size respectively does Three sub-block interleavers in; Sub-block interleaver is followed the principle that row goes into to list, its columns
Figure DEST_PATH_GSB00000499807200052
Its line number
Figure DEST_PATH_GSB00000499807200053
For satisfying
Figure DEST_PATH_GSB00000499807200054
Smallest positive integral, wherein, D=104 is the length of data bit flow,
Figure DEST_PATH_GSB00000499807200061
Figure DEST_PATH_GSB00000499807200062
Each data bit flow needs to add
Figure DEST_PATH_GSB00000499807200063
Individual " dummy bit ", the position of adding dummy bit be in the foremost of each bit stream, but also be not limited to this.
Be input to systematic bits stream S and first check bit stream P in the sub-block interleaver (1)Reset between being listed as according to following principle.(0,1,2...31), the data bit flow in the antithetical phrase block interleaver is according to (0,16,8,24,4,20 if the column vector that is input to the data bit flow in the sub-block interleaver is designated since first row successively; 12,28,2,18,10,26,6,22,14; 30,1,17,9,25,5,21,13,29; 3,19,11,27,7,23,15,31) column vector is done between row and is reset.Resetting the back reads from each sub-block interleaver respectively by the row from top to down along the order of row.
If be input to second check bit stream P in the sub-block interleaver (2)Order along row from left to right is followed successively by line by line
Figure DEST_PATH_GSB00000499807200064
Then sub-block interleaver pursues top-down being output as of row along the order of row
Figure DEST_PATH_GSB00000499807200065
Wherein,
Figure DEST_PATH_GSB00000499807200066
Figure DEST_PATH_GSB00000499807200067
Figure DEST_PATH_GSB00000499807200068
Figure DEST_PATH_GSB00000499807200069
(P (0), P (1) ..., P (C-1))=(0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23,15,31).
Keep systematic bits stream S constant, to first check bit stream P after resetting (1)With second check bit stream P (2)Carry out Bit Interleave, interleave method is following: w k=S,
Figure DEST_PATH_GSB000004998072000610
Figure DEST_PATH_GSB000004998072000611
K=0 wherein ..., K -1.The method that it is pointed out that Bit Interleave can be not limited to this.
S706, the size of circular buffer is K w=3K =384, the size of the available cache memory of input block is N IR=230, the physical length N of limited length circular buffer then Cb=min (N IR, K w)=230.
S708 supposes the number N of current redundancy versions value Rv=4, also can be 3,6, perhaps 8.The call number of data is since 0 number consecutively, and column index is number also since 0 number consecutively from left to right.Suppose first redundancy versions value (rv Idx=0) differs offset=7 row, then first redundancy versions value (rv between the starting point of first of the starting point of corresponding HARQ packet and the two-dimensional finite length circular buffer row Idx=0) the original position index of corresponding HARQ packet does k 0 = R Subblock TC · [ Operation ( N Cb R Subblock TC · N Rv · Rv Idx ) + Offset ] = 4 × ( 0 + 7 ) = 4 × 7 = 28 , First bit that promptly is listed as from the 7th of two-dimensional finite length circular buffer matrix begins read data.Second redundancy versions value (rv Idx=1) original position of corresponding HARQ packet does k 0 = R Subblock TC · [ Operation ( N Cb R Subblock TC · N Rv · Rv Idx ) + Offset ] = 4 × ( 14 + 7 ) = 4 × 21 = 8 4 , First bit that promptly is listed as from the 21st of two-dimensional finite length circular buffer matrix begins read data, and wherein, the operation method that operation () adopts is to round (floor) downwards.The 3rd redundancy versions value (rv Idx=2) original position of corresponding HARQ packet does k 0 = R Subblock TC · [ Operation ( N Cb R Subblock TC · N Rv · Rv Idx ) + Offset ] = 4 × ( 29 + 7 ) = 4 × 36 = 144 , First bit that promptly is listed as from the 37th of two-dimensional finite length circular buffer matrix begins read data, and wherein, the operation method of operation () is round up (ceil).The 4th redundancy versions value (rv Idx=3) original position of corresponding HARQ packet does k 0 = R Subblock TC · [ Operation ( N Cb R Subblock TC · N Rv · Rv Idx ) + Offset ] = 4 × ( 43 + 7 ) = 4 × 50 = 200 , First bit that promptly is listed as from the 50th of two-dimensional finite length circular buffer matrix begins read data, and wherein, the operation method of operation () is to round (floor) downwards.
Wherein, the redundancy versions value is used for confirming from R Subblock TC* C Limited TCWhich row beginnings read data of two-dimensional finite length circular buffer, wherein, R Subblock TCBe the line number of two-dimensional finite length circular buffer, C Limited TCIt is the columns of two-dimensional finite length circular buffer.Redundancy versions 0,1 ..., the N of Nrv} appointment RvBe listed in the column index sequence [0,1 ..., C Limited TC-1] goes up evenly or approximate uniform value, establish here that the next adjacent element of last element is first element in the column index sequence.
S710 supposes to retransmit for maximum four times, retransmit the redundancy versions value for four times and be 0,2,1,3}, needing the HARQ length of data package of transmission is L=100 bit.Wherein, run into " filling " bit (padding bits) and " dummy bit ", then skip and do not read, till reading L significant bit if read in the process of bit.According to the characteristics of circular buffer,, then can continue reading of data around starting position to circular buffer if reach the end of circular buffer.Column index number is since 0 number consecutively from left to right, and first bit from two-dimensional finite length circular buffer matrix the 7th row begins for the first time, reads the data bit of length L along the order of row from top to bottom by row.First bit from two-dimensional finite length circular buffer matrix the 36th row begins for the second time, reads the data bit of length L along the order of row from top to bottom by row.First bit from two-dimensional finite length circular buffer matrix the 21st row begins for the third time; Order along row is read the data bit of length L from top to bottom by row; The 4th time first bit from two-dimensional finite length circular buffer matrix the 50th row begins; Order along row is read the data bit of length L from top to bottom by row, forms current HARQ packet.
S712 sends current HARQ packet to the subsequent treatment module.
The above is merely embodiments of the invention, is not limited to the present invention, and for a person skilled in the art, the present invention can have various changes and variation.All within spirit of the present invention and principle, any modification of being done, be equal to replacement, improvement etc., all should be included within the claim scope of the present invention.

Claims (14)

1. the speed matching method of the limited length circular buffer of a Turbo code is characterized in that, may further comprise the steps:
Data bit to input block carries out the Turbo coding, and confirms the size of one dimension limited length circular buffer according to coding result;
With the original position of the automatic repeat requests data of the mixing bag of predefined each redundancy versions value appointment evenly or approximate being evenly distributed in the said one dimension limited length circular buffer; And
According to mixing automatic repeat requests number of times; From said each redundancy versions value, select a redundancy versions value; And begin the data bit that order reads length-specific from the original position of the automatic repeat requests data of the mixing bag of selected redundancy versions value appointment and form the automatic repeat requests data of said mixing bag, and the automatic repeat requests data of said mixing bag is sent.
2. method according to claim 1 is characterized in that, confirms the size of said one dimension limited length circular buffer: N through following method Cb=min (N IR, K w), wherein, minimum operation, N are got in min () expression IRBe the size of the available cache memory of said input block, K WIt is the size of actual cycle buffer memory.
3. method according to claim 2 is characterized in that, the original position of the automatic repeat requests data of the mixing bag of said each redundancy versions value appointment is:
Figure FSB00000744801900011
Wherein, N RvThe number of representing said redundancy versions value, r VidxRepresent said redundancy versions value, said redundancy versions value the set 0,1 ... N RvValue among the-1}, offset representes the original position of the automatic repeat requests data of mixing bag of first said redundancy versions value appointment with respect to the skew bit number of the starting point of said one dimension limited length circular buffer, offset is an integer, and 0≤offset<N Cb, operation () representes rounding operation, operation method is to round up, round downwards or round off and round.
4. method according to claim 3; It is characterized in that; In the step of forming the automatic repeat requests data of said mixing bag; Begin from the original position of the automatic repeat requests data of the mixing bag of selected redundancy versions value appointment, with from a left side and right order reads the data bit of length-specific and forms the automatic repeat requests data of said mixing bag.
5. method according to claim 4 is characterized in that, in the process of the data bit that reads length-specific, skips and does not read the filling bit that channel encoder adds.
6. according to each described method in the claim 1 to 5; It is characterized in that; In the process of the data bit that reads length-specific, if arrive the end of said one dimension limited length circular buffer, then around continuing to read to the starting position of said one dimension limited length circular buffer.
7. the speed matching method of the limited length circular buffer of a Turbo code is characterized in that, may further comprise the steps:
Data bit to input block carries out the Turbo coding, and the data bit behind the coding is carried out the circulating buffer memory rate coupling, and the size of definite two-dimensional finite length circular buffer;
According to the automatic repeat requests data of the mixing bag corresponding redundancy value that desire is formed, confirm in said two-dimensional finite length circular buffer, to read the original position of the data bit of forming the automatic repeat requests data of said mixing bag; And
Begin from said original position, form the automatic repeat requests data of said mixing bag along the order of row by the data bit that row read length-specific, and the automatic repeat requests data of said mixing bag is sent.
8. method according to claim 7; It is characterized in that; Said two-dimensional finite length circular buffer is
Figure FSB00000744801900031
matrix; Wherein,
Figure FSB00000744801900032
is the line number of said two-dimensional finite length circular buffer;
Figure FSB00000744801900033
is the columns of said two-dimensional finite length circular buffer, and said original position goes up at
Figure FSB00000744801900034
evenly or approximate value equably.
9. method according to claim 8; It is characterized in that; Before the data bit to said input block carries out the Turbo coding; Judge whether said input block satisfies the requirement of the Bit data size of the interleaver that is used for the Turbo coding,, then before the Bit data of said input block, fill the filling bit of specific quantity if do not satisfy.
10. method according to claim 9 is characterized in that, the process of the data bit behind the said coding being carried out the circulating buffer memory rate coupling may further comprise the steps:
Data bit behind the said coding is carried out bit separation, output system bit stream, first check bit stream and second check bit stream;
Respectively said systematic bits stream, said first check bit stream and said second check bit stream are input to equal-sized sub-block interleaver;
According to given rearrangement vector; Respectively said systematic bits stream, said first check bit stream and said second check bit are flow between ranks and reset, and along the order of row respectively from each said sub-block interleaver read systematic bits stream after the rearrangement, first check bit stream after resetting and reset after second check bit stream; And
Keep the systematic bits stream after the said rearrangement constant, second check bit after the stream of first check bit after the said rearrangement and the said rearrangement is flowed carry out Bit Interleave.
11. method according to claim 10 is characterized in that, flows through second check bit after first check bit stream of following interleave method after to said rearrangement and the said rearrangement and carries out Bit Interleave:
Figure FSB00000744801900035
Wherein,
Figure FSB00000744801900041
K=0 ..., K ∏-1,
Figure FSB00000744801900042
Be the data bit in first check bit stream after the said rearrangement,
Figure FSB00000744801900043
It is the data bit in second check bit stream after the said rearrangement;
Figure FSB00000744801900044
For first check bit after said rearrangement stream carries out the Bit data behind the Bit Interleave, For second check bit after said rearrangement stream carries out the Bit data behind the Bit Interleave.
12. method according to claim 10 is characterized in that, the original position that in said two-dimensional finite length circular buffer, reads the data bit of forming the automatic repeat requests data of said mixing bag is: k 0 = R Subblock TC · [ Operation ( N Cb R Subblock TC · N Rv · Rv Idx ) + Offset ] , Wherein, N RvThe number of representing said redundancy versions value, N CbThe physical length of expression limited length circular buffer, rv IdxRepresent said redundancy versions value, its set 0,1 ... N RvValue among the-1}, offset representes the skew columns of the original position of the automatic repeat requests data of the mixing bag that first said redundancy versions value is corresponding with respect to the starting point of the row of first in the said two-dimensional finite length circular buffer, the offset integer, and
Figure FSB00000744801900047
Operation () representes rounding operation, and operation method is to round up, round downwards or round off and round.
13. method according to claim 12 is characterized in that, in the process of the data bit that reads length-specific, skips and does not read the filling bit that channel encoder adds.
14. according to each described method in the claim 7 to 13; It is characterized in that; In the process of the data bit that reads length-specific, if arrive the end of said two-dimensional finite length circular buffer, then around continuing to read to the starting position of said two-dimensional finite length circular buffer.
CN2007101959398A 2007-12-07 2007-12-07 Velocity matching method for limited longness circulation caching of Turbo code Active CN101183875B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007101959398A CN101183875B (en) 2007-12-07 2007-12-07 Velocity matching method for limited longness circulation caching of Turbo code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101959398A CN101183875B (en) 2007-12-07 2007-12-07 Velocity matching method for limited longness circulation caching of Turbo code

Publications (2)

Publication Number Publication Date
CN101183875A CN101183875A (en) 2008-05-21
CN101183875B true CN101183875B (en) 2012-07-04

Family

ID=39448978

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101959398A Active CN101183875B (en) 2007-12-07 2007-12-07 Velocity matching method for limited longness circulation caching of Turbo code

Country Status (1)

Country Link
CN (1) CN101183875B (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741527B (en) * 2008-11-27 2013-03-27 中兴通讯股份有限公司 Rate adaption method and device
WO2011103717A1 (en) * 2010-02-25 2011-09-01 富士通株式会社 Transmission apparatus, transmission method and communication system
CN102255687B (en) * 2010-05-17 2014-01-01 中兴通讯股份有限公司 Rate matching method and device thereof
CN102387591B (en) * 2010-09-03 2016-06-15 中兴通讯股份有限公司 The distribution method of the available soft channel bit maximum of a kind of improvement and system
CN102255710B (en) * 2011-04-15 2014-01-29 电信科学技术研究院 Method and device for storing encoding block
CN103312442B (en) * 2012-03-15 2017-11-17 中兴通讯股份有限公司 Data transmission method for uplink and device based on limited length circulating buffer memory rate matching
CN106961317B (en) 2016-01-11 2020-05-26 中兴通讯股份有限公司 Data sending method and device
WO2017193261A1 (en) * 2016-05-09 2017-11-16 华为技术有限公司 Information transmission method, receiving device, transmitting device, and system
WO2018103638A1 (en) * 2016-12-07 2018-06-14 华为技术有限公司 Data transmission method, sending device, receiving device and communication system
CN108173621B (en) 2016-12-07 2022-06-14 华为技术有限公司 Data transmission method, transmitting device, receiving device and communication system
CN108400832B (en) * 2017-02-06 2022-09-09 华为技术有限公司 Data processing method and communication device
EP3566351B1 (en) * 2017-02-06 2024-04-03 Mediatek Inc. Method and apparatus for communication
CN108809498B (en) * 2017-05-05 2021-01-29 华为技术有限公司 Communication method and communication device
CN109787713B (en) * 2017-11-15 2020-10-09 华为技术有限公司 Cyclic Redundancy Check (CRC) calculation method and device
WO2019100236A1 (en) * 2017-11-22 2019-05-31 Qualcomm Incorporated Circular buffer based hybrid automatic retransmission request for polar codes
CN113395142A (en) * 2020-03-11 2021-09-14 中国电信股份有限公司 Data transmission method, device, terminal, base station, communication system and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070133620A1 (en) * 2005-12-07 2007-06-14 Lg Electronics Inc. Mobile communications terminal for supporting extended link adaptation techniques and method thereof
CN101060481A (en) * 2007-02-05 2007-10-24 中兴通讯股份有限公司 A Turbo code transmission block segmenting method
CN101075857A (en) * 2007-04-29 2007-11-21 中兴通讯股份有限公司 Method for generating turbo-code block intersection and HARQ packet
CN101083512A (en) * 2006-06-02 2007-12-05 中兴通讯股份有限公司 Dual-binary system tailbaiting Turbo code coding method and apparatus

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070133620A1 (en) * 2005-12-07 2007-06-14 Lg Electronics Inc. Mobile communications terminal for supporting extended link adaptation techniques and method thereof
CN101083512A (en) * 2006-06-02 2007-12-05 中兴通讯股份有限公司 Dual-binary system tailbaiting Turbo code coding method and apparatus
CN101060481A (en) * 2007-02-05 2007-10-24 中兴通讯股份有限公司 A Turbo code transmission block segmenting method
CN101075857A (en) * 2007-04-29 2007-11-21 中兴通讯股份有限公司 Method for generating turbo-code block intersection and HARQ packet

Also Published As

Publication number Publication date
CN101183875A (en) 2008-05-21

Similar Documents

Publication Publication Date Title
CN101183875B (en) Velocity matching method for limited longness circulation caching of Turbo code
RU2467484C2 (en) Apparatus having circular buffer and method of assigning redundancy versions to circular buffer
CN101217352B (en) A buffering setting method of phase rate matching
CN101119182B (en) Bit priority selection method of high-order modulation
CN103312442B (en) Data transmission method for uplink and device based on limited length circulating buffer memory rate matching
CN105306165B (en) Data transmission method for uplink and device
CN101227259B (en) Method for data reading of limited length circulating buffer memory rate adaption
CN101075857B (en) Method for generating turbo-code block intersection and HARQ packet
CN101867443B (en) Rate matching method and device
KR101597733B1 (en) Rate matching for a wireless communications system
CN102792624B (en) Method for high-efficient implementation of de-rate matching including HARQ combining for LTE
CN101159513B (en) Turbo code velocity matching and code bit reading method
CN101667904B (en) All-in-one feedback retransmission method based on fountain codes
CN101237241B (en) A method and system for realizing mixed automatic request re-transfer processing and channel decoding
CN102037671A (en) Selection of retransmission settings for HARQ in WCDMA and LTE networks
US7458011B2 (en) Low complexity hybrid ARQ scheme based on rate compatible zigzag codes
CN104253669A (en) Methods and apparatus to generate multiple CRCs
CN105515719A (en) Data transmission method and device
CN109586843A (en) The design scheme of redundancy versions in communication system
CN102783074A (en) Application layer FEC framework for WIGIG
CN101867441A (en) Star map mapping method
US9444494B2 (en) Systems and methods for network coding using convolutional codes
CN101442383A (en) Bit priority mapping method for high-step modulation
CN101090306A (en) Code and decode multiple method in service channel
CN112600647A (en) Multi-hop wireless network transmission method based on network coding endurance

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