¿Cuál es la diferencia entre DCM y PLL en, por ejemplo, ¿Xilinx FPGA?

2

Algunos FPGA tienen DCM (Digital Clock Manager) y PLL (Phase Lock Loop) para uso en la generación de reloj interno.

Xilinx Spartan-6 FPGA Clocking Resources UG382 (v1.10) documentación describe un número de características para DCM:

  • Eliminar el sesgo del reloj
  • Cambio de fase de una señal de reloj
  • Multiplica o divide una frecuencia de reloj entrante o sintetiza una completamente nueva
  • Acondicione un reloj, asegurando un reloj de salida limpio con un ciclo de trabajo del 50%
  • Refleja, reenvía o refuerza una señal de reloj
  • Filtro de jitter de entrada de reloj
  • oscilador de funcionamiento libre
  • Generación de reloj de espectro ensanchado

Sin embargo, a mi entender, todos estos (o al menos la mayoría, tal vez no el "oscilador de funcionamiento libre") también están disponibles cuando se usa un PLL.

Entonces, ¿cuál es la diferencia en el uso de un DCM frente a un PLL en un diseño FPGA?

    
pregunta EquipDev

2 respuestas

2

Xilinx usa el término DCM para mejorar su uso de lo que llamaban DLL o Delay Locked Loop.

Este (DLL) era una línea de retardo girada alimentada por la señal del reloj original, al seleccionar diferentes pulsaciones, podría obtener diferentes retrasos en la señal del reloj de salida. Como los retrasos son impredecibles, la lógica comparó las salidas de diferentes pulsaciones hasta que encontró qué número de pulsación dio un retraso de ciclo de reloj completo; se "desbloqueó" hasta que encontró la pulsación correcta. Luego, se actualizó ese número de tomas a medida que los retrasos se desviaron (por ejemplo, a medida que cambiaba la frecuencia de entrada o el chip se calentaba) y luego se calcularon otras demoras (por ejemplo, 90 grados, 180 grados).

Por lo tanto, proporcionó un comportamiento vagamente parecido al PLL sin ningún circuito analógico, lo que era difícil de lograr en sus procesos en ese momento. El inconveniente fue que el espectro de jitter era diferente de un PLL ya que el retardo era siempre un número integral de tomas.

Si conectó en cascada archivos DLL o DCM, el segundo probablemente funcionará, pero un tercero puede tener dificultades para bloquearse debido al jitter impuesto por los demás.

El DCM se basa en la misma idea pero proporciona otras funciones, como la multiplicación de la frecuencia de reloj.

Los FPGA más nuevos ofrecen tanto DCM (DLL) como PLL, pero espero que el DCM sea aún más fácil de producir.

    
respondido por el Brian Drummond
-1

Entonces, en primer lugar, cómo un fabricante de FPGA decide nombrar los componentes es principalmente una opción de marketing. Así que no hay un significado inherente en eso. Siempre es bueno recordar.

Entonces: un PLL es realmente solo eso, un bucle de control en el que la cantidad observada / corregida es la fase (o una derivada de eso) de una señal. Por lo tanto, es una parte de algo que podría generar relojes, pero no el generador de reloj completo. Por supuesto, es como el "transistor" que solía significar pequeños receptores de radio en los años 60 y 70, porque el componente central era un transistor. Pero un transistor solo no tiene un receptor de radio.

Entonces, todo lo que se llame PLL en su diseño debe venir con una descripción de lo que realmente hace. Compare esa descripción con la descripción de lo que hace un DCM. Esa es la mejor respuesta que podemos dar: "PLL", de nuevo, solo significa en realidad un solo bucle de control, no un generador de reloj.

    
respondido por el Marcus Müller

Lea otras preguntas en las etiquetas