Low overhead coding with arbitrary control code placement
AssigneeMarvell International Ltd.
InventorWilliam Lo
Life of this patent
Estimating the term…
Abstract
A physical layer device of a network device comprises a physical coding sublayer (PCS) device encodes data to produce an encoded data block. A scrambler communicates with the PCS device and scrambles the encoded data block to produce a scrambled data block. A sync adder adds a sync header to the scrambled data block. The sync header has a first state when the scrambled data block only includes data portions. The sync header has a second state when the scrambled data block includes at least one control code portion.
Claims28
A physical layer device of a network device, the physical layer device comprising:
- an encoder that encodes data to produce an encoded data block;
- a scrambler that scrambles said encoded data block to produce a scrambled data block;
- and
- a sync adder that adds a sync header to said scrambled data block, wherein said sync header has a first state when said scrambled data block only includes data portions, and wherein said sync header has a second state when said scrambled data block includes at least one control code portion,
- wherein said encoded data block comprises n portions each including at least one of data portions, pointer portions, and control code portions,
- wherein n is an integer greater than one, and
- wherein said pointer portions indicate whether additional control code portions are present in said encoded data block.
A physical layer device of a network device, the physical layer device comprising:
- an encoder that encodes data to produce an encoded data block;
- a scrambler that scrambles said encoded data block to produce a scrambled data block;
- and
- a sync adder that adds a sync header to said scrambled data block, wherein said sync header has a first state when said scrambled data block only includes data portions, and wherein said sync header has a second state when said scrambled data block includes at least one control code portion,
- wherein said encoded data block comprises n portions each including at least one of data portions, pointer portions, and control code portions,
- wherein n is an integer greater than one, and
- wherein said n portions include one of:
- one of said data portions;
- one of said pointer portions and a first half of one of said data portions;
- one of said pointer portions and one of said control code portions;
- and
- a second half of one of said data portions and one of said control code portions.
A physical layer device comprising:
- encoding means for encoding data to produce an encoded data block;
- scrambling means for scrambling said encoded data block to produce a scrambled data block;
- and
- sync adding means for adding a sync header to said scrambled data block, wherein said sync header has a first state when said scrambled data block only includes data portions, and wherein said sync header has a second state when said scrambled data block includes at least one control code portion,
- wherein said encoded data block comprises n portions each including at least one of data portions, pointer portions, and control code portions,
- wherein n is an integer greater than one, and
- wherein said n portions include one of:
- one of said data portions;
- one of said pointer portions and a first half of one of said data portions;
- one of said pointer portions and one of said control code portions;
- and
- a second half of one of said data portions and one of said control code portions.
A physical layer device comprising:
- encoding means for encoding data to produce an encoded data block;
- scrambling means for scrambling said encoded data block to produce a scrambled data block;
- and
- sync adding means for adding a sync header to said scrambled data block, wherein said sync header has a first state when said scrambled data block only includes data portions, and wherein said sync header has a second state when said scrambled data block includes at least one control code portion,
- wherein said encoded data block comprises n portions each including at least one of data portions, pointer portions, and control code portions,
- wherein n is an integer greater than one, and
- wherein said pointer portions indicate whether additional control code portions are present in said encoded data block.
A method of operating a physical layer device of a network device, the method comprising:
- providing an encoder that encodes data to produce an encoded data block;
- scrambling said encoded data block to produce a scrambled data block;
- adding a sync header to said scrambled data block;
- setting said sync header to a first state when said scrambled data block only includes data portions;
- and
- setting said sync header to a second state when said scrambled data block includes at least one control code portion,
- wherein said encoded data block comprises n portions each including at least one of data portions, pointer portions, and control code portions,
- wherein n is an integer greater than one, and
- wherein said n portions include one of:
- one of said data portions;
- one of said pointer portions and a first half of one of said data portions;
- one of said pointer portions and one of said control code portions;
- and
- a second half of one of said data portions and one of said control code portions.
A method of operating a physical layer device of a network device, the method comprising:
- providing an encoder that encodes data to produce an encoded data block;
- scrambling said encoded data block to produce a scrambled data block;
- adding a sync header to said scrambled data block;
- setting said sync header to a first state when said scrambled data block only includes data portions;
- and
- setting said sync header to a second state when said scrambled data block includes at least one control code portion,
- wherein said encoded data block comprises n portions each including at least one of data portions, pointer portions, and control code portions,
- wherein n is an integer greater than one, and
- wherein said pointer portions indicate whether additional control code portions are present in said encoded data block.
Dependencies are inferred from the claim text.