Device and method for decoding turbo codes
AssigneeLG Electronics Inc.
InventorMyung Sub Sim
Life of this patent
Estimating the term…
Abstract
A method and apparatus for decoding turbo codes using a sliding window method is disclosed. In decoding a received sequence using a Maximum A Posteriori (MAP) algorithm, a learning by a backward processing is performed for a predetermined length and first resultant values of an L-symbol length sequence and second resultant values of a W-symbol length sequence calculated by a backward processing are stored. Third resultant values are calculated by a forward processing. The calculation of the third resultant values overlaps in time with the next learning. A decoding symbol output is determined using the third resultant values and the second resultant values of the previous window.
Claims25
An MAP decoder, comprising:
- a backward processor that calculates first resultant values of an L-symbol long sequence and second resultant values of a W-symbol long sequence;
- a forward processor that calculates third resultant values;
- a memory that stores the second resultant values in a first order and outputs the second resultant values in a second order that is the reverse of the first order;
- and
- an output determination module that determines output values of a received sequence using the third resultant values and the outputted second resultant values of a previous window, wherein
- the L-symbol long sequence and the W-symbol long sequence are portions of the received sequence,
- the first, second, and third resultant values are state probability values,
- the calculations of the first and third resultant values overlap in time, and
- the calculation of the first resultant values for the next window is performed after the calculation of the second resultant values is completed;
- where L and W are integers.
A method of performing an MAP turbo decoding, comprising:
- calculating first resultant values of an L-symbol long sequence;
- calculating second resultant values of a W-symbol long sequence;
- calculating third resultant values of the W-symbol long sequence;
- storing the second resultant values in a first order and outputting the stored second resultant values in a second order that is the reverse of the first order;
- and
- outputting decoded values of a received sequence using the third resultant values and the outputted second resultant values of a previous window, wherein
- the L-symbol long sequence and W-symbol long sequence are portions of the received sequence,
- the first, second, and third resultant values are state probability values,
- the calculations of the first and third resultant values overlap in time, and
- the calculation of the first resultant values for the next window is performed after the calculation of the second resultant values is completed;
- where W and L are integers.
A method of turbo-decoding a received sequence using a Maximum A Posteriori (MAP) algorithm, comprising:
- performing a learning by a backward processor for a predetermined length;
- calculating and storing first resultant values obtained by the backward processor;
- calculating second resultant values by a forward processor that overlaps in time with the next learning;
- and
- determining a decoding symbol output using the second resultant values and the stored first resultant values of a previous window,
- wherein if a processing length of the backward processor is W, and a length of a received bit sequence is K, a length of a first data block W0 to be processed is determined by the equation KmodW;
- where W, W0, and K are integers.
A Maximum A Posteriori (MAP) decoder in a receiving end that performs an iterative decoding, the MAP decoder comprising:
- a backward processor for learning for a predetermined length L and calculating first state probability values for a window length of W0 of a received sequence from W0 to 0 or for a window length W of a received sequence from W0+(N+1)W to W0+NW after the predetermined length L;
- a forward processor for calculating second state probability values for a window length of W0 of the received sequence from 0 to W0 or for a window length of W from W0+NW, wherein N, W, W0, and L are integers;
- a memory means for storing in a first order the first state probability values and outputting in a reverse of the first order the state probability values;
- and
- an output determination means for determining output values of the received sequence using first state probability values and second state probability values, wherein W0 is determined based on a code block size and the window length W.
A method of performing a Maximum A Posteriori (MAP) turbo decoding in a receiving end that performs an iterative decoding, the method comprising:
- learning for a predetermined length L and calculating first state probability values for a window length of W0 of a received sequence from W0 to 0 or for a window length W of a received sequence from W0+(N+1)W to W0+NW after the predetermined length L;
- calculating second state probability values for a window length of W0 of the received sequence from 0 to W0 or for a window length of W from W0 to W0+(N+1)W, wherein N, W, W0, and L are integers;
- storing in a first order the first state probability values and outputting in a reverse of the first order the first state probability values;
- and
- determining output values of the received sequence using first state probability values and second state probability values, wherein W0 is determined based on a code block size and the window length W.
The method of turbo-decoding a received sequence using a Maximum A Posteriori (MAP) algorithm, the method comprising:
- performing a backward processing by learning for a predetermined length L and calculating first resultant values for a first processing length W0 or a second processing length W after the predetermined length L;
- storing the first resultant values;
- performing a forward processing by calculating second resultant values for a first processing length W0 or the second processing length;
- determining a decoding output using the first resultant values and the second resultant values, wherein the W0 is a remainder obtained by dividing a received sequence by the second processing length W, wherein W, W0, and are integers.
Dependencies are inferred from the claim text.