Apparatus and method for high throughput unified turbo decoding
AssigneeQUALCOMM Incorporated
InventorsInsung Kang, Ju Won Park, Brian C. Bannister
Life of this patent
Estimating the term…
Abstract
An apparatus and method for high throughput unified turbo decoding comprising loading data from a first data window; computing a first forward state metric using the data from the first data window; storing the first forward state metric in a memory; computing a first reverse state metric using the data from the first data window; storing the first reverse state metric in the memory; and computing the log likelihood ratio (LLR) of the first forward state metric and the first reverse state metric. In one aspect, the above-mentioned steps are repeated with data from a second data window. In another aspect, extrinsic information for the first data window associated with the unified turbo decoding is computed.
Claims91
A method for high throughput unified turbo decoding comprising:
- loading data from a first data window;
- computing a first forward state metric using the data from the first data window;
- storing the first forward state metric in a memory;
- computing a first reverse state metric using the data from the first data window;
- storing the first reverse state metric in the memory;
- computing a log likelihood ratio (LLR) of the first data window using the first forward state metric and the first reverse state metric;
- loading data from a last data window;
- transferring the first reverse state metric from the first data window to the last data window;
- and
- computing extrinsic information for the first data window associated with the unified turbo decoding,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A receiver for high throughput unified turbo decoding comprising:
- an antenna for receiving an electromagnetic wave comprising a received signal;
- a receiver front-end for generating a digital signal from the received signal;
- a demodulator coupled to the receiver front-end for demodulating the digital signal and outputting a demodulated bit stream;
- and
- a turbo decoder for performing the following:
- loading data from a first data window of the demodulated bit stream;
- computing a first forward state metric using the data from the first data window;
- storing the first forward state metric in a memory;
- computing a first reverse state metric using the data from the first data window;
- storing the first reverse state metric in the memory;
- computing a log likelihood ratio (LLR) of the first data window using the first forward state metric and the first reverse state metric;
- loading data from a last data window of the demodulated bit stream;
- transferring the first reverse state metric from the first data window to the last data window;
- and
- computing extrinsic information for the first data window associated with the unified turbo decoding,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A receiver for high throughput unified turbo decoding comprising:
- means for receiving an electromagnetic wave comprising a received signal;
- means for generating a digital signal from the received signal;
- means for demodulating the digital signal and outputting a demodulated bit stream;
- and
- means for performing the following:
- loading data from a first data window of the demodulated bit stream;
- computing a first forward state metric using the data from the first data window;
- storing the first forward state metric in a memory;
- computing a first reverse state metric using the data from the first data window;
- storing the first reverse state metric in the memory;
- computing a log likelihood ratio (LLR) of the first data window using the first forward state metric and the first reverse state metric;
- loading data from a last data window of the demodulated bit stream;
- transferring the first reverse state metric from the first data window to the last data window;
- and
- computing extrinsic information for the first data window associated with the unified turbo decoding,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A non-transitory computer-readable medium storing a computer program, wherein execution of the computer program is for:
- loading data from a first data window;
- computing a first forward state metric using the data from the first data window;
- storing the first forward state metric in a memory;
- computing a first reverse state metric using the data from the first data window;
- storing the first reverse state metric in the memory;
- computing a log likelihood ratio (LLR) of the first data window using the first forward state metric and the first reverse state metric;
- loading data from a last data window;
- transferring the first reverse state metric from the first data window to the last data window;
- and
- computing extrinsic information for the first data window associated with unified turbo decoding,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A method for high throughput unified turbo decoding comprising:
- loading data from a previous data window, wherein the previous data window occurs previous in time to a current data window;
- loading data from the current data window;
- loading data from a next data window, wherein the next data window occurs next in time to the current data window;
- computing a current data window forward state metric using the data from the current data window;
- storing the current data window forward state metric in a memory;
- transferring the computed current data window forward state metric to the next data window to be used as a beginning forward state for computing a forward state metric in the next data window;
- computing a current data window reverse state metric using the data from the current data window;
- storing the current data window reverse state metric in the memory;
- transferring the computed current data window reverse state metric to the previous data window to be used as a beginning reverse state for computing a reverse state metric in the previous data window;
- computing a log likelihood ratio (LLR) of the current data window using the current data window forward state metric and the current data window reverse state metric;
- and
- computing extrinsic information for the current data window,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct,
- rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A method for high throughput unified turbo decoding comprising:
- loading data from a first data window, wherein the first data window occurs previous in time to a last data window;
- loading data from the last data window;
- computing a first data window reverse state metric using the data from the first data window;
- storing the first data window reverse state metric in a memory;
- transferring the computed first data window reverse state metric to the last data window to be used as a beginning reverse state for computing a last data window reverse state metric;
- computing a last data window forward state metric using the data from the last data window;
- storing the last data window forward state metric in the memory;
- transferring the computed last data window forward state metric to the first data window to be used as a beginning forward state for computing a first data window forward state metric;
- and
- computing extrinsic information for the first data window associated with the unified turbo decoding,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct,
- rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A receiver for high throughput unified turbo decoding comprising:
- an antenna for receiving an electromagnetic wave comprising a received signal;
- a receiver front-end for generating a digital signal from the received signal;
- a demodulator coupled to the receiver front-end for demodulating the digital signal and outputting a demodulated bit stream;
- and
- a turbo decoder for performing the following:
- loading data from a previous data window of the demodulated bit stream, wherein the previous data window occurs previous in time to a current data window;
- loading data from the current data window of the demodulated bit stream;
- loading data from a next data window of the demodulated bit stream, wherein the next data window occurs next in time to the current data window;
- computing a current data window forward state metric using the data from the current data window;
- transferring the computed current data window forward state metric to the next data window to be used as a beginning forward state for computing a forward state metric in the next data window;
- computing a current data window reverse state metric using the data from the current data window;
- transferring the computed current data window reverse state metric to the previous data window to be used as a beginning reverse state for computing a reverse state metric in the previous data window;
- computing a log likelihood ratio (LLR) of the current data window using the current data window forward state metric and the current data window reverse state metric;
- and
- computing extrinsic information for the current data window, wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A receiver for high throughput unified turbo decoding comprising:
- an antenna for receiving an electromagnetic wave comprising a received signal;
- a receiver front-end for generating a digital signal from the received signal;
- a demodulator coupled to the receiver front-end for demodulating the digital signal and outputting a demodulated bit stream;
- and
- a turbo decoder for performing the following:
- loading data from a first data window of the demodulated bit stream, wherein the first data window occurs previous in time to a last data window;
- loading data from the last data window of the demodulated bit stream;
- computing a first data window reverse state metric using the data from the first data window;
- transferring the computed first data window reverse state metric to the last data window to be used as a beginning reverse state for computing a last data window reverse state metric;
- computing a last data window forward state metric using the data from the last data window;
- transferring the computed last data window forward state metric to the first data window to be used as a beginning forward state for computing a first data window forward state metric;
- and
- computing extrinsic information for the first data window associated with the unified turbo decoding,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A receiver for high throughput unified turbo decoding comprising:
- means for loading data from a previous data window, wherein the previous data window occurs previous in time to a current data window;
- means for loading data from the current data window;
- means for loading data from a next data window, wherein the next data window occurs next in time to the current data window;
- means for computing a current data window forward state metric using the data from the current data window;
- means for transferring the computed current data window forward state metric to the next data window to be used as a beginning forward state for computing a forward state metric in the next data window;
- means for computing a current data window reverse state metric using the data from the current data window;
- means for transferring the computed current data window reverse state metric to the previous data window to be used as a beginning reverse state for computing a reverse state metric in the previous data window;
- means for computing a log likelihood ratio (LLR) of the current data window using the current data window forward state metric and the current data window reverse state metric;
- and
- means for computing extrinsic information for the current data window,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A receiver for high throughput unified turbo decoding comprising:
- loading data from a first data window, wherein the first data window occurs previous in time to a last data window;
- loading data from the last data window;
- computing a first data window reverse state metric using the data from the first data window;
- storing the first data window reverse state metric in a memory;
- transferring the computed first data window reverse state metric to the last data window to be used as a beginning reverse state for computing a last data window reverse state metric;
- computing a last data window forward state metric using the data from the last data window;
- storing the last data window forward state metric in the memory;
- transferring the computed last data window forward state metric to the first data window to be used as a beginning forward state for computing a first data window forward state metric;
- and
- computing extrinsic information for the first data window associated with the unified turbo decoding,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct,
- rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A non-transitory computer-readable medium storing a computer program, wherein execution of the computer program is for:
- loading data from a previous data window, wherein the previous data window occurs previous in time to a current data window;
- loading data from the current data window;
- loading data from a next data window, wherein the next data window occurs next in time to the current data window;
- computing a current data window forward state metric using the data from the current data window;
- transferring the computed current data window forward state metric to the next data window to be used as a beginning forward state for computing a forward state metric in the next data window;
- computing a current data window reverse state metric using the data from the current data window;
- transferring the computed current data window reverse state metric to the previous data window to be used as a beginning reverse state for computing a reverse state metric in the previous data window;
- computing a log likelihood ratio (LLR) of the current data window using the current data window forward state metric and the current data window reverse state metric;
- and
- computing extrinsic information for the current data window,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
A non-transitory computer-readable medium storing a computer program, wherein execution of the computer program is for:
- loading data from a first data window, wherein the first data window occurs previous in time to a last data window;
- loading data from the last data window;
- computing a first data window reverse state metric using the data from the first data window;
- transferring the computed first data window reverse state metric to the last data window to be used as a beginning reverse state for computing a last data window reverse state metric;
- computing a last data window forward state metric using the data from the last data window;
- transferring the computed last data window forward state metric to the first data window to be used as a beginning forward state for computing a first data window forward state metric;
- and
- computing extrinsic information for the first data window,
- wherein the extrinsic information is defined by
- λ
- e
- i
-
- (
- t
- )
- =
- λ
- i
-
- (
- t
- )
- -
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- -
- r
- t
- T
- ·
- (
- s
- t
- i
- -
- s
- t
- 0
- )
- ,
- where λei(t) is the extrinsic information, λi(t) is a quaternary LLR,
- log
-
- (
- Pr
-
- (
- c
- t
- =
- i
- )
- Pr
-
- (
- c
- t
- =
- 0
- )
- )
- is an input extrinsic LLR defined by a logarithm of a ratio of probabilities for systematic symbol ct, rtT·(sti−st0) is a systematic LLR defined by a vector dot product between systematic bit LLR vector rt and a difference between two systematic bit vectors sti and st0.
Dependencies are inferred from the claim text.