6b/8b-kodning
Inom telekommunikation är 6b/8b en linjekod som expanderar 6- bitars koder till 8-bitars symboler i syfte att upprätthålla DC-balans i ett kommunikationssystem.
6b/8b-kodningen är en balanserad kod -- varje 8-bitars utgångssymbol innehåller 4 nollbitar och 4 enbitar. Så koden kan, som en paritetsbit , upptäcka alla enbitsfel.
Antalet 8-bitars mönster med 4 bitar är den binomala koefficienten = 70. Om man dessutom utesluter mönstren 11110000
och 00001111
tillåter detta 68 kodade mönster: 64 datakoder, plus 4 ytterligare kontrollkoder.
Kodningsregler
De 64 möjliga 6-bitars ingångskoderna kan klassificeras efter deras olikhet, antalet 1 bitar minus antalet 0 bitar:
Ettor | Nollor | Skillnad | siffra |
---|---|---|---|
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 |
6-bitars ingångskoder mappas till 8-bitars utgångssymboler enligt följande:
-
De 20 6-bitarskoderna med disparitet 0 har prefixet10.
Exempel: 000111 → 10 000111 Exempel: 101010 → 10 101010 -
De 15 6-bitarskoderna med disparitet +2, andra än001111
, har prefixet00
Exempel: 010111 → 00 010111 -
De 15 6-bitarskoderna med disparitet −2, annat än110000
, har11 som prefix
. Exempel: 101000 → 11 101000 - De återstående 20 koderna: 12 med disparitet ±4, 2 med disparitet ±6,
001111
,110000
och de 4 kontrollkoderna, tilldelas koder som börjar med01
enligt följande:
Typ | Inmatning | Produktion | Typ | Inmatning | Produktion | Komplement | ||
---|---|---|---|---|---|---|---|---|
−6 | 000 000 |
010 11 00 1
|
+6 | 111111 |
011 00 11 0
|
01_xx__x | ||
−4 | 000001 |
01 11 0001
|
+4 | 111110 |
01 00 1110
|
01xx____ | ||
000010 |
01 11 0010
|
111101 |
01 00 1101
|
|||||
000100 |
01 1 0010 1
|
111011 |
0 01 1101 0
|
01x____x | ||||
001000 |
01 1 0100 1
|
110111 |
0 01 1011 0
|
|||||
010 000 |
010100 11
|
101111 |
011011 00
|
01_____xx | ||||
100 000 |
011000 11
|
011111 |
010111 00
|
|||||
−2 | 110 000 |
01110 1 00
|
+2 | 001111 |
0 01001 11
|
01____x__ | ||
Kontrollera | K 000111 |
01000111
|
Kontrollera | K 111000 |
01111000
|
|||
K 010101 |
01010101
|
K 101010 |
01101010
|
Uppenbarligen innehåller ingen datasymbol mer än fyra på varandra följande matchande bitar, och eftersom mönstren 11110000
och 00001111
är exkluderade, börjar eller slutar ingen datasymbol med mer än tre identiska bitar. Den längsta körningen av identiska bitar som kommer att produceras är alltså 6. (Dvs detta är en (0,5) RLL-kod , med en värsta tänkbar körskillnad på +3 till -3.)
Varje förekomst av 6 på varandra följande identiska bitar utgör en kommasekvens eller synkmarkering eller synkord ; den identifierar symbolgränserna exakt. Dessa 6 bitar gränsar över symbolgränsen med exakt 3 av dessa identiska bitar i slutet av en symbol, och 3 av de identiska bitarna i början av följande nästa symbol.
Se även
- 8b/10b-kodning , ett annat system med fast tabell med högre kodhastighet men mindre feldetektering.
- 64b/66b-kodning , linjärt återkopplingsregister.
externa länkar
- Gratispatent online, USA-patent 6 876 315: DC-balanserad 6B/8B-överföringskod med lokal paritet .