64b66b-kod

Den 64b / 66b-kod är en linje -kod som avbildar en 64 bitars dataord till ett 66 bitars kodord. Denna linjekod används i samband med Gigabit Ethernet , såsom 10 Gigabit Ethernet, 40 Gigabit Ethernet och 100 Gigabit Ethernet. 64b / 66b-linjekoden är strukturerad helt annorlunda och har olika spektrala och statistiska egenskaper än t.ex. B. 8b10b-koden .

Liksom varje linjekod används den för att spektralt anpassa en användardatasekvens till de fysiska kraven för överföringsmediet, såsom en linje. Typen av implementering säkerställer särskilt att den genererade kodsekvensen är fri från direkta komponenter , vilket möjliggör överföring via pulstransformatorer som inte tillåter någon direkt komponent att passera i signalen. Pulstransformatorer används för galvanisk isolering i området för det fysiska Ethernet-gränssnittet . Dessutom garanterar 64b / 66b-kodningen att mottagaren kan återställa klockan från kodordet . Detta är nödvändigt så att mottagaren kan känna igen de tider då en viss status sänds.

funktionalitet

De 66 bitarna i ett kodord introduceras av en 2-bitars ingress . De fyra möjliga kombinationerna av inledningen betyder vardera:

Inledning 01
Följande 64 bitar är användardata.
Inledning 10
Detta följs omedelbart av ett typfält med en längd på 8 bitar med efterföljande 56 bitar styr- och styrinformation eller användardata. Betydelsen beror på typfältet. Typfältet är 8 bitar långt, men endast 16 värden och därmed funktioner är tillåtna; dessa har ett Hamming-avstånd på minst 4 mellan dem.
Inledning 00 och 11
Inte tillåtet. Skapa (vid andra tillfället i rad) ett fel vid mottagning.

Användningen av 01 eller 10 som en giltig ingress garanterar en signalkant i ingressen. Som ett resultat kan symbolklockan bestämmas på mottagarsidan med hjälp av en faslåst slinga .

64-bitars användardata eller 56 bitar av kontroll- och övervakningsdata är länkade med hjälp av en självsynkroniserande scrambler , vilket innebär att datafälten bara är fria från konstanta komponenter på lång sikt. Scrambler implementeras i form av ett linjärt återkopplingsskiftregister . Scrambler-metoden för 64b / 66b-kodning är en stor skillnad jämfört med den tabellbaserade linjekoden 8b10b. Koderna som används i typfältet består av fyra 0 och 1 bitar vardera , så att ingen scrambler krävs.

Förvrängningspolynomet är: x 58 + x 39 + 1.

Ändringar av 64b / 66b-koden

128b / 130b-kod

Inledningen följs inte av 64 bitar, utan 128 bitar. Används med PCI Express version 3 eller högre.

Förvrängningspolynomet är: x 23 + x 21 + x 16 + x 8 + x 5 + x 2 + 1.

128b / 132b-kod

Inledningarna är inte 01 och 10 utan 0011 och 1100. Dessutom, som med 128b / 130b-koden, följer 128 databitar; används med USB 3.1.

64b / 67b-kod

Inledningarna lyder:

Inledning 001
Följande 64 bitar är användardata.
Inledning 101
Följande 64 bitar är användardata. De är inverterade.
Inledning 010
Följande 64 bitar är kontrollinformation.
Inledning 110
Följande 64 bitar är kontrollinformation. De är inverterade.
Förord ​​x 00 och x 11
Inte tillåtet.

Genom att ställa in den första biten på rätt sätt kan kodaren aktivt motverka DC-drift och begränsa skillnaden till −33 ... +33. I fallet med en 64b / 66b-kod är skillnaden inte begränsad även i det statistiska medelvärdet, vilket leder till baslinjedrift som leder till signifikant sämre överföringsegenskaper än t.ex. B. leder till de av 8b / 10b-koder.

De statistiska och spektrala egenskaperna är mycket mer välvilliga än de för 64b / 66b-kodningen. Den här koden används i Interlaken- protokollet som utvecklats av Cisco Systems och Cortina Systems . används för kommunikation mellan Xilinx och Altera FPGA .

webb-länkar

Individuella bevis

  1. Höghastighets I / O-gränssnitt: Interlaken Protocol FTF-NET-F0154. (PDF; engelska)