CN100542046C - The equipment of generating code and method in communication system - Google Patents

The equipment of generating code and method in communication system Download PDF

Info

Publication number
CN100542046C
CN100542046C CNB2006100050186A CN200610005018A CN100542046C CN 100542046 C CN100542046 C CN 100542046C CN B2006100050186 A CNB2006100050186 A CN B2006100050186A CN 200610005018 A CN200610005018 A CN 200610005018A CN 100542046 C CN100542046 C CN 100542046C
Authority
CN
China
Prior art keywords
code
subcode
qctc
code rate
filial generation
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
CNB2006100050186A
Other languages
Chinese (zh)
Other versions
CN1808911A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1808911A publication Critical patent/CN1808911A/en
Application granted granted Critical
Publication of CN100542046C publication Critical patent/CN100542046C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

The invention provides the equipment and the method that generate two-dimentional QCTC (accurate complementary whirlpool formula sign indicating number).Generation have given code rate QCTC the filial generation code character and in having the filial generation code character of different code rate, rearrange subcode, send usefulness for being right after subcode after with predetermined code rate.

Description

The equipment of generating code and method in communication system
The application be that February 6, application number in 2002 are 028004841 the applying date, denomination of invention divides an application for the application for a patent for invention of " equipment of generating code and method in communication system ".
Background of invention
1. invention field
The present invention relates generally to that the code in the communication system generates, relate in particular in application and resend in the packet communication system of scheme or the ALPURCOM that application resends scheme, considered to generate after whirlpool formula (turbo) the sign indicating number characteristic equipment and the method for two dimension accurate complementary whirlpool formula sign indicating number (QCTC) and self adaptation QCTC.
2. description of Related Art
In general, (for example, hybrid ARQ: system automatic repetitive requests) carries out soft combination, sends throughput to improve to utilize the scheme that resends.Soft combination technique is divided into combination of branch diversity and block code combination.These two kinds of assembled schemes are commonly called soft packet assembling.Although divide the diversity assembled scheme with respect to the block code assembled scheme, slightly inferior at aspect of performance,, when performance loss hour, be good at because of being easy to realization.
As mentioned above, the grouping transmitting system utilizes the block code assembled scheme to improve the transmission throughput.When transmitter sends in each grouping, send the different code of code rate.If detect mistake from receive grouping, receiver just request resends, and in original packet and resend and carry out soft combination between the grouping.The grouping that resends can contain and the different code that divided into groups in the past.The block code assembled scheme is before decoding, receives grouping with N and is combined into the code that the valid code rate is R/N with code rate R, thereby obtain the process of coding gain.
As for a minute diversity assembled scheme, when transmitter sends in each grouping, send the same code of code rate R.If detect mistake from receive grouping, receiver just request resends, and in original packet and resend and carry out soft combination between the grouping.The grouping that resends contains and the identical code that divided into groups in the past.In this sense, branch diversity assembled scheme can be considered to be in that to carry out code element on the accidental channel average.Owing to repeat to send identical code on fading channel, branch diversity assembled scheme is by asking the average noise power that reduced to the soft output of input symbols, and obtains the diversity gain as the diversity gain that multi-path channel provides.But the gain of the additional code the coding gain that obtains as the code structure that provides from the block code assembled scheme can not be provided branch diversity assembled scheme.
Because implement simply, most of packet communication systems have all used branch diversity assembled scheme, it is developed to and synchronous IS-2000 system and asynchronous UMTS (Universal Mobile Telecommunications System) system at present.Its reason is, when use has the conventional code of code data rate, use conventional code and even the existing packet communication system of block code combination very big gain is not provided.If system's support of R=1/3 resends, so, there is not big difference at aspect of performance between block code assembled scheme and the branch diversity assembled scheme.Therefore, after having considered the realization complexity, select to divide the diversity assembled scheme.But, because whirlpool formula sign indicating number is designed to have the error correcting code of the performance characteristics that is in close proximity to " the shannon capacity limit (ShannonChannel Capacity Limit) ", and it is different with conventional code, their performance obviously changes with code rate, and whirlpool formula sign indicating number needs different packet assembling mechanism as forward error correction (FEC).Therefore, can conclude that block code combination is applicable to uses whirlpool formula sign indicating number in resending scheme, with the packet communication system of the purpose that realizes optimum performance.
Under this background, QCTC has been proposed, to improve the performance of using soft combined system.Desire to know the details of QCTC, see also the korean patent application submitted to by the applicant P2000-62151 number.
Accurate complementary whirlpool formula sign indicating number (QCTC)
Utilization is described below selects the system of block code assembled scheme or branch diversity assembled scheme based on the traditional Q CTC of data transfer rate.
Utilizing, for example, in the system of R=1/5 whirlpool formula sign indicating number, the total code rate of the code that the grouping that resends in soft combination generates reached before 1/5 the application packet code combination.For the grouping that resends subsequently, the block code combination is carried out in the diversity of dividing into groups earlier combination then.If send first grouping with 1/3 data transfer rate, so, provide required redundancy symbol under the request resending, be 1/5 so that make the total code rate.Therefore, when receiver received these two kinds groupings, the total code rate became 1/5.Each that repeated to divide into groups later before sending and receiver carry out the combination of branch diversity with 1/5 pair of grouping that resends of data transfer rate, carry out the block code combination then.
Fig. 1 is the figure that is presented at the poor performance between the block code combination is made up with the branch diversity under the situation of whirlpool formula sign indicating number.As shown in Figure 1, the whirlpool formula sign indicating number with low data rate of 1/6 presents the formula sign indicating number bigger performance gain in whirlpool identical, that have 1/3 high code rate than code element ENERGY E s, and obtains the performance gain of 3dB from the block code combination.Therefore, the combination of the block code by the R=1/6 subcode generates R=1/3 whirlpool formula sign indicating number and has produced the gain that code combination that code rate is lower than gain that 1/3 whirlpool formula sign indicating number shows and different code provides simultaneously.
More particularly, different with conventional code, for same code code element ENERGY E s and same code rate, only when realizing iteration decoding fully, whirlpool formula sign indicating number just provides and " the shannon capacity limit " approaching performance based on code rate.Know that in the prior art the whirlpool formula sign indicating number with low code rate provides than the bigger performance gain of code symbol ENERGY E s whirlpool identical, that have high code rate formula sign indicating number.For example, when R=1/3 is reduced to R=1/6, can be poor by the variation estimated performance of analyzing " the shannon capacity limit ".Suppose irrespectively that for curve shown in Figure 1 and R=1/3 or 1/6 reason of same symbol ENERGY E s is that same symbol ENERGY E s is used for resending each time in hybrid ARQ (HARQ) system.
If repeat the R=1/2 code once and on AWGN (additive white Gaussian noise) channel, divide the diversity combination two codes, so, with regard to code element energy-noise ratio (Es/No), can obtain the maximum gain of 3dB.Under the situation of R=1/6, identical result appears.Therefore owing to divide the diversity portfolio premium, the performance curve of R=1/3 whirlpool formula sign indicating number to left+3dB size and when giving the same symbol energy, the performance curve of R=1/6 whirlpool formula sign indicating number also to left+the 3dB size.Here, performance curve is to draw at energy-noise ratio (Es/No) of measuring with comparing based on the code performance of code rate.Consequently, the difference between the whirlpool formula code performance curve is equivalent to the poor performance between combination of branch diversity and the block code combination.Poor performance based on code rate can estimate and can utilize minimum required signal-to-noise ratio (SNR) acquisition minimum performance poor from " the shannon capacity limit ".
Have code rate R and very in the system of the whirlpool formula sign indicating number of unitary Item block length L, provide the required minimum Eb/No of error free channel to be expressed as follows in utilization:
Eb/No>(4 R-1)/2R ......(1)
According to top equation, in following table 1, listed on each code rate of whirlpool formula sign indicating number the minimum required Es/No under AWGN.In table 1, typical Eb/No indication is when the coding block length L of whirlpool formula sign indicating number is 1024, and bit error rate (BER) is at the required Eb/No below 0.00001.
(table 1)
Code rate Required Eb/No (dB) BER=10 -5Typical Eb/No (dB)
3/4 0.86 3.310
2/3 0.57 2.625
1/2 0.00 1.682
3/8 -0.414 1.202
1/3 -0.55 0.975
1/4 -0.82 0.756
1/5 -0.975 0.626
1/6 -1.084 0.525
0 -1.62 NA
As shown in table 1, the code rate for 3/4,2/3,1/2,3/8,1/3,1/4,1/5 and 1/6, required Eb/No are respectively 0.86,0.57,0.0 ,-0.414 ,-0.55 ,-0.82 ,-0.975 and-1.084.Between the system of system that uses the R=1/3 code and use R=1/6 code, exist 0.53dB poor performance at least.This minimum performance that is based on " the fragrant clothing channel capacity limit " is poor.After the realization of having considered real decoder device and system environments, this difference becomes bigger.By simulation, make up the poor performance of observing about 1.12dB between the system that is used for the R=1/3 code in the system and the branch diversity that the block code combination are used for the R=2/3 code.
Table 2 shown in having the system of 2/3 subcode code rate, after once resending, the block code combination with divide the poor performance of diversity between making up.As shown in table 2, in the system that uses whirlpool formula sign indicating number, the minimum performance difference is that 1.12dB and block code assembled scheme produce higher performance gain.
(table 2)
Project Packet assembling Code combination
Female code rate R m 1/3 (Y ' 0 for X, Y0) in Fig. 2 1/3 (Y ' 0 for X, Y0) in Fig. 2
Block length (L) 496 496
Maximum iterative times 8 8
Send number of times 2 2
Each actual transmission code rate Re that sends 2/3 (by shrinking (puncturing)) 2/3 (by shrinking)
The redundant selection For all transmissions, model identical For all transmissions, different mode
Soft combination Divide the diversity combination The block code combination
By the gain that resends The code element repeated gain The coding gain of low code rate
Minimum required Eb/No in the table 1 +0.57(dB) R-2/3+0.57(dB) R-2/6-0.55(dB)
Required Eb/No when resending for the 2nd time +0.57-3.0(dB) -0.55-3.0(dB)
The relative performance gain 0 1.12(=0.57+0.55)dB
The relative gain (@BER=10 of simulation -5) 0 2.5(dB)
As mentioned above, resending in the system of use whirlpool formula sign indicating number, the block code assembled scheme has been showed remarkable performance.Therefore, the present invention is for providing the filial generation code generating method at the best packet code combination that resends in the system that uses whirlpool formula sign indicating number.Generate the subcode be used for the block code combination according to pre-defined rule and produced above-mentioned code combination gain, and make performance reach maximum for the system of the subcode that resends the request equal length at every turn.
Fig. 2 is to use the typical subcode of whirlpool formula sign indicating number to generate the calcspar of equipment.As shown in Figure 2, subcode generation equipment comprises vortex type encoder, subcode generator 204 and controller 205.
At first, about vortex type encoder, first fen encoder 201 (dividing encoder 1) coding input information bit stream and output first code code element, that is, and the information code element X and first parity symbols Y0 and the Y1.Interleaver 202 is according to the pre-defined rule input information bit stream that interweaves.Second fen encoder 203 (dividing encoder 2) code interleaving information bit stream and output second code code element, that is, and information code element X ' and the second parity symbols Y ' 0 and Y ' 1.Therefore, the output symbol of vortex type encoder is first and second code symbols.Because information code element X ' that second fen encoder 203 generates is actually and does not send, the code rate of vortex type encoder is 1/5.
Subcode generator 204 generates subcode by shrinking and repeating from first and second code symbols from first and second fens encoders 201 and 203 under the control of controller 205.Contraction (and repetition) matrix that controller 205 storages generate from the algorithm shown in Fig. 4,5 and 6 and a code element selection signal based on the contraction matrix output to subcode generator 204.Then, subcode generator 204 response code elements are selected signal, select the predetermined code symbol in the predetermined contraction scope.
Label X used herein, Y0, Y1, Y ' 0 and Y ' 1 are defined as follows.
X: system code code element or information code element
Y0: from the redundancy symbol that divides encoder of going up of vortex type encoder
Y1: from the redundancy symbol that divides encoder of going up of vortex type encoder
Y ' 0: from the redundancy symbol of following minute encoder of vortex type encoder
Y ' 1: from the redundancy symbol of following minute encoder of vortex type encoder
Fig. 4,5 and 6 is the flow charts that show subcode (or shrinking matrix) generative process based on conventional art.Specifically, Fig. 4 has shown the F1 sign indicating number C that generates in the filial generation code character 0Process, Fig. 5 has shown the dynatron code C that generates in the filial generation code character 1To C S-2Process and Fig. 6 shown the last subcode C that generates in the filial generation code character S-1Process.
Hereinafter, ENC1 (being called as the first code code element) expression is from the information code element X and the first parity symbols Y0 and the Y1 of encoder 201 outputs in first fen, and ENC2 (being called as the second code code element) expression is from the second parity symbols Y ' 0 and the Y ' 1 of encoder 203 outputs in second fen.
With reference to Fig. 4, the maximum code rate (Rmax) that is applicable to transmitter is set in step 401.This value is main, and data transfer rate in the system provides according to being used in.Minimum code rate (Rmin) is arranged to Rmax (=k/n) integer/one.Here, k is the number of input symbols and the number that n is output symbol.Although can determine Rmin arbitrarily, because in the formula sign indicating number of whirlpool since or the reduction that is lower than the R=1/7 code rate cause coding gain saturated, so it normally 1/6,1/7 or lower.In addition, also to determine real code rate, i.e. female code rate (R) of decoder in the receiver.R is arranged to greater than Rmin.
In real system realized, Rmax and Rmin preset.In some sense, Rmax is that the code rate of the subcode that will generate and Rmin are the object code rates after the code combination subcode.In general, Rmin is the code rate of encoder in the transmitter.
In step 403, utilize, by the number (S) of following Equation for Calculating subcode.Here the number of the number of subcode or contraction matrix is above the smallest positive integral of Rmax with the ratio of Rmin.
Herein,
Figure C20061000501800092
Representative is equal to or greater than the smallest positive integral of *.
In step 405, variable m is arranged to initial value 1 and in step 407, determines C (=m * k).C is definite by Rmax, each contraction matrix column number.For example, for Rmax=3/4, C can be 3,6,9 ..., and be configured to the minimum usable levels of the F1 sign indicating number that will send.But for Rmax=3/4, C is configured to 3.
In step 407, by with variable m and code length, the code symbol number that promptly draws from Rmax=k/n multiplies each other, the number of the code element that calculating will be selected from shrink matrix.Ns is that each shrinks the number of selected code element in the matrix or the number of selected location, and calculates by C/Rmax.
In step 409, (Ns-C) compared with the branch encoder number of vortex type encoder in the transmitter.Present vortex type encoder generally is furnished with two branch encoders.Therefore, suppose to have used two branch encoders.Because different with the conventional codec that uses other single code, vortex type encoder contains two branch encoders in parallel, and is situated between as shown in Figure 2 at the interleaver of centre, therefore, determine that in step 409 whether (Ns-C) be more than or equal to 2.In other words, in order to keep the intrinsic characteristic of vortex type encoder, after all information code elements have all sent, must send at least one parity symbols of dividing encoder from each.
If (Ns-C) less than 2, so, from the first parity check code tuple or the second parity check code tuple, only select a code element.From the angle of whirlpool formula sign indicating number, each situation all may be faced with problem.In first kind of situation, the subcode that does not contain the generation of second parity symbols is not a whirlpool formula sign indicating number, but from the conventional code with constraint length K=4 of the encoder that only contains first fen encoder, and do not provide the interleaver that is applicable to vortex type encoder gain.On the other hand, under second kind of situation, from first fen encoder transmitting system code element, to cause code rate be 1 subcode and do not send parity symbols.This is equivalent to the non-coded system without any coding gain.Therefore, (Ns-C) must be equal to or greater than 2, so that the vortex type encoder performance is provided.
If (Ns-C) is equal to or greater than 2 in step 409, so, in step 411, from shrink matrix, selects C system information code element and select other code element according to predefined type.For Class1, in step 413, from first and second parity symbols, select other code element by equation (3).The number of selected first parity symbols is equal to or greater than the number of selected second parity symbols.For example, if the number of other code element, i.e. (Ns-C) is 3, so, selects first and second parity symbols by equation (3), then, and code element of more options from first parity symbols.
Figure C20061000501800102
Herein, Representative is equal to or less than the maximum integer of *.
For type 2, in step 415, from first and second parity symbols, select other code element by equation (4).If supposing a and b is respectively the symbol allocation rate of first parity symbols and second parity symbols, so, from first parity symbols, select to be equal to or greater than the so much code element of a (Ns-C) and the smallest positive integral of (a+b) ratio and from second parity symbols, select to be equal to or less than the so much code element of maximum integer of b (Ns-C) and (a+b) ratio.
Figure C20061000501800104
Figure C20061000501800105
Herein, a+b=1, a and b represent the symbol allocation rate of ENC1 and ENC2 respectively.
If the condition that provides is not being met, that is to say that (Ns-C) less than 2, so, in step 417 variable m is added 1, then, process turns back to step 407 in step 409.The purpose of step 409 be determine whether can be in the current contraction scope size of matrix (shrink) generation can keep the subcode of whirlpool formula sign indicating number character.If can not keep the character of whirlpool formula sign indicating number, so, in step 417, enlarge the contraction scope.
As mentioned above, the initial contraction matrix is formed in the vortex type encoder and selects all information code elements and select at least one code element from each of the first and second parity check code tuples.
Referring now to Fig. 5 the middle matrix generating method that shrinks is described.By repeating process shown in Figure 5, generate and shrink Matrix C 1To C S-2
With reference to Fig. 5, according to predefined type execution in step 501 or 503.For Class1, in step 501, from the first and second parity check code tuples, select Ns code element by equation (5).Ns is m and from the Rmax (product of=n that draws k/n).The number of selected first parity symbols is equal to or greater than the number of selected second parity symbols.Here, from the contraction matrix of front, select not code selection unit.
Figure C20061000501800106
Figure C20061000501800107
For type 2, in step 503,, from first and second parity symbols, select the Ns code element according to estimated rate by equation (6).If supposing a and b is respectively the symbol allocation rate of first parity symbols and second parity symbols, so, from first parity symbols, select to be equal to or greater than the so much code element of a (Ns) and the smallest positive integral of (a+b) ratio and from second parity symbols, select to be equal to or less than the so much code element of maximum integer of b (Ns) and (a+b) ratio.Here, from the contraction matrix of front, select not code selection unit.
Figure C20061000501800111
Figure C20061000501800112
Below with reference to Fig. 6 last contraction Matrix C is described S-1The generation method.
With reference to Fig. 6, from the contraction matrix of front, select all the other all code selection units not.The number of selected code element is defined as Ns2.In step 603.In step 603, by the new Ns of (Ns-Ns2) definition.Because in the process of the operation shown in Fig. 4,5 and 6, from shrink matrix, selected all locational code elements, therefore, new Ns is the number of the code element that will repeat to select.In step 605, determine that whether new Ns is greater than 0.If new Ns is 0, so, process finishes.If new Ns repeats the code element of selecting new Ns so much so greater than 0 from information code element.In other words, repeat to send selected code element.
Quote concrete numeral below and more clearly describe above-mentioned traditional filial generation code generating method.
For Rmax=3/4 and R=1/6, Rmin=1/6 and S=6/ (4/3)=4.5 → 5.Therefore, produce 5 and shrink matrix,
{C 0,C 1,C 2,C 3,C 4}:Rmax=3/4。
Since the code rate of subcode be 3/4 and the number of subcode be 5, after code combination, subcode has code rate 3/20 ((1/S) * Rmax=(1/5) * (3/4)=3/20).This means that for 3 information bits, receiver receives 20 code symbols.But,, therefore, repeat to send 5 central code elements of 15 code elements owing to generate 15 code elements according to S * n=5 * 4=20 and S * k=5 * 3=15.Repetition symbols is information code element preferably.In the above example, if repeat primary information code element X in each sub-symbols, decoder just receives when S subcode all receives, for each of S subcode, and information code element appearance whirlpool twice, that have R=1/5 formula sign indicating number.
The subcode that draws from the process shown in Fig. 4,5 and 6 is a kind of mutual-complementing code, and still, owing to exist the code element that repeats to present different characteristics with each subcode, they are not proper mutual-complementing codes.For the subcode that from the formula sign indicating number of whirlpool, produces, claim their complementary whirlpool formula sign indicating numbers (QCTC) that is as the criterion.
Fig. 3 shows for the QCTC with R=2/3 and S=4 based on conventional art, with regard to data throughout, at the performance of the HARQ that uses the block code combination and the figure that uses the comparison between the performance of dividing the HARQ that diversity makes up.As shown in Figure 3, the block code combination is used for the HARQ 301 of QCTC and the branch diversity is made up the HARQ 302 that is used for QCTC demonstrating than HARQ 303 more performance that do not have QCTC.
Quote concrete numeral below and more clearly describe above-mentioned filial generation code generating method.
For R Max=3/4, R=1/6 and R Min=1/6, S=6/ (4/3)=4.5 → 5.Therefore, produce 5 and shrink matrix,
{C 0,C 1,C 2,C 3,C 4}:R max=3/4。
Since the code rate of subcode be 3/4 and the number of subcode be 5, after code combination, subcode has code rate 3/20 ((1/S) * R Max=(1/5) * (3/4)=3/20).This means that for 3 information bits, receiver receives 20 code symbols.But,, therefore, repeat to send 5 central predetermined code elements of 15 code elements owing to generate 15 code elements according to S * n=5 * 4=20 and S * k=5 * 3=15.Repetition symbols is information code element preferably.In the above example, if repeat primary information code element X in each sub-symbols, decoder just is received in information code element appearance whirlpool twice, that have R=1/5 formula sign indicating number in each of S subcode.
The subcode that draws from the process shown in Fig. 4,5 and 6 is a kind of mutual-complementing code, and still, owing to exist the code element that repeats to present different characteristics with each subcode, they are not proper mutual-complementing codes.For the subcode that from the formula sign indicating number of whirlpool, produces, claim that they are QCTC.
In conventional art, the subcode of QCTC has the predetermined code rate.For the transmission of single information block, use the subcode of the QCTC with particular code rate.In other words, traditional Q CTC is one dimension QCTC.
Under the channel circumstance that changes, or, must send subcode with different code rate for the input information word that length changes.But also nobody provides the method for selecting and sending the QCTC with different code rate.In fact, at (under the channel circumstance of difference) under the good channel circumstance, except the subcode of former QCTC, preferably also use the subcode of the new QCTC with high code rate (low code rate).In other words, need a kind of method of determining QCTC according to channel circumstance or other factors adaptively.
Summary of the invention
Therefore, an object of the present invention is to provide a kind ofly in the communication system of supporting to resend, use equipment and the method for several QCTC with different code rate.
Another object of the present invention provides a kind of by using several QCTC, in supporting the communication system that resends, rearranging will that send after the subcode with predetermined code rate, have the different code rate, the subcode in the filial generation code character, so that obtain the equipment and the method for optimum code combination on receiver.
A further object of the present invention provides a kind of by using several QCTC, in supporting the communication system that resends, the subcode that grouping has the QCTC of particular code rate reaches by the packet count of wanting code rate to determine so repeatedly, generation has the subcode of wanting code rate, with the subcode that sends generation, so that on receiver, obtain the equipment and the method for optimum code combination.
Realize by the equipment and the method that generate two-dimentional QCTC are provided with other purpose above of the present invention.According to an aspect of the present invention, the filial generation code character of generation and the corresponding QCTC of several given code rates.Here, each subcode is the matrix that contains the matrix element of representative repetition and contraction.Then, generate new filial generation code character, so that the matrix of each subcode has the as many row of least common multiple with the columns of filial generation code character generation of neutrons sign indicating number.Determine the priority of the matrix of each new filial generation code character generation of neutrons sign indicating number, so that have the QCTC characteristic from the matrix that the matrix of two new filial generation code characters generates by combination.Then, according to priority, rearrange the matrix in each new subcode.
According to another aspect of the present invention, in the middle of QCTC, have the QCTC of high code rate and be configured to the basic code in this group and the subcode of generation basic code with the code rate that has integral multiple relation each other.Determine the number of the subcode that will divide into groups in the basic code, so that generate other QCTC each.Begin by the subcode after the subcode that sends before from basic code, being connected on, be divided into one group, the subcode that generation will send basic code with the as many subcode of the corresponding packet count of given code rate.Then, send the subcode that generates.
The accompanying drawing summary
In conjunction with the drawings, carry out following detailed description, of the present invention above and other purpose, feature and advantage will be clearer, in the accompanying drawings:
Fig. 1 is presented in the block data system that utilizes whirlpool formula sign indicating number, the figure of the poor performance between block code combination and the combination of branch diversity;
Fig. 2 is the calcspar that typical subcode generates equipment;
Fig. 3 is the performance that shows the scheme that resends of not using subcode, utilize subcode realize the diversity combination the scheme that resends performance and utilize the figure of performance of the scheme that resends of subcode code combination;
Fig. 4 is the flow chart that shows the conventional method of F1 sign indicating number in the filial generation code character that generates accurate complementary whirlpool formula sign indicating number;
Fig. 5 is the flow chart that shows the conventional method of dynatron code in the filial generation code character that generates accurate complementary whirlpool formula sign indicating number;
Fig. 6 is the flow chart that shows the conventional method of last subcode in the filial generation code character that generates accurate complementary whirlpool formula sign indicating number;
Fig. 7 is the flow chart that shows according to the two-dimentional QCTC generation method of first embodiment of the invention;
Fig. 8 is the flow chart that shows according to the self adaptation QCTC generation method of second embodiment of the invention;
Fig. 9 is the figure of demonstration according to the realization of the self adaptation QCTC generation of second embodiment of the invention;
Figure 10 is the figure that demonstration realizes according to the another kind of the self adaptation QCTC generation of second embodiment of the invention;
Figure 11 shows the flow chart of utilization according to the subcode transmission of the self adaptation QCTC of second embodiment of the invention;
Figure 12 shows the flow chart of utilization according to the subcode transmission of the two-dimentional QCTC of first embodiment of the invention; With
Figure 13 is the calcspar that sends according to the transmitting apparatus of two-dimentional QCTC of the present invention and self adaptation QCTC.
Preferred embodiment describes in detail
Hereinafter describe the preferred embodiments of the present invention with reference to the accompanying drawings.In following description, those well-known functions or structure will be described in detail, otherwise, emphasis of the present invention will not given prominence to.
The invention provides the data transfer rate of characteristic, channel circumstance and input data, send the method for the QCTC with different code rate according to whirlpool formula sign indicating number.Here intend QCTC, promptly two-dimentional QCTC and self adaptation QCTC with two types.In preceding a kind of scheme, when each the transmission, select the subcode of a QCTC in the middle of several QCTC, in a kind of scheme in back, before sending, according to the divide into groups subcode of specific QCTC of given data transfer rate with different code rate.
Two dimension QCTC
The communication system of considering now to use QCTC changed the situation of the data transfer rate that sends data according to channel circumstance before sending a QCTC fully.If lk is the information word or the data block that will send.In the situation of QCTC, press following coded message word:
C j(k)=QCTC_ENC(lk),j=0,1,2,3,...,S-1 ......(10)
Herein, QCTC_ENC refers to QCTC coding, C j(k) (j=0,1,2,3 ..., be that j subcode and the S of the QCTC that generates from lk is the preseting length of QCTC S-1), that is, and by subcode code rate and female code rate number that determine, that form the subcode of QCTC.
From top equation as can be seen, before sending lk fully, existing one dimension QCTC scheme utilizes the subcode of a QCTC to send code element successively.That is to say, with C 0(k), C 1(k), C 2(k) ..., C S-1(k) order sends subcode, and, need not to provide specific process, during sending, change code rate (code rate of subcode strictly speaking) and just obtained considering.If before sending all subcodes of QCTC with certain data transfer rate, because channel circumstance changes, use the communication system of QCTC to use QCTC with fresh code rate, so, must be able to generate several QCTC with different code rate.
C ij(k)=QCTC_ENC(lk),i=0,1,2,3,...,N S-1 j=0,1,2,3,...,S i-1
......(11)
Herein, QCTC_ENC refers to QCTC coding, C Ij(k) (i=0,1,2,3 ..., N S-1, j=0,1,2,3 ..., S i-1) be j the subcode of i QCTC from lk, generating, and S iBy subcode code rate and female code rate determine, the preseting length of an i QCTC.
According to equation (11), the transmitter in the communication system of using two-dimentional QCTC is selected N adaptively at the transmission environment change that comprises that channel condition changes or data transfer rate changes SOne of individual QCTC.In order to make performance the best, system must be by analyzing N SRelation between the individual QCTC is determined best order of transmission.Because different with one dimension QCTC, receiver is combined two-dimension QCTC in any way, therefore, if the structure of the code that draws from the QCTC combination does not satisfy the code characteristic that whirlpool formula sign indicating number should present, so, performance will variation.For the influence that makes this problem drops to minimum level, must be designed to satisfy following condition to two-dimentional QCTC.
Condition 1: must make up the minimum number subcode of QCTC, generate code with female code rate.In other words, must form the contraction matrix of each subcode,, reach female code rate so that make up minimum number subcode.
Condition 2: have only when condition 1 is met, the matrix element of the contraction matrix of the code that obtains from the QCTC combination just must have equal weight (if possible).That is to say that the matrix element of the contraction matrix by making up the code that minimum number subcode generates has even repetition and shrinks and distributes.
Satisfy condition 1 and the most important thing of condition 2 be to be that each QCTC forms the order of transmission that shrinks matrix and determine each QCTC neutron code.Two-dimentional QCTC as the two-dimentional QCTC that utilizes best one dimension QCTC to produce should have the high gain of selecting than at random of two-dimentional QCTC.In addition, owing to determine that the performance of two-dimentional QCTC is a key factor, therefore, should optimize the subcode order of transmission.Hereinafter, with the generation of describing in detail based on the two-dimentional QCTC of top two principle.
Here employed term " QCTC " is defined as one group of subcode according to predetermined female code rate and the generation of given filial generation code check.As previously mentioned, shrinking matrix obtains using on the meaning identical with subcode.
Fig. 7 is the flow chart that shows according to the two-dimentional QCTC generation method of first embodiment of the invention.With reference to Fig. 7, in step 701, generate N with given code rate SThe filial generation code character of individual best one dimension QCTC.According to predetermined female code rate and given code rate R i, form S iIndividual subcode C Ij(i=0,1,2,3 ..., N S-1, j=0,1,2,3 ..., S i-1) contraction matrix.Except generating several QCTC C accordingly with given code rate iOutside, this carries out to generate identical mode with traditional Q CTC.In step 703, N SThe columns that has in the middle of the individual QCTC in the contraction matrix of each subcode of QCTC of maximum preseting length S is defined as CWf (0≤f≤N S-1).
In step 705,, form new contraction matrix with CWf row by repeating the existing contraction matrix of QCTC.If CWf is not QCTC C iEach shrink the integral multiple that matrix column is counted CWi, the least common multiple of CWf and CWi is defined as new CWf.Then, should form contraction matrix again with new CWf.
In step 707, sending the contraction matrix that priority is assigned to each filial generation code character, so that the contraction matrix that produces by the contraction matrix that makes up two different filial generation code characters can present the QCTC characteristic.For example, should determine each filial generation code character C 0And C 1Neutron code C IjPriority so that if any if possible, give C even weight by combination QCTC 0And C 1In the matrix element of contraction matrix of the fresh code that obtains of subcode.Specify even weight to mean the even distribution of in the contraction matrix of the code word that generates by the minimum number subcode of combination, representing the matrix element of shrinking and repeating.The primary condition that will satisfy for generation QCTC is initialization subcode C I0Must contain the message code code element.In other words, must at first send subcode C I0First the row in the message code code element.
In step 709, in each filial generation code character, rearrange the contraction matrix.That is to say, at each filial generation code character C iMiddle displacement subcode C IiOrder.Then, if selected specific QCTC C i, so, just the ascending order with j sends QCTC C iSubcode C IiFor example, if QCTC sends with C 1, C 3, and C 1Order occur, so, with C 10, C 30, and C 11Order send subcode.In this case, can think, Fig. 7 shown rearrange will be after the subcode that utilizes the predetermined code rate to send transmission, have a process of the subcode of different code rate.
Below in conjunction with Fig. 7, quote concrete numeral and more clearly describe top two-dimentional QCTC generation method.Before describing, suppose N S=4, QCTC C iCode rate R iBe made as R 0=1/2, R 1=1/3, R 2=1/4 and R 3=1/8 and female code rate R=1/5.
Step 701: generate one dimension QCTC
R 0=1/2,C 0
C 00 = 1 1 1 0 0 0 0 1 0 0 C 01 = 0 0 0 1 1 0 1 0 0 1 C 02 = 1 1 0 0 0 1 0 0 1 0
R 1=1/3,C 1
C 10 = 1 1 0 1 0 C 11 = 1 0 1 0 1
R 2=1/4,C 2
C 20 = 1 1 1 1 0 C 21 = 1 1 0 1 1
R 3=1/8,C 3
C 30 = 2 2 1 2 1
Step 703:CWf=2
Step 705
R 0=1/2,C 0
C 00 = 1 1 1 0 0 0 0 1 0 0 C 01 = 0 0 0 1 1 0 1 0 0 1 C 02 = 1 1 0 0 0 1 0 0 1 0
R 1=1/3,C 1
C 10 = 1 1 1 1 0 0 1 1 0 0 C 11 = 1 1 0 0 1 1 0 0 1 1
R 2=1/4,C 2
C 20 = 1 1 1 1 1 1 1 1 0 0 C 21 = 1 1 1 1 0 0 1 1 1 1
R 3=1/8,C 3
C 30 = 2 2 2 2 1 1 2 2 1 1
Step 707
R 0=1/2, C 0: by C 00Be placed on C 02The position in, C 01Be placed on C 00The position in and C 02Be placed on C 01The position in, reset order of transmission.
C 00 = 0 0 0 1 1 0 1 0 0 1 C 01 = 1 1 0 0 0 1 0 0 1 0 C 02 = 1 1 1 0 0 0 0 1 0 0
R 1=1/3, C 1: exchange C 10And C 11Order of transmission.
C 10 = 1 1 0 0 1 1 0 0 1 1 C 11 = 1 1 1 1 0 0 1 1 0 0
R 2=1/4,C 2
C 21 = 1 1 1 1 1 1 1 1 0 0 C 22 = 1 1 1 1 0 0 1 1 1 1
R 3=1/8,C 3
C 30 = 2 2 2 2 1 1 2 2 1 1
As can be seen from the above, at filial generation code character C 0In, with C 00, C 01And C 02Rearrange into C 01, C 02And C 00With at filial generation code character C 1In, subcode C 10And C 11Switch is so that satisfy condition 1 and condition 2.Here, the subcode in each filial generation code character sends with the ascending order of subcode sequence number.For example, if QCTC sends with C 1, C 3, and C 1Order occur, so, with C 10, C 30, and C 11Order send subcode.
Contraction matrix shown in above following table 3 has been listed.As can be seen from Table 3, in each filial generation code character (QCTC), carry out the transmission of subcode successively.Though R 1=1/3 and R 2Each of=1/4 shunk matrix should contain 2 row, but has only shown 1 row.This is the problem of expression.Therefore, provide identical performance.
Travelling carriage and system read based on the contraction matrix of given code rate (or data transfer rate) with according to shrinking matrix, repeat and shrink have female code rate, from the code symbol of vortex type encoder output, generate subcode.Alternatively, they utilize pre-defined algorithm to obtain the contraction matrix and generate subcode from shrink matrix.
(table 3)
Figure C20061000501800194
Figure C20061000501800201
Self adaptation QCTC
As mentioned above, have the order of transmission of each neutron code of the independent one dimension QCTC of given code rate by control, obtained the two-dimentional QCTC that performance has improved.The generation of independent QCTC has advantageously promoted their optimization, but exists at specific QCTC C iCode rate R iBe the code rate R of another QCTC k(k=0,1,2 ..., N SUnder the situation of integral multiple-1), even exist enough big space for optimizing usefulness, the relation of QCTC also may make optimizes invalid major defect.
For R 0=1/2 and R 2=1/4, in the QCTC algorithm, obtain QCTC C respectively 0And C 2In order to make full use of the characteristic of QCTC, preferably satisfy condition 1.For this reason, grouping C 0Two subcodes in succession have R so that send 2=1/4 subcode, for example, (C 00+ C 01), (C 01+ C 02) or (C 02+ C 00).Then, if will have R 0=1/2 subcode and such subcode are combined, and just can obtain optimum performance.
In the middle of one dimension QCTC, have the one dimension QCTC of high code rate and be defined as basic code C in this group with the code rate that has integral multiple relation each other p(p is 0 and N SInteger between-1).When the request code rate is lower than basic code C pThe subcode of code rate the time, by link or grouping basic code C pSubcode, generate subcode.This is called self adaptation QCTC scheme.
Fig. 8 shows the flow chart of self adaptation QCTC generation method in accordance with another embodiment of the present invention.With reference to Fig. 8, in step 801, having code rate R iQCTC divide in groups, each group comprises the QCTC with the code rate that has the integral multiple relation each other.In step 803, from each QCTC group, select to have the QCTC of high code rate, as basic code C pTherefore, can define several basic codes C according to the group number p
In step 805, link or rule of classification are set, so that utilize each basic code C pSubcode C Pj(j=0,1,2 ..., S p-1) generates subcode for each QCTC in each group.These rules can comprise the number of the subcode that will link or divide into groups in each basic code.In other words, by link or grouping basic code C pSubcode, generate and to have code rate R iWant subcode C IjCan having considered after the possible subcode grouping, tentatively make the subcode grouping sheet.In this case, the basic code C that preferably divides into groups successively pIn subcode.
In case provide code rate (or QCTC or subcode), by linking corresponding basic code C pSubcode, just can generate the subcode of the QCTC with this code rate.
If the basic code of a group grp (that is any one group) is C pAnd its preseting length is S p, the subcode of QCTC can be expressed as follows in this group grp:
C p,j g 0≤j≤S p-1,1≤g
Group grp = C p 0 1 C p 1 1 . . . C ps p - 1 1 C p 0 2 C p 1 2 . . . C ps p - 1 2 C p 0 3 C p 1 3 . . . C ps p - 1 3 C p 0 4 C p 1 4 . . . C ps p - 1 4 . . . ( 12 )
Herein, j represents that subcode index and g are the numbers (that is packet count) of the subcode that will divide into groups.If g=1 need not grouping and just can use basic code C pSubcode.If g=2 is basic code C pSubcode be divided into 2 groups.For basic code C pCode rate R s=2/3, if g=1, so, new subcode has code rate r=2/3.If g=2 owing to compare with g=1, generates a code symbol group more, therefore, r=1/3.Therefore, above defined matrix can be by grouping basic code C pThe code rate of the QCTC that obtains of integer subcode and the subcode of each QCTC.Because depend on the realization of system, the maximum number of subcode is unrestricted.Here, as an example, can be divided into one group reaching 4 subcodes.
In matrix, line number is represented the largest packet number.The code rate of the QCTC that can realize by subcode grouping is along with the increase of line number reduces.In the matrix midrange by basic code C pPreseting length S pDecide.
For example, if basic code C pCode rate be R s=1/2, the 1st capable containing with g=1 has R s=1/2 basic code C pSubcode.In other words, the matrix element of the 1st row is represented basic code C in the matrix pSubcode.Have R the 2nd capable comprising with g=2 sThe subcode of=1/4 QCTC.The 3rd capable containing with g=3 has R sThe subcode of=1/6 QCTC and the 4th row with g=4 contain and have R sThe subcode of=1/8 QCTC.
Following equation has shown the basic code C in each QCTC and same group pBetween relation.Contain and have R s=1/2 and S p=3 basic code C pQCTC group as follows:
g=1,R s=1/2: C p 0 1 = C 00 1 , C p 1 1 = C 01 1 , C p 2 1 = C 02 1
g=2,R s=1/4: C p 0 2 = C 00 ∪ C 01 , C p 1 2 = C 02 ∪ C 00 , C p 2 2 = C 01 ∪ C 02
g=3,R s=1/6: C p 0 3 = C 00 ∪ C 01 ∪ C 02 , C p 1 3 = C 00 ∪ C 01 ∪ C 02 , C p 2 3 = C 00 ∪ C 01 ∪ C 02 . . .
g=4,R s=1/8: C p 0 4 = C 00 ∪ C 01 ∪ C 02 ∪ C 00 , C p 1 4 = C 01 ∪ C 02 ∪ C 00 ∪ C 01 , C p 2 4 = C 02 ∪ C 00 ∪ C 01 ∪ C 02 . . . ( 13 )
Therefore, has R for containing s=1/2 basic code C pGroup, the matrix shown in equation (12) is by following equation (14) expression:
Group grp = C p 0 1 C p 1 1 C p 2 1 C p 0 2 C p 1 2 C p 2 2 C p 0 3 C p 1 3 C p 2 3 C p 0 4 C p 1 4 C p 2 4 . . . ( 14 )
According to same way as, can be according to its basic code C pPreseting length S pWith the code rate of QCTC, in matrix, arrange the subcode of the QCTC in the different Q CTC group.
Below in conjunction with Fig. 8, quote concrete numeral and more clearly describe surface self-adaption QCTC generation.Before describing, suppose N S=4, QCTC C iCode rate R iBe made as R 0=1/2, R 1=1/3, R 2=1/4 and R 3=1/8 and female code rate R=1/5.
Step 801: code grouping
Group 0={C 0, C 2, C 3}={ R 0, R 2, R 3Code rate=1/2,1/4,1/8}
Group 1={C 1}={ R 1Code rate={ 1/3}
Step 803: basic code C p={ C 0, C 1}
C 0(R 0=1/2): the basic code in the group 0
C 1(R 1=1/3): the basic code in the group 1
Step 805
Utilize basic code C pObtain QCTC C in each group iSubcode C Ij(i=0,1,2 ..., N S-1, j=0,1,2 ..., S i-1).
Group 0: have R s=1/2 QCTC
R 0=1/2:{C 00,C 01,C 02}
R 2=1/4:{ (C 00, C 01), (C 01, C 02), (C 02, C 00) (can obtain nearly three kinds of situations)
R 3=1/8:{(C 00,C 01,C 02,C 00),(C 01,C 02,C 00,C 01),(C 02,C 00,C 01,C 02)}
Group 1: have R 1=1/3 QCTC
R 1=1/3:{C 20,,C 21}
When transmission has R 2During the subcode of=1/4 QCTC, there is dual mode can determine which is the subcode that sends.
(1) implicit expression subcode sign
If transmitter and receiver contain the information of the order of transmission of relevant subcode, transmitter need be on individual channel transmission information.For example, in the situation of group 0, receiver is each code rate, i.e. R=1/2,1/4 or 1/8 storage be the index of the subcode of reception in the past, in a single day so that receive the new subcode in same group, receiver just can be found out the position of new subcode.
(2) explicit subcode sign
Transmitter is informed receiver to the type of current subcode.Then, the receiver subcode of combined reception correspondingly.In general, if channel condition is not non-constant, implicit expression subcode sign is just enough.In the present invention, according to the reliability of message channel in the system, use this two kinds of identification methods selectively.
Fig. 9 is the figure of demonstration according to the realization of the self adaptation QCTC generation of second embodiment of the invention.In Fig. 9, for female code rate R=1/5, the QCTC with code rate 1/2,1/4 and 1/8 is in the group 0 and QCTC with code rate 1/3 and 1/6 is in the group 1.For group 0, ratio 1/2QCTC is basic code C pAnd for group 1, ratio 1/3QCTC is basic code C pBy means of basic code C p, generate QCTC with code rate 1/2,1/4,1/8 and 1/3.
For group 0, if ratio 1/2QCTC is C 3, so, according to the packet count subcode C that divides into groups successively 30, C 31And C 32, generate ratio 1/4 subcode and ratio 1/8 subcode.For example, by 2 subcodes are divided into one group, for example, (C 30, C 01), (C 32, C 30) and (C 31, C 32), produce ratio 1/4 subcode and by 4 subcode (C 30, C 31, C 32, C 30) be divided into one group, produce ratio 1/8 subcode.For group 1, if ratio 1/3QCTC is C 2, by 2 subcodes are divided into one group, for example, (C 20, C 21), generate ratio 1/6 subcode.
Figure 10 is the figure that demonstration realizes according to the another kind of the self adaptation QCTC generation of second embodiment of the invention.In Figure 10, for female code rate R=1/5, the QCTC with code rate 1/2,1/4 and 1/8 is in the group 0 and QCTC with code rate 2/3,1/3 and 1/6 is in the group 1.For group 0, ratio 1/2QCTC is basic code C pAnd for group 1, ratio 2/3QCTC is basic code C pBy means of basic code C p, generate QCTC with code rate 1/2,1/4,1/8,2/3,1/3 and 1/6.
For group 0, if ratio 1/2QCTC is C 3, so, according to the packet count subcode C that divides into groups successively 30, C 31And C 32, generate ratio 1/4 subcode and ratio 1/8 subcode.For example, by 2 subcodes are divided into one group, for example, (C 30, C 01), (C 32, C 30) and (C 31, C 32), produce ratio 1/4 subcode and by 4 subcode (C 30, C 31, C 32, C 30) be divided into one group, provide ratio 1/8 subcode.For group 1, if ratio 2/3QCTC is C 1, so, according to the packet count subcode C that divides into groups successively 10, C 11, C 12And C 13, generate ratio 1/3 subcode and ratio 1/6 subcode.Specifically, the basic code C that has code rate 2/3 by handle p2 subcodes be divided into one group, for example, (C 10, C 11), (C 12, C 13) or (C 10, C 11), generate ratio 1/3 subcode and by basic code C with code rate 2/3 p4 subcodes be divided into one group, for example, (C 10, C 11, C 12, C 13), generate ratio 1/6 subcode.Code structure shown in Figure 10 is the variation of adaptive channel conditions and data rate more.
If the HARQ system according to channel circumstance, uses the QCTC with various code rates, HARQ II is more desirable so.Then, need have the subcode of higher generation code check, therefore, the QCTC with R=2/3 will be as basic code.Obviously, basic code is (description to this problem has exceeded outside the scope of the present invention) determined according to the maximum code rate of system requirements, and, generate self adaptation QCTC in the above described manner.For example, for R=3/4, can generate subcode according to same way as with R=3/4, R=2/3, R=1/3 and R=1/6 etc.
Table 4 has been listed and has been utilized the basic code C with R=1/2 and R=1/3 pThe contraction matrix of the subcode that generates.Table 5 has been listed and has been utilized the basic code C with R=1/2 and R=2/3 pThe contraction matrix of the subcode that generates.
(table 4)
Figure C20061000501800241
Figure C20061000501800251
(table 5)
From table 4 and table 5 as can be seen, by grouping basic code C pSubcode generate subcode.Subcode with QCTC of given code rate is by the basic code C that divides into groups successively pSubcode generate.In table 4, two QCTC groups that contain basic code have been defined with R=1/2 and R=1/3.Shrinking matrix is the matrix element of the subcode matrix shown in the equation (12).For example, the C in the equation (12) P0 1, C P1 1, and C P2 1Correspond respectively to relevant R 0=1/2 the 1st, the 2nd and the 3rd subcode C 00, C 01And C 02The contraction matrix.C P1 2And C P2 2Correspond respectively to R 1=1/4 the 2nd subcode C 11(C 02∪ C 00) and the 3rd subcode C 12(C 01∪ C 02).Table 5 has shown the subcode of two groups of the basic code that contains R=1/2 and R=1/3.
Travelling carriage and system comprise and therefrom read the table contraction matrix, such as table 4 and table 5 with given code rate (or data transfer rate).By with to shrink matrix corresponding, repeat and shrink have female code rate, from the code element of vortex type encoder output, generate subcode.Alternatively, shrinking matrix can obtain and generate subcode according to shrinking matrix with pre-defined algorithm.
Figure 13 is the calcspar that sends according to the transmitting apparatus of two-dimentional QCTC of the present invention and self adaptation QCTC.With reference to Figure 13, channel encoder 1301 with, for example, female code rate R=1/5 coding input information, and output code code element.QCTC generator 1302 by shrinking and the duplicated code code element, generates subcode under the control of subcode selection control 1303.
Controller 1303 contains memory, and memory stores arrives the contraction matrix shown in the table 5 by their generation subcodes as table 3.Controller 1303, when generating two-dimentional QCTC, according to algorithm shown in Figure 12 with when generating self adaptation QCTC, according to algorithm shown in Figure 11, control QCTC generator 1302.
Alternatively, when each subcode sent, controller 1303 can send to QCTC generator 1302 to index signal, so that by carrying out Figure 11 and algorithm shown in Figure 12, option table 3 is to one of contraction matrix shown in the table 5.In this case, QCTC generator 1302 reads with the corresponding contraction matrix of index with according to shrinking matrix from table 3 to table 5, shrinks and repeat to generate subcode from the code element of channel encoder 1301 outputs.
Provide controller 1303 below and select the description of (or transmission) subcode.
Figure 11 shows the flow chart of utilization according to the subcode transmission of the one dimension self adaptation QCTC of second embodiment of the invention.With reference to Figure 11, in step 1100, in case generate new encoding block, controller 1303 just is arranged to initial value to all variablees (j_current, j_pre, g_current and g_pre) in step 1101.In step 1103, controller 1303 selects to comprise the QCTC group of the QCTC with given code rate, and, determine packet count g, i.e. basic code C pIn the number of the subcode that will divide into groups.Here, code rate is to determine according to the data transfer rate of channel condition and input data in transmitter.Packet count g is the variable that is included in the QCTC in the group by its identification.After having determined group and packet count g_current, controller 1301 is read as the QCTC C with this code rate in step 1105 iThe variable j_pre of storage, and the value that variable j_current is arranged to read.J_current represents the sequence number of QCTC neutron code.Then, controller is selected the j_current subcode with the corresponding QCTC of variable g_current that organizes in step 1107, and sends and the corresponding code symbols of selected subcode in step 1109.Variable g_current and j_current are stored as variable g_pre and j_pre, use for send next time.With the corresponding subcode of j_current (=0), promptly the 1st subcode of QCTC is expressed as:
C p 0 g ∀ g , g = 1 , . . . , . . . ( 15 )
Then, in the middle of the 1st subcode, select and the corresponding subcode of g_current (or g).
After having sent subcode, controller 1303 determines whether to have asked another subcode in step 1113, that is to say, whether receives the request of resending from receiver.According to the request of another subcode, controller 1303 sends the subcode with given code rate in step 1113.Otherwise controller 1303 turns back to step 1100, receives new encoding block.
Simultaneously, controller 1303 selects to comprise the QCTC group (g_current) that has according to the QCTC of the channel given code rate definite with sending environment in step 1115.
In step 1117, controller 1303 is according to following equation 16, the sequence number j_current of definite subcode (matrix element in the matrix in groups) that will send, and turn back in the middle of transmission and the corresponding subcode of variable j_current, with the step 1107 of the corresponding subcode of variable g_current.
[((j_pre+1)*g_premodS p)-1]+1=(j_current*g_current)modS p...(16)
In the above in the equation, left side " [((j_pre+1) * g_premodS p)-1] " refer to the subcode that finishes at last group, and right side " (j_current*g_current) modS p" refer to the subcode that begins from next one group.Therefore, adding " [((j_pre+1) * g_premodS to 1 p)-1] " in situation under, it refers to the subcode that begins from next one group, thus the equation both sides have identical value.In this manner, can obtain the value of j_current.
In the equation, AmodB obtains the computing of A divided by the remainder of B in the above.That is to say, the packet count of the subcode of the basic code of subcode before if variable g_pre represents to be used to generate, the sequence number of subcode before the identification number of the QCTC of subcode and j_pre represent before promptly containing, so, determine the sequence number j_current of the current subcode that will send by equation (16).With the corresponding row of variable j_current in subcode in the middle of, select with the corresponding row of determining according to code rate of variable g_current in subcode.In equation (16), utilize " modS p" reason be to be equal to or less than S in matrix midrange in groups pBecause the number of the subcode of basic code is S p, " modS p" make and can circulate and to select F1 sign indicating number C after all subcodes in having sent each row P0(please see Figure 9 and Figure 10).
Quote concrete numeral below and describe the operation of Figure 11 in more detail.
Suppose the code rate R of basic code s=1/2, line number g=4 (that is to say, can generate up to having R in the matrix in groups s=1/8 QCTC), S p=3, code rate is with R s=1/2, R s=1/4, R s=1/2, R s=1/8 order modification, then, g_pre=0, g_current=0, and j_pre=0 (initial value), so,
1.R s=1/2:g_current=1 and j_current=0, therefore, g_pre=1 and j_pre=0.
Selected subcode: C P0 1
2.R s=1/4:g_current=2 and j_current=2, therefore, g_pre=2 and j_pre=1.
Selected subcode: C P2 2
3.R s=1/2:g_current=1 and j_current=0, therefore, g_pre=1 and j_pre=0.
Selected subcode: C P0 1
4.R s=1/8:gcurrent=4 and j current=1, therefore, g_pre=4 and j_pre=1.
Selected subcode: C P1 4
5.R s=1/2:g_current=1 and j_current=2, therefore, g_pre=1 and j_pre=2.
Selected subcode: C P2 1
Select every group of interior subcode and select a group according to equation (16) according to the code rate that depends on channel circumstance and input data transfer rate.As shown in Figures 9 and 10, carrying out initial subcode with j=0 sends.Though in an embodiment of the present invention, at the contraction matrix of in the storage list of table 3 to the table 5, having listed the subcode of relevant each QCTC, but, as another embodiment, also can further imagine, the subcode of basic code of relevant each group and the subcode by equation (16) grouping basic code are provided, generate the subcode of wanting.Under latter event, if in equation (16), calculate j_current, controller can from the corresponding subcode of j_current, the g of basic code in succession subcode be divided into one group, generate and send subcode.
Figure 12 shows the flow chart of utilization according to the subcode transmission of the two-dimentional QCTC of first embodiment of the invention.With reference to Figure 12, in a single day in step 1200, generate new encoding block, controller 1303 just is arranged to initial value to all variablees (j and j_saved) in step 1201.In step 1203, controller 1303 is determined QCTC C according to given code rate iHere, code rate is to determine according to the data transfer rate of channel condition and input data in transmitter.Controller 1303 is read as QCTC C in step 1205 iThe variable j_saved of storage, j subcode C in step 1207 in the middle of the subcode of selection QCTC IjAnd in step 1209, utilize selected subcode to send code symbols.
After having sent subcode, controller 1303 determines whether to have asked another subcode in step 1211, that is to say, whether receives the request of resending from receiver.According to the request of another subcode, controller 1303 selects to have the subcode of the code rate of determining according to channel circumstance in step 1213.Otherwise controller 1303 turns back to step 1200, checks whether to have received new encoding block.
Simultaneously, controller 1303 determines that whether selected subcode is with previous identical in step 1215.If they are identical, controller 1303 just passes through more new variables j of equation (17), turns back to step 1207 then.If they are different, controller 1303 just adds 1 and store (j+1) as variable j_saved to the variable j of subcode before the representative in step 1219, turn back to step 1203 then.
j=(j+1)modS i ......(17)
Herein, S iBe QCTC C iPreseting length.In equation (17), use " modS i" reason be to make after sending all subcodes of QCTC, can circulate and select the F1 sign indicating number.
According to aforesaid invention, resend communication system and can select different QCTC adaptively according to given data transfer rate or code rate.In other words, two-dimentional QCTC and self adaptation QCTC are used for grouping and resend, thereby have improved throughput significantly.
Though by reference some preferred embodiment of the present invention, the present invention is illustrated and describes, but those of ordinary skill in the art should be understood that, can do various changes to it in the form and details, and the spirit and scope of the present invention that do not depart from appended claims and limited.

Claims (8)

1. method with the subcode that generates the subcode group, the method comprising the steps of:
Be created in the middle of the filial generation code character with the code rate that has integral multiple relation separately between the code rate, have the subcode of the filial generation code character of high code rate and be arranged to basic code having the filial generation code character of high code rate;
According to the code rate of the filial generation code character that is used to send, determine the packet count of the subcode that will divide into groups in the basic code, so that generate other filial generation code character each; With
By according to packet count and utilize code rate, the subcode of grouping basic code generates the subcode of other filial generation code character.
2. method according to claim 1 also comprises the steps: to send and has in the filial generation code character that sends definite code rate, the subcode after the subcode that sends before being connected on.
3. a subcode that is used for utilizing the filial generation code character sends the method for code element, and the method comprising the steps of:
Be created in the middle of the filial generation code character with the code rate that has integral multiple relation separately between the code rate, have the subcode of the filial generation code character of high code rate and be arranged to basic code having the filial generation code character of high code rate;
By subcode, generate the subcode of other filial generation code character according to the code rate grouping basic code of the filial generation code character that is used to send; With
When providing the code rate that is used to send, determine to be used in the sequence number j_current of the subcode in the transmission by following equation:
[((j_pre+1) * g_pre mod S p)-1]+1=(j_current*g_current) mod S pHerein, j_pre is the sequence number of the subcode in once sending before being used in, and g_pre is the packet count that once sends before being used for, and g_current is the packet count of determining, and S pIt is the preseting length of basic code; With
Utilization based in the middle of the subcode of filial generation code character of definite code rate, with the corresponding subcode of the definite sequence number of institute, send code element.
4. method with the subcode that generates the subcode group, the method comprising the steps of:
According to code rate grouping filial generation code character, each grouping comprises the filial generation code character with the code rate that has the integral multiple relation separately between the code rate;
Generate in each grouping, have the subcode of the filial generation code character of high code rate and be arranged to basic code having the filial generation code character of high code rate;
Determine the number of the subcode that will divide into groups in the basic code, so that generate other filial generation code character in each grouping each; With
By being divided into one group, generate subcode basic code with the as many subcode of the corresponding packet count of code rate.
5. a subcode that is used for utilizing the filial generation code character sends the method for code element, and the method comprising the steps of:
According to code rate grouping filial generation code character, each grouping comprises the filial generation code character with the code rate that has the integral multiple relation separately between the code rate;
Generate in each grouping, have the subcode of the filial generation code character of high code rate and be arranged to basic code having the filial generation code character of high code rate;
Determine the number of the subcode that will divide into groups in the basic code, so that generate other filial generation code character in each grouping each; With
By being divided into one group, generate subcode, and utilize the subcode that is generated to send code element basic code with the as many subcode of determining for transmission of the corresponding packet count of code rate.
6. a subcode that utilizes QCTC sends the equipment of code element, comprising:
Vortex type encoder, the input information bit stream and the output code code element that are used to encode and have the predetermined code rate;
Controller, be used to store and therefrom generate in the middle of the QCTC with the code rate that has the integral multiple relation separately between the code rate, has one group of matrix of the subcode of the QCTC of high code rate, the QCTC of high code rate is arranged to basic code having, generate the subcode of QCTC by the subcode of grouping basic code, when providing the code rate that is used to send, select the subcode of QCTC and generate contraction and repeat control signal according to selected subcode according to the code rate of determining; With
The QCTC generator is used for by according to shrinking and repeat control signal the code symbol that shrinks and repeat to receive from vortex type encoder, the subcode that generation will send.
7. equipment according to claim 6, wherein, controller is according to the sequence number j_current by the definite subcode of following equation, the chooser code:
[((j_pre+1) * g_pre mod S p)-1]+1=(j_current*g_current) mod S pHerein, j_pre is the sequence number of the subcode in once sending before being used in, and g_pre is the packet count that once sends before being used for, and g_current is the packet count of determining, and S pIt is the preseting length of basic code.
8. equipment according to claim 6, wherein, several QCTC groups of controller management, each QCTC group contains the QCTC with the code rate that has the integral multiple relation separately between the code.
CNB2006100050186A 2001-02-07 2002-02-06 The equipment of generating code and method in communication system Expired - Fee Related CN100542046C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR2001/7139 2001-02-07
KR20010007139 2001-02-07
KR2001/6662 2001-02-12

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNB028004841A Division CN1276588C (en) 2001-02-07 2002-02-06 Apparatus and method for generating codes in communications system

Publications (2)

Publication Number Publication Date
CN1808911A CN1808911A (en) 2006-07-26
CN100542046C true CN100542046C (en) 2009-09-16

Family

ID=36840643

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100050186A Expired - Fee Related CN100542046C (en) 2001-02-07 2002-02-06 The equipment of generating code and method in communication system

Country Status (1)

Country Link
CN (1) CN100542046C (en)

Also Published As

Publication number Publication date
CN1808911A (en) 2006-07-26

Similar Documents

Publication Publication Date Title
CN100420176C (en) Transmission system
CN101124731B (en) Pruned bit-reversal interleaver and method of interweaving management of data
CA2540892C (en) Channel encoding/decoding apparatus and method using a parallel concatenated low density parity check code
CN101232289B (en) Method of decoding turbine coding signal and turbine decoder
CN1937473A (en) Random-access multi-directional CDMA2000 TBRBO code interleaver
US7213193B2 (en) Apparatus and method for generating codes in a communications system
CN103281166A (en) Hybrid automatic repeat request transmission method based on polarization code
CN101636914A (en) Method and apparatus for encoding and decoding data
CN1685621B (en) Method and apparatus for deinterleaving interleaved data stream in a communication system
AU762092B2 (en) Generating codes in a communication system
CN101378303B (en) Method and apparatus for generating and processing retransmission low-density parity check code
CN107733557A (en) A kind of method and device of data transmission, communication equipment
KR20080041488A (en) Parallel interleaving method
JP2011515061A (en) System and method for adaptive hybrid automatic repeat request
CN100542046C (en) The equipment of generating code and method in communication system
CN1381096A (en) Adaptive turbo-coding and decoding
Soljanin et al. Hybrid arq in wireless networks
CN1323463A (en) Hybrid interleaver for TURBO codes
CN114499764A (en) Rate matching and de-matching method and device, mobile terminal and storage medium
CN101242234B (en) Data interweaving method and device
CN1182657C (en) Method used to reduce storage content needed and complexity by product code decode
AU2003266767B2 (en) Apparatus and method for transmitting symbols in a communications system
KR101356517B1 (en) Method for sub-packet generation with adaptive bit index
CN116137558A (en) Multi-Polar code construction and self-adaptive channel selection method
KR100320220B1 (en) Serially concatenated convolutional encoding method

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: 20090916

Termination date: 20210206