Estoy usando Xilinx Spartan 6 Automotive FPGA. Mi diseño FPGA tiene una interfaz SPI para un periférico externo.
Desde FPGA hasta el periférico, tengo estas señales relacionadas con SPI:
- spi clk
- spi data (mosi): los datos se presentan en el borde descendente del spi clk
Desde el periférico al FPGA:
- spi data (miso): los datos se presentan en el flanco ascendente utilizando el spi clk recibido de FPGA
FPGA toma muestras de los datos SPI de MISO utilizando el flanco descendente de SPI CLK; se genera internamente (a través de una máquina de estado).
Ahora, quiero agregar una restricción de tiempo en el pin MISO para asegurar que los datos MISO alcancen el primer componente de sincronización (un pestillo cronometrado por spi clk) sin violar la configuración y el tiempo de espera. ¿Qué restricción de tiempo de Xilinx debo usar?
Algunas de las opciones que estaba considerando son OFFSET IN, FROM / TO ...
Prefiero OFFSET IN porque relaciona los datos con el reloj, pero no puedo entender cómo especificar un reloj interno (no tengo SPI clk loopback). FROM / TO puede funcionar, pero no es relativo al reloj.