IP Library Granted Patent US 7,945,842
Granted Patent B2
US 7,945,842 · App. 11/764,876 · Granted May 17, 2011

Method and apparatus for rateless source coding with/without decoder side information

Assignee: International Business Machines Corporation
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 7,945,842
App. No.
11/764,876
Granted
May 17, 2011
Kind
B2
Abstract

A method of and system for rateless source coding are disclosed. The method comprises the steps of providing a set of low-density parity check (LDPC) codes, each of which accepts a range of data input lengths and a range of target compression rates; identifying a data input having a data input length; and identifying a desired compression rate. The method comprises the further steps of selecting one of said LDPC codes based on said data input length and desired compression rate; encoding the data input, using the selected LDPC code, to generate a sequence of data values; and puncturing some of said encoded data values to achieve the desired compression rate. Preferably, the encoding step includes the steps of generating a syndrome and a parity sequence from the data input, puncturing the generated parity sequence, and mixing a remaining portion of the data input with the punctuated parity sequence.

Claims (47)

1. A method of rateless source coding, comprising the steps of:

providing a set of low-density parity check (LDPC) codes, each of said codes accepting a range of data input lengths and a range of target compression rates;

identifying a data input having a data input length, and identifying a desired compression rate;

selecting one of said LDPC codes based on said data input length and desired compression rate;

encoding the data input, using the selected LDPC code, to generate an encoded sequence of data values; and

puncturing some of said data values to maintain the compression efficiency of the selected LDPC code.

2. A method according to claim 1 , wherein the encoding step includes the step of generating a syndrome sequence and a parity sequence from the data input.

3. A method according to claim 2 , wherein the encoding step includes the further step of mixing a remaining portion of the data input with the generated parity sequence according to a predefined arithmetic operation.

4. A method according to claim 2 , wherein the parity sequence includes a multitude of parity bits, and the puncturing step includes the step of puncturing the parity bits according to the desired compression rate.

5. A method according to claim 4 , comprising the further step of forming an output bit stream from the generated syndrome sequence and the punctured parity bit sequence conforming to a predefined syntax.

6. A method according to claim 5 , comprising the further steps of:

applying said output bit stream to a decoder; and

decoding said output bit stream using said decoder.

7. A method according to claim 6 , comprising the further steps of:

modeling the parity bits that are punctured as erasures;

and using said erasure model to decode said output bit stream.

8. A method according to claim 6 , wherein the decoding step includes the steps of:

providing the decoder with side information; and

using said side information to decode said output bit stream.

9. A method according to claim 6 , wherein the decoding step includes the step of decoding said output bit stream without providing the decoder with side information.

10. A method according to claim 6 , wherein the decoding step includes the steps of:

providing the decoder with said selected one of the LDPC codes; and

decoding said output stream using said selected one of said LDPC codes.

11. A method according to claim 10 , wherein the step of providing the decoder with said selected one of the LDPC codes includes the step of providing the decoder with said set of LDPC codes.

12. A system for rateless source coding comprising:

a set of low-density parity check (LDPC) codes, each of said codes accepting a range of data input lengths and a range of target compression rates;

a code selector for receiving a first value identifying a data input length and a second value identifying a desired compression rate, and for selecting one of said LDPC codes based on said first and second values;

a generator for receiving an input data sequence and the selected LDPC code, and for encoding the data sequence using said selected LDPC code by generating a syndrome sequence and a parity sequence from said data sequence; and

a puncturing unit for puncturing the parity sequence to maintain a target compression rate.

13. A system according to claim 12 , further comprising a mixing unit for mixing the parity sequence with a portion of the input data by using a predefined arithmetic operation.

14. A system according to claim 13 , further comprising a multiplexor for forming an output bit steam from the generated syndrome sequence and the punctured parity bit sequence conforming to a predefined syntax.

15. A system according to claim 14 , further comprising:

a decoder for decoding said output bit stream;

a selector for providing the decoder with the selected LDPC code; and

wherein the decoder decodes said output bit stream using said selected LDPC code.

16. A system according to claim 15 , wherein the decoder decodes said output bit stream with/without decoder side information.

17. A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for rateless source coding, said method steps comprising:

providing a set of low-density parity check (LDPC) codes, each of said codes accepting a range of data input lengths and a range of target compression rates;

identifying a data input having a data input length, and identifying a desired compression rate;

selecting one of said LDPC codes based on said data input length and desired compression rate;

encoding the data input, using the selected LDPC code, to generate an encoded sequence of data values; and

puncturing some of said data values to maintain the compression efficiency of the selected LDPC code.

18. A program storage device according to claim 17 , wherein the encoding step includes the steps of:

generating a syndrome sequence and a parity sequence from the data input; and

mixing a remaining portion of the data input with the generated parity sequence according to a predefined arithmetic operation.

19. A program storage device according to claim 18 , wherein the parity sequence includes a multitude of parity bits, and the puncturing step includes the step of puncturing the parity bits according to the desired compression rate.

20. A program storage device according to claim 19 , comprising the further step of forming an output bit stream from the generated syndrome sequence and the punctured parity bit sequence conforming to a predefined syntax.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded May 12, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES U.S. INC.
Reel/Frame 056987/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 20, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES INC.
Reel/Frame 054636/0001 →
SECURITY AGREEMENT Recorded Nov 29, 2018
From: GLOBALFOUNDRIES INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 049490/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2015
From: GLOBALFOUNDRIES U.S. 2 LLC; GLOBALFOUNDRIES U.S. INC.
To: GLOBALFOUNDRIES INC.
Reel/Frame 036779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2015
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GLOBALFOUNDRIES U.S. 2 LLC
Reel/Frame 036550/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2007
From: HE, DAKE; JAGMOHAN, ASHISH; JIANG, JING
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 019446/0628 →
Continuity (1)
Related Publication 20080320363A1 · Dec 25, 2008