Limiter l’entrée synchrone source alignée au centre

author-image

Par

Une interface d’entrée synchrone source est limitée de la même manière qu’une interface d’entrée synchrone système. Le FPGA reçoit une horloge et l’utiliser pour verrouiller les données d’entrée. Dans une interface synchrone source alignée au centre, la transition de l’horloge se produit au milieu de la fenêtre valide des données. La Figure 1 montre une interface d’entrée synchrone source.

Figure 1. Source synchrone d’interface d’entrée.

Utilisez les étapes suivantess pour limiter une interface d’entrée synchrone source alignée en centre :

  1. Créez des horloges virtuelles, de base et générées
  2. Ajouter les contraintes de délai d’entrée
  3. Ajoutez des exceptions au faux chemin pour exclusion les chemins invalides de l’analyse et de la création de rapports de synchronisation.

Plus de détails sur une de ces étapes, ou sur les calculs et contraintes décrits ci-dessous, reportez-vous à AN 433: Constraining and Analyzing Source Synchronous Interfaces (PDF).

Horloges

Une horloge virtuelle modèle l’horloge dans le périphérique externe qui pousse les registres de données à transmettre les données au FPGA.

Une horloge de base est nécessaire sur le port d’entrée du FPGA. L’horloge de base décrit les caractéristiques de l’horloge à l’entrée de l’FPGA. Si l’horloge d’entrée est en alignée avec les données, vous devez utiliser l’option de forme d’ondes pour spécifier les bords d’horloge montant et descendant qui correspondent au changement de phase d’horloge.

Les horloges générées sont nécessaires sur toutes les sorties de boucle à phase verrouillée (PLL).

Contraintes de délai d’entrée

Vous pouvez utiliser une spécification de dé● maximale pour calculer la valeur des retards d’entrée. La spécification maximale de l’amorciateur indique la variation du temps autorisé pour que des bits individuels d’un bus de données arrive à la FPGA.

La valeur du délai maximal d’entrée est la valeur maximale de la ordrométrie.

La valeur du délai minimum d’entrée est la valeur maximale de l’arométrie.

Exceptions au faux chemin

Dans cet exemple axé sur le centre, les données sont transférées sur les transitions de l’élévation, de l’automne et de la source, ainsi que de l’horloge de destination. Utilisez des exceptions pour réduire les transitions d’horloge rise-fall et fall-rise, voiture les données ne sont pas transférées sur les transitions d’horloge en périphérie inverse.

Exemple de fichier SDC

# Créez une horloge virtuelle pour décrire l’horloge des données dans
le périphérique externe.
create_clock - nom virt_clk période 10

# Créer une horloge de base sur le port d’entrée du FPGA, avec un nº de période de 10 ns et un changement de phase de
90 degrés car l’interface est alignée au centre
create_clock -nom input_clock -période 10 -forme d’ondes { 2.5 7.5 } [get_ports clk_in]

# Créer horloges générées sur les sorties PLL
create_generated_clock -nom data_clock -source [get_pins pll|inclk[0]] \
[get_ pins pll|clk[0]]

# Ajouter un maximum et les contraintes minimales de retard d’entrée # en
supposant une exigence de préhôte de +/- 250ps # Utilisez les équations pour les valeurs de retard d’entrée
indiquées ci-dessus set_input_delay -max -clock virt_clk 0 250 [get_ports data_in*]
set_input_delay -min -clock virt_clk -0.0.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

#Ajouter des exceptions au faux chemin pour les transferts d’horloge croisée
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 [get_clocks data_clock]
set_false_path -hold-end -rise_from [get_clocks virt_clk] \
-rise_to [get_clocks data_ horloge] set_false_path
-hold-end -fall_from [get_clocks virt_clk] \
-fall_to [get_clocks data_clock]

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.