|
|
Line 1: |
Line 1: |
| In telecommunications, '''6b/8b''' is a line code that expands 6-[[bit]] codes to 8-bit symbols for the purposes of maintaining [[DC bias|DC-balance]] in a communications system.
| | Greetings. The writer's title is Phebe and she feels comfortable when std testing at home at home std test [http://Www.Womentowomen.com/sex-fertility/enjoying-safe-sex-in-midlife/ individuals] use the full name. Years in the past we moved to North Dakota and I love every working day [http://www.hooddirectory.com/how-you-can-cure-an-unpleasant-yeast-infection/ www.hooddirectory.com] residing right here. Managing individuals is his profession. It's not a common factor but what she likes doing is foundation jumping and now [http://www.zavodpm.ru/blogs/ashelykeplerlkws/9653-valuable-guidance-successfully-treating-candida-albicans click through the following website page] she is trying to make money with it.<br><br>Feel free to surf to my web-site ... [http://Www.youporntime.com/user/KBiaggini Www.youporntime.com] |
| | |
| Each 8-bit output symbol contains 4 zero bits and 4 one bits, so the code can, like a [[parity bit]], detect all single-bit errors.
| |
| | |
| The number of [[binomial coefficient]] 8-bit patterns with 4 bits set is <math>\tbinom 84</math> = 70. Further excluding the patterns <code>11110000</code> and <code>00001111</code>, this allows 68 coded patterns: 64 data codes, plus 4 additional control codes.
| |
| | |
| ==Coding rules==
| |
| The 64 possible 6-bit input codes can be classified according to their [[disparity]], the number of 1 bits minus the number of 0 bits:
| |
| | |
| {|class=wikitable style="text-align:center"
| |
| ! Ones !! Zeros !! Disparity !! Number
| |
| |-
| |
| | 0 || 6 || −6 || 1
| |
| |-
| |
| | 1 || 5 || −4 || 6
| |
| |-
| |
| | 2 || 4 || −2 || 15
| |
| |-
| |
| | 3 || 3 || 0 || 20
| |
| |-
| |
| | 4 || 2 || +2 || 15
| |
| |-
| |
| | 5 || 1 || +4 || 6
| |
| |-
| |
| | 6 || 0 || +6 || 1
| |
| |}
| |
| The 6-bit input codes are mapped to 8-bit output symbols as follows:
| |
| * The 20 6-bit codes with disparity 0 are prefixed with <code>10</code><br/>''Example: 000111 → '''10'''000111''<br/>''Example: 101010 → '''10'''101010''
| |
| * The 14 6-bit codes with disparity +2, other than <code>001111</code>, are prefixed with <code>00</code><br/>''Example: 010111 → '''00'''010111''
| |
| * The 14 6-bit codes with disparity −2, other than <code>110000</code>, are prefixed with <code>11</code><br/>''Example: 101000 → '''11'''101000''
| |
| * The remaining 20 codes: 12 with disparity ±4, 2 with disparity ±6, <code>001111</code>, <code>110000</code>, and the 4 control codes, are assigned to codes beginning with <code>01</code> as follows:
| |
| {|class=wikitable style="text-align:center"
| |
| ! Type !! Input !! Output
| |
| |rowspan=11|
| |
| ! Type !! Input !! Output
| |
| |rowspan=11|
| |
| ! Complement
| |
| |-
| |
| | −6 || <code>000000</code> || <code>010'''11'''00'''1'''</code>
| |
| | +6 || <code>111111</code> || <code>011'''00'''11'''0'''</code>
| |
| | 01_xx__x
| |
| |-
| |
| |rowspan=6| −4
| |
| | <code>000001</code> || <code>01'''11'''0001</code>
| |
| |rowspan=6| +4
| |
| | <code>111110</code> || <code>01'''00'''1110</code>
| |
| |rowspan=2| 01xx____
| |
| |-
| |
| | <code>000010</code> || <code>01'''11'''0010</code>
| |
| | <code>111101</code> || <code>01'''00'''1101</code>
| |
| |-
| |
| | <code>000100</code> || <code>01'''1'''0010'''1'''</code>
| |
| | <code>111011</code> || <code>01'''0'''1101'''0'''</code>
| |
| |rowspan=2| 01x____x
| |
| |-
| |
| | <code>001000</code> || <code>01'''1'''0100'''1'''</code>
| |
| | <code>110111</code> || <code>01'''0'''1011'''0'''</code>
| |
| |-
| |
| | <code>010000</code> || <code>010100'''11'''</code>
| |
| | <code>101111</code> || <code>011011'''00'''</code>
| |
| |rowspan=2| 01_____xx
| |
| |-
| |
| | <code>100000</code> || <code>011000'''11'''</code>
| |
| | <code>011111</code> || <code>010111'''00'''</code>
| |
| |-
| |
| | −2 || <code>110000</code> || <code>01110'''1'''00</code>
| |
| | +2 || <code>001111</code> || <code>01001'''0'''11</code>
| |
| | 01____x__
| |
| |-
| |
| |rowspan=2|Control
| |
| | <code>K 000111</code> || <code>01000111</code>
| |
| |rowspan=2|Control
| |
| | <code>K 111000</code> || <code>01111000</code>
| |
| |rowspan=2|
| |
| |-
| |
| | <code>K 010101</code> || <code>01010101</code>
| |
| | <code>K 101010</code> || <code>01101010</code>
| |
| |}
| |
| | |
| Because we excluded the patterns <code>11110000</code> and <code>00001111</code>,
| |
| | |
| Note that no data symbol contains more than four consecutive matching bits, or begins or ends with more than three identical.
| |
| Thus, the longest run of identical bits that will be produced is 6. (I.e. this is a (0,5) [[Run length limited|RLL code]], with a worst-case [[running disparity]] of +3 to -3.)
| |
| | |
| Any occurrence of 6 consecutive identical bits constitutes a comma sequence or sync mark or [[syncword]]; it identifies the symbol boundaries precisely.
| |
| Those 6 bits straddle the inter-symbol boundary with exactly 3 of those identical bits at the end of one symbol, and 3 of those identical bits at the start of the following next symbol.
| |
| | |
| == See also ==
| |
| * [[8b/10b encoding]], another fixed-table system with a higher [[code rate]] but less error detection.
| |
| * [[64b/66b encoding]], linear feedback register.
| |
| | |
| == External links ==
| |
| * Freepatents online, United States patent 6,876,315: [http://www.freepatentsonline.com/6876315.html DC-balanced 6B/8B transmission code with local parity].
| |
| | |
| {{Bit-encoding}}
| |
| | |
| {{DEFAULTSORT:6b 8b Encoding}}
| |
| [[Category:Line codes]]
| |
| | |
| | |
| {{electronics-stub}}
| |