Codificació 64b/66b

De la Viquipèdia, l'enciclopèdia lliure

En xarxes i transmissió de dades, 64b/66b és un codi de línia que transforma dades de 64 bits en codi de línia de 66 bits per proporcionar prou canvis d'estat per permetre una recuperació raonable del rellotge i l'alineació del flux de dades al receptor. Va ser definit pel grup de treball IEEE 802.3 com a part de l'esmena IEEE 802.3ae-2002 que va introduir 10 Ethernet Gbit/s. En el moment en què es va desplegar 64b/66b, en permetia 10 Gb Ethernet que es transmetrà amb els mateixos làsers utilitzats per SONET OC-192, en lloc de requerir el 12.5 Làsers Gbit/s que no s'esperaven estar disponible durant diversos anys.[1]

La sobrecàrrega de protocol d'un esquema de codificació és la relació entre el nombre de bits de càrrega útil en brut i el nombre de bits de càrrega útil en brut més el nombre de bits de codificació afegits. La sobrecàrrega de la codificació 64b/66b és de 2 bits de codificació per cada 64 bits de càrrega útil o 3,125%. Aquesta és una millora considerable en la sobrecàrrega del 25% de l'esquema de codificació 8b/10b utilitzat anteriorment, que va afegir 2 bits de codificació a cada 8 bits de càrrega útil.[2]

La sobrecàrrega es pot reduir encara més duplicant la mida de la càrrega útil per produir la codificació 128b/130b utilitzada per PCIe 3.0.[3]

Tal com indica el nom del seu esquema, 64 bits de càrrega útil es codifiquen com una entitat de 66 bits. L'entitat de 66 bits es fa prefixant un dels dos possibles preàmbuls de 2 bits als 64 bits de càrrega útil.

  • Si el preàmbul és 01 2, els 64 bits de càrrega útil són dades.
  • Si el preàmbul és 10 2, els 64 bits de càrrega útil contenen un camp de tipus de 8 bits i 56 bits d'informació i/o dades de control.

Els objectius de disseny de 64b/66b són la recuperació del rellotge, l'alineació del flux, l'equilibri de CC, la densitat de transició i la durada del recorregut. La codificació 8b/10b garanteix límits estrictes en l'equilibri de DC, la densitat de transició i la durada del recorregut, mentre que 64b/66b proporciona límits estadístics d'aquestes propietats.[4]


L'USB 3.1 i el DisplayPort 2.0 utilitzen la codificació 128b/132b, que és idèntica a 64b/66b, però duplica cadascun dels bits del preàmbul per reduir el risc d'errors no detectats.

Referències[modifica]

  1. «64b/66b Encoding - Properties and Application | Properties Application» (en anglès). https://www.liquisearch.com.+[Consulta: 12 març 2023].
  2. «Microchip Lightning Support» (en anglès). https://microchip.my.site.com.+[Consulta: 12 març 2023].
  3. «1.2.3.1.4. 64B/66B Encoder» (en anglès). https://www.intel.com.+[Consulta: 12 març 2023].
  4. «10G ETHERNET 64B/66B ENCODING» (en anglès). https://www.fmad.io.+[Consulta: 12 març 2023].