Method and apparatus for implementing a type 8B6T encoder and decoder
First Claim
Patent Images
1. An encoder/transmitter for 8B-6T code conversion, comprising:
- means for receiving an 8-bit binary data word;
combinatorial logic means capable of converting each possible 8-bit binary data word to an unique 12-bit binary-coded-ternary (BCT) code word, operatively connected to;
a circuit for selecting an inverted code word for every other code word that has an algebraic weight of +1 in a series of code words, operatively connected to;
means for separating said 12-bit code word into subparts operatively connected to;
a signal generator for producing a serial ternary data stream in response to said subparts.
7 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method for transmitting an 8-bit binary format data word as a 6-trit ternary code word includes an encoder, a decoder, and a code assignment that produce, for each 8-bit data word value, an unique 6-trit ternary code word that is particularly optimized for transmission over twisted-pair cable. The logic circuitry of the invention is optimized to accomplish the translation using a small number of combinatorial logic gates. The present invention thus has advantages in size, speed and performance over other possible means for encoding an 8 bit data word to a 6 trit code word.
62 Citations
16 Claims
-
1. An encoder/transmitter for 8B-6T code conversion, comprising:
-
means for receiving an 8-bit binary data word; combinatorial logic means capable of converting each possible 8-bit binary data word to an unique 12-bit binary-coded-ternary (BCT) code word, operatively connected to; a circuit for selecting an inverted code word for every other code word that has an algebraic weight of +1 in a series of code words, operatively connected to; means for separating said 12-bit code word into subparts operatively connected to; a signal generator for producing a serial ternary data stream in response to said subparts. - View Dependent Claims (2, 3, 13, 14, 15)
-
2. The encoder according to claim 1, wherein said unique 12-bit binary-coded-ternary (BCT) code word is representative of a 6-trit ternary code word and wherein each 6-trit ternary code word has an algebraic weight of either 0 or +1 and has no more than three leading or trailing zeros.
-
3. The encoder according to claim 1, wherein said combinatorial logic means is additionally capable of detecting when the algebraic weight of a 12-bit BCT code word is +1 and generating a signal when the algebraic weight of a 12-bit BCT code word is +1.
-
13. The encoder according to claims 1, 2, or 3, the decoder according to claim 4, the apparatus according to claims 5 or 6, and the system according to claim 11, wherein said combinatorial logic is operative to convert between 8-bit binary data words and 6-trit ternary code words according to the following table:
space="preserve" listing-type="tabular">______________________________________ Binary Ternary ______________________________________ 00000000 - + 0 0 - + 00000001 0 - + - + 0 00000010 0 - + 0 - + 00000011 0 - + + 0 - 00000100 - + 0 + 0 - 00000101 + 0 - - + 0 00000110 + 0 - 0 - + 00000111 + 0 - + 0 - 00001000 - + 0 0 + - 00001001 0 - + + - 0 00001010 0 - + 0 + - 00001011 0 - + - 0 + 00001100 - + 0 - 0 + 00001101 + 0 - + - 0 00001110 + 0 - 0 + - 00001111 + 0 - - 0 + 00010000 0 - - + 0 + 00010001 - 0 - 0 + + 00010010 - 0 - + 0 + 00010011 - 0 - + + 0 00010100 0 - - + + 0 00010101 - - 0 0 + + 00010110 - - 0 + 0 + 00010111 - - 0 + + 0 00011000 - + 0 - + 0 00011001 + - 0 - + 0 00011010 - + + - + 0 00011011 + 0 0 - + 0 00011100 + 0 0 + - 0 00011101 - + + + - 0 00011110 + - 0 + - 0 00011111 - + 0 + - 0 00100000 - + + - 0 0 00100001 + 0 0 + - - 00100010 - + 0 - + + 00100011 + - 0 - + + 00100100 + - 0 + 0 0 00100101 - + 0 + 0 0 00100110 + 0 0 - 0 0 00100111 - + + + - - 00101000 0 + + - 0 - 00101001 + 0 + 0 - - 00101010 + 0 + - 0 - 00101011 + 0 + - - 0 00101100 0 + + - - 0 00101101 + + 0 0 - - 00101110 + + 0 - 0 - 00101111 + + 0 - - 0 00110000 + - 0 0 - + 00110001 0 + - - + 0 00110010 0 + - 0 - + 00110011 0 + - + 0 - 00110100 + - 0 + 0 - 00110101 - 0 + - + 0 00110110 - 0 + 0 - + 00110111 - 0 + + 0 - 00111000 + - 0 0 + - 00111001 0 + - + - 0 00111010 0 + - 0 + - 00111011 0 + - - 0 + 00111100 + - 0 - 0 + 00111101 - 0 + + - 0 00111110 - 0 + 0 + - 00111111 - 0 + - 0 + 01000000 - 0 0 + 0 + 01000001 0 - 0 0 + + 01000010 0 - 0 + 0 + 01000011 0 - 0 + + 0 01000100 - 0 0 + + 0 01000101 0 0 - 0 + + 01000110 0 0 - + 0 + 01000111 0 0 - + + 0 01001000 0 0 + 0 0 0 01001001 + + - 0 0 0 01001010 + - + 0 0 0 01001011 - + + 0 0 0 01001100 0 + - 0 0 0 01001101 + 0 - 0 0 0 01001110 0 - + 0 0 0 01001111 - 0 + 0 0 0 01010000 + - - + 0 + 01010001 - + - 0 + + 01010010 - + - + 0 + 01010011 - + - + + 0 01010100 + - - + + 0 01010101 - - + 0 + + 01010110 - - + + 0 + 01010111 - - + + + 0 01011000 - - 0 + + + 01011001 - 0 - + + + 01011010 0 - - + + + 01011011 0 - - 0 + + 01011100 + - - 0 + + 01011101 - 0 0 0 + + 01011110 0 + + + - - 01011111 0 + + - 0 0 01100000 0 + + 0 - 0 01100001 + 0 + - 0 0 01100010 + 0 + 0 - 0 01100011 + 0 + 0 0 - 01100100 0 + + 0 0 - 01100101 + + 0 - 0 0 01100110 + + 0 0 - 0 01100111 + + 0 0 0 - 01101000 0 + + - + - 01101001 + 0 + + - - 01101010 + 0 + - + - 01101011 + 0 + - - + 01101100 0 + + - - + 01101101 + + 0 + - - 01101110 + + 0 - + - 01101111 + + 0 - - + 01110000 0 0 0 + + - 01110001 0 0 0 + - + 01110010 0 0 0 - + + 01110011 0 0 0 + 0 0 01110100 0 0 0 + 0 - 01110101 0 0 0 + - 0 01110110 0 0 0 - 0 + 01110111 0 0 0 - + 0 01111000 + + + - - 0 01111001 + + + - 0 - 01111010 + + + 0 - - 01111011 0 + + 0 - - 01111100 - 0 0 - + + 01111101 - 0 0 + 0 0 01111110 + - - - + + 01111111 + - - + 0 0 10000000 - 0 0 + - + 10000001 0 - 0 - + + 10000010 0 - 0 + - + 10000011 0 - 0 + + - 10000100 - 0 0 + + - 10000101 0 0 - - + + 10000110 0 0 - + - + 10000111 0 0 - + + - 10001000 - 0 0 0 + 0 10001001 0 - 0 + 0 0 10001010 0 - 0 0 + 0 10001011 0 - 0 0 0 + 10001100 - 0 0 0 0 + 10001101 0 0 - + 0 0 10001110 0 0 - 0 + 0 10001111 0 0 - 0 0 + 10010000 + - - + - + 10010001 - + - - + + 10010010 - + - + - + 10010011 - + - + + - 10010100 + - - + + - 10010101 - - + - + + 10010110 - - + + - + 10010111 - - + + + - 10011000 + - - 0 + 0 10011001 - + - + 0 0 10011010 - + - 0 + 0 10011011 - + - 0 0 + 10011100 + - - 0 0 + 10011101 - - + + 0 0 10011110 - - + 0 + 0 10011111 - - + 0 0 + 10100000 - + + 0 - 0 10100001 + - + - 0 0 10100010 + - + 0 - 0 10100011 + - + 0 0 - 10100100 - + + 0 0 - 10100101 + + - - 0 0 10100110 + + - 0 - 0 10100111 + + - 0 0 - 10101000 - + + - + - 10101001 + - + + - - 10101010 + - + - + - 10101011 + - + - - + 10101100 - + + - - + 10101101 + + - + - - 10101110 + + - - + - 10101111 + + - - - + 10110000 + 0 0 0 - 0 10110001 0 + 0 - 0 0 10110010 0 + 0 0 - 0 10110011 0 + 0 0 0 - 10110100 + 0 0 0 0 - 10110101 0 0 + - 0 0 10110110 0 0 + 0 - 0 10110111 0 0 + 0 0 - 10111000 + 0 0 - + - 10111001 0 + 0 + - - 10111010 0 + 0 - + - 10111011 0 + 0 - - + 10111100 + 0 0 - - + 10111101 0 0 + + - - 10111110 0 0 + - + - 10111111 0 0 + - - + 11000000 - + 0 + - + 11000001 0 - + - + + 11000010 0 - + + - + 11000011 0 - + + + - 11000100 - + 0 + + - 11000101 + 0 - - + + 11000110 + 0 - + - + 11000111 + 0 - + + - 11001000 - + 0 0 + 0 11001001 0 - + + 0 0 11001010 0 - + 0 + 0 11001011 0 - + 0 0 + 11001100 - + 0 0 0 + 11001101 + 0 - + 0 0 11001110 + 0 - 0 + 0 11001111 + 0 - 0 0 + 11010000 + - 0 + - + 11010001 0 + - - + + 11010010 0 + - + - + 11010011 0 + - + + - 11010100 + - 0 + + - 11010101 - 0 + - + + 11010110 - 0 + + - + 11010111 - 0 + + + - 11011000 + - 0 0 + 0 11011001 0 + - + 0 0 11011010 0 + - 0 + 0 11011011 0 + - 0 0 + 11011100 + - 0 0 0 + 11011101 - 0 + + 0 0 11011110 - 0 + 0 + 0 11011111 - 0 + 0 0 + 11100000 - + + 0 - + 11100001 + - + - + 0 11100010 + - + 0 - + 11100011 + - + + 0 - 11100100 - + + + 0 - 11100101 + + - - + 0 11100110 + + - 0 - + 11100111 + + - + 0 - 11101000 - + + 0 + - 11101001 + - + + - 0 11101010 + - + 0 + - 11101011 + - + - 0 + 11101100 - + + - 0 + 11101101 + + - + - 0 11101110 + + - 0 + - 11101111 + + - - 0 + 11110000 + 0 0 0 - + 11110001 0 + 0 - + 0 11110010 0 + 0 0 - + 11110011 0 + 0 + 0 - 11110100 + 0 0 + 0 - 11110101 0 0 + - + 0 11110110 0 0 + 0 - + 11110111 0 0 + + 0 - 11111000 + 0 0 0 + - 11111001 0 + 0 + - 0 11111010 0 + 0 0 + - 11111011 0 + 0 - 0 + 11111100 + 0 0 - 0 + 11111101 0 0 + + - 0 11111110 0 0 + 0 + - 11111111 0 0 + - 0 + ______________________________________
-
14. The encoder according to claims 1, 2, or 3, the decoder according to claim 4, the apparatus according to claims 5 or 6, or the system according to claim 11, wherein translation between each ternary trit and its binary representation is according to the following table:
space="preserve" listing-type="tabular">______________________________________ Binary Ternary ______________________________________ 00 - 01 0 10 0 11 + ______________________________________
-
15. The encoder according to claims 1, 2, or 3, the apparatus according to claims 5, or the system according to claim 11, wherein said combinatorial logic for converting each possible 8-bit binary data word having binary digits B7-B0 to a unique 12-bit binary-coded-ternary (BCT) code word having binary digits T11-T0 is constructed such that its 12 bit output is a function of its 8 bit input according to the following logical relationships:
space="preserve" listing-type="tabular">______________________________________ m1 = B7 * B5 * !B4;
m2 = !B7 * !B6 * B5 * B4;
m3 = !B7 * !B6 * !B5 * !B4;
m4 = !B7 * B6 * !B5 * B4 * !B3;
m5 = B7 * !B6 * !B5 * B4;
m6 = B7 * B6 * !B5 * !B4;
m7 = B7 * B6 * !B5 *B4;
p1 = B2 * (B1 + B0);
p2 = !B2 * (B1 + B0);
p3 = !B1 * !B0;
s1 = !B7 * !B6 * !B5 * !B4 * !B3;
s2 = !B7 * !B6 * !B5 * !B4 * B3;
s3 = B7 * !B6 * !B5 * !B3;
s4 = B7 * B6 * !B5 * !B3;
s5 = !B7 * !B6 * B5 * B4 * !B3;
s6 = !B7 * !B6 *B5 * B4 * B3;
s7 = !B7 * B6 * B5 * !B4 * B3;
s8 = B7 * !B6 * B5 * B3;
s9 = B7 * B6 * B5 * !B3;
s10 = B7 * B6 * B5 * B3;
t1 = (B1 * B0) + (B2 * !B1 * !B0);
t2 = !B1 * B0;
t3 = (!B2 * !B1 * !B0) + (B1 * !B0);
u1 = B1 + B0;
u2 = B2 + (!B1 * !B0);
v1 = B1 + !B0;
v2 = B0 + (B2 * !B1);
special = (!B7 * !B6 * !B5 * B4 * B3) + (!B7 * !B6 * B5 * !B4 * !B3) + (!B7 * B6 * !B5 * B3) + (!B7 * B6 * B5 * B4);
T10 = (((u1 * !B4) + (!u1 * B4)) * !special) + (!B7 * ! B6 * !B5 * B4 * B3 * ((!B2 * B0) + (B2 * !B0))) + (!B7 * !B6 * B5 * !B4 * !B3 * ((!B2 * B0) + (B2 * !B0))) + (!B7 * B6 * !B5 * !B4 * B3 * ((!B1 * B0) + (B1 * !B0))) + (!B7 * B6 * !B5 * B4 * B3 * ((!B2 * B1) + (B2 * !B1 * !B0))) + (!B7 * B6 * B5 * B4 * B3 * ((!B2 * !B1) + (B1 * !B0) + (B2 * B1)));
T8 = (((u2 * !B4) + (!u2 * B4)) * !special) + (!B7 * !B6 * !B5 * B4 * B3 * ((!B2 * !B0) + (B2 * B0))) + (!B7 * !B6 * B5 * !B4 * !B3 * ((! B2 * !B0) + (B2 * B0))) + (!B7 * B6 * !B5 * !B4 * B3 * ((!B2 * B0) + (B2 * !B1))) + (!B7 * B6 * !B5 * B4 * B3 * ((!B1 * B0) + (B2 * B1))) + (!B7 * B6 * B5 * B4 * B3 * !(B2 * B1));
T6 = (((!B4 * (!B10 + !B8)) + (B4 * !B10 * !B8)) * !special) + (!B7 * !B6 * !B5 * B4 * B3 * ((!B2 * !B0) + (B2 * B0))) + (!B7 * !B6 * B5 * !B4 * !B3 * ((!B2 * !B0) + (B2 * B0))) + (!B7 * B6 * !B5 * !B4 * B3 * (B1 + (!B2 * !B0))) + (!B7 * B6 * !B5 * B4 * B3 * ((B2 * B0) + (B2 * B1) + (!B2 * !B1 * !B0))) + (!B7 * B6 * B5 * B4 * B3 * !(B2 * B1));
T4 = (((v1 * !B3) + (!v1 * B3)) * !special) + (!B7 * !B6 * !B5 * B4 * B3 * B2) + (!B7 * !B6 * B5 * !B4 * !B3 * ((B2 * !B1) + (B2 * B0) + (!B1 * B0))) + (!B7 * B6 * !B5 * B4 * B3 * ((!B2 * !B1) + (B1 * !B0))) + (!B7 * B6 * B5 * B4 * !B3 * (!B1 + (!B2 * B0))) + (!B7 * B6 * B5 * B4 * B3 * ((B2 * B0) + (!B2 * B1)));
T2 = (((v2 * !B3) + (!v2 * B3)) * !special) + (!B7 * !B6 * !B5 * B4 * B3 * !B2) + (!B7 * !B6 * B5 * !B4 * !B3 * !((B2 * !B1) + (B2 * B0) + (!B1 * B0))) + (!B7 * B6 * !B5 * B4 * B3 * !(B2 * B1 * !B0)) + (!B7 * B6 * B5 * B4 * !B3 * ((!B2 * !B0) + (B2 * B1 * B0) + (!B1 * !B0))) + (!B7 * B6 * B5 * B4 * B3 * ((B2 * !B0) + (!B2 * !B1 * B0))) T0 = (((!B3 * (!B2 + !B4)) + (B3 * !B4 * !B2)) * !special) + (!B7 * !B6 * !B5 * B4 * B3 * !B2) + (!B7 * !B6 * B5 * !B4 * !B3 * !((B2 * !B1) + (B2 * B0) + (!B1 * B0))) + (!B7 * B6 * !B5 * B4 * B3 * !(B2 * B1 * !B0)) + (!B7 * B6 * B5 * B4 * !B3 * ((B2 * B1) + (!B2 * !B1 * B0) + (B1 * !B0))) + (!B7 * B6 * B5 * B4 * B3 * ((B2 * !B0) + (!B1 * !B0)));
T11 = (B5 * !(m1 * p3) * !(m2 * p1) * !(!B7 * !B6 * B5 * !B4 * !B3 * ((B2 * B0) + (!B2 * !B0))) * !(!B7 * B6 * B5 * B4 * B3 * (B2 * B1))) + (m3 * p1) + (m4 * p3) + (m5 * p3) + (m6 * p1) + (m7 * !p1) + (!B7 * !B6 * !B5 * B4 * B3 * ((!B2 * B0) + (B2 * !B0))) + (!B7 * B6 * !B5 * !B4 * B3 * (!B1 + (!B2 * !B0))) + (!B7 * B6 * !B5 * B4 * B3 * ((B2 * B1) + (B2 * !B0)));
T9 = (B5 * !(m1 * p2) * !(m2 * p3) * !(!B7 * !B6 * B5 * !B4 * !B3 * ((!B2 * B1 * B0) + (B2 * !B1 *!B0))) * !(!B7 * B6 * B5 * B4 * B3 * B2)) + (m3 * p3) + (m4 * p2) + (m5 * p2) + (m6 * p3) + (m7 * !p3) + (!B7 * !B6 * !B5 * B4 * B3 * !((!B2 * !B1 * B0) + (B2 * B1 * !B0))) + (!B7 * B6 * !B5 * !B4 * B3 * ((!B1 * !B0) + (B1 * B0) + (!B2 * B0))) + (!B7 * B6 * !B5 * B4 * B3 * B2 * B1);
T7 = (B5 * !(m1 * p1) * !(m2 * p2) * !(!B7 * !B6 * B5 * !B4 * !B3 * ((!B2 * B1 * !B0) + (B2 * !B1 * B0))) * !(!B7 * B6 * B5 * B4 * B3 * B2)) + (m3 * p2) + (m4 * p1) + (m5 * p1) + (m6 * p2) + (m7 * !p2) + (!B7 * !B6 * !B5 * B4 * B3 * !((!B2 * !B1 * !B0)-↑
§
↑
§
G.sup.⊥
+ (B2 * B1 * B0))) + (!B7 * B6 * !B5 * !B4 * B3 * (B1 + (!B2 * !B0))) + (!B7 * B6 * !B5 * B4 * B3 * B2 * B1);
T5 = (!B5 * !(s1 * !t1) * !(s2 * t1) * !(s3 * t2) * !(s4 * t2) * !(!B7 * !B6 * !B5 * B4 * B3 * !B2) * !(!B7 * B6 * !B5 * B4 * B3 * B2 * B1 * B0)) + (s5 * t1) + (s6 * !t1) + (s7 * t2) + (s8 * t2) + (s9 * t1) + (s10 * !t1) + (!B7 * !B6 * B5 * !B4 * !B3 * ((!B1 * B0) + (B2 * !B1) + (B2 * B0))) + (!B7 * B6 * B5 * B4 * !B3 * (!B1 + (!B2 * B0))) + (!B7 * B6 * B5 * B4 * B3 * B2 * B0);
T3 = (!B5 * !(s1 * !t2) * !(s2 * t2) * !(s3 * t3) * !(s4 * t3) * !(!B7 * !B6 * !B5 * B4 * B3 * B2) * !(!B7 * B6 * !B5 * B4 * B3 * B2 * B1) ) + (s5 * t2) + (s6 * !t2) + (s7 * t3) + (s8 * t3) + (s9 * t2) + (s10 * !t2) + (!B7 * !B6 * B5 * !B4 * !B3 * ((!B2 * B1) + (B2 * !B1))) + (!B7 * B6 * B5 * B4 * !B3 * (B1 + (!B2 * !B0))) + (!B7 * B6 * B5 * B4 * B3 * B2);
T1 = (!B5 * !(s1 * !t3) * !(s2 * t3) * ! (s3 * t1) * !(s4 * t1) * !(!B7 * !B6 * !B5 * B4 * B3 * !B2) * !(!B7 * B6 * !B5 * B4 * B3 * B2 * B1)) + (s5 * t3) + (s6 * !t3) + (s7 * t1) + (s8 * t1) + (s9 * t3) + (s10 * !t3) + (!B7 * !B6 * B5 * !B4 * !B3 * ((!B2 * B1) + (B2 * !B1))) + (!B7 * B6 * B5 * B4 * !B3 * ((!B1 * B0) + (B1 * !B0) (!B2 * B1))) + (!B7 * B6 * B5 * B4 * B3 * B2). ______________________________________
-
2. The encoder according to claim 1, wherein said unique 12-bit binary-coded-ternary (BCT) code word is representative of a 6-trit ternary code word and wherein each 6-trit ternary code word has an algebraic weight of either 0 or +1 and has no more than three leading or trailing zeros.
-
-
4. A decoder/receiver for 6T-8B code conversion, comprising:
-
a ternary detector which produces a 2-bit binary signal in response to each digit in a serial ternary pulse data stream received on a channel operatively connected to; means for assembling a 12-bit binary-coded-ternary (BCT) code word for each six ternary trits received operatively connected to; an algebraic weight detecting circuit for detecting when the algebraic weight of a 12-bit BCT code word is -1 operatively connected to; a circuit for selecting an inverted code word for every code word that has an algebraic weight of -1, operatively connected to; a combinatorial logic means for converting each 12-bit binary-coded-ternary (BCT) code word to an 8-bit binary data word.
-
-
5. Apparatus for encoding eight bit binary data words into six trit ternary code words comprising:
-
receiver means for receiving the binary data word; combinatorial logic encoder means coupled to the receiver means, for producing encoded data capable of being converted into ternary code words; said ternary code words having no more than a first preselected number of leading or trailing zeros; said ternary code words having an algebraic weight of zero or plus one.
-
-
6. Apparatus for decoding six trit ternary code words into eight bit binary data comprising:
-
receiver means for receiving the 6 trit code words; ternary to binary conversion circuit for converting each trit of said 6 trit code words into a binary representation for assembling into a binary coded ternary word; said ternary code words having no more than a first preselected number of leading or trailing zeros; said ternary code words having an algebraic weight of zero or plus one; and combinatorial logic decoder means for converting the ternary code words into binary data words. - View Dependent Claims (7)
-
7. The apparatus according to claim 6 wherein said representation is two binary bits and wherein said binary coded ternary word is a 12-bit word.
-
7. The apparatus according to claim 6 wherein said representation is two binary bits and wherein said binary coded ternary word is a 12-bit word.
-
-
8. A method for encoding an eight bit binary data word into a six trit ternary code word, said method comprising the steps of:
-
receiving the binary data word; and converting said binary data word to a binary coded ternary code word data word using combinatorial logic; said binary coded ternary code word being capable of being converted into ternary code words; said ternary code words having no more than a first preselected number of leading or trailing zeros; said ternary code words having an algebraic weight of zero or plus one. - View Dependent Claims (10)
-
10. The method according to claims 8 or 9 wherein converting between 8 bit binary data words and 6-trit ternary code words produces results in accordance with the following table:
space="preserve" listing-type="tabular">______________________________________ Binary Ternary ______________________________________ 00000000 - + 0 0 - + 00000001 0 - + - + 0 00000010 0 - + 0 - + 00000011 0 - + + 0 - 00000100 - + 0 + 0 - 00000101 + 0 - - + 0 00000110 + 0 - 0 - + 00000111 + 0 - + 0 - 00001000 - + 0 0 + - 00001001 0 - + + - 0 00001010 0 - + 0 + - 00001011 0 - + - 0 + 00001100 - + 0 - 0 + 00001101 + 0 - + - 0 00001110 + 0 - 0 + - 00001111 + 0 - - 0 + 00010000 0 - - + 0 + 00010001 - 0 - 0 + + 00010010 - 0 - + 0 + 00010011 - 0 - + + 0 00010100 0 - - + + 0 00010101 - - 0 0 + + 00010110 - - 0 + 0 + 00010111 - - 0 + + 0 00011000 - + 0 - + 0 00011001 + - 0 - + 0 00011010 - + + - + 0 00011011 + 0 0 - + 0 00011100 + 0 0 + - 0 00011101 - + + + - 0 00011110 + - 0 + - 0 00011111 - + 0 + - 0 00100000 - + + - 0 0 00100001 + 0 0 + - - 00100010 - + 0 - + + 00100011 + - 0 - + + 00100100 + - 0 + 0 0 00100101 - + 0 + 0 0 00100110 + 0 0 - 0 0 00100111 - + + + - - 00101000 0 + + - 0 - 00101001 + 0 + 0 - - 00101010 + 0 + - 0 - 00101011 + 0 + - - 0 00101100 0 + + - - 0 00101101 + + 0 0 - - 00101110 + + 0 - 0 - 00101111 + + 0 - - 0 00110000 + - 0 0 - + 00110001 0 + - - + 0 00110010 0 + - 0 - + 00110011 0 + - + 0 - 00110100 + - 0 + 0 - 00110101 - 0 + - + 0 00110110 - 0 + 0 - + 00110111 - 0 + + 0 - 00111000 + - 0 0 + - 00111001 0 + - + - 0 00111010 0 + - 0 + - 00111011 0 + - - 0 + 00111100 + - 0 - 0 + 00111101 - 0 + + - 0 00111110 - 0 + 0 + - 00111111 - 0 + - 0 + 01000000 - 0 0 + 0 + 01000001 0 - 0 0 + + 01000010 0 - 0 + 0 + 01000011 0 - 0 + + 0 01000100 - 0 0 + + 0 01000101 0 0 - 0 + + 01000110 0 0 - + 0 + 01000111 0 0 - + + 0 01001000 0 0 + 0 0 0 01001001 + + - 0 0 0 01001010 + - + 0 0 0 01001011 - + + 0 0 0 01001100 0 + - 0 0 0 01001101 + 0 - 0 0 0 01001110 0 - + 0 0 0 01001111 - 0 + 0 0 0 01010000 + - - + 0 + 01010001 - + - 0 + + 01010010 - + - + 0 + 01010011 - + - + + 0 01010100 + - - + + 0 01010101 - - + 0 + + 01010110 - - + + 0 + 01010111 - - + + + 0 01011000 - - 0 + + + 01011001 - 0 - + + + 01011010 0 - - + + + 01011011 0 - - 0 + + 01011100 + - - 0 + + 01011101 - 0 0 0 + + 01011110 0 + + + - - 01011111 0 + + - 0 0 01100000 0 + + 0 - 0 01100001 + 0 + - 0 0 01100010 + 0 + 0 - 0 01100011 + 0 + 0 0 - 01100100 0 + + 0 0 - 01100101 + + 0 - 0 0 01100110 + + 0 0 - 0 01100111 + + 0 0 0 - 01101000 0 + + - + - 01101001 + 0 + + - - 01101010 + 0 + - + - 01101011 + 0 + - - + 01101100 0 + + - - + 01101101 + + 0 + - - 01101110 + + 0 - + - 01101111 + + 0 - - + 01110000 0 0 0 + + - 01110001 0 0 0 + - + 01110010 0 0 0 - + + 01110011 0 0 0 + 0 0 01110100 0 0 0 + 0 - 01110101 0 0 0 + - 0 01110110 0 0 0 - 0 + 01110111 0 0 0 - + 0 01111000 + + + - - 0 01111001 + + + - 0 - 01111010 + + + 0 - - 01111011 0 + + 0 - - 01111100 - 0 0 - + + 01111101 - 0 0 + 0 0 01111110 + - - - + + 01111111 + - - + 0 0 10000000 - 0 0 + - + 10000001 0 - 0 - + + 10000010 0 - 0 + - + 10000011 0 - 0 + + - 10000100 - 0 0 + + - 10000101 0 0 - - + + 10000110 0 0 - + - + 10000111 0 0 - + + - 10001000 - 0 0 0 + 0 10001001 0 - 0 + 0 0 10001010 0 - 0 0 + 0 10001011 0 - 0 0 0 + 10001100 - 0 0 0 0 + 10001101 0 0 - + 0 0 10001110 0 0 - 0 + 0 10001111 0 0 - 0 0 + 10010000 + - - + - + 10010001 - + - - + + 10010010 - + - + - + 10010011 - + - + + - 10010100 + - - + + - 10010101 - - + - + + 10010110 - - + + - + 10010111 - - + + + - 10011000 + - - 0 + 0 10011001 - + - + 0 0 10011010 - + - 0 + 0 10011011 - + - 0 0 + 10011100 + - - 0 0 + 10011101 - - + + 0 0 10011110 - - + 0 + 0 10011111 - - + 0 0 + 10100000 - + + 0 - 0 10100001 + - + - 0 0 10100010 + - + 0 - 0 10100011 + - + 0 0 - 10100100 - + + 0 0 - 10100101 + + - - 0 0 10100110 + + - 0 - 0 10100111 + + - 0 0 - 10101000 - + + - + - 10101001 + - + + - - 10101010 + - + - + - 10101011 + - + - - + 10101100 - + + - - + 10101101 + + - + - - 10101110 + + - - + - 10101111 + + - - - + 10110000 + 0 0 0 - 0 10110001 0 + 0 - 0 0 10110010 0 + 0 0 - 0 10110011 0 + 0 0 0 - 10110100 + 0 0 0 0 - 10110101 0 0 + - 0 0 10110110 0 0 + 0 - 0 10110111 0 0 + 0 0 - 10111000 + 0 0 - + - 10111001 0 + 0 + - - 10111010 0 + 0 - + - 10111011 0 + 0 - - + 10111100 + 0 0 - - + 10111101 0 0 + + - - 10111110 0 0 + - + - 10111111 0 0 + - + - 11000000 - + 0 + - + 11000001 0 - + - + + 11000010 0 - + + - + 11000011 0 - + + + - 11000100 - + 0 + + - 11000101 + 0 - - + + 11000110 + 0 - + - + 11000111 + 0 - + + - 11001000 - + 0 0 + 0 11001001 0 - + + 0 0 11001010 0 - + 0 + 0 11001011 0 - + 0 0 + 11001100 - + 0 0 0 + 11001101 + 0 - + 0 0 11001110 + 0 - 0 + 0 11001111 + 0 - 0 0 + 11010000 + - 0 + - + 11010001 0 + - - + + 11010010 0 + - + - + 11010011 0 + - + + - 11010100 + - 0 + + - 11010101 - 0 + - + + 11010110 - 0 + + - + 11010111 - 0 + + + - 11011000 + - 0 0 + 0 11011001 0 + - + 0 0 11011010 0 + - 0 + 0 11011011 0 + - 0 0 + 11011100 + - 0 0 0 + 11011101 - 0 + + 0 0 11011110 - 0 + 0 + 0 11011111 - 0 + 0 0 + 11100000 - + + 0 - + 11100001 + - + - + 0 11100010 + - + 0 - + 11100011 + - + + 0 - 11100100 - + + + 0 - 11100101 + + - - + 0 11100110 + + - 0 - + 11100111 + + - + 0 - 11101000 - + + 0 + - 11101001 + - + + - 0 11101010 + - + 0 + - 11101011 + - + - 0 + 11101100 - + + - 0 + 11101101 + + - + - 0 11101110 + + - 0 + - 11101111 + + - - 0 + 11110000 + 0 0 0 - + 11110001 0 + 0 - + 0 11110010 0 + 0 0 - + 11110011 0 + 0 + 0 - 11110100 + 0 0 + 0 - 11110101 0 0 + - + 0 11110110 0 0 + 0 - + 11110111 0 0 + + 0 - 11111000 + 0 0 0 + - 11111001 0 + 0 + - 0 11111010 0 + 0 0 + - 11111011 0 + 0 - 0 + 11111100 + 0 0 - 0 + 11111101 0 0 + + - 0 11111110 0 0 + 0 + - 11111111 0 0 + - 0 + ______________________________________
-
10. The method according to claims 8 or 9 wherein converting between 8 bit binary data words and 6-trit ternary code words produces results in accordance with the following table:
-
-
9. A method for decoding a six trit ternary code word into an eight bit binary data word, said method comprising the steps of:
-
receiving the ternary code word; producing a binary coded ternary code word capable of being converted into a binary data word; said binary coded ternary code word representing a ternary code word having no more than a first preselected number of leading or trailing zeros; said binary coded ternary code word representing a ternary code word having an algebraic weight factor of zero or plus one; and converting said binary coded ternary code word to a binary data word using combinatorial logic. - View Dependent Claims (12)
-
12. The system according to claim 9 wherein said subparts are two binary bits and wherein said ternary code word is a 12-bit word.
-
12. The system according to claim 9 wherein said subparts are two binary bits and wherein said ternary code word is a 12-bit word.
-
-
11. A system for transmitting binary data between a transmitter and a receiver comprising:
-
means for receiving a sequence of 8-bit binary data words from a transmitter; combinatorial logic means for converting said 8-bit data words into binary coded ternary code words with an algebraic weight of 0 or 1; means for DC balancing a sequence of said code words by inverting every second code word that has an algebraic weight of 1 thereby producing an inverted code word with an algebraic weight of -1; means for converting subparts of said code word into a ternary pulse; a medium for transmitting said ternary pulses to said receiver; means at said receiver for detecting said ternary pulses and generating a binary representation for each detected pulse; means for assembling said binary representation codes into a received binary coded ternary code word; means for inverting each said received code word that has an algebraic weight of -1; and combinatorial logic means for converting each said received code word to a received 8-bit binary data word and making said received data word available to said receiver. - View Dependent Claims (16)
-
16. The decoder according to claim 4, the apparatus according to claim 6, or the system according to claim 11, wherein said combinatorial logic circuit for converting each input 12-bit binary-coded-ternary data word having binary digits T11-T0 to an output 8-bit binary data word having binary digits B7-B0 is constructed such that its 8-bit output is a function of its 12-bit input according to the following logical relationships:
space="preserve" listing-type="tabular">______________________________________ al = T11 * T9 * T7;
ar = T5 * T3 * T1;
bl = !T11 * !T9 * !T7;
br = !T5 * !T3 * !T1;
cl = (T10 * !T8 * !T6) + (!T10 * T8 * !T6) + (!T10 * !T8 * T6);
cr = (T4 * !T2 * !T0) + (!T4 * T2 * !T0) + (!T4 * !T2 * T0);
dl = (!T10 * T8 * T6) + (T10 * !T8 * T6) + (T10 * T8 * !T6);
dr = (!T4 * T2 * T0) + (T4 * !T2 * T0) + (T4 * T2 * !T0);
el = (!T11 * T9 * T8 * T7) + (T11 * !T9 * T7 * T6) + (T11 * T10 * T9 * !T7);
er = (!T5 * T3 * T2 * T1) + (T5 * !T3 * T1 * T0) + (T5 * T4 * T3 * !T1);
fl = (T11 * !T9 * !T8 * !T7) + (!T11 * T9 * !T7 * !T6) + (!T11 * !T10 * !T9 * T7);
fr = ( T5 * !T3 * !T2 * !T1) + (!T5 * T3 * !T1 * !T0) + (!T5 * !T4 * !T3 * T1);
lp0 = (T11 * T10 * !T9 * !T8 * T7 * !T6) + (T11 * !T10 * T9 * T8 * !T7 * !T6) + (!T11 * !T10 * T9 * !T8 * T7 * T6);
rp0 = (T5 * T4 * !T3 * !T2 * T1 * !T0) + (T5 * !T4 * T3 * T2 * !T1 * !T0) + (!T5 * !T4 * T3 * !T2 * T1 * T0);
ln0 = (!T11 * !T10 * T9 * T8 * !T7 * T6) + (!T11 * T10 * !T9 * !T8 * T7 * T6) + (T11 * T10 * !T9 * T8 * !T7 * !T6);
rn0 = (!T5 * !T4 * T3 * T2 * !T1 * T0) + (!T5 * T4 * !T3 * !T2 * T1 * T0) + (T5 * T4 * !T3 * T2 * !T1 * !T0);
lp1 = (al * cl) + e1;
rp1 = (ar * cr) + er;
ln1 = (bl * dl) + f1;
rn1 = (br * dr) + fr;
lp2 = al * dl;
rp2 = ar * dr;
ln2 = bl * cl;
rn2 = br * cr;
lp3 = T10 * T8 * T6;
rp3 = T4 * T2 * T0;
l0hat = !T10 * !T8 * !T6;
r0hat = !T4 * !T2 * !T0;
x10 = (T10 * !cl) + (!T10 * cl) x8 = (T8 * !cl) + (!T8 * cl);
x4 = (T4 * !cr) + (!T4 * cr);
x2 = (T2 * !cr) + (!T2 * cr);
special = (l0hat + r0hat + lp3 + rp3 + ( !T10 * T8 * T6 * !T4 * T2 * T0) + (!T10 * T8 * T6 * T4 * !T2 * !T0) + (T10 * !T8 * !T6 * !T4 * T2 * T0) + ( T10 * !T8 * !T6 * T4 * !T2 * !T0));
B7 = ((lp1 + rp1) * !(l0hat + r0hat)) * !special;
B6 = (((lp0 + 1n0 + l0hat) * rp1) + (1n1 * rp2) + (1n2 * rp3) + ((rp0 + rn0 + r0hat) * lp1) + (rn1 * lp2) + (rn2 * lp3)) * !special + special * !(((rp0 + rn0) * !l0hat) + (lp1 * rn1) + ((1n0 + lp0) * rp1));
B5 = ((lp0 * !rp1) + lp1 + lp2 + lp3) * special + special * (((T9 + T7) * rp1) + (lp1 * rn1) + l0hat + (lp2 * rn2) + (1n1 * !rp2) + lp3);
B4 = (cl * !special) + special * !( ((ln0 + lp0) * rp1) + (lp1 *rn1) + r0hat);
B3 = (cr * !special) + special * !( ((ln0 + lp0) * rp1) + (lp1 * rn1) + l0hat);
B2 = (((x10 * x8) + (!x10 * x2)) * !special) + special * (rp0 + (l0hat * rn0) + ((lp0 + ln0) * rp1 * T5) + (lp0 * r0hat) + (ln0 * r0hat) + (lp2 ! * !(!T5 * T4)) + (rp2 * !(!T11 * T10)) + (ln1 * rp1) + (lp1 * rn1 * ((T6 * T5) + (!T6 * !T5))));
B1 = (((x10 * x4) + (!x10 * !x4)) * !special) + special * ((lp1 * rn0) + (rp0 * !(T9 * T7)) + (rp1 * ((!T6 * !T4) + (!T7 * !T6 * T5) + (!T11 * T9 * !T5))) + (rn1 * ((T6 * T5) + (!T6 * !T5) + (T11 * !T10))) + (r0hat * (T6 * !(T11 * T9))) + (ln2 * !T8 * !T6) + (rn2 * !T2 * !T0) + (l0hat * ((T3 T1) + (!T5 * !T1))));
B0 = (((x10 * x2) + (!x10 * !x4)) * !special) + special * ((rn0 * T11 * !T5) + (rp0 * (!T11)) + (T5 * T4 * !T3 * !T2 * !T1 * !T0 * !(T11 * T10)) + (rp1 * ((!T0 * !T7) + (T7 * !T5 * !T9))) + (r0hat * ((T11 * T10 * T8) + (!T11 * !T10 * T7))) + (ln2 * (!T4 + T8)) + (rp2 * T6) + (lp2 * !T4) + (l0hat * (!T2 * T4)) + (rn2 * (T2 + !T10))). ______________________________________
-
16. The decoder according to claim 4, the apparatus according to claim 6, or the system according to claim 11, wherein said combinatorial logic circuit for converting each input 12-bit binary-coded-ternary data word having binary digits T11-T0 to an output 8-bit binary data word having binary digits B7-B0 is constructed such that its 8-bit output is a function of its 12-bit input according to the following logical relationships:
-
Specification
- Resources
Thank you for your request. You will receive a custom alert email when the Litigation Campaign Assessment is available.
×
-
Current AssigneeHewlett-Packard Development Company, L.P. (HP Inc.)
-
Original Assignee3Com Corporation (HP Inc.)
-
InventorsPatel, Sandeep, Johnson, Howard W., Rivers, J. R.
-
Primary Examiner(s)Hoff, Marc S.
-
Application NumberUS08/248,934Time in Patent Office748 DaysField of Search341/57, 341/58, 341/59, 341/106US Class Current341/57CPC Class CodesH03M 5/18 two levels being symmetrica...H04L 25/4925 using balanced bipolar tern...