Data dependent scrambler with reduced overhead
First Claim
1. A data dependent scrambler for a communications channel that receives a user data sequence with a plurality of symbols, comprising:
- a seed finder that generates a scrambling seed that is dependent upon said symbols in said user data sequence;
a first scrambler that receives said user data sequence and said scrambling seed and that generates a scrambled user data sequence;
a code finder that generates at least one of a token that is dependent upon said symbols in said user data sequence and an offset of said token from said scrambling seed; and
an encoder that receives said scrambled user data sequence and at least one of said token and said offset and that increases a Hamming weight of said scrambled user data sequence using said at least one of said token and said offset.
4 Assignments
0 Petitions
Accused Products
Abstract
A data dependent scrambler for a communications channel that receives a user data sequence including X bits that are organized as N M-bit symbols includes a seed finder that generates a scrambling seed that is dependent upon the symbols in the user data sequence. A first scrambler receives the user data sequence from the data buffer and the scrambling seed from the seed finder and generates the scrambled user data sequence. An H-code finder generates at least one of an H-code token that is dependent upon the symbols in the user data sequence and an offset of the H-code token from the scrambling seed. An H-code encoder receives the scrambled user data sequence and at least one of the H-code token and the offset. The H-code encoder increases a Hamming weight of the scrambled user data sequence using the at least one of the H-code token and the offset.
70 Citations
60 Claims
-
1. A data dependent scrambler for a communications channel that receives a user data sequence with a plurality of symbols, comprising:
-
a seed finder that generates a scrambling seed that is dependent upon said symbols in said user data sequence; a first scrambler that receives said user data sequence and said scrambling seed and that generates a scrambled user data sequence; a code finder that generates at least one of a token that is dependent upon said symbols in said user data sequence and an offset of said token from said scrambling seed; and an encoder that receives said scrambled user data sequence and at least one of said token and said offset and that increases a Hamming weight of said scrambled user data sequence using said at least one of said token and said offset. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A communications channel that receives a user data sequence including a plurality of symbols, comprising:
-
a host bus interface (HBI) that transmits said user data sequence including a plurality of symbols; and a data dependent scrambler that communicates with said HBI, that scrambles said user data sequence using a scrambling seed that is data dependent, that increases a Hamming weight of said scrambled user data sequence using a token, that calculates an offset between said scrambling seed and said token, and that stores said offset of dummy bits of at least one symbol of said scrambled user data sequence. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A data dependent scrambler for a communications channel that receives a user data sequence including a plurality of symbols, comprising:
-
seed finding means for generating a scrambling seed that is dependent upon said symbols in said user data sequence; first scrambling means for receiving said user data sequence and said scrambling seed and for generating a scrambled user data sequence; token finding means for generating at least one of a token that is dependent upon said symbols in said user data sequence and an offset of said token from said scrambling seed; and first encoding means for receiving said scrambled user data sequence and said at least one of said token and said offset and that increases a Hamming weight of said scrambled user data sequence using said at least one of said token and said offset. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A communications channel that receives a user data sequence including a plurality of symbols, comprising:
-
interface means for transmitting said user data sequence including a plurality of symbols; and data dependent scrambling means for communicating with said interface means, for scrambling said user data sequence using a scrambling seed that is data dependent, for increasing a Hamming weight of said scrambled user data sequence using a token, for calculating an offset between said scrambling seed and seed token, and for storing said offset in dummy bits in at least one symbol of said scrambled user data sequence. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A method of scrambling a user data sequence including a plurality of symbols, comprising:
-
generating a scrambling seed that is dependent upon said symbols in said user data sequence; scrambling said user data sequence to provide a scrambled user data sequence based on said scrambling seed; generating at least one of a token that is dependent upon said symbols in said user data sequence and an offset of said token from said scrambling seed; and increasing a Hamming weight of said scrambled user data sequence using said at least one of said token and said offset. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50)
-
-
51. A method of processing a user data sequence including a plurality of symbols through a communications channel, comprising:
-
transmitting said user data sequence including a plurality of symbols to a data dependent scrambler through an interface; scrambling said user data sequence using a scrambling seed that is data dependent; increasing a Hamming weight of said scrambled user data sequence using a token; calculating an offset between said scrambling seed and said token; and storing said offset in dummy bits in at least one symbol of said scrambled user data sequence. - View Dependent Claims (52, 53, 54, 55, 56, 57, 58, 59, 60)
-
Specification