Encoding data
First Claim
1. A method of encoding binary data for communication wherein successive binary digits having first or second binary values are encoded as one of three signal levels, said method further controlling said encoding to assure that a running digital sum of said signal levels remains within predetermined thresholds to restrict any d.c. imbalance on a communication channel, said method comprising the steps of:
- selecting a first predetermined signal level to represent a binary digit if that digit has a first binary value;
selecting one of second and third predetermined signal levels to represent a binary digit if that digit has a second binary value, said first signal level being intermediate in value between said second and third signal levels, said second and third signal levels being of opposite polarity to one another, and selection between said second and third signal levels being determined by;
maintaining a cumulative sum of signal levels already selected;
selecting said second signal level if said cumulative sum has attained a first predetermined threshold;
selecting said third signal level if said cumulative sum has attained a second predetermined threshold different from said first predetermined threshold;
selecting whichever of said second and third signal levels is not the one of those signals most recently selected, if said cumulative sum does not satisfy a predetermined criterion and said first predetermined signal level has been selected at least once since selection of either said second or said third signal level;
selecting whichever of said second and third signals will change said cumulative sum towards a predetermined value, if said cumulative sum does satisfy said predetermined criterion and said first predetermined signal level has been selected at least once since selection of either said second or said third signal level; and
otherwise selecting whichever of said second and third signal levels is the same as the one of those signals most recently selected.
3 Assignments
0 Petitions
Accused Products
Abstract
Three-level (ternary) line codes are provided for use in transmitting binary data at high data rates (e.g. 100 Mbits/s) over twisted-pair cable, without producing excessive radiated emissions at frequencies above 30 MHz. A running digital sum (RDS) is computed for a stream of ternary symbols as it is encoded; if this RDS reaches a predetermined limit, the polarity of the next following non-zero symbol is determined so as to change the RDS towards zero. In addition, if the binary data stream and the RDS satisfy another predetermined criterion, such as the RDS having a particular polarity when two or more 0 symbols have occurred, then the next non-zero symbol is determined so as to have the opposite polarity; otherwise the next non-zero symbol has the opposite polarity to the preceding non-zero symbol. The RDS limit and the predetermined criterion can be selected to obtain a desired power spectral density for the ternary signal propagating over the twisted-pair cable.
34 Citations
11 Claims
-
1. A method of encoding binary data for communication wherein successive binary digits having first or second binary values are encoded as one of three signal levels, said method further controlling said encoding to assure that a running digital sum of said signal levels remains within predetermined thresholds to restrict any d.c. imbalance on a communication channel, said method comprising the steps of:
-
selecting a first predetermined signal level to represent a binary digit if that digit has a first binary value; selecting one of second and third predetermined signal levels to represent a binary digit if that digit has a second binary value, said first signal level being intermediate in value between said second and third signal levels, said second and third signal levels being of opposite polarity to one another, and selection between said second and third signal levels being determined by; maintaining a cumulative sum of signal levels already selected; selecting said second signal level if said cumulative sum has attained a first predetermined threshold; selecting said third signal level if said cumulative sum has attained a second predetermined threshold different from said first predetermined threshold; selecting whichever of said second and third signal levels is not the one of those signals most recently selected, if said cumulative sum does not satisfy a predetermined criterion and said first predetermined signal level has been selected at least once since selection of either said second or said third signal level; selecting whichever of said second and third signals will change said cumulative sum towards a predetermined value, if said cumulative sum does satisfy said predetermined criterion and said first predetermined signal level has been selected at least once since selection of either said second or said third signal level; and otherwise selecting whichever of said second and third signal levels is the same as the one of those signals most recently selected. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of encoding binary data for communication over a communication channel to assure that a running digital sum of encoded binary data remains within predetermined thresholds to restrict any d.c. imbalance on said communication channel, wherein successive binary digits are encoded as one of three signal levels in accordance with the following truth table:
-
space="preserve" listing-type="tabular">__________________________________________________________________________Prev. Prev. Current Next Last Ternary I/P bit I/P bit I/P bit I/P bit O/P RDS(n) = RDS(n) <
RDS(n) >
RDS(n) = O/P D(n -
2) D(n -
1) D(n) D(n +
1) polarity min. PV PV max. (n +
1) __________________________________________________________________________X X A X X X X X X 0 X A B B X X F T X - A A B X X X F T X - A A B X X X T F X + B A B A - F X X F + B A B A + F X X F - X A B B X X T F X + X A B X + X F F X - X A B X - X F F X + X B B X + F X X F + X B B X - F X X F - X X B X X F X X T - X X B X X T X X F + __________________________________________________________________________wherein D(n) represents a binary digit which is currently being received, D(n-1) represents an immediately preceding digit, D(n-2) represents a digit immediately preceding digit D(n-1), D(n+1) represents a digit to follow the one currently being received, PV represents a predetermined value, X indicates a "don'"'"'t care" condition, A represents a first binary value, B represents a second binary value, F represents a state in which a condition is false, T represents a state in which that condition is true, and RDS signifies running digital sum of ternary symbols already produced, said encoding assuring that the RDS remains within predetermined thresholds to restrict said d.c. imbalance on said communication channel.
-
-
7. A method of encoding binary data for communication over a communication channel to assure that a running digital sum of encoded binary data remains within predetermined thresholds to restrict any d.c. imbalance on said communication channel, wherein successive binary digits are encoded as one of three signal levels in accordance with the following truth table:
-
space="preserve" listing-type="tabular">__________________________________________________________________________Prev. Prev. Prev. Current Next Last Ternary I/P bit I/P bit I/P bit I/P bit I/P bit O/P RDS(n) = RDS(n) <
RDS(n) >
RDS(n) = O/P D(n -
3) D(n -
2) D(n -
1) D(n) D(n +
1) polarity min. PV PV max. (n +
1) __________________________________________________________________________X X X A X X X X X X 0 X X A B B X X F T X - X A A B X X X F T X - X A A B X X X T F X + A B A B A - F X X F + A B A B A + F X X F - X X A B B X X T F X + X X A B X + X F F X - X X A B X - X F F X + X X B B X + F X X F + X X B B X - F X X F - X X X B X X F X X T - X X X B X X T X X F + B B A B A X X F T X - B B A B A X X T F X + __________________________________________________________________________wherein D(n) represents a binary digit which is currently being received, D(n-1) represents an immediately preceding digit, D(n-2) represents a digit immediately preceding digit D(n-1), D(n-3) represents a digit immediately preceding digit D(n-2), D(n+1) represents a digit to follow the one currently being received, PV represents a predetermined value, X indicates a "don'"'"'t care" condition, A represents a first binary value, B represents a second binary value, F represents a state in which a condition is false, T represents a state in which that condition is true, and RDS signifies running digital sum of ternary symbols already produced, said encoding assuring that the RDS remains within predetermined thresholds to restrict said d.c. imbalance on said communication channel.
-
-
8. A method of encoding binary data for communication over a communication channel to assure that a running digital sum of encoded binary data remains within predetermined thresholds to restrict any d.c. imbalance on said communication channel, wherein successive binary digits are encoded as one of three signal levels in accordance with the following truth table:
-
space="preserve" listing-type="tabular">__________________________________________________________________________Prev. Prev. Current Last Ternary I/P bit I/P bit I/P bit O/P RDS(n) = RDS(n) <
RDS(n) >
RDS(n) = O/P D(n -
2) D(n -
1) D(n) polarity min. PV PV max. (n +
1) __________________________________________________________________________X X A X X X X X 0 A A B X X F T X - A A B X X T F X + B A B - F X X F + B A B + F X X F - X A B + X F F X - X A B - X F F X + X B B + F X X F + X B B - F X X F - X X B X F X X T - X X B X T X X F + __________________________________________________________________________wherein D(n) represents a binary digit which is currently being received, D(n-1) represents an immediately preceding digit, D(n-2) represents a digit immediately preceding digit D(n-1), PV represents a predetermined value, X indicates a "don'"'"'t care" condition, A represents a first binary value, B represents a second binary value, F represents a state in which a condition is false, T represents a state in which that condition is true, and RDS signifies running digital sum of ternary symbols already produced, said encoding assuring that the RDS remains within predetermined thresholds to restrict said d.c. imbalance on said communication channel.
-
-
9. A method of encoding binary data for communication over a communication channel to assure that a running digital sum of encoded binary data remains within predetermined thresholds to restrict any d.c. imbalance on said communication channel, wherein successive binary digits are encoded as one of three signal levels in accordance with the following truth table:
-
space="preserve" listing-type="tabular">__________________________________________________________________________Prev. Current Last Ternary I/P bit I/P bit O/P RDS(n) = RDS(n) <
RDS(n) >
RDS(n) = O/P D(n -
1) D(n) polarity min. PV PV max. (n +
1) __________________________________________________________________________X A X X X X X 0 A B X X F T X - A B X X T F X + A B + X F F X - A B - X F F X + B B + F X X F + B B X F X X T - B B - F X X F - B B X T X X F + __________________________________________________________________________wherein D(n) represents a binary digit which is currently being received, D(n-1) represents an immediately preceding digit, PV represents a predetermined value, X indicates a "don'"'"'t care" condition, A represents a first binary value, B represents a second binary value, F represents a state in which a condition is false, T represents a state in which that condition is true, and RDS signifies running digital sum of ternary symbols already produced, said encoding assuring that the RDS remains within predetermined thresholds to restrict said d.c. imbalance on said communication channel.
-
-
10. A coder for encoding binary data for communication over a communication channel such that successive binary digits having first or second binary values are encoded as one of three signal levels, said coder further controlling said encoding to assure that a running digital sum of said signal levels remains within predetermined thresholds to restrict any d.c. imbalance on said communication channel, said coder comprising:
-
first selection means for selecting a first predetermined signal level to represent a binary digit if that digit has a first binary value; and second selection means for selecting one of second and third predetermined signal levels to represent a binary digit if that digit has a second binary value, said first signal level being intermediate in value between said second and third signal levels, said second and third signal levels being of opposite polarity to one another, said second selection means having; means for maintaining a cumulative sum of signal levels already selected; means for selecting said second signal level if said cumulative sum has attained a first predetermined threshold; means for selecting said third signal level if said cumulative sum has attained a second predetermined threshold different from said first predetermined threshold; means for selecting whichever of said second and third signal levels is not the one of those signals most recently selected, if said cumulative sum does not satisfy a predetermined criterion and said first predetermined signal level has been selected at least once since selection of either said second or said third signal level; means for selecting whichever of said second and third signals will change said cumulative sum towards a predetermined value, if said cumulative sum does satisfy said predetermined criterion and said first predetermined signal level has been selected at least once since selection of either said second or said third signal level; and means for selecting otherwise whichever of said second and third signal levels is the same as the one of those signals most recently selected.
-
-
11. A coder for encoding binary data for communication over a communication channel, said coder further controlling said encoding to assure that a running digital sum of said signal levels remains within predetermined thresholds to restrict any d.c. imbalance on said communication channel, said coder comprising means for encoding successive binary digits as one of three signal levels in accordance with the following truth table:
-
space="preserve" listing-type="tabular">__________________________________________________________________________Prev. Prev. Current Next Last Ternary I/P bit I/P bit I/P bit I/P bit O/P RDS(n) = RDS(n) <
RDS(n) >
RDS(n) = O/P D(n -
2) D(n -
1) D(n) D(n +
1) polarity min. PV PV max. (n +
1) __________________________________________________________________________X X A X X X X X X 0 X A B B X X F T X - A A B X X X F T X - A A B X X X T F X + B A B A - F X X F + B A B A + F X X F - X A B B X X T F X + X A B X + X F F X - X A B X - X F F X + X B B X + F X X F + X B B X - F X X F - X X B X X F X X T - X X B X X T X X F + __________________________________________________________________________wherein D(n) represents a binary digit which is currently being received, D(n-1) represents an immediately preceding digit, D(n-2) represents a digit immediately preceding digit D(n-1), D(n+1) represents a digit to follow the one currently being received, PV represents a predetermined value, X indicates a "don'"'"'t care" condition, A represents a first binary value, B represents a second binary value, F represents a state in which a condition is false, T represents a state in which that condition is true, and RDS signifies running digital sum of ternary symbols already produced.
-
Specification