CN1322064A - Channel convolutional coding method of digital communication system - Google Patents

Channel convolutional coding method of digital communication system Download PDF

Info

Publication number
CN1322064A
CN1322064A CN 00119529 CN00119529A CN1322064A CN 1322064 A CN1322064 A CN 1322064A CN 00119529 CN00119529 CN 00119529 CN 00119529 A CN00119529 A CN 00119529A CN 1322064 A CN1322064 A CN 1322064A
Authority
CN
China
Prior art keywords
encoder
input
coding
response
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 00119529
Other languages
Chinese (zh)
Other versions
CN1133278C (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
Research Institute of Telecommunications Transmission of Ministry Information Industry
Original Assignee
ZTE Corp
Research Institute of Telecommunications Transmission of Ministry Information Industry
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, Research Institute of Telecommunications Transmission of Ministry Information Industry filed Critical ZTE Corp
Priority to CN 00119529 priority Critical patent/CN1133278C/en
Publication of CN1322064A publication Critical patent/CN1322064A/en
Application granted granted Critical
Publication of CN1133278C publication Critical patent/CN1133278C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

The present invention discloses a method for implementing rapid channel convolutional coding by using impulse responce principle, and is characterized by that firstly, prestoring length of response state of coder, making simple O.I judgement for input bit, storing impulse responce to 1. ignoring impulse responce of O, then making cyclic iterative treatment to obtain convolutional code of channel. Said invention is applicable of convolutional coding treatment of all constraint lengths and all code efficients in the digital communication system. The adoption of channel convolution coding method can reduce lots of operational quantity, reducing load of DSP resource and can implement real time rapid processing in the third-generation mobile communication system.

Description

Channel convolutional coding method in a kind of digital communication system
The present invention relates to the error-control technique in the digital communicating field.
The purpose of communication is that the ignorant message of the other side is in time sent to the other side reliably, therefore, requires a communication system transmits message necessary reliable and quick.Reliable and a pair of often contradiction fast in digital communication system.If require fast, then must make the shared time of each data symbols shorten, waveform narrows down, and energy reduces, and increases thereby produce wrong possibility in the back that is interfered, and the reliability that transmits message lowers.If require reliably, make that then the speed that transmits message is slack-off.Therefore, how more reasonably solving this a pair of contradiction of reliability and speed, is one of key issue of a communication system of correct design.Error correcting code constantly grows up in solving this a pair of contradiction just.
In " error correcting code-principle and method " book (Wang Xinmei, Xiao Guo town work, publishing house of Xian Electronics Science and Technology University, front page in 1991), error correcting code has been done detailed elaboration.In the digital communication system, the mode of utilizing error correcting code or error detection code to carry out error control roughly has following a few class at present:
Retransmit feedback system (ARQ)
Be that transmitting terminal sends the sign indicating number that can find mistake, after receiving terminal is received the sign indicating number that transmits by channel, at the coding rule of decoder, there is inerrancy to produce in the sign indicating number sequence that judgement is received, and tells transmitting terminal court verdict with decision signal by feedback channel according to this yard.Make a start according to these decision signals, receiving terminal is thought that wrong message transmits once more, till receiving terminal praises.
Forward error correction mode (FEC)
Be that the transmitting terminal transmission can be by the sign indicating number of error correction, receiving terminal can not only be found mistake automatically by error correcting deocder after receiving these sign indicating numbers, and can correct the mistake that receives in the codeword transmission automatically.The advantage of this mode is not need feedback channel, can carry out a user a plurality of users same broadcast communication, and the decoding real-time is good, and control circuit is simpler than ARQ.In order to obtain the lower error rate, often must design error correcting code with the worst channel condition, so required redundance code element is more much more than error detection code, thereby make encoding rate very low.But because this mode can realize with broadcasting communication, be specially adapted to military communication, and continuous reduction along with the required large scale integrated circuit cost of the development of coding theory and coding and decoding equipment, decoding equipment might be done more and more simplyr, cost is also more and more lower, thereby is used widely gradually in the communication of reality.
Hybrid error correction mode (HEC)
This mode is that the sign indicating number that transmitting terminal sends not only can be detected mistake, and also has certain error correcting capability.After receiving terminal is received yard sequence, at first check error situation, if in the error correcting capability of error correcting code, then carry out error correction automatically,, surpassed the error correcting capability of sign indicating number if mistake is a lot, but can detect, then receiving terminal requires to make a start the wrong message that retransfers by feedback channel.This mode has avoided the FEC mode to require with the complicated decoding equipment and the shortcoming of ARQ mode information continuity difference to a certain extent, and can reach the lower error rate, therefore uses more and more wider in practice.
Used sign indicating number in the above-mentioned various accuracy control system, it all is a kind of error detection code that can find mistake at decoder automatically, perhaps can correct the correcting and eleting codes of deletion error, any class sign indicating number all can be used as error detection code, error correcting code or correcting and eleting codes and uses according to the interpretation method difference.Usually also in the following ways error correcting code is classified:
(1), is divided into block code and convolution code two big classes according to difference to the information word processing method.
(2) be divided into linear code and nonlinear code according to the relation between check unit and the information.
(3) be divided into correction random error sign indicating number, burst error correcting code and correction timing error sign indicating number or the like according to the type of correcting a mistake.
As everyone knows, the purpose of convolutional encoding is according to certain rule information bit to be carried out computing to draw coded-bit, and the number of this coded-bit is more than the prime information bit, thereby has introduced redundant information.Can not only automatically find mistake at receiving terminal by error correcting deocder, and can automatically correct the mistake that receives in the codeword transmission, reach jamproof purpose.It is particularly suitable for real time business.
Convolution code is different with general block code.During coding, one group n 0-k 0Individual verification unit not only with the k of this group 0Individual information word is relevant, but also relevant with the information sets that respectively constantly inputed to encoder in the past.Like this, in convolution code, n 0And k 0Usually very little, be suitable for especially with series form transmission information, it is little to delay time.Under the identical situation of coder complexity, the better performances of convolution code.And convolution code can be carried out Viterbi (VB) decoding algorithm, can not have remarkable information distortion ground and carries out real-time decoding.
Fig. 1 is transmission channel 1/3 convolution coder that provides on the 14th page among 3rd Generation Partnership Project (3GPP) the 1999-12 version 3 G TS25.212 v3.1.1, is applicable to 3-G (Generation Three mobile communication system).Wherein code storage is 8, and coding bound degree N is 9.In constraint length was all convolution codes of 9, they had maximum free distance, and do not have pernicious error propagation.
How to realize convolution coder as shown in Figure 1? usually the scheme that realizes this convolution coder has two kinds: a kind of is to utilize the method for hardware circuit to realize.Such as in following United States Patent (USP):
5,951,628?Method?and?system?for?performing?a?convolution?operation;
5,926,580?Convolution?algorithm?for?efficient?hardware?implementation;
5,917,961?Image?convolution?using?pre-calculated?lookup?tables;
5,912,673?Graphical?image?convolution?using?multiple?pipelines;
All provide relevant scheme to convolution, this method implements fairly simple, and their common ground is to adopt the structure of hardware to realize convolution, relatively is suitable for the system based on hardware.If but the functional module of its front and back is all realized by software module in system, then convolution coder to be proposed separately realize with hardware, will cause the integrality of rising of whole system complexity and destruction system.And in digital communication system for example in the 3-G (Generation Three mobile communication system), the structure of system is embodied as the master with software, if convolution coder still adopts hardware plan to realize, can increase the complexity of system on the contrary, does not accomplish real-time.
Therefore, second kind of implementation method, i.e. software implementation method have just appearred.Common software implementation method is to realize according to the hardware circuit of simulation drawing 1 in the Digital Signal Processing (DSP Digital Signal Processing), adds up after promptly by programming each tap of encoder being extracted out again.Whenever coming a bit, just need to add up by the corresponding positions among Fig. 1 again with after one of the data shift right in 8 D registers; Obviously to doing 15 sub-additions among Fig. 1, this is undoubtedly a no small burden in limited DSP resource, add and to carry out CRC (CRC), multiplexing operation such as interweave data, even make that the current the fastest dsp processor of use is also very inadequate, even have to use a plurality of DSP to handle, especially data rates are when higher.
The objective of the invention is to propose a kind ofly to carry out the channel convolutional coding method of convolution, expend the shortcoming of a large amount of precious resources of processor during to chnnel coding in 3-G (Generation Three mobile communication system) to overcome prior art based on impulse response.
Method of carrying out convolutional encoding based on impulse response of the present invention is by the length of the encoder responsive state that prestores, and input bit is simply judged, thereby the corresponding states that adds up again obtains convolution results.It is characterized in that:
At first, set the data length of effective coder state;
After the data length size of setting equals coding bound degree N and subtracts 1, divided by the value of rate convolutional encoder;
Secondly, prestore, be input as the response of 1 storage, be input as 0, then omit because response also is 0 to encoder for the encoder response of the different bit response of input;
What prestore is that encoder is input as 1000 to importing 1 response ... output produces continuous N code word of coding bound degree during sequence;
Then, beginning loop iteration coding, whether each judgement input is 1, then will add up in this way into the state of encoder and the output of will encoding to the response of encoder, be 0 direct output encoder;
The bit reciprocal (when for example being 3,1/2 convolution during 1/3 convolution be 2 or the like) of left side rate convolutional encoder of state of encoder that carries out loop iteration when coding output is as the output encoder value of current input bit.
Because the present invention analyzes the effective function of encoder period in advance, simultaneously input bit has been done preparation in advance to the effect that encoder produces, and code word done to preestablish in the position of encoder responsive state, make to get and carry out an addition behind the bit and just produce encoded radio.Adopt DSP to handle, computational speed can reach 1 of convolution only needs 1 cpu clock cycle consuming time, when input bit is 0, because 0 impulse response is 0, be equivalent to encoder impulse response status register S has been added up 0, for data block at random, 0 and 1 is respectively to account for 50% basically, so saved the addition of considerable quantity again.Need not any operation can directly compile out code word, can also carry out sectional convolution easily simultaneously, this all is that conventional art is beyond one's reach.
Below in conjunction with accompanying drawing, and describe how to realize 1/3 convolutional encoding in detail with the impulse response method by embodiment.
Fig. 1 is channel 1/3 convolution coder that provides on the 14th page among 3GPP text 3G TS 25.212 v3.1.1 (1999-12);
Fig. 2 is the sign indicating number figure to the unit impulse response of this encoder;
Fig. 3 is input 111000 ... the principle of stacking figure of sequence;
Fig. 4 is input 111000 ... the stack result figure of sequence;
Fig. 5 is the coding flow chart based on impulse response of specific embodiment-realization 1/3 convolutional encoding.
The speed that provides on the 3G TS 25.212 v3.1.1 standards of 3GPP shown in Figure 1 is lower than the hardware circuit implementation of 1/3 convolution code of 32kbps business.By coding principle knowledge as can be known the code storage of this encoder be 8, coding bound degree N is 9.Be used in data communication system, especially 3-G (Generation Three mobile communication system) morely.Below will specify and how to carry out the method that convolutional encoding realizes with impulse response.
With Fig. 2 is example, is equivalent to the encoder of Fig. 1 is produced an impulse at any t moment input bit M (t), and ' 1 ' corresponding impulse response is t, t+1 ..., the c0 that t+8 is corresponding constantly ... nine code words of c8; When input bit was 0, ' 0 ' impulse response was t, t+1 ..., the c0 that t+8 is corresponding constantly ... nine code words of c8 (only this moment, code element was 0 entirely) claim t ... t+8 is the survival period of this impulse, and t+9 is called the death phase of this impulse constantly.Can be easy to draw to draw a conclusion according to coding basic theories and Fig. 2:
1. any t unit pulse constantly lived in life cycle, and had influence on t+8 backward
The encoder impulse response no longer includes shadow to t+9 and later encoder impulse response thereof
Ring;
2. t pulse does not constantly arbitrarily influence the encoder impulse of any time before the moment at t
Response;
3. be the unit impulse of t all survivals before the moment at any t encoder impulse response constantly
Response is in t linear superposition and t unit impulse response sum constantly constantly.
4. at any first component s of t efficient coding state S constantly 0Be t impulse constantly
Encoded radio.
Input 111000 shown in Figure 3 ... the principle of stacking figure of sequence is respectively:
T0 unit impulse response constantly, the survival period of this moment impulse is that t0 is to t9;
T1 unit impulse response constantly, the survival period of this moment impulse is that t1 is to t10;
T2 unit impulse response constantly, the survival period of this moment impulse is that t2 is to t11.
According to four conclusions that Fig. 2 obtains in conjunction with coding principle, be 111000 to input bit as can be known ... sequence, its encoder impulse sound are the linear superposition of above unit impulse response.
Fig. 4 is the linear superposition of t0, t1 among Fig. 3, t2 unit impulse response constantly, compiles out convolution code and is followed successively by c0, (c0+c1), (c0+c1+c2), (c1+c2+c3), (c2+c3+c4), (c3+c4+c5), (c4+c5+c6), (c5+c6+c7), (c6+c7+c8), (c7+c8), c8,0,0,0 ... wherein at t2 impulse constantly, (c1+c2+c3) that t2 begins later on, (c2+c3+c4), (c3+c4+c5), (c4+c5+c6), (c5+c6+c7), (c6+c7+c8), (c7+c8), these nine code words of c8 have just constituted the encoder impulse response.
More than analyzed principle how to utilize impulse response, Fig. 5 has provided concrete handling process: the first step: set the data length of effective coder state, rationally select register for use below for realizing the embodiment of 1/3 convolutional encoding.Because encoding constraint length N is 9, rate convolutional encoder is 1/3, so data length should be (9-1)/(1/3) promptly 24, so selects for use three 32 bit registers to deposit S, A, C value respectively, and initialization.Second step: make list entries 1000 ... the sequence c0 that produces, c1, c2, c3, c4, c5, c6, c7, c8,0,0,0 ... totally 27 bits of preceding nine code words are prestored into the 3rd step of 32 bit register A as the impulse response of encoder to unit 1: the beginning iteration.This step can be further divided into: 1) get an input bit, judge that input bit is 0 still is 1; If 1 enters 2) carry out computing, if 0 directly changes 3 over to); 2) extract impulse response register A, and add up into encoder impulse response status register S; 3) a register S left side 3 is shifted into register C, and these 3 bits are the encoded radio C of input bit; The result who simultaneously S is moved to left after 3 deposits back S; 4) the encoded radio C of i bit of output gets back to 1).
As can be seen, when carrying out for the 3rd step, if 1) time judge that input bit is 0, then program directly enters 3), done a sub-addition this moment less.Because 0 impulse response is 0, be equivalent to encoder impulse response status register S has been added up 0, for data block at random, 0 and 1 is respectively to account for 50% basically, so saved the amount of addition operations of considerable quantity.
The method of the invention not only is applicable to 1/3,1/2 convolutional encoding scheme of 3GPP text regulation fully, also is applicable to the convolutional encoding of all constraint lengths, all code checks in the digital communication system, and in realization without any difference, the method all fours.This especially has very significant meaning to the digital communication system that need carry out the real time high-speed convolutional calculation in DSP.This method is by having adopted new computational methods to the analysis of encoder impulse response in advance, only just finished the convolution algorithm of a point with a sub-addition, more in the past technology has had the raising of the order of magnitude on operation time, and size of code also reduces to only several instructions, particularly when input bit is 0, all it goes without doing just can directly just produce coding result for one sub-addition, thereby realized dynamic reduction on computing time, and this all can't realize in method in the past.On the WCDMA of reality (Wideband Code Division Multiple Access (WCDMA)) chnnel coding realizes, have very big skill upgrading amount and important economic implications, channel coding technology has been played very big progradation.
As can be seen, adopt the new method that this paper proposed to realize convolutional encoding, the method of direct employing hardware different from the past fully or employing software simulation hardware, be the application on a kind of new conceptual foundation fully, it makes the channel convolutional coding of realizing digital communication system break through the bottleneck on the speed in the past, make when in DSP, realizing that the convolution that has taken main computational resource has originally only taken at this moment very trace even negligible system resource, all kinds of digital communication systems that have harsh real-time to require have well been satisfied, and make DSP more more complicated work also can be included, thereby make current popular popular notion " software radio " be able to technical providing powerful support for, this is of great immediate significance based on " software radio " technology on the DSP platform for promoting.

Claims (5)

1 one kinds of methods that are used for realizing the Fast Channel convolutional encoding is characterized in that:
At first, set the data length of effective coder state;
Secondly, prestore, be input as the response of 1 storage, be input as 0, then omit because response also is 0 to encoder for the encoder response of the different bit response of input;
Then, beginning loop iteration coding, whether each judgement input is 1, then will add up in this way into the state of encoder and the output of will encoding to the response of encoder, be 0 direct output encoder.
2 channel convolutional coding methods according to claim 1 is characterized in that: set the data length of effective coder state, its size equals coding bound degree N and subtracts 1 back except that rate convolutional encoder.
3 channel convolutional coding methods according to claim 1 and 2 is characterized in that: be input as the response to encoder that prestored at 1 o'clock and be encoder and be input as 1000 ... output produces continuous N code word of coding bound degree during sequence.
4 channel convolutional coding methods according to claim 1 and 2 is characterized in that: a bit reciprocal of the left side rate convolutional encoder of the state of the encoder of output is as the output encoder value of current input bit when carrying out the loop iteration coding.
5 channel convolutional coding methods according to claim 1 and 2 is characterized in that: the step at 1/3 convolutional encoding embodiment when carrying out the loop iteration coding is
1) gets an input bit, judge that input bit is 0 still is 1; If 1 enters 2) carry out computing, if 0 directly changes 3 over to);
2) extract impulse response register A, and add up into encoder impulse response status register S;
3) a register S left side 3 is shifted into register C, and these 3 bits are the encoded radio C of input bit; The result who simultaneously S is moved to left after 3 deposits back S;
4) the encoded radio C of i bit of output gets back to 1).
CN 00119529 2000-07-26 2000-07-26 Channel convolutional coding method of digital communication system Expired - Fee Related CN1133278C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 00119529 CN1133278C (en) 2000-07-26 2000-07-26 Channel convolutional coding method of digital communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 00119529 CN1133278C (en) 2000-07-26 2000-07-26 Channel convolutional coding method of digital communication system

Publications (2)

Publication Number Publication Date
CN1322064A true CN1322064A (en) 2001-11-14
CN1133278C CN1133278C (en) 2003-12-31

Family

ID=4587773

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 00119529 Expired - Fee Related CN1133278C (en) 2000-07-26 2000-07-26 Channel convolutional coding method of digital communication system

Country Status (1)

Country Link
CN (1) CN1133278C (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002071624A1 (en) * 2001-03-06 2002-09-12 Ubinetics Limited Recursive convolutional encoding
CN103354456B (en) * 2008-07-02 2017-06-23 松下电器(美国)知识产权公司 Dispensing device, reception device, sending method and method of reseptance

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002071624A1 (en) * 2001-03-06 2002-09-12 Ubinetics Limited Recursive convolutional encoding
CN103354456B (en) * 2008-07-02 2017-06-23 松下电器(美国)知识产权公司 Dispensing device, reception device, sending method and method of reseptance

Also Published As

Publication number Publication date
CN1133278C (en) 2003-12-31

Similar Documents

Publication Publication Date Title
US8533555B2 (en) Efficient encoding and decoding methods for representing schedules and processing forward error correction codes
JP3612022B2 (en) Termination method for general turbo code trellis
US9369255B2 (en) Method and apparatus for reducing feedback and enhancing message dissemination efficiency in a multicast network
CN1679267A (en) Parallel processing of decoding and of a cyclic redundancy check when mobile radio signals are received
CN107347000B (en) ARM-based digital fountain code compiling and decoding implementation method
KR20040045221A (en) Input control method and apparatus for turbo decoder
US7970021B2 (en) Derate matching method and apparatus
CN1246227A (en) Receiver decoder circuitry, and associated method, for decoding channel encoded signal
KR100628201B1 (en) Method for Turbo Decoding
US8627187B2 (en) Decoding of recursive convolutional codes by means of a decoder for non-recursive convolutional codes
CN1133278C (en) Channel convolutional coding method of digital communication system
KR20060121312A (en) Convolutional turbo code interleaver
CN1112778C (en) Channel circulation redundance code checking method in digital communication system
CN1574651A (en) Turbo decoder and dynamic decoding method used for same
CN111371465A (en) Bit interleaving method, system and medium for LDPC codeword
US20070168820A1 (en) Linear approximation of the max* operation for log-map decoding
CN100463370C (en) Input control apparatus and input control method
CN1338824A (en) Method and decoder for decoding turbo code
CN1166073C (en) Random extending code selection method reaching shannon limit
CN1126382C (en) Channel interleaving method in digital communication system
CN1330467A (en) Maximum-likelihood decode method f serial backtracking and decoder using said method
CN1638293A (en) Communication method and communication terminal equipment and transmitting, receiving and transmitting-receiving method
US7949062B2 (en) Encoding system using a non-binary turbo code and an encoding method thereof
JP3896841B2 (en) Interleave processing method and interleave processing apparatus
KR100719743B1 (en) Coding and decoding using reversible variable length coding

Legal Events

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