IP Library Granted Patent US 9,037,942
Granted Patent B2
US 9,037,942 · App. 13/749,187 · Granted May 19, 2015

Modified joint source channel decoder

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,037,942
App. No.
13/749,187
Granted
May 19, 2015
Kind
B2
Abstract

A turbo decoder is configured to perform iterative decoding of data bits of a data packet received via a source signal to converge on a “soft” decision representation for each data bit of the data packet. The turbo decoder includes both an interleaved decoder and a non-interleaved decoder that work collaboratively to refine and improve the “soft” decision of each of the originally-received data bits. The interleaved decoder and the non-interleaved decoder are injected with extrinsic information based on at least a-priori information of the source signal. The turbo decoder avoids positive feedback of the a-priori information regarding the source signal from one decoder to the other by subtracting out extrinsic information based on the a-priori information that is injected into a decoder from the “soft” decision(s) determined by the decoder.

Claims (63)

1. A method for iteratively decoding a source signal in a system including a first Maximum A-posteriori Probability (MAP) decoder, a second MAP decoder, and analysis logic, the method comprising:

combining a first extrinsic value provided by the first MAP decoder and a second extrinsic value that is based on a-priori information regarding the source signal to generate a first combined value, the second extrinsic value being provided by the analysis logic;

providing the first combined value to the second MAP decoder; and

providing a third extrinsic value by the second MAP decoder that is based on at least an interleaved version of one or more data bits of the source signal, one or more first parity bits of the source signal that are derived from the interleaved version of the one or more data bits, and the first combined value.

2. The method of claim 1 , further comprising:

combining the third extrinsic value provided by the second MAP decoder and a fourth extrinsic value that is based on a-priori information regarding the source signal to generate a second combined value, the fourth extrinsic value being provided by the analysis logic;

providing the second combined value to the first MAP decoder; and

providing the first extrinsic value by the first MAP decoder, the first extrinsic value being based on at least a non-interleaved version of the one or more data bits of the source signal, one or more second parity bits of the source signal that are derived from the non-interleaved version of the one or more data bits, and the second combined value.

3. The method of claim 2 , wherein combining the third extrinsic value provided by the second MAP decoder and the fourth extrinsic value that is based on a-priori information of the source signal comprises:

adding the fourth extrinsic value provided by the analysis block to the third extrinsic value provided by the second MAP decoder.

4. The method of claim 2 , further comprising:

providing one or more soft decision values by the second MAP decoder, each of the one or more soft decision values indicating a likelihood that the interleaved version of the respective data bit of the one or more data bits represents a respective specified binary value, the respective specified binary value being a logical one or a logical zero;

modifying the one or more soft decision values provided by the second MAP decoder to generate one or more respective modified soft decision values using the second extrinsic value; and

generating the fourth extrinsic value by the analysis logic based on at least the a-priori information of the source signal and the one or more respective modified soft decision values.

5. The method of claim 4 , further comprising:

de-interleaving the one or more soft decision values, wherein modifying the one or more soft decision values comprises:

modifying the one or more soft decision values in response to de-interleaving the one or more soft decision values.

6. The method of claim 4 , wherein modifying the one or more soft decision values provided by the second MAP decoder comprises:

subtracting the second extrinsic value provided by the analysis logic from a respective soft decision value of the one or more soft decision values provided by the second MAP decoder.

7. The method of claim 2 , further comprising:

providing one or more soft decision values by the first MAP decoder, each of the one or more soft decision values indicating a likelihood that the non-interleaved version of the respective data bit of the one or more data bits represents a respective specified binary value, the respective specified binary value being a logical one or a logical zero;

modifying the one or more soft decision values provided by the first MAP decoder to generate one or more respective modified soft decision values using the fourth extrinsic value; and

generating the second extrinsic value by the analysis logic based on at least the a-priori information of the source signal and the one or more respective modified soft decision values.

8. The method of claim 7 , wherein modifying the one or more soft decision values provided by the first MAP decoder comprises:

subtracting the fourth extrinsic value provided by the analysis logic from a respective soft decision value of the one or more soft decision values provided by the first MAP decoder.

9. The method of claim 1 , wherein providing the first combined value to the second MAP decoder comprises:

interleaving the first combined value; and

providing the interleaved, first combined value to the second MAP decoder; and

wherein providing the third extrinsic value by the second MAP decoder comprises:

de-interleaving the third extrinsic value; and

providing the de-interleaved, third extrinsic value.

10. The method of claim 1 , wherein combining the first extrinsic value provided by the first MAP decoder and the second extrinsic value that is based on a-priori information regarding the source signal comprises:

adding the second extrinsic value provided by the analysis block to the first extrinsic value provided by the first MAP decoder.

11. A turbo decoder, comprising:

a first MAP decoder;

a second MAP decoder coupled to the first MAP decoder;

analysis logic coupled to the first MAP decoder and the second MAP decoder; and

first addition logic configured to:

combine a first extrinsic value provided by the first MAP decoder and a second extrinsic value that is based on a-priori information regarding a source signal received by the turbo decoder to generate a first combined value, the analysis logic being configured to provide the second extrinsic value; and

provide the first combined value to the second MAP decoder, the second MAP decoder being configured to provide a third extrinsic value that is based on at least an interleaved version of one or more data bits of the source signal, one or more first parity bits of the source signal that are derived from the interleaved version of the one or more data bits, and the first combined value.

12. The turbo decoder of claim 11 , further comprising:

second addition logic configured to:

combine the third extrinsic value provided by the second MAP decoder and a fourth extrinsic value that is based on a-priori information regarding the source signal to generate a second combined value, the fourth extrinsic value being provided by the analysis logic; and

provide the second combined value to the first MAP decoder; and

wherein the first MAP decoder is configured to provide the first extrinsic value, the first extrinsic value being based on at least a non-interleaved version of the one or more data bits of the source signal, one or more second parity bits of the source signal that are derived from the non-interleaved version of the one or more data bits, and the second combined value.

13. The turbo decoder of claim 12 , wherein the second addition logic is configured to add the fourth extrinsic value provided by the analysis block to the third extrinsic value provided by the second MAP decoder to generate the second combined value.

14. The turbo decoder of claim 12 , wherein the second MAP decoder is configured to provide one or more soft decision values, each of the one or more soft decision values indicating a likelihood that the interleaved version of the respective data bit of the one or more data bits represents a respective specified binary value, the respective specified binary value being a logical one or a logical zero;

wherein the turbo decoder further comprises:

subtraction logic configured to modify the one or more soft decision values provided by the second MAP decoder to generate one or more respective modified soft decision values using the second extrinsic value; and

wherein the analysis logic is configured to generate the fourth extrinsic value based on at least the a-priori information of the source signal and the one or more respective modified soft decision values.

15. The turbo decoder of claim 14 , further comprising:

de-interleaver logic configured to de-interleave the one or more soft decision values;

wherein the subtraction logic is configured to modify the one or more soft decision values in response to the one or more soft decision values being de-interleaved.

16. The turbo decoder of claim 14 , wherein the subtraction logic is configured to subtract the second extrinsic value provided by the analysis logic from a respective soft decision value of the one or more soft decision values provided by the second MAP decoder to generate the one or more respective modified soft decision values.

17. The turbo decoder of claim 12 , wherein the first MAP decoder is configured to provide one or more soft decision values, each of the one or more soft decision values indicating a likelihood that the non-interleaved version of the respective data bit of the one or more data bits represents a respective specified binary value, the respective specified binary value being a logical one or a logical zero;

wherein the turbo decoder further comprises:

subtraction logic configured to modify the one or more soft decision values provided by the first MAP decoder to generate one or more respective modified soft decision values using the fourth extrinsic value; and

wherein the analysis logic is configured to generate the second extrinsic value based on at least the a-priori information of the source signal and the one or more respective modified soft decision values.

18. The turbo decoder of claim 17 , wherein the subtraction logic is configured to subtract the fourth extrinsic value provided by the analysis logic from a respective soft decision value of the one or more soft decision values provided by the first MAP decoder to generate the one or more respective modified soft decision values.

19. The turbo decoder of claim 11 , wherein the first addition logic is configured to add the second extrinsic value provided by the analysis block to the first extrinsic value provided by the first MAP decoder to generate the first combined value.

20. A non-transitory computer readable storage medium having computer program instructions embodied in said computer readable storage medium for enabling a processor to iteratively decode a source signal in a system including a first Maximum A-posteriori Probability (MAP) decoder, a second MAP decoder, and analysis logic, the computer program instructions including instructions executable to perform operations comprising:

causing a first extrinsic value provided by the first MAP decoder and a second extrinsic value that is based on a-priori information regarding the source signal to be combined to generate a first combined value, the second extrinsic value being provided by the analysis logic; and

causing the second MAP decoder to provide a third extrinsic value that is based on at least an interleaved version of one or more data bits of the source signal, one or more first parity bits of the source signal that are derived from the interleaved version of the one or more data bits, and the first combined value.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2013
From: ZOPF, ROBERT W.
To: BROADCOM CORPORATION
Reel/Frame 029849/0352 →