¿Cuál es el uso de la restricción OFFSET IN / OUT para el diseño de FPGA cuando se usa el registro en IOB?

0

Lo siguiente se solicita en el contexto de los FPGA de Xilinx (mi experiencia), pero también puede aplicarse a tecnologías similares ofrecidas por otros proveedores.

Fondo: Al escribir restricciones para FPGA I / O, hay restricciones OFFSET IN y OFFSET OUT. El propósito de estas restricciones, a mi entender, es proporcionar una guía para los procesos de colocación y enrutamiento para garantizar que el tiempo de la señal de entrada / salida en relación con el pin / pad FPGA esté restringido. Por ejemplo, sin esta restricción, las herramientas tendrían la libertad de enrutar su señal desde el teclado alrededor del IC 6 veces, a través de 100 niveles de lógica, y luego finalmente llegará a su primer registro.

Visualmente:

TambiénseofrecenrestriccionesenlaUCFpara"sugerir" a las herramientas que un registro se incluya en la IOB. Esto coloca el FF / register en una ubicación especial (fija), más cercana al pad / IO. Aparte de usar algún otro mecanismo de hardware FPGA (por ejemplo, IDELAY / ODELAY) no hay manera de ajustar la sincronización desde el pad al registro, o desde el registro al pad (el sitio de registro es fijo, el pad es fijo y el ruta entre ellos es fija).

Digo "sugerir" porque hay razones por las que el primer registro puede no estar empaquetado en una IOB para una entrada, o el último registro puede no estar empaquetado en una IOB para una salida. Pero para esta pregunta, suponga que el primer / último registro realmente se coloca correctamente en la IOB, al lado del teclado.

Pregunta: ¿Las restricciones OFFSET IN y OFFSET OUT agregan algún "valor" a un UCF? ¿Proporcionan las herramientas más información sobre su diseño que se necesita para que la sincronización de E / S sea correcta?

    
pregunta Josh

1 respuesta

1
  

¿Las restricciones OFFSET IN y OFFSET OUT agregan algún "valor" a un UCF? Hacer   proporcionan las herramientas más información sobre su diseño que es   necesario para que el tiempo de E / S sea correcto?

Eso es exactamente para lo que están ahí. Aunque usted dice en su pregunta " asuma que el registro está en el IOB ", mi punto sería que no tengo que tener que preocuparme si el flipflop está empaquetado en el IOB - si esas restricciones están especificadas con precisión, completas y cumplidas por las herramientas.

Forzar el empaque de flip-flop es a menudo una forma útil de obtener el mejor tiempo posible, pero aún así agrego OFFSET restricciones para que, si algo sale mal, averigüe al respecto.

    
respondido por el Martin Thompson

Lea otras preguntas en las etiquetas