IP Library Granted Patent US 11,368,247
Granted Patent B2
US 11,368,247 · App. 16/909,525 · Granted Jun 21, 2022

Multi-wire permuted forward error correction

Inventors: Amin Shokrollahi (Préverenges, CH); Ali Hormati (Ecublens Vaud, CH)
Assignee: KANDOU LABS, S.A.
H04L1/0041H03M13/05H03M13/1515H03M13/27H03M13/3761H03M13/6561H04J13/004H04L1/0071H04L25/0272H04L25/085
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,368,247
App. No.
16/909,525
Granted
Jun 21, 2022
Kind
B2
Abstract

Methods and systems are described for obtaining a plurality of information bits, and responsively partitioning the obtained plurality of information bits into a plurality of subsets of information bits, generating a plurality of streams of forward error correction (FEC)-encoded bits using a plurality of FEC encoders receiving respective subsets of the plurality of subsets of information bits, providing the plurality of streams of FEC-encoded bits to a plurality of sub-channel encoders, each sub-channel encoder receiving a respective stream of FEC-encoded bits from a different FEC encoder of the plurality of FEC encoders for generating a set of codewords of a vector signaling code, and wherein sequential streams of FEC-encoded bits from a given FEC encoder are provided to different sub-channel encoders for each successively generated set of codewords, and transmitting the successively generated sets of codewords of the vector signaling code over a multi-wire bus.

Claims (27)

1. A method comprising:

obtaining a plurality of information bits, and responsively generating a plurality of parallel forward error correction (FEC)-encoded data streams from the plurality of information bits;

generating an interleaved sequence of codewords from the plurality of parallel FEC-encoded data streams, each codeword generated by a weighted summation of a plurality of mutually orthogonal sub-channel vectors, each sub-channel vector weighted by a corresponding FEC-encoded stream of the plurality of parallel FEC-encoded streams, wherein the plurality of parallel FEC-encoded streams are permuted to weight different sub-channel vectors after a predetermined number of consecutively generated codewords; and

transmitting each codeword of the interleaved sequence of codewords over a plurality of wires of a multi-wire bus.

2. The method of claim 1 , wherein the plurality of parallel FEC-encoded streams are permuted to weight different sub-channel vectors after every consecutively generated codewords.

3. The method of claim 1 , wherein the plurality of parallel FEC-encoded streams are permuted to weight different sub-channel vectors after at least two consecutively generated codewords.

4. The method of claim 1 , wherein the plurality of parallel FEC-encoded streams are cyclically permuted amongst the plurality of mutually orthogonal sub-channel vectors.

5. The method of claim 4 , wherein weighting each mutually orthogonal sub-channel vector comprises selecting the corresponding FEC-encoded stream as an input to a respective sub-channel encoder of a plurality of sub-channel encoders.

6. The method of claim 5 , wherein the corresponding FEC-encoded stream is selected via a multiplexer having an output connected to the respective sub-channel encoder, and wherein each FEC-encoded stream is provided as an input connected to the multiplexer.

7. The method of claim 6 , wherein the multiplexer receives a selection signal from a counter.

8. The method of claim 5 , wherein the corresponding FEC-encoded stream is selected as an output on a demultiplexer receiving the corresponding FEC-encoded stream as an input and having a plurality of outputs connected to the plurality of sub-channel encoders.

9. The method of claim 5 , wherein each stream of FEC encoded bits is further integrated prior to being provided to the respective sub-channel encoder.

10. The method of claim 1 , wherein the plurality of mutually orthogonal sub-channel vectors are ensemble non-return-to-zero (ENRZ) sub-channel vectors.

11. An apparatus comprising:

a plurality of FEC-encoders configured to obtain a plurality of information bits, and to responsively generate a plurality of parallel forward error correction (FEC)-encoded data streams from the plurality of information bits;

a plurality of sub-channel encoders configured to generate an interleaved sequence of codewords from the plurality of parallel FEC-encoded data streams, each codeword generated by a weighted summation of a plurality of mutually orthogonal sub-channel vectors, each sub-channel encoder receiving a corresponding FEC-encoded stream of the plurality of parallel FEC-encoded streams;

a permuter configured to permute each of the plurality of parallel FEC-encoded streams to a different sub-channel encoder after a predetermined number of consecutively generated codewords; and

a plurality of drivers configured to transmit each codeword of the interleaved sequence of codewords over a plurality of wires of a multi-wire bus.

12. The apparatus of claim 11 , wherein the permuter is configured to permute each FEC-encoded stream after every consecutively generated codewords.

13. The apparatus of claim 11 , wherein the permuter is configured to permute each FEC-encoded stream after at least two consecutively generated codewords.

14. The apparatus of claim 11 , wherein the permuter is configured to cyclically permute the plurality of parallel FEC-encoded streams amongst the plurality of sub-channel encoders.

15. The apparatus of claim 14 , wherein the permuter comprises a plurality of multiplexers, each multiplexer connected to an input of a respective sub-channel encoder and configured to receive the plurality of parallel FEC-encoded streams and to select one of the FEC-encoded streams as the input to the respective sub-channel encoder.

16. The apparatus of claim 15 , wherein each multiplexer is configured to receive a corresponding selection signal from a counter.

17. The apparatus of claim 16 , wherein the selection signals are staggered with respect to each other.

18. The apparatus of claim 14 , wherein the permuter comprises a plurality of demultiplexers, each demultiplexer configured to receive a corresponding FEC-encoded stream and to provide the corresponding FEC-encoded stream to an input of a corresponding sub-channel encoder.

19. The apparatus of claim 14 , further comprising an integrator configured to integrate each stream of FEC encoded bits prior to being provided to the respective sub-channel encoder.

20. The apparatus of claim 11 , wherein the plurality of sub-channel encoders are ensemble non-return-to-zero (ENRZ) sub-channel encoders.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2022
From: SHOKROLLAHI, AMIN; HORMATI, ALI
To: KANDOU LABS, S.A.
Reel/Frame 059311/0029 →
Continuity (3)
Continuation 16031877 · Jul 10, 2018
Provisional Application 62530809 · Jul 10, 2017
Related Publication 20200336244A1 · Oct 22, 2020