4B5B

Inom telekommunikation är 4B5B en form av datakommunikationslinjekod . 4B5B mappar grupper om 4 bitar data till grupper om 5 bitar för överföring. Dessa 5-bitars ord är förutbestämda i en ordbok och de är valda för att säkerställa att det kommer att finnas tillräckliga övergångar i linjetillståndet för att producera en självklockningssignal . En bieffekt av koden är att 25 % fler bitar behövs för att skicka samma information.

Ett alternativ till att använda 4B5B-kodning är att använda en scrambler . Vissa system använder scramblers i kombination med 4B5B-kodning för att säkerställa DC-balans och förbättra elektromagnetisk kompatibilitet .

Beroende på standarden eller specifikationen av intresse kan det finnas flera 5-bitars utgångskoder som inte används. Närvaron av någon av de oanvända koderna i dataströmmen kan användas som en indikation på att det finns ett fel någonstans i länken. Därför kan de oanvända koderna användas för att upptäcka fel i dataströmmen.

Ansökningar

4B5B populariserades av Fiber Distributed Data Interface (FDDI) i mitten av 1980-talet. Den antogs för digital ljudöverföring av MADI 1989 och av Fast Ethernet 1995.

Namnet 4B5B anses allmänt betyda FDDI-versionen. Andra 4-till-5-bitars koder har använts för magnetisk inspelning och är kända som gruppkodad inspelning (GCR), men de är (0,2) körlängdsbegränsade koder, med högst två på varandra följande nollor. 4B5B tillåter upp till tre nollor i följd (en (0,3) RLL-kod), vilket ger en större variation av kontrollkoder.

På optisk fiber är 4B5B-utgången NRZI- kodad. FDDI över koppar (CDDI) använder MLT-3-kodning istället, liksom 100BASE-TX Fast Ethernet.

4B5B-kodningen används också för USB Power Delivery -kommunikation, där den skickas via USB-C CC-stiftet (kodas ytterligare med tvåfasmärkeskod ) eller USB-A/B-strömledningarna (vidare kodas med frekvensskiftnyckel ).

Klocka

4B5B-koder är designade för att producera minst två övergångar per 5 bitar av utgångskod oavsett indata. Övergångarna tillhandahåller nödvändiga övergångar för att mottagaren ska kunna utföra klockåterställning . Till exempel innehåller en körning på 4 bitar som 0000 2 med NRZI- kodning inga övergångar och det kan orsaka klockningsproblem för mottagaren. 4B5B löser detta problem genom att tilldela 4-bitarsblocket en 5-bitars kod, i detta fall 11110 2 .

Kodningstabell

Data 4B5B-kod
(Hex) (Binär)
0 0000 11110
1 0001 01001
2 0010 10100
3 0011 10101
4 0100 01010
5 0101 01011
6 0110 01110
7 0111 01111
Data 4B5B-kod
(Hex) (Binär)
8 1000 10010
9 1001 10011
A 1010 10110
B 1011 10111
C 1100 11010
D 1101 11011
E 1110 11100
F 1111 11101
Symbol 4B5B-kod Beskrivning FDDI Snabbt Ethernet
H 00100 Stanna Ja Ja
jag 11111 På tomgång Ja Ja
J 11 000 Börja #1 Ja Ja
K 10001 Börja #2 Ja Ja
L 00110 Börja #3 Nej Nej
F 00 000 Tyst (förlust av signal) Ja Ja
R 00111 Återställa Ja Ja
S 11001 Uppsättning Ja Nej
T 01101 Avsluta (avsluta) Ja Ja

Tre på varandra följande nollbitar visas endast i normala data när en kod som slutar med två 0-bitar (2, E) följs av en kod som börjar med en 0-bit (1, 4, 5, 6, 7), så kommer alltid att visas separerade med multiplar av den 5-bitars kodade symbollängden (och aldrig åtskilda av en enda symbol). Överträdelser av den här egenskapen används för speciella synkroniseringskoder.

Kommandotecken

Följande koder kallas ibland för kommandotecken. De används vanligtvis i par, även om USB-PD använder 4-symbolsekvenser för att börja sina paket.

Kontrollkaraktär 5b symboler Syfte
JK 11000 10001 Synkronisera, Starta avgränsare
jag 11111 100BASE-X tomgångsmarkör
T 01101 USB-PD ändavgränsare
TT 01101 01101 FDDI ändavgränsare
TS 01101 11001 Inte använd
IH 11111 00100 SAL
TR 01101 00111 100BASE-X ändavgränsare
SR 11001 00111 Inte använd
SS 11001 11001 Inte använd
H 00100 100BASE-X sändningsfel
JJJK 11000 11000 11000 10001 USB-PD Start Of Packet (SOP)
JJLL 11000 11000 00110 00110 USB-PD SOP′
JLJL 11000 00110 11000 00110 USB-PD SOP″
JSSL 11000 11001 11001 00110 USB-PD SOP′_Debug
JSLK 11000 11001 00110 10001 USB-PD SOP″_Debug
RRRS 00111 00111 00111 11001 USB-PD hård återställning
RJRL 00111 11000 00111 00110 USB-PD-kabelåterställning

Se även

externa länkar