Datos de entrada de Spartan-6: ¿Usar pines de datos o GCLK?

1

Estoy diseñando una PCB que se conecta a un Spartan-6 a través de un conector (placa Opal Kelly XEM). El PCB aloja algunos componentes analógicos que se comunicarán con el FPGA (ADC, DAC). La placa FPGA es completamente autónoma (tiene reloj propio, PLL, ...).

Mis señales de entrada al FPGA son:

  1. señales SPI (MISO / MOSI / SCK) de diferentes circuitos integrados
  2. Los datos LVDS de los ADC (datos en serie) + el reloj emparejado sesgo para bloquear estos datos en el FPGA
  3. La señal de reloj CMOS que may se usa para sincronizar el FPGA en sí o para sincronizar ciertas señales en el FPGA (tal vez no se use, pero por si acaso).

Actualmente conecté todas estas entradas a los pines de datos FPGA (por ejemplo, L32P_0, L2N_0 y L3N_0 / L3P_0, L66P_0, L66N_0, etc.)

Ahora me pregunto si debo conectar algunas o todas estas señales a la red de reloj global (GCLK), por ejemplo. L34P_GCLK19_0, L34N_GCLK18_0, etc).

  • ¿Es una buena idea conectar cualquier entrada que sea / pueda ser un reloj (se usará en always @(posedge) a GCLK?
  • ¿Cómo decidiría qué señales me conecto a los pines de datos en comparación con GCLK?
  • ¿Cuál es el propósito de la red de reloj global (pines GCLK) y cuáles son las ventajas / desventajas?
  • ¿Los pines GCLK también pueden usarse de manera segura como entrada LVDS (por ejemplo, L36P_GCLK15_0 y L36N_GCLK14_0 )?
pregunta divB

2 respuestas

0

La red de reloj global en un FPGA es una red especialmente enrutada. Es un árbol 'equilibrado' que da un sesgo mínimo entre los CLB. (Eso es no lo mismo que un retraso mínimo).

En muchos FPGA, la red de reloj global termina en un MUX cuya salida solo va al pin del reloj de los registros en el CLB. En esos FPGA es costoso (en lógica y tiempo) o imposible usar el reloj para datos.

Los nuevos FPGA tienen muchos pines de E / S que funcionan en pares para hacer una entrada o salida diferencial. Es esencial que use un 'par' para señales diferenciales. Definitivamente también tendrán un 'par' para la red de reloj mundial.

Para más detalles, debe leer las hojas de datos de FPGA y prepararse para reservar unas horas para eso. La E / S de alta velocidad funciona solo si le prestas una atención meticulosa a esos detalles.

    
respondido por el Oldfart
1

Yo diría que no es necesario enrutar señales que no sean de reloj a los pines de la red del reloj global. En caso de que una señal de este tipo tenga un fanout alto, aún puede implementar un búfer global.

    
respondido por el Humpawumpa

Lea otras preguntas en las etiquetas