Cartilla JESD204C: Qué hay de nuevo y qué hay para ti - Parte 2

En la primera parte de la serie de cartillas JESD204C, se justificó la nueva versión de la norma JESD204 describiendo algunos de los problemas que resuelve. Las diferencias entre las versiones B y C de la norma se resumieron describiendo la nueva terminología y funcionalidad y, a continuación, dando una visión general de estas diferencias capa por capa. Dado que la Parte 1 ha sentado las bases adecuadas, veamos con más detalle algunas de las novedades más notables de la norma JESD204C

Capas de enlace 64b/66b y 64b/80b

Para la capa de enlace 64b/66b, el bloque de datos de 66 bits consta de dos bits de cabecera de sincronización seguidos de ocho bytes de datos de muestra y se basa parcialmente en el formato de bloque definido en la cláusula 49 de la norma IEEE 802.3. A diferencia de la norma IEEE, no hay codificación: la carga útil es simplemente los datos de muestra del convertidor que han sido empaquetados en tramas de datos por la capa de transporte. Como no hay una codificación que garantice que se produzca un determinado número de transiciones de datos para asegurar el equilibrio de la cc, los datos de la muestra deben estar codificados. Estos bytes codificados de datos enmarcados se colocan directamente en la capa de enlace con los dos bits de cabecera de sincronización adjuntos.

El formato de bloque 64b/66b se ilustra en la Figura 1. El ejemplo muestra el caso en que un canal de datos está formado por tramas que contienen una muestra por trama de un convertidor. Las reglas de asignación de bloques son muy similares a las reglas de asignación de tramas de la norma JESD204B. El mapeo de los bytes en bloques de 64 bits se hace en orden, con D0 representando el primer byte de una trama. Por ejemplo, si F = 8, D0 representa el primer byte de la trama JESD204C, y D7 representa el último byte de la trama JESD204C. El primer byte de la trama es el byte cuyo MSB es el MSB de la muestra0 del convertidor0 (como en JESD204B). Por ejemplo, si F = 2, D0 y D1 representan el primer fotograma, D2 y D3 el segundo, etc.

Para mantener la coherencia con el enfoque utilizado en JESD204B, los bytes del multibloque se desplazan en el codificador/descodificador en orden de MSB a LSB

En los casos en que E es 1, cada multibloque comienza en un límite de trama. Si E > 1, el multibloque ampliado empezará (¡y debe!) en un límite de cuadro. Esto se discute con más detalle en las secciones Multibloque (MB) y Multibloque Extendido (EMB).

Figura 1. Ejemplo de formato de bloque 64b/66b para LMFS = 1.1.2.1, N = N' = 16.

La cabecera de sincronización es un valor no codificado de 2 bits al principio de cada bloque, cuyo contenido se interpreta para descodificar un único bit de transición de sincronización. Estos bits deben ser una secuencia 0-1 para indicar un 1 lógico, o una secuencia 1-0 para indicar un 0 lógico. La tabla 1 enumera los valores de los bits de transición de temporización en la cabecera de temporización

Tabla 1. Valores de la cabecera de sincronización
Cabecera de sincronización (0,1) Bit de transición de sincronización
00 Inválido
01 1
10 0
11 Inválido

El formato de bloque de 64b/80b se muestra en la Figura 2. Además de los ocho bytes de datos de muestra y los dos bits de cabecera de sincronización, se colocan dos bits de relleno entre cada uno de los bytes. Los valores de los bits de relleno se determinan mediante una secuencia PRBS de 17 bits para reducir los destellos y garantizar un número adecuado de transiciones de datos para mantener el equilibrio de CC. Los bits de relleno no codificados se insertan en el bloque después de que los datos de muestra hayan sido codificados.

Figura 2. Ejemplo de formato de bloque 64b/80b para LMFS = 1.1.2.1, N = N' = 16.

La opción 64b/80b se ha proporcionado para mantener las mismas relaciones de reloj que 8b/10b, lo que permite un diseño de PLL más sencillo y minimiza los destellos. Este esquema sería preferible a 8b/10b en las aplicaciones que quieran utilizar la corrección de errores hacia delante o aprovechar las otras características que ofrece la palabra de sincronización que se discutirán en breve.

Multibloque (MB) y Multibloque Extendido (EMB)

Hay 32 bloques en un multibloque JESD204C. Los 32 bits de transición de temporización de cada multibloque constituyen una palabra de temporización de 32 bits. Más adelante hablaremos de ello con más detalle. Un multibloque extendido es un contenedor de bloques E y debe contener un número entero de fotogramas. Se requiere E > 1 cuando una multitrama no contiene un número entero de tramas. El formato del multibloque y del multibloque ampliado se muestra en la Figura 3.

Figura 3. formato multibloque y multibloque ampliado JESD204C.

Un multibloque tiene 2112 (32×66) o 2560 (32×80) bits, según el esquema de codificación de 64 bits utilizado. En la mayoría de las implementaciones y configuraciones, un multibloque ampliado será simplemente un multibloque. El parámetro E se introduce en la norma JESD204C y determina el número de multibloques en el multibloque ampliado. El valor por defecto de E es 1. Como ya se ha dicho, se requiere E > 1 para las configuraciones en las que el número de bytes de la trama, F, no es una potencia de dos. La ecuación de E es la siguiente: E = LCM(F, 256)/256. Generalmente se prefieren estas configuraciones cuando se transmiten muestras de 12 bits y N' se ajusta a 12 para maximizar la eficiencia del ancho de banda en el enlace. Este requisito garantiza que el límite del EMB coincida con un límite del marco

Las figuras 4 y 5 muestran un ejemplo de configuración JESD204C en la que E > 1. La configuración JESD204C mostrada corresponde al caso en que LMFS = 2.8.6.1, N' = 12 y E = 3. La figura 4 muestra el mapeo de la capa de transporte. En esta configuración, hay cuatro muestras de 12 bits por canal, lo que se traduce en seis bytes. Como cada bloque de un multibloque requiere ocho bytes, el bloque se rellena con dos bytes (1,33 muestras) de la siguiente trama.

Figura 4: Mapeo de la capa de transporte para SML = 2.8.6.1, N' = 12, E = 3.

La figura 5 muestra cómo se forman los bloques y multibloques utilizando las tramas de datos de la capa de transporte. Como se muestra, puedes ver que los límites del marco se alinean con los límites del bloque en uno de cada tres bloques. Como los multibloques están formados por 32 bloques, la alineación de tramas en un multibloque no se consigue hasta el tercer multibloque. Por tanto, E = 3.

Figura 5. Alineación multibloque/trama de la salida del serializador para LMFS = 2.8.6.1, N' = 12, E = 3.

LEMC es el contador multibloque ampliado y equivale aproximadamente a LMFC en la capa de enlace 8b/10b. SYSREF alinea todos los LEMC de un sistema y los límites de los LEMC se utilizan para determinar la sincronización y la alineación de los canales

Palabra de sincronización

La palabra de sincronización de 32 bits está formada por cada una de las cabeceras de muestra de los 32 bloques del multibloque, donde el bit 0 se transmite primero. La palabra de sincronización se utiliza para proporcionar la sincronización del canal y permitir una latencia determinista. Además, puede proporcionar opcionalmente la comprobación de errores CRC, la corrección de errores hacia delante, o proporcionar un canal de control para que el transmisor se comunique con el receptor.

Hay tres opciones de formato diferentes para la palabra de sincronización de 32 bits. En cada caso, se requiere la secuencia de fin de bloque, ya que se utiliza para adquirir la sincronización del bloque múltiple y la alineación del canal. La Tabla 2 y la Tabla 3 muestran los diferentes campos de bits disponibles en los dos casos de uso más comunes.

Tabla 2. Palabra de sincronización CRC-12
Palabra de sincronización Bit Nombre del campo Función
0 CRC11

Bits 11:9 del valor CRC de 12 bits, aplicable al multibloque anterior

1 CRC10
2 CRC9
3 1 Siempre 1
4 CRC8 Bits 8:6 del valor CRC de 12 bits, aplicable al multibloque anterior
5 CRC7
6 CRC6
7 1 Siempre 1
8 CRC5 Bits 5:3 del valor CRC de 12 bits, aplicable al multibloque anterior
9 CRC4
10 CRC3
11 1 Siempre 1
12 CRC2 Bits 2:0 del valor CRC de 12 bits, aplicable al multibloque anterior
13 CRC1
14 CRC0
15 1 Siempre 1
16 Cmd6 7:5 bits del canal de control de 7 bits
17 Cmd5
18 Cmd4
19 1 Siempre 1
20 Cmd3 Bit 3 del canal de control de 7 bits
21 1 Siempre 1
22 EoEMB Broca de final de extensión multibloque
23 1 Siempre 1
24 Cmd2 Bits 2:0 del canal de control de 7 bits
25 Cmd1
26 Cmd0
27 0 Señal piloto de fin de bloque múltiple
28 0
29 0
30 0
31 1
Tabla 3. Palabra de sincronización FEC
Palabra de sincronización Bit Nombre del campo Función
0 FEC[25] Bits 25:4 de la palabra de corrección de errores hacia delante de 26 bits - aplicable al multibloque anterior
1 FEC[24]
2 FEC[23]
3 FEC[22]
4 FEC[21]
5 FEC[20]
6 FEC[19]
7 FEC[18]
8 FEC[17]
9 FEC[16]
10 FEC[15]
11 FEC[14]
12 FEC[13]
13 FEC[12]
14 FEC[11]
15 FEC[10]
16 FEC[9]
17 FEC[8]
18 FEC[7]
19 FEC[6]
20 FEC[5]
21 FEC[4]
22 EoEMB Broca de final de extensión multibloque
23 FEC[3] Bits 3:0 de la palabra de corrección de errores hacia delante de 26 bits - aplicable al multibloque anterior
24 FEC[2]
25 FEC[1]
26 FEC[0]
27 0 Señal piloto de fin de bloque múltiple
28 0
29 0
30 0
31 1

funcionamiento del enlace 64b/66b

El proceso de establecimiento del enlace cuando se utiliza la capa de enlace 64b/66b comienza con la alineación de la cabecera de sincronización, luego pasa a la sincronización multibloque ampliada y, finalmente, a la alineación multibloque ampliada.

Alineación de la cabecera de sincronización

El bit de transición de sincronización de la cabecera de sincronización garantiza que haya una transición de datos en cada límite de bloque (66 bits). Una máquina de estado en el receptor JESD204C detecta una transición de datos y busca otra transición 66 bits después. Si la máquina de estado detecta transiciones de bits a intervalos de 66 bits durante 64 bloques consecutivos, se alcanza el bloqueo de la cabecera de sincronización (SH_lock). La máquina se reinicia si no se detectan 64 transiciones consecutivas.

Sincronización multibloque ampliada

Una vez alineada la cabecera de sincronización, el receptor busca la secuencia de fin de bloque ampliada (EoEMB) (100001) en los bits de transición. La estructura de la palabra de sincronización garantiza que esta secuencia sólo puede producirse en el momento adecuado. Una vez identificado un EoEMB, la máquina de estado examina cada 32nd palabra de sincronización para garantizar la presencia de la señal piloto de fin de bloque (00001). Si E = 1, el bit EoEMB también estará presente con la señal piloto. Si E > 1, entonces cada E × 32 bits de transición, la señal piloto habrá incluido el bit EoEMB. Una vez que se detectan cuatro secuencias válidas consecutivas, se alcanza el bloqueo de fin de bloque ampliado (EMB_LOCK). La monitorización de cada transición de E × 32 bits continúa y el EMB_LOCK se pierde si no se detecta una secuencia válida y se reinicia el proceso de alineación.

Alineación multibloque ampliada (carril)

La alineación de carriles cuando se utiliza la capa de enlace de 64b/66b es muy similar a la de la capa de enlace de 8b/10b, ya que en el receptor JESD204C se utiliza un búfer elástico en cada carril para almacenar los datos entrantes. Esto se denomina alineación multibloque ampliada y los búferes comienzan a almacenar datos en el límite EoEMB (en lugar de en el límite /K/ a /R/ durante ILAS cuando se utiliza la capa de enlace 8b/10b). La figura 6 ilustra cómo se consigue la alineación de los canales. El búfer de recepción de cada canal comienza a almacenar datos en el búfer una vez que se recibe el último bit del EoEMB, excepto para el último canal en llegar. Cuando se recibe el último EoEMB del canal entrante, se desencadena la liberación de todos los búferes de recepción del canal para que todos los canales estén ahora alineados.

Figura 6. Alineación multibloque extendida JESD204C (pista).

Supervisión de errores y corrección de errores posterior

Las opciones de la palabra de sincronización JESD204C ofrecen al usuario la posibilidad de controlar o corregir los errores que puedan producirse en la transmisión de datos JESD204. La contrapartida asociada a la corrección de errores es una latencia adicional en el sistema. Para la mayoría de las aplicaciones, el control de errores mediante la palabra de sincronización CRC-12 es adecuado porque proporciona una tasa de error de bits (BER) superior a 1 × 10-15.

El codificador CRC-12 del transmisor JESD204C toma los bits de datos codificados de cada multibloque y calcula 12 bits de paridad. Estos bits de paridad se transmiten al receptor durante el siguiente multibloque. El receptor también calcula 12 bits de paridad de cada multibloque de datos que recibe, y estos bits se comparan con los recibidos en la palabra de sincronización. Si todos los bits de paridad no coinciden, hay al menos un error en los datos recibidos y puede aparecer una bandera de error.

Para las aplicaciones sensibles a los errores que no son sensibles a la latencia añadida (como los equipos de prueba y medición), el uso de FEC puede lograr una BER mejor que 10 × 10-24. El circuito FEC del transmisor JESD204C calcula los bits de paridad FEC de los bits de datos codificados en un multibloque y codifica estos bits de paridad en el flujo de cabecera de sincronización del siguiente multibloque. El receptor calcula el síndrome del bit recibido, que es la diferencia entre la paridad generada localmente y la paridad recibida. Si el síndrome es cero, se supone que los bits de datos recibidos son correctos. Si el síndrome es distinto de cero, puede utilizarse para determinar el error más probable.

Los bits de paridad FEC se calculan de forma similar al CRC. El codificador FEC toma los 2048 bits de datos multibloque codificados y añade 26 bits de paridad para construir un código cíclico binario acortado. El polinomio generador de este código es :

Ecuación 1

Este polinomio puede corregir hasta un error de ráfaga de 9 bits por multibloque.

Reflexiones finales

Para satisfacer la demanda de un procesamiento de datos más rápido para las aplicaciones de uso intensivo de datos en los próximos años, JESD204C define la interfaz multigigabit como un canal de comunicación obligatorio entre los convertidores de datos y los dispositivos lógicos. Las velocidades de canal de hasta 32 GSPS y la codificación 64b/66b permiten aplicaciones de ancho de banda ultra alto con una sobrecarga mínima para mejorar la eficiencia del sistema. Las comunicaciones 5G, el radar y las aplicaciones de guerra electrónica se beneficiarán de estas y otras mejoras del estándar. Con la adición de la corrección de errores, los instrumentos avanzados y otras aplicaciones pueden esperar un funcionamiento sin errores durante muchos años

Para más información sobre el estándar JESD204 y su implementación en los productos de Analog Devices, visita la página de la interfaz serie JESD204 de ADI. Para obtener más información sobre los convertidores de alta velocidad de ADI, visita la página de convertidores de RF y la página de convertidores de datos de RF de 28 nm. Para más información sobre los productos transceptores de ADI, visita nuestra página RadioVerseTM página.

Si quieres conocer otros artículos parecidos a Cartilla JESD204C: Qué hay de nuevo y qué hay para ti - Parte 2 puedes visitar la categoría Generalidades.

¡Más Contenido!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir