De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

En telecomunicaciones , 4B5B es una forma de código de línea de comunicaciones de datos . 4B5B mapea grupos de 4 bits de datos en grupos de 5 bits para su transmisión. Estas palabras de 5 bits están predeterminadas en un diccionario y se eligen para garantizar que habrá suficientes transiciones en el estado de línea para producir una señal de reloj automático . Un efecto colateral del código es que se necesitan un 25% más de bits para enviar la misma información.

Una alternativa al uso de la codificación 4B5B es usar un codificador . Algunos sistemas utilizan codificadores junto con la codificación 4B5B para asegurar el equilibrio de CC y mejorar la compatibilidad electromagnética .

Dependiendo del estándar o la especificación de interés, puede haber varios códigos de salida de 5 bits que no se utilicen. La presencia de cualquiera de los códigos no utilizados en el flujo de datos puede usarse como una indicación de que hay una falla en algún lugar del enlace. Por lo tanto, los códigos no utilizados se pueden utilizar para detectar errores en el flujo de datos.

Aplicaciones [ editar ]

4B5B se popularizó mediante la interfaz de datos distribuidos por fibra (FDDI) a mediados de la década de 1980. Fue adoptado para la transmisión de audio digital por MADI en 1989. [1] y por Fast Ethernet en 1995.

El nombre 4B5B generalmente se considera la versión FDDI. Se han utilizado otros códigos de 4 a 5 bits para la grabación magnética y se conocen como grabación codificada en grupo (GCR), pero son (0,2) códigos de longitud de ejecución limitada , con un máximo de dos ceros consecutivos. 4B5B permite hasta tres ceros consecutivos (un código RLL (0,3)), proporcionando una mayor variedad de códigos de control.

En fibra óptica, la salida 4B5B está codificada en NRZI . En su lugar, FDDI sobre cobre (CDDI) utiliza codificación MLT-3 , al igual que 100BASE-TX Fast Ethernet.

La codificación 4B5B también se usa para la comunicación USB Power Delivery , [2] donde se envía a través del pin CC USB-C (codificado adicionalmente usando el código de marca bifásico ) o las líneas eléctricas USB-A / B (codificado adicionalmente usando el cambio de frecuencia codificación ).

Marcando [ editar ]

Los códigos 4B5B están diseñados para producir al menos dos transiciones por cada 5 bits de código de salida, independientemente de los datos de entrada. Cuando están codificadas en NRZI , las transiciones proporcionan las transiciones de reloj necesarias para el receptor. Por ejemplo, una ejecución de 4 bits como 0000 2 no contiene transiciones y eso causa problemas de reloj para el receptor. 4B5B resuelve este problema asignando al bloque de 4 bits un código de 5 bits, en este caso, 11110 2 .

Tabla de codificación [ editar ]

Tres bits cero consecutivos solo aparecen en datos normales cuando un código que termina con dos bits 0 (2, E) va seguido de un código que comienza con un bit 0 (1, 4, 5, 6, 7), por lo que siempre aparecerá separado por múltiplos de la longitud del símbolo codificado de 5 bits (y nunca separados por un solo símbolo). Las infracciones de esta propiedad se utilizan para códigos de sincronización especiales.

Caracteres de comando [ editar ]

Los siguientes códigos a veces se denominan caracteres de comando. Se usan comúnmente en pares, aunque USB-PD usa secuencias de 4 símbolos para comenzar sus paquetes.

Referencias [ editar ]

  1. ^ AES10-2008 (r2019): Práctica recomendada de AES para ingeniería de audio digital - Interfaz digital de audio multicanal en serie (MADI) , Sociedad de ingeniería de audio
  2. ^ "5.3 Codificación de símbolos". Especificación de suministro de energía de bus serie universal . Revisión 2.0 Versión 1.3. Foro de Implementadores USB . 12 de enero de 2017. p. 105. Se utilizará el código de línea 4b5b . Esto codifica datos de 4 bits en símbolos de 5 bits para la transmisión y decodifica los símbolos de 5 bits en datos de 4 bits para que los consuma el receptor.

Enlaces externos [ editar ]

  • Simulador - Línea de codificador 4B / 5B escrita en Matlab
  • CodSim 2.0: Simulador de código abierto para el Modelo de Comunicaciones de Datos Digitales de la Universidad de Málaga escrito en HTML