Restricción de una entrada sincrónica de origen alineada en el perímetro

author-image

Por

Una interfaz de entrada sincrónica de origen está limitada de una manera similar a la de una interfaz de entrada sincrónica del sistema. El FPGA recibe un reloj y lo utiliza para atapar los datos de entrada. En una interfaz sincrónica de origen que está alineada en el borde, la transición de reloj se produce al mismo tiempo que la transición de datos. La Figura 1 muestra una interfaz de entrada sincrónica de origen de muestra.

Figura 1. Interfaz de entrada sincrónica de origen.

Siga estos pasos para restringir una interfaz de entrada sincrónica de origen alineada en el borde:

  1. Cree relojes virtuales, básicos y generados

  2. Agregar restricciones de demora de entrada

  3. Agregue excepciones de ruta falsa para excluir rutas no válidas del análisis e informes de temporización

Para obtener más información acerca de cualquiera de estos pasos, o los cálculos y restricciones descritos a continuación, consulte un href="/literature/an/an433.pdf">AN 433: Restricción y análisis de interfaces fuente síncronas (PDF).

Relojes

Un reloj virtual modela el reloj en el dispositivo externo que impulsa los registros de datos para transmitir datos al FPGA.

Se requiere un reloj base en el puerto de entrada del FPGA. El reloj base describe las características del reloj en la entrada de reloj del FPGA.

Se requieren relojes generados en todas las salidas de ciclo bloqueado por fase (PLL). En una interfaz de entrada sincrónica de origen alineada en el perímetro, la PLL debe cambiar de fase el reloj recibido en 90 grados para cumplir con los requisitos de sincronización interna de los registros de captura de datos.

Restricciones de demora de entrada

Puede utilizar una especificación de valor máximo de 100.000 personas para calcular los valores de demora de entrada. La especificación máxima indica la variación de tiempo permitida para que los bits individuales de un bus de datos lleguen al FPGA.

El valor de la demora máxima de entrada es el valor máximo de valor de valor de las propuestas.

El valor de la demora mínima de entrada es -valor máximo de inaplazación.

Excepciones de ruta falsa

En este ejemplo alineado en el perímetro, los datos se transfieren en transiciones de reloj de origen y destino de rise-rise y fall-fall. Utilice excepciones de ruta falsa para reducir las transiciones de reloj de rise-fall y fall-rise, porque los datos no se transfieren en transiciones de reloj del borde opuesto.

Ejemplo de archivo SDC

# Cree un reloj virtual para describir el reloj de datos en
# el dispositivo externo create_clock
-name virt_clk -period 10

# Cree un reloj base en el puerto de entrada del FPGA, con un período de 10
ns create_clock -name input_clock -period 10 [get_ports clk_in] # Creación de

relojes en las salidas de PLL
create_generated_clock -name data_clock -source [get_pins pll|inclk[0]] \
-phase 90 [get_pins pll|clk[0]]

# Agregar máximo y restricciones de demora de entrada
mínimas n.º que asumen un requisito obligatorio obligatorio de +/- 250ps Utilice las ecuaciones para los valores de demora de
entrada mencionados anteriormente set_input_delay
-max -clock virt_clk 0.250 [get_ports data_in*]
set_input_delay -min-clock virt_clk -0.250 [get_ports data_in*]
set_input_delay -max -clock virt_clk -clock_fall \
0.250 [get_ports data_in*] -add
set_input_delay -min-clock virt_clk -clock_fall \
-0.250 [get_ports data_in*] -add

# Agregar excepciones de ruta falsa para transferencias de reloj cruzado
set_false_path -setup -end -rise_from [get_clocks virt_clk] \
-fall_to [get_clocks data_clock]
set_false_path -setup -end -fall_from [get_clocks virt_clk] \
-rise_to [rise_to get_clocks data_clock]
set_false_path -hold -end -rise_from [get_clocks virt_clk] \
-rise_to [get_clocks data_clock]
set_false_path -hold -end -fall_from [get_clocks virt_clk] \
-fall_to [get_clocks data_clock]

El contenido de esta página es una combinación de la traducción humana y automática del contenido original en inglés. Este contenido se ofrece únicamente para su comodidad como información general y no debe considerarse completa o precisa. Si hay alguna contradicción entre la versión en inglés de esta página y la traducción, prevalecerá la versión en inglés. Consulte la versión en inglés de esta página.