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
OG exemplary drawing
 
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.