IP Library Granted Patent US 11,398,840
Granted Patent B2
US 11,398,840 · App. 17/099,051 · Granted Jul 26, 2022

System, method, and apparatus for interleaving data

Inventor: Pierre Humblet (Cambridge, MA)
Assignee: Acacia Communications, Inc.
H03M13/2785H03M13/251H03M13/271H03M13/276H04L1/0041H04L1/0071H04L27/34
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 11,398,840
App. No.
17/099,051
Granted
Jul 26, 2022
Kind
B2
Abstract

A method, system, and apparatus for interleaving data including creating a buffer, writing input data, and reading output data out of the buffer.

Claims (797)

1. A method for interleaving data comprising:

creating a buffer having 172,032 bits arranged into an N by 8 array of 16 by 16 blocks, wherein N is an even number; wherein the buffer is partitioned into at least 2 subsets of rows;

populating data into each of the 16 by 16 blocks of arrays according to a table; wherein the table specifies the location for each bit in the 16 by 16 block; and

reading data out of the buffer in groups of 8 bits; wherein each of the groups of 8 bits are taken in turn from each subset, in a column by column ordering.

2. The method of claim 1 wherein the 16 by 16 table includes values that form a Latin square.

3. The method of claim 1 wherein the table is given by the following table:

0, 0

1, 1

2, 2

3, 3

4, 4

5, 5

6, 6

7, 7

8, 8

9, 9

10, 10

11, 11

12, 12

13, 13

14, 14

15, 15

14, 15

15, 0

0, 1

1, 2

2, 3

3, 4

4, 5

5, 6

6, 7

7, 8

8, 9

9, 10

10, 11

11, 12

12, 13

13, 14

12, 14

13, 15

14, 0

15, 1

0, 2

1, 3

2, 4

3, 5

4, 6

5, 7

6, 8

7, 9

8, 10

9, 11

10, 12

11, 13

10, 13

11, 14

12, 15

13, 0

14, 1

15, 2

0, 3

1, 4

2, 5

3, 6

4, 7

5, 8

6, 9

7, 10

8, 11

9, 12

8, 12

9, 13

10, 14

11, 15

12, 0

13, 1

14, 2

15, 3

0, 4

1, 5

2, 6

3, 7

4, 8

5, 9

6, 10

7, 11

6, 11

7, 12

8, 13

9, 14

10, 15

11, 0

12, 1

13, 2

14, 3

15, 4

0, 5

1, 6

2, 7

3, 8

4, 9

5, 10

4, 10

5, 11

6, 12

7, 13

8, 14

9, 15

10, 0

11, 1

12, 2

13, 3

14, 4

15, 5

0, 6

1, 7

2, 8

3, 9

2, 9

3, 10

4, 11

5, 12

6, 13

7, 14

8, 15

9, 0

10, 1

11, 2

12, 3

13, 4

14, 5

15, 6

0, 7

1, 8

15, 7

0, 8

1, 9

2, 10

3, 11

4, 12

5, 13

6, 14

7, 15

8, 0

9, 1

10, 2

11, 3

12, 4

13, 5

14, 6

13, 6

14, 7

15, 8

0, 9

1, 10

2, 11

3, 12

4, 13

5, 14

6, 15

7, 0

8, 1

9, 2

10, 3

11, 4

12, 5

11, 5

12, 6

13, 7

14, 8

15, 9

0, 10

1, 11

2, 12

3, 13

4, 14

5, 15

6, 0

7, 1

8, 2

9, 3

10, 4

9, 4

10, 5

11, 6

12, 7

13, 8

14, 9

15, 10

0, 11

1, 12

2, 13

3, 14

4, 15

5, 0

6, 1

7, 2

8, 3

7, 3

8, 4

9, 5

10, 6

11, 7

12, 8

13, 9

14, 10

15, 11

0, 12

1, 13

2, 14

3, 15

4, 0

5, 1

6, 2

5, 2

6, 3

7, 4

8, 5

9, 6

10, 7

11, 8

12, 9

13, 10

14, 11

15, 12

0, 13

1, 14

2, 15

3, 0

4, 1

3, 1

4, 2

5, 3

6, 4

7, 5

8, 6

9, 7

10, 8

11, 9

12, 10

13, 11

14, 12

15, 13

0, 14

1, 15

2, 0

1, 0

2, 1

3, 2

4, 3

5, 4

6, 5

7, 6

8, 7

9, 8

10, 9

11, 10

12, 11

13, 12

14, 13

15, 14

0, 15.

4. The method of claim 3 wherein symbol bits in each reliability class are balanced in each constituent codeword.

5. The method of claim 1 wherein symbol bits that have correlated errors in non-Gray mapped constellations appear in different constituent codewords.

6. An apparatus comprising:

an interleaver; the interleaving containing logic enabling the interleaver to:

create a buffer having 172,032 bits arranged into an N by 8 array of 16 by 16 blocks, wherein N is an even number; wherein the buffer is partitioned into at least 2 subsets of rows;

populate data into each 16 by 16 block of arrays according to a table; wherein the table specifies the location of each bit in the 16 by 16 block; and

read data out of the buffer in groups of 8 bits; wherein each of the groups of 8 bits are taken in turn from each subset, in a column by column ordering.

7. The apparatus of claim 6 wherein the 16 by 16 table include values that form a Latin square.

8. The apparatus of claim 6 wherein the table is given by the following table:

0, 0

1, 1

2, 2

3, 3

4, 4

5, 5

6, 6

7, 7

8, 8

9, 9

10, 10

11, 11

12, 12

13, 13

14, 14

15, 15

14, 15

15, 0

0, 1

1, 2

2, 3

3, 4

4, 5

5, 6

6, 7

7, 8

8, 9

9, 10

10, 11

11, 12

12, 13

13, 14

12, 14

13, 15

14, 0

15, 1

0, 2

1, 3

2, 4

3, 5

4, 6

5, 7

6, 8

7, 9

8, 10

9, 11

10, 12

11, 13

10, 13

11, 14

12, 15

13, 0

14, 1

15, 2

0, 3

1, 4

2, 5

3, 6

4, 7

5, 8

6, 9

7, 10

8, 11

9, 12

8, 12

9, 13

10, 14

11, 15

12, 0

13, 1

14, 2

15, 3

0, 4

1, 5

2, 6

3, 7

4, 8

5, 9

6, 10

7, 11

6, 11

7, 12

8, 13

9, 14

10, 15

11, 0

12, 1

13, 2

14, 3

15, 4

0, 5

1, 6

2, 7

3, 8

4, 9

5, 10

4, 10

5, 11

6, 12

7, 13

8, 14

9, 15

10, 0

11, 1

12, 2

13, 3

14, 4

15, 5

0, 6

1, 7

2, 8

3, 9

2, 9

3, 10

4, 11

5, 12

6, 13

7, 14

8, 15

9, 0

10, 1

11, 2

12, 3

13, 4

14, 5

15, 6

0, 7

1, 8

15, 7

0, 8

1, 9

2, 10

3, 11

4, 12

5, 13

6, 14

7, 15

8, 0

9, 1

10, 2

11, 3

12, 4

13, 5

14, 6

13, 6

14, 7

15, 8

0, 9

1, 10

2, 11

3, 12

4, 13

5, 14

6, 15

7, 0

8, 1

9, 2

10, 3

11, 4

12, 5

11, 5

12, 6

13, 7

14, 8

15, 9

0, 10

1, 11

2, 12

3, 13

4, 14

5, 15

6, 0

7, 1

8, 2

9, 3

10, 4

9, 4

10, 5

11, 6

12, 7

13, 8

14, 9

15, 10

0, 11

1, 12

2, 13

3, 14

4, 15

5, 0

6, 1

7, 2

8, 3

7, 3

8, 4

9, 5

10, 6

11, 7

12, 8

13, 9

14, 10

15, 11

0, 12

1, 13

2, 14

3, 15

4, 0

5, 1

6, 2

5, 2

6, 3

7, 4

8, 5

9, 6

10, 7

11, 8

12, 9

13, 10

14, 11

15, 12

0, 13

1, 14

2, 15

3, 0

4, 1

3, 1

4, 2

5, 3

6, 4

7, 5

8, 6

9, 7

10, 8

11, 9

12, 10

13, 11

14, 12

15, 13

0, 14

1, 15

2, 0

1, 0

2, 1

3, 2

4, 3

5, 4

6, 5

7, 6

8, 7

9, 8

10, 9

11, 10

12, 11

13, 12

14, 13

15, 14

0, 15.

9. The apparatus of claim 6 wherein symbol bits in each reliability class are balanced in each constituent codeword.

10. The apparatus of claim 6 wherein symbol bits that have correlated errors in non-Gray mapped constellations appear in different constituent codewords.

11. The apparatus of claim 6 wherein one or more encoders provide data to the interleaver to populate the buffer; wherein the one or more encoders switch between providing data to the interleaver.

12. A system comprising:

one or more encoder;

an interleaver; the interleaver containing logic enabling the interleaver to:

create a buffer having 172,032 bits arranged into an N by 8 array of 16 by 16 blocks, wherein N is an even number; wherein the buffer is partitioned into at least 2 subsets of rows;

populate data into each 16 by 16 block of arrays according to a table; wherein the table specifies the location of each bit in the 16 by 16 block; and

read data out of the buffer in groups of 8 bits; wherein each of the groups of 8 bits are taken in turn from each subset, in a column by column ordering.

13. The system of claim 12 wherein the one or more encoders provide data to the interleaver to populate the buffer; wherein the one or more encoders switch between providing data to the interleaver.

14. The system of claim 12 wherein the 16 by 16 table includes values that form a Latin square.

15. The system of claim 12 wherein the table is given by the following table:

0, 0

1, 1

2, 2

3, 3

4, 4

5, 5

6, 6

7, 7

8, 8

9, 9

10, 10

11, 11

12, 12

13, 13

14, 14

15, 15

14, 15

15, 0

0, 1

1, 2

2, 3

3, 4

4, 5

5, 6

6, 7

7, 8

8, 9

9, 10

10, 11

11, 12

12, 13

13, 14

12, 14

13, 15

14, 0

15, 1

0, 2

1, 3

2, 4

3, 5

4, 6

5, 7

6, 8

7, 9

8, 10

9, 11

10, 12

11, 13

10, 13

11, 14

12, 15

13, 0

14, 1

15, 2

0, 3

1, 4

2, 5

3, 6

4, 7

5, 8

6, 9

7, 10

8, 11

9, 12

8, 12

9, 13

10, 14

11, 15

12, 0

13, 1

14, 2

15, 3

0, 4

1, 5

2, 6

3, 7

4, 8

5, 9

6, 10

7, 11

6, 11

7, 12

8, 13

9, 14

10, 15

11, 0

12, 1

13, 2

14, 3

15, 4

0, 5

1, 6

2, 7

3, 8

4, 9

5, 10

4, 10

5, 11

6, 12

7, 13

8, 14

9, 15

10, 0

11, 1

12, 2

13, 3

14, 4

15, 5

0, 6

1, 7

2, 8

3, 9

2, 9

3, 10

4, 11

5, 12

6, 13

7, 14

8, 15

9, 0

10, 1

11, 2

12, 3

13, 4

14, 5

15, 6

0, 7

1, 8

15, 7

0, 8

1, 9

2, 10

3, 11

4, 12

5, 13

6, 14

7, 15

8, 0

9, 1

10, 2

11, 3

12, 4

13, 5

14, 6

13, 6

14, 7

15, 8

0, 9

1, 10

2, 11

3, 12

4, 13

5, 14

6, 15

7, 0

8, 1

9, 2

10, 3

11, 4

12, 5

11, 5

12, 6

13, 7

14, 8

15, 9

0, 10

1, 11

2, 12

3, 13

4, 14

5, 15

6, 0

7, 1

8, 2

9, 3

10, 4

9, 4

10, 5

11, 6

12, 7

13, 8

14, 9

15, 10

0, 11

1, 12

2, 13

3, 14

4, 15

5, 0

6, 1

7, 2

8, 3

7, 3

8, 4

9, 5

10, 6

11, 7

12, 8

13, 9

14, 10

15, 11

0, 12

1, 13

2, 14

3, 15

4, 0

5, 1

6, 2

5, 2

6, 3

7, 4

8, 5

9, 6

10, 7

11, 8

12, 9

13, 10

14, 11

15, 12

0, 13

1, 14

2, 15

3, 0

4, 1

3, 1

4, 2

5, 3

6, 4

7, 5

8, 6

9, 7

10, 8

11, 9

12, 10

13, 11

14, 12

15, 13

0, 14

1, 15

2, 0

1, 0

2, 1

3, 2

4, 3

5, 4

6, 5

7, 6

8, 7

9, 8

10, 9

11, 10

12, 11

13, 12

14, 13

15, 14

0, 15.

16. The system of claim 12 wherein symbol bits in each reliability class are balanced in each constituent codeword.

17. The system of claim 12 wherein symbol bits that have correlated errors in non-Gray mapped constellations appear in different constituent codewords.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2024
From: ACACIA COMMUNICATIONS, INC.
To: ACACIA TECHNOLOGY, INC.
Reel/Frame 066832/0659 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2022
From: HUMBLET, PIERRE
To: ACACIA COMMUNICATIONS, INC.
Reel/Frame 060262/0623 →
Continuity (4)
Continuation 16576196 · Sep 19, 2019
Continuation 16102400 · Aug 13, 2018
Provisional Application 62717770 · Aug 10, 2018
Related Publication 20210143841A1 · May 13, 2021