摘要:
An encoding method of generating an encoded sequence by performing encoding of a given encoding rate based on a predetermined parity check matrix. The predetermined matrix is either a first parity check matrix or a second parity check matrix. The first parity check matrix corresponds to a low density parity check (LDPC) convolutional code that uses a plurality of parity check polynomials, and the second parity check matrix is generated by performing at least one of row permutation and column permutation on the first parity check matrix. A parity check polynomial satisfying zero of the LDPC convolutional code is expressible by using a specific mathematical expression.
摘要:
Rate control adaptable communications. A common trellis is employed at both ends of a communication system (in an encoder and decoder) to code and decode data at different rates. The encoding employs a single encoder whose output bits may be selectively punctured to support multiple modulations (constellations and mappings) according to a rate control sequence. A single decoder is operable to decode each of the various rates at which the data is encoded by the encoder. The rate control sequence may include a number of rate controls arranged in a period that is repeated during encoding and decoding. Either one or both of the encoder and decoder may adaptively select a new rate control sequence based on a variety of operational parameters including operating conditions of the communication system, a change in signal to noise ratio (SNR), etc.
摘要:
An encoding system using a non-binary turbo code and an encoding method thereof is capable of encoding an input signal at a low code rate and at once by spreading the input signal. An input information bit sequence is spread according to the obtained channel code rate and outputting the same in the form of one pair of input sequences, the pair of input sequences is encoded, and a parity bit sequence is generated and an encoded data sequence is generated by multiplexing the parity bit sequence.
摘要:
A Viterbi decoder includes a number of classical Add-Compare-Select units and a number of further Add-Compare-Select unit having a lower complexity butterfly unit (300) having only two adder means, such that the further Add-Compare-Select unit has a butterfly unit (300) comprising: first adder means (310) for receiving a first path metric and a branch metric and for producing at its output the addition thereof; and second adder means (320) for receiving a second path metric and said branch metric and for producing at its output the addition thereof. First comparator means (330) are coupled to receive the output of the second adder means and coupled to receive the first path metric for comparing therebetween. Second comparator means (340) are coupled to receive the output of the first adder means and coupled to receive the second path metric for comparing therebetween. First selection means (350) for selecting between the second adder means output and the first path metric produce a first survivor path metric in dependence on the first comparator means comparison. Second selection means (360) for selecting between the first adder means output and the second path metric signal produce a second survivor path metric in dependence on the second comparator means comparison. Only two adder means are used for processing metric transitions as a second branch metric is identified as having a value of zero.
摘要:
Method and apparatus for Soft In Soft Out Turbo Code Decoder. Metrics are received by a decoder having SISO unit(s). The SISO unit computes all the alpha values corresponding to a block of data. Of the alpha values computed some alpha values, for example alpha values selected at regular intervals, corresponding to checkpoint values are pushed on a checkpoint stack. Alpha values are computed with some being saved as checkpoint values and some being discarded are computed until the computation reaches a predetermined distance from the end of the block of data. Once the predetermined distance is reached all alpha values are pushed on a computation stack. Once all the values corresponding to the values between the predetermined end of the block and the end of the block have been computed and placed in the computation stack they may be combined with beta values to produce extrinsic values. Once all the values have been used from the computation stack the next checkpoint value can be used to compute another computation stack of alpha values. The alpha values can then be combined with beta values to form extrinsic values and the process continued.
摘要:
The communication apparatus comprises a turbo encoder. This turbo encoder includes a first recursive systematic convolutional encoder which convolutionally encodes two information bit sequences to output first redundant data, and a second recursive systematic convolutional encoder which convolutionally encodes the information bit sequences subjected to an interleave process to output second redundant data. The first and second recursive systematic convolutional encoders are encoders which search all connection patterns constituting the encoders and which satisfy optimum conditions that an interval between two bits null1null of a self-terminated pattern is maximum in a specific block length and that a total weight in the pattern having the maximum interval is maximum in the specific block length.
摘要:
A method for parallel concatenated (Turbo) encoding and decoding. Turbo encoders receive a sequence of input data tuples and encode them. The input sequence may correspond to a sequence of an original data source, or to an already coded data sequence such as provided by a Reed-Solomon encoder. A turbo encoder generally comprises two or more encoders separated by one or more interleavers. The input data tuples may be interleaved using a modulo scheme in which the interleaving is according to some method (such as block or random interleaving) with the added stipulation that the input tuples may be interleaved only to interleaved positions having the same modulo-N (where N is an integer) as they have in the input data sequence. If all the input tuples are encoded by all encoders then output tuples can be chosen sequentially from the encoders and no tuples will be missed. If the input tuples comprise multiple bits, the bits may be interleaved independently to interleaved positions having the same modulo-N and the same bit position. This may improve the robustness of the code. A first encoder may have no interleaver or all encoders may have interleavers, whether the input tuple bits are interleaved independently or not. Modulo type interleaving also allows decoding in parallel.
摘要:
Method and apparatus for performing calculations for forward (alpha) and reverse (beta) metrics in a map decoder. The method includes using a min star (min*) operation to receive the metrics and a priori values as well as forming min star structures from individual min star operations. Two separate outputs from the min star operation may be maintained separately throughout all calculations and combined only when a final value is required. In addition input to the min star operators that are available prior to a particular decoder iteration may be combined separately to allow an increase in speed within decoding iterations. The same principals apply to the more popular max star operation.
摘要:
Method and apparatus for Min star calculations in a Map decoder. Min star calculations are performed by a circuit that includes a first circuit that performs an Min(A,B) operation simultaneously with a circuit that calculates a nulllog(1nullenullnullAnullBnull) value. The sign bit of the AnullB calculation is used to select whether A or B is a minimum. The AnullB calculation is also used to select either nulllog(1nullenullnullAnullBnull) or nulllog(1nullenullnullBnullAnull) as the correct calculation. In order to hasten the selection of either nulllog(1nullenullnullAnullBnull) or nulllog(1nullenullnullBnullAnull) as the correct calculation the apparatus does not wait for the AnullB calculation to complete. Any bit of the AnullB calculation between the third bit and final (sign bit) can be used for the selection. If an incorrect value is selected a log saturation circuit may correct the value. In addition an offset may be added nulllog(1nullenullnullAnullBnull) or nulllog(1nullenullnullBnullAnull) to assure that the calculation does not become negative, necessitating the use of an additional sign bit thereby increasing circuit complexity and slowing down the calculation. Additionally the log terms are computed based on a partial result of the AnullB calculation.
摘要:
The certainties of transmitted bits at predetermined locations in time are determined a priori. This information is then used to set the states of a Viterbi decoder to different state metrics in accordance with the certainties of the transmitted bits. High certainty of a transmitted bit results in resetting the states corresponding to that bit to a high state metric. In contrast, low certainty of a transmitted bit results in resetting the states corresponding to that bit to a low state metric. Resetting the states to different state metrics improves the decoding performance and shortens the time required to converge the decoding trellis by eliminating improbable paths.