| US 7,599,396 B2 | ||
| Method of encoding and synchronizing a serial interface | ||
| Charles Boecker, Ames, Iowa (US); Scott Irwin, Ames, Iowa (US); Matthew Shafer, Ankeny, Iowa (US); Eric Groen, Ankeny, Iowa (US); Aaron Hoelscher, Ankeny, Iowa (US); Andrew Jenkins, Nevada, Iowa (US); and David Black, Story City, Iowa (US) | ||
| Assigned to Magnalynx, Inc., Ames, Iowa (US) | ||
| Filed on Jul. 11, 2005, as Appl. No. 11/178,958. | ||
| Prior Publication US 2007/0008992 A1, Jan. 11, 2007 | ||
| Int. Cl. H04J 3/06 (2006.01) | ||
| U.S. Cl. 370—474 [370/503] | 7 Claims |

| 1. A method of producing encoded data for communication over a serial interface, the method comprising:
receiving an input data stream including a plurality of nine-bit data blocks;
partitioning each of the plurality of nine-bit data blocks into a first sub-block comprising one bit, a header, and a byte
that includes a second sub-block of eight bits;
for periodically selected headers, encoding the header to create a two-bit frame header comprising the header and a copy of
the header;
for other headers, encoding the header to create a two-bit transition header comprising the header and the inverse of the
header;
for each of the bytes, encoding the byte to create an encoded byte that includes an eight-bit encoded sub-block;
creating an output data stream that includes a plurality of data segments, each of the plurality of data segments including:
one of the frame headers or one of the transition headers; and
one of the encoded bytes;
wherein each of the data segments comprises ten bits; and
communicating the output data stream over one or more serial interfaces.
|