¿Cómo aplico un pulso de alta velocidad a través de un chip lógico digital?

0

Tengo un sistema que utiliza un pulso 3ns para activar algunos circuitos descendentes. Cuando conecto el circuito generador de gatillo directamente al circuito descendente, todo funciona bien. Cuando dirijo la señal a través de un Altera Cyclone V FPGA hay un problema. Cuando dirijo la señal a través de un Xilinx Coolrunner II, existe el mismo problema, pero no es tan malo.

No puedo medir bien el pulso 3ns porque mi alcance más rápido es 1 GHz (creo que la regla de oro es el ancho de banda 5-10x para señales digitales).

Hoja de datos de Xilinx Coolrunner II: enlace

Hoja de datos de Altera Cyclone V: enlace

La señal está entrando en los chips lógicos y saliendo, no está siendo manipulada en absoluto.

Supuse que la capacitancia de entrada de los chips lógicos es el problema, pero el chip Xilinx tiene 10 pF frente al Altera 6 pF, por lo que no tiene sentido que el problema sea peor en el chip Altera. / p>

¿Qué ajustes o parámetros de circuito afectan a los pulsos rápidos a través de chips lógicos? Espero escuchar cosas sobre la fuerza de la unidad y las limitaciones de tiempo, pero no estoy seguro y nunca me he equivocado con esas cosas.

Gracias de antemano, y cualquier comentario sobre mi pregunta se agradece, ya que soy nuevo en stackexchange.

    
pregunta DavidG25

2 respuestas

1
La página 1 de la hoja de datos de Coolrunner II dice que el retardo de propagación de pin a pin es de 5.7 ns. Por lo tanto, es probable que cualquier señal que pongas tenga al menos la misma demora antes de salir.

También en la figura 4 en la hoja de datos en la página 10 vemos la corriente de salida del pin IO para VCC = 3.3V. Al observar la curva, vemos que la resistencia del controlador de salida del pin IO varía no linealmente con la carga. La resistencia en un corto se ve como 3.3V / 60mA = 55ohms, y más arriba en la curva en Vout = 2.0V es (3.3V-2.0V) / 35mA = 22 ohms.

Supongamos que la capacitancia del pin es de 10pF en su CPLD, más otros 10pF de capacitancia de rastreo, más otros 10pF en su destino. El pin CPLD debe conducir a 30 pF de capacitancia.

Podemos estimar el tiempo de subida de la señal utilizando la resistencia de salida del controlador y la capacidad de carga. Sobre la base de las resistencias del controlador que calculamos anteriormente, vemos que la constante de tiempo se encuentra entre 22 ohms x 30pF = 660ps a 1.6ns. Dado que tanto 1.6ns como 660ps son una fracción significativa de su ancho de pulso, es probable que su señal experimente un redondeo significativo. Además, es probable que la amplitud máxima sea menor que VCC.

    
respondido por el user4574
0

Independientemente de que la señal simplemente pase, pasa a través de los elementos lógicos en el FPGA (lo que le da las diferencias en la integridad de la señal entre los dos FPGA).

Intente agregar un par de flops (para metastabilidad) en el FPGA para capturar el disparador de entrada y, como resultado, transmitir la señal como una salida con alta integridad. Dependiendo de la (s) frecuencia (s) de reloj de la otra lógica en el FPGA, es posible que tenga que generar un nuevo reloj con un período de menos de 3 ns / 2 para esos fracasos.

Esto afectará el ancho del pulso de salida, pero puedes ajustar eso si esta ruta es para ti.

    
respondido por el BHook

Lea otras preguntas en las etiquetas