IP Library Granted Patent US 8,301,965
Granted Patent B2
US 8,301,965 · App. 12/212,180 · Granted Oct 30, 2012

Method and apparatus for cascade encoding

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 8,301,965
App. No.
12/212,180
Granted
Oct 30, 2012
Kind
B2
Abstract

A cascade encoding method and apparatus are applied to a handheld television system or other fields. The method includes the following: A. Reed-Solomon (RS) encoding is performed on inputted Medium Access Control (MAC) packets, and coded MAC packets are outputted; and B. Low density parity check code (LDPC) encoding is performed on the coded MAC packets, and LDPC encoding blocks are outputted. The apparatus includes an RS coder and an LDPC coder. The RS encoding and LDPC encoding are cascaded to encode an inputted code flow, so as to reduce an error rate. Meanwhile, bytes in one RS encoding data block are dispersed into different LDPC blocks to be encoded through byte interleaving, thereby sufficiently utilizing error code characteristics of the RS encoding and the LDPC encoding for decoding, and improving error correction capability of a system.

Claims (44)

1. A cascade encoding method, comprising:

A. performing Reed-Solomon (RS) encoding on inputted Medium Access Control (MAC) packets, and outputting coded MAC packets; and

B. performing low density parity check code (LDPC) encoding on the coded MAC packets, and outputting LDPC encoding blocks;

wherein the step B further comprises:

B1. performing byte interleaving on the coded MAC packets and outputting LDPC blocks to be encoded;

B2. performing the LDPC encoding on the LDPC blocks to be encoded, and outputting the LDPC encoding blocks.

2. The cascade encoding method according to claim 1 , wherein the byte interleaving takes a byte as a basic unit.

3. The cascade encoding method according to claim 1 , wherein B1 further comprises:

S11. renumbering bytes in nTotaIMACNum coded MAC packets participating in the interleaving, and generating a numbered byte sequence, wherein the number of the kth numbered byte in the nth coded MAC packet is n*nByteNumPerMAC+k;

S12. selecting bytes from the numbered byte sequence to constitute the LDPC blocks to be encoded, the qth byte in the pth LDPC block to be encoded is corresponding to the rth numbered byte in the numbered byte sequence, wherein r=mod (nTotaILDPCNum*q+p+nRand, nTotalByteNum);

wherein n=0˜(nTotaIMACNum−1), k=0˜(nByteNumPerMAC−1), p=0˜(nTotaILDPCNum−1), q=0˜(nByteNumPerLDPC−1), mod is modulus operation, nTotaIMACNum is the number of the coded MAC packets participating in the byte interleaving for once, nByteNumPerMAC is the number of bytes in each of the coded MAC packets; nTotaILDPCNum is the number of LDPC blocks to be encoded generated in one time of the byte interleaving; nTotalByteNum is the total number of bytes in the coded MAC packets participating in the byte interleaving for once; and nRand is a random factor introduced during a process of generating the LDPC blocks to be encoded.

4. The cascade encoding method according to claim 3 , wherein the random factor nRand is a constant, or an index number of a group frame currently containing the nTotaIMACNum coded MAC packets.

5. The cascade encoding method according to claim 4 , wherein the group frame comprises 8 data frames.

6. The cascade encoding method according to claim 1 , wherein B1 further comprises:

S21. cascading the nTotaIMACNum coded MAC packets in sequence to form a combined data block having a length of nTotaIMACNum*nByteNumPerMAC bytes;

S22. rotating the combined data block left or right by nRand bits in a unit of byte;

S23. generating an interleaving matrix with nTotaILDPCNum rows and nByteNumPerLDPC columns, wherein each matrix element is one byte, and the rotated combined data block is sequentially filled into the interleaving matrix in a unit of byte in a column sequence; and

S24. extracting nByteNumPerLDPC bytes in the mth row of the interleaving matrix with the filled bytes as the LDPC blocks to be encoded;

wherein, m=0˜(nTotaILDPCNum−1), mod is modulus operation, nTotaIMACNum is the number of the coded MAC packets participating in the byte interleaving for once, nByteNumPerMAC is the number of bytes of each of the coded MAC packets, nTotaILDPCNum is the number of the LDPC blocks to be encoded generated in one time of the byte interleaving, nByteNumPerLDPC is the number of bytes in each of the LDPC blocks to be encoded, and nRand is a random factor.

7. The cascade encoding method according to claim 1 , wherein the RS encoding is an 8-bit RS encoding.

8. The cascade encoding method according to claim 7 , wherein the 8-bit RS encoding is (208, 194, 14).

9. The cascade encoding method according to claim 1 , wherein the LDPC encoding is 3744 points or 7488 points, and a rate is 1/2, 2/3, or 3/4.

10. A cascade encoding apparatus, comprising:

an RS coder, adapted to perform RS encoding on inputted MAC packets and output coded MAC packets; and

an LDPC coder, adapted to perform LDPC encoding on the coded MAC packets and output LDPC encoding blocks;

wherein the LDPC coder further comprises:

an RS byte interleaving unit, adapted to perform byte interleaving on the coded MAC packets and output LDPC blocks to be encoded; and

an LDPC encoding unit, adapted to perform the LDPC encoding on the received LDPC blocks to be encoded and output the LDPC encoding blocks.

11. The cascade encoding apparatus according to claim 10 , wherein the byte interleaving takes a byte as a basic unit.

12. The cascade encoding apparatus according to claim 10 , wherein the RS byte interleaving unit further comprises:

a byte numbering sub-unit, adapted to renumber bytes in the nTotaIMACNum coded MAC packets participating in the interleaving and generate a numbered byte sequence, wherein the number of the kth numbered byte in the nth coded MAC packet is n*nByteNumPerMAC+k; and

an LDPC block to be encoded generating sub-unit, adapted to select bytes from the numbered byte sequence to constitute the LDPC blocks to be encoded, wherein the qth byte in the pth LDPC block to be encoded is corresponding to the rth numbered byte in the numbered byte sequence, wherein r=mod(nTotaILDPCNum*q+p+nRand, nTotalByteNum);

wherein n=0˜(nTotaIMACNum−1), k=0˜(nByteNumPerMAC−1), p=0˜(nTotaILDPCNum−1), q=0˜(nByteNumPerLDPC−1), mod is modulus operation, nTotaIMACNum is the number of the coded MAC packets participating in the byte interleaving for once, nByteNumPerMAC is the number of bytes in each of the coded MAC packets; nTotaILDPCNum is the number of the LDPC blocks to be encoded generated in one time of byte interleaving; nTotalByteNum is the total number of bytes in the coded MAC packets participating in the byte interleaving for once; and nRand is a random factor introduced during a process of generating the LDPC blocks to be encoded.

13. The cascade encoding apparatus according to claim 12 , wherein the random factor nRand is a constant, or an index number of a group frame currently containing the nTotaIMACNum coded MAC packets.

14. The cascade encoding apparatus according to claim 13 , wherein the group frame further comprises eight (8) data frames, and each of the data frames include eight (8) Orthogonal Frequency Division Multiplexing (OFDM) symbols.

15. The cascade encoding apparatus according to claim 10 , wherein the RS byte interleaving unit further comprises:

an MAC packet cascading sub-unit, adapted to cascade the nTotaIMACNum coded MAC packets in sequence to form a combined data block having a length of nTotaIMACNum*nByteNumPerMAC bytes;

a byte rotating sub-unit, adapted to rotate the combined data block left or right by nRand bits in a unit of byte;

a byte matrix generating and filling sub-unit, adapted to generate an interleaving matrix with nTotaILDPCNum rows and nByteNumPerLDPC columns, wherein each matrix element is one byte, and the rotated combined data block is sequentially filled into the interleaving matrix in a unit of byte in a column sequence; and

an LDPC block to be encoded extracting and generating sub-unit, adapted to extract nByteNumPerLDPC bytes in the mth row of the interleaving matrix with the filled bytes as the LDPC blocks to be encoded;

wherein, m=0˜(nTotaILDPCNum−1), mod is modulus operation, nTotaIMACNum is the number of the coded MAC packets participating in the byte interleaving for once, nByteNumPerMAC is the number of bytes of each of the coded MAC packets, nTotaILDPCNum is the number of the LDPC blocks to be encoded generated in one time of the byte interleaving, nByteNumPerLDPC is the number of bytes in each of the LDPC blocks to be encoded, and nRand is a random factor.

16. The cascade encoding apparatus according to claim 11 , wherein the RS encoding is an 8-bit RS encoding.

17. The cascade encoding apparatus according to claim 16 , wherein the 8-bit RS encoding is (208, 194, 14).

18. The cascade encoding apparatus according to claim 10 , wherein the LDPC encoding is 3744 points or 7488 points, and a rate is 1/2, 2/3, or 3/4.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2021
From: HUAWEI TECHNOLOGIES CO., LTD.
To: HONOR DEVICE CO., LTD.
Reel/Frame 055919/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2008
From: WU, GENGSHI; WU, SHAOQUAN; LI, FENG
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 021544/0074 →