[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN100477546C - Convolution coding method and coder thereof - Google Patents

Convolution coding method and coder thereof Download PDF

Info

Publication number
CN100477546C
CN100477546C CNB2005100345192A CN200510034519A CN100477546C CN 100477546 C CN100477546 C CN 100477546C CN B2005100345192 A CNB2005100345192 A CN B2005100345192A CN 200510034519 A CN200510034519 A CN 200510034519A CN 100477546 C CN100477546 C CN 100477546C
Authority
CN
China
Prior art keywords
bit
result
output
bits
multinomial
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
CNB2005100345192A
Other languages
Chinese (zh)
Other versions
CN1855733A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2005100345192A priority Critical patent/CN100477546C/en
Publication of CN1855733A publication Critical patent/CN1855733A/en
Application granted granted Critical
Publication of CN100477546C publication Critical patent/CN100477546C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

The invention makes convolution code calculation for the inputted bits to generate multi outputting bits, and in term of the encoding speed and said multi outputting bits configures multi polynomials whose coefficient corresponds to each said outputting bit. The method comprises: receiving an inputted bit; combining the inputted bit with data saved in register, and outputting a first result; in term of the encoding speed and the sequence of outputting bit, selecting the polynomial coefficient, and then outputting a second result; making bit-by-bit AND operation for the first result and the second result, and outputting a third result; making bib nonequivalence operation for interior of bit of the third result, and outputting the encoding result. The invention can support all kinds of encoding speed and encoding format.

Description

A kind of convolutional coding method and convolution coder
Technical field
The invention belongs to moving communicating field, relate in particular to the convolutional coding method and the convolution coder that use in a kind of WCDMA communication system.
Background technology
When convolutional encoding has higher encoding process gain, have the better simply characteristics of realization of decoding, in various chnnel codings, obtained using widely.In WCDMA (Wideband Code DivisionMultiple Access, Wideband Code Division Multiple Access (WCDMA)), be used, be mainly used in handling the more sensitive business of time-delay, as speech business etc. as a kind of important coding method.
As shown in Figure 1, in the 3GPP225.212 agreement, convolutional encoding comprises 1/2 convolutional encoding and 1/3 convolutional encoding.1/2 convolutional encoding and 1/3 convolutional encoding are different to the processing time of each input bit, for 1/2 convolutional encoding, and 1 corresponding 2 output bit of input bit, for 1/3 convolutional encoding, 1 corresponding 3 output bit of input bit.
Each output bit of convolutional encoding is certain the several register in the shift register to be done mould 2 add (XOR) operation, and common way is that the register of corresponding tap position is directly done XOR.For example use D0 respectively, D1, D2......D7 represent the content of each register of shift register, for 1/2 convolutional encoding, 2 output bits can be expressed as respectively (MOD 2 of input+D1+D2+D3+D7) and (input ++ D0+D1+D2+D4+D6+D7) MOD 2.For 1/3 convolutional encoding, 3 output bits can be expressed as (MOD 2 of input+D1+D2+D4+D5+D6+D7), (MOD 2 of input+D0+D2+D3+D6+D7) and (MOD 2 of input+D0+D1+D4+D7) respectively.
Fig. 2 shows the structure of supporting the convolution coder of 1/2 and 1/3 convolutional encoding in the prior art simultaneously, the data that are input to shift register 201 add arithmetic unit 202 by mould 2 and carry out xor operation, in order to support 1/2 convolutional encoding and 1/3 convolutional encoding simultaneously, mould 2 adds has 5 cover dies 2 to add arithmetic element (1~5) in the arithmetic unit 202, finish the calculating of 1/2 convolutional encoding, 2 output bit and 3 output of 1/3 convolutional encoding bit respectively, MUX 203 selects certain fortune mould 2 of output to add the bit of arithmetic element according to the output bit order under coding mode (1/2 coding is 1/3 coding still) and the corresponding coding mode.
Therefore existing convolution coder needs many moulds 2 add arithmetic element, and each mould 2 adds arithmetic element and all solidify according to specific multinomial, if support other polynomial computation, needs to revise hardware.
Summary of the invention
The objective of the invention is to solve the more mould 2 of consumption that prior art exists and add arithmetic element in realizing the convolutional encoding process, and only can support particular polynomial, problem that can not flexible configuration.
To achieve these goals, the invention provides a kind of convolutional coding method, input bit is carried out the convolutional encoding computing, export a plurality of output bits, dispose a plurality of multinomials according to code rate and output number of bits, described polynomial coefficient is corresponding with each output bit;
Described method comprises the steps:
Receive input bit, the data in input bit and the register are merged, export first result;
Order according to code rate and output bit is selected corresponding multinomial coefficient, exports second result;
Described first result and second result are done step-by-step and computing, export the 3rd result;
Described the 3rd result's bit internal is done an XOR, the output encoder result.
Described code rate is 1/2 and 1/3 coding.
Described step-by-step and computing are for doing described first result and second result's Bit data the logical AND operation of corresponding bit.
Described multinomial coefficient is 9 bits, and lowest order is used to control input bit.
In order to realize goal of the invention better, the present invention further provides a kind of convolution coder, be used for input bit is carried out the convolutional encoding computing, export a plurality of output bits, described convolution coder comprises:
Dispose a plurality of polynomial multinomial memory cell according to code rate and output number of bits, described polynomial coefficient is corresponding with each output bit;
Receive input bit, the data in input bit and the register are merged, export first result's shift register;
Order according to code rate and output bit is selected corresponding multinomial coefficient, exports second result's multinomial selected cell;
Described first result and second result are done step-by-step and computing, export the 3rd result's position and arithmetic element; And
Described the 3rd result's bit internal is done an XOR, and output encoder result's mould 2 adds arithmetic element.
Described code rate is 1/2 and 1/3 coding.
Described shift register is 8 bits.
The logical AND operation of corresponding bit is done in described step-by-step and computing for the Bit data that the Bit data and the multinomial selected cell of shift register output are exported.
Described multinomial coefficient is 9 bits, and lowest order is used to control input bit.
The present invention can support 1/2 and 1/3 coding simultaneously, and can dispose multinomial by software flexible, supports the coding computing of various code rates, realizes simple.
Description of drawings
Fig. 1 is the general pie graph of 1/2 and 1/3 convolution coder;
Fig. 2 is the structure chart of convolution coder in the prior art;
Fig. 3 is the structure chart of convolution coder provided by the invention.
Embodiment
In order to make purpose of the present invention, technical scheme and advantage clearer,, the present invention is further elaborated below in conjunction with drawings and Examples.Should be appreciated that specific embodiment described herein only in order to explanation the present invention, and be not used in qualification the present invention.
The present invention is optimized convolutional encoding calculation process of the prior art, dispose corresponding multinomial according to different code rates and output number of bits, the corresponding specific output bit of each multinomial coefficient, multinomial is configured by software, supports the change of various multinomial coefficients flexibly.
When each output bit is encoded output, at first, select one with this output bit corresponding multinomial coefficient, do " step-by-step with " with the corresponding bit of the corresponding bit of this multinomial coefficient and shift register (comprising input bit) and operate, obtain intermediate object program.Secondly, all bits in the intermediate object program that the first step is obtained are done " mould 2 adds " (XOR) operation.Therefore, the present invention only needs 1 position and arithmetic element and 1 mould 2 to add the computing that arithmetic element just can be finished 1/2 or 1/3 convolutional encoding, has simplified the structure of existing convolution coder.
1/2 convolutional encoding and 1/3 convolutional encoding all are the result in the shift register to be carried out mould 2 add, and the register of just participating in computing in each output tap is different.For 1/2 convolutional encoding of stipulating in the 3GPP225.212 agreement, the register that computing is participated in first bit output is respectively 4 registers such as the 1st, 2,3,7; The register that computing is participated in second bit output is respectively 5 registers such as the 0th, 1,2,4,6,7.For 1/3 convolutional encoding, the register that computing is participated in the output of first bit is respectively 1,2,4,5,6,7; The register that computing is participated in the output of second bit is respectively 0,2,3,6,7; The register that computing is participated in the output of the 3rd bit is respectively 0,1,4,7.Therefore in the present invention, for 1/2 convolutional encoding and 1/3 convolutional encoding, be designed to shared same set of eight bit shift register.
Fig. 3 shows the structure of convolution coder provided by the invention, comprises that shift register 301, multinomial memory cell 302, multinomial selected cell 303, position add arithmetic element 305 with arithmetic element 304 and mould 2.
Shift register 301 comprises 8 registers, and input bit is carried out shifting function successively, every input one bit, and shift register 301 displacements are once.The data of shift register 301 outputs are the data that the content of input bit and 8 registers are merged into one 9 bit, input bit, No. 0 register, No. 1 register ... No. 7 registers are the 0th of corresponding dateouts respectively, the 1st, the 2nd ... and the 8th.
The a plurality of multinomials of multinomial memory cell 302 storages, multinomial coefficient is relevant with the register that computing is participated in bit output, comprise five multinomial coefficients (1~5), first bit output of first bit of corresponding 1/2 convolutional encoding output respectively, the output of second bit and 1/3 convolutional encoding, the output of second bit and the output of the 3rd bit.Multinomial coefficient has default value, 1/2 convolutional encoding of corresponding 3GPP225.212 agreement regulation and the multinomial coefficient of 1/3 convolutional encoding, in the present invention simultaneously, multinomial can be configured by software, can supported protocol to the change of multinomial coefficient.
In order to support input bit also can add computing by selected participation mould 2, multinomial coefficient is designed to 9 bits, and lowest order is used to control input bit.Accordingly, output of first bit and the corresponding multinomial coefficient of second bit output for 1/2 convolutional encoding is respectively 200011201 and 120201111.The output of first bit, the output of second bit and the corresponding multinomial coefficient of the 3rd bit output for 1/3 convolutional encoding are respectively 111201201,120012011 and 200200111.Whether the corresponding register position of every value representation has tap in the multinomial coefficient, and 1 expression has tap, the no tap of 0 expression.The 0th bit represents whether the input bit place has tap, the 1st bit to represent whether the 0th register place in the shift register 301 has tap ... the 8th bit represents whether the 7th register place in the shift register 301 has tap.
Multinomial selected cell 303 is selected polynomial coefficients corresponding according to the order of current code rate (1/2 convolutional encoding still is 1/3 convolutional encoding) and output bit.In 1/2 convolutional encoding, if current output first bit that needs, the coefficient of selection multinomial 1; Export second bit if desired, select the coefficient of multinomial 2.In 1/3 convolutional encoding, if current output first bit that needs, the coefficient of selection multinomial 3; Export second bit if desired, select the coefficient of multinomial 4; Export the 3rd bit if desired, select the coefficient of multinomial 5.
The result of position and 304 pairs of shift registers of arithmetic element 301 output and the multinomial coefficient of multinomial selected cell 303 outputs are done " step-by-step and " computing, and operation result is outputed to mould 2 add arithmetic element 305.Here said " step-by-step with " computing is meant 9 Bit data A[8:0 to shift register 301 outputs] and 9 Bit data B[8:0 of multinomial selected cell 303 outputs] " logical AND " of doing corresponding bit operate, be the 0th bit A [0] of A and the 0th bit B[0 of B] do " logical AND ", the 1st bit A [1] of A and the 1st bit B[1 of B] do " logical AND " ... the 8th bit A [8] of A and the 8th bit B[8 of B] do " logical AND ".
The result that mould 2 adds arithmetic element 305 contrapositions and arithmetic element 304 outputs carries out " position XOR " operation of 9 bit internal, and operation result is exported.Here said " position XOR " operation is meant that 9 Bit datas are carried out mould 2 adds computing.
The above only is preferred embodiment of the present invention, not in order to restriction the present invention, all any modifications of being done within the spirit and principles in the present invention, is equal to and replaces and improvement etc., all should be included within protection scope of the present invention.

Claims (9)

1, a kind of convolutional coding method carries out the convolutional encoding computing to input bit, exports a plurality of output bits, it is characterized in that, disposes a plurality of multinomials according to code rate and output number of bits, and described polynomial coefficient is corresponding with each output bit;
Described method comprises the steps:
Shift register receives input bit, and described input bit is carried out shifting function successively, and every input one bit is shifted once, and described shift register comprises 8 registers; The data of described shift register output are the data that the content of input bit and 8 registers are merged into one 9 bit, input bit, No. 0 register, No. 1 register ... No. 7 registers are the 0th, the 1st, the 2nd of corresponding dateouts respectively ... and the 8th, the data of described 9 bits are exported as first result;
Order according to code rate and output bit is selected corresponding multinomial coefficient, and described multinomial coefficient is exported as second result;
Described first result and second result are done step-by-step and computing, the result of described first result and second step-by-step as a result and computing is exported as the 3rd result;
Described the 3rd result's bit internal is done an XOR, described the 3rd result's bit internal position XOR result is exported as coding result.
2, convolutional coding method as claimed in claim 1 is characterized in that, described code rate is 1/2 and 1/3 coding.
3, convolutional coding method as claimed in claim 1 is characterized in that, described step-by-step and computing are for doing described first result and second result's Bit data the logical AND operation of corresponding bit.
4, convolutional coding method as claimed in claim 1 is characterized in that, described multinomial coefficient is 9 bits, and lowest order is used to control input bit.
5, a kind of convolution coder is used for input bit is carried out the convolutional encoding computing, exports a plurality of output bits, it is characterized in that described convolution coder comprises:
Dispose a plurality of polynomial multinomial memory cell according to code rate and output number of bits, described polynomial coefficient is corresponding with each output bit;
Receive input bit, described input bit is carried out shifting function successively, every input one bit, displacement shift register once, described shift register comprises 8 registers, the data of described shift register output are the data that the content of input bit and 8 registers are merged into one 9 bit, input bit, No. 0 register, No. 1 register ... No. 7 registers are the 0th, the 1st, the 2nd of corresponding dateouts respectively ... and the 8th, the data of described 9 bits are exported as first result;
Order according to code rate and output bit is selected corresponding multinomial coefficient, with the multinomial selected cell of described multinomial coefficient as second result output;
Described first result and second result are done step-by-step and computing, with the result of described first result and second step-by-step as a result and computing position and arithmetic element as the 3rd result output; And
Described the 3rd result's bit internal is done an XOR, described the 3rd result's bit internal position XOR result is added arithmetic element as the mould 2 of coding result output.
6, convolution coder as claimed in claim 5 is characterized in that, described code rate is 1/2 and 1/3 coding.
7, convolution coder as claimed in claim 5 is characterized in that, described shift register is 8 bits.
8, convolution coder as claimed in claim 5 is characterized in that, the logical AND operation of corresponding bit is done in described step-by-step and computing for the Bit data that the Bit data and the multinomial selected cell of shift register output are exported.
9, convolution coder as claimed in claim 5 is characterized in that, described multinomial coefficient is 9 bits, and lowest order is used to control input bit.
CNB2005100345192A 2005-04-29 2005-04-29 Convolution coding method and coder thereof Expired - Fee Related CN100477546C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100345192A CN100477546C (en) 2005-04-29 2005-04-29 Convolution coding method and coder thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100345192A CN100477546C (en) 2005-04-29 2005-04-29 Convolution coding method and coder thereof

Publications (2)

Publication Number Publication Date
CN1855733A CN1855733A (en) 2006-11-01
CN100477546C true CN100477546C (en) 2009-04-08

Family

ID=37195632

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100345192A Expired - Fee Related CN100477546C (en) 2005-04-29 2005-04-29 Convolution coding method and coder thereof

Country Status (1)

Country Link
CN (1) CN100477546C (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621353B (en) * 2008-07-03 2013-08-07 华为技术有限公司 Method, device and system for random linear network encoding
CN102265266B (en) * 2011-06-01 2014-02-19 华为技术有限公司 Method and apparatus for coding data address
CN102916707B (en) * 2012-10-10 2016-02-24 北京邮电大学 Compatible convolutional code generator polynomial defining method, coding method and encoder
CN108011640B (en) * 2016-11-01 2021-01-12 中国科学院沈阳自动化研究所 General method for (2,1, N) convolutional coding

Also Published As

Publication number Publication date
CN1855733A (en) 2006-11-01

Similar Documents

Publication Publication Date Title
US7398458B2 (en) Method and apparatus for implementing decode operations in a data processor
CN101777924B (en) Method and device for decoding Turbo codes
US20020135502A1 (en) Method and apparatus for convolution encoding and viterbi decoding of data that utilize a configurable processor to configure a plurality of re-configurable processing elements
WO2003044962A2 (en) Viterbi convolutional coding method and apparatus
US8989242B2 (en) Encoding/decoding processor and wireless communication apparatus
US8638244B2 (en) Encoding module, apparatus and method for determining a position of a data bit within an interleaved data stream
CN101986584A (en) Rate de-matching device and method in 3GPP LTE
US6523146B1 (en) Operation processing apparatus and operation processing method
CN110022188B (en) Polarization code encoding method based on frozen bit pair and polarization code serial offset decoding method and circuit
US7277507B2 (en) Viterbi decoder
CN100477546C (en) Convolution coding method and coder thereof
US5954836A (en) Method and apparatus for pipelined encoding
CN1983827A (en) Component coder and coding method, double-output Turbo coder and coding method
JP4815228B2 (en) Viterbi decoding circuit and radio
CN1592117B (en) Mobile telephone, apparatus, method, and program for calculating an interleave parameter
CN100508405C (en) Parallel decoding method and device for raising Turbo decoding speed
CN101027843B (en) Distributed ring control circuits for viterbi traceback
CN115882875A (en) Design method and system of semi-parallel prospective SC decoder
JP2001044856A (en) Coder, method therefor and serving medium
CN102281074A (en) Reconfigurable interleaver having reconfigurable counters
CN102136878B (en) Rate matching realization method and system
EP1417768A1 (en) High performance turbo and virterbi channel decoding in digital signal processors
CN112804026B (en) Frequency and time frequency interleaving method and system in OFDM system
CN1145267C (en) High-efficiency convolution coding method
JP3288262B2 (en) Data interleave circuit

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

Granted publication date: 20090408

Termination date: 20180429

CF01 Termination of patent right due to non-payment of annual fee