Patent ID: 7414551

Claim:
A method of encoding data comprising: encoding input data into a predetermined code; and precoding the predetermined code so that output levels of a channel can be detected, the channel being defined by a predetermined channel polynomial, wherein the predetermined code is precoded by using a precoding function P(D) defined as follows: P ⁡ ( D ) = 1 1 ⊕ ⁢ MOD ⁡ ( a 1 , 2 ) ⁢ D ⊕ ⁢ … ⊕ MOD ⁢ ⁢ ( a n , 2 ) ⁢ D n where MOD(a n , 2) indicates a signed remainder of a n divided by 2, and ⊕ indicates a logical exclusive OR operation.