¿Cuál es la utilidad del reloj de referencia en PCI express?

2

Entiendo que PCI Express es una conexión en serie con reloj incrustado con las señales. Entonces, ¿cuál es la utilidad de la señal de referencia del reloj? ¿Para qué se utiliza?

¿El reloj de referencia debe coincidir y enrutarse con los carriles de datos? ¿Existe la posibilidad de sesgar el reloj de referencia?

    
pregunta Lord Loh.

3 respuestas

4

Se requiere el reloj de referencia compartido para que todos los transmisores estén bloqueados en frecuencia y no se requiera compensación de compensación de frecuencia en los receptores. Obviamente, tendrán que recuperar el reloj y compensar la fase, pero la fase será fija (bueno, más o menos). Sin él, las palabras en código inactivas deberían insertarse o eliminarse periódicamente para compensar la deriva en la frecuencia del reloj de referencia entre el transmisor y el receptor. Protocolos como 10G Ethernet tienen espacios entre cuadros entre paquetes que pueden extenderse o contraerse para compensar hasta 200 ppm de desplazamiento de frecuencia entre socios de enlace. PCIe no admite esto, por lo que requiere un reloj de referencia compartido.

    
respondido por el alex.forencich
4

El reloj no está incrustado con la señal de datos, puede recuperarse de los datos. La recuperación se puede realizar de varias formas, en su mayoría basadas en bucles de bloqueo de fase, pero el diseño es más sencillo si tiene un reloj de referencia para trabajar. El sesgo para una tarjeta en particular se fija una vez que se enchufa, por lo que todo lo que se requiere es un desfase de fase ajustable entre el reloj de referencia y las líneas de datos.

El uso de la misma refclk evita problemas si uno de los puntos finales tiene una compensación de temperatura deficiente y se aleja de la velocidad correcta.

El reloj se puede multiplicar por un PLL y usarse para otros propósitos en la tarjeta, ahorrándole un cristal en la tarjeta.

enlace

    
respondido por el pjc50
4

El reloj de referencia se multiplica a través de un PLL a la tasa de línea (2 / 5Gb / seg, 5Gb / sec, 8Gb / sec para las versiones 1.x, 2.xy 3.x respectivamente); esto determina la velocidad de datos de un transmisor.

El reloj está efectivamente incorporado en el flujo de datos mediante el uso de codificación de línea que para 2.5Gb / sec y 5Gb / sec es 8 bit / 10 bit y 128bit/130bit (vea el tercer párrafo) para gen.3 (8Gb / seg). Tenga en cuenta que esta codificación se deriva del reloj de referencia (multiplicado hacia arriba).

Esto permite que el receptor utilice técnicas de recuperación de reloj estándar.

no es necesario tener un reloj de referencia común (para todas las versiones); esta es la razón del el conjunto ordenado de SKP (saltar) existe. Esto permite una diferencia entre los relojes de referencia en cada socio de enlace diferente (la especificación permite que el reloj de referencia sea +/- 300 ppm por lo que se puede usar un dispositivo relativamente económico) y los receptores implementan búferes elásticos para cross los dominios de tiempo.

Este mecanismo de cruce del dominio del reloj elimina los problemas de sesgo entre los relojes.

Tenga en cuenta que un reloj de referencia común que está casi garantizado para tener una diferencia de fase en los socios de enlace todavía necesitará un FIFO de 1 bit (como se usó en Hypertransport que requiere un reloj de referencia común).

En un diseño, tenía 8 socios potenciales de enlace PCIe; Aquí es donde un reloj de referencia compartido tiene sentido.

Utilicé un reloj de referencia maestro ($ 20) y un solo búfer de reloj de 8 canales ($ 20), mucho más barato que 8 relojes de referencia.

Para los diseños donde los enlaces atraviesan cables y / o múltiples conectores en diseños con múltiples PCB, las referencias compartidas no son realmente adecuadas ya que el reloj de referencia en cada socio del enlace debe ser agradable y limpio.

    
respondido por el Peter Smith

Lea otras preguntas en las etiquetas