Il n’y a pas de connexion dédiée entre le port IP de référence et d’horloge PLL système out_coreclk_#i F-Tile et une entrée d’horloge de référence IOPLL FPGA IP dans les appareils Agilex™ 7.
Un message d’erreur comme celui-ci peut s’afficher si vous connectez un port IP out_coreclk_#i de référence F-Tile et d’horloge PLL système directement à une entrée d’horloge de référence IP IOPLL FPGA.
Erreur(14566) : Le monteur ne peut pas placer 1 composant(s) périphérique(s) en raison de conflits avec les contraintes existantes (1 HSSI_PLDADAPT_RX(s)). Corrigez les erreurs décrites dans les sous-messages, puis réexécutez le Fitter. La base de connaissances Intel FPGA peut également contenir des articles contenant des informations sur la façon de résoudre cet échec de placement périphérique. Erreur(175020) : Le Fitter ne peut pas placer la logique HSSI_PLDADAPT_RX dans la région (11, 65) à (11, 67), à laquelle il est contraint, car il n’y a pas d’emplacements valides dans la région pour une logique de ce type.
Info(14596) : Informations sur le(s) composant(s) défaillant(s) :
Info(175028) : Le(s) nom(s) HSSI_PLDADAPT_RX : FTL_auto_tiles|z1577b_x5_y0_n0|hdpldadapt_rx_chnl_21
...
Pour connecter le port IP out_coreclk_#i de l’horloge PLL de référence F-Tile et du système à une entrée d’horloge de référence IOPLL FPGA IP, vous pouvez procéder comme suit.
- Divisez le signal IP de référence F-Tile et l’horloge PLL système out_coreclk_#i par deux dans rtl.
- Connectez le signal out_coreclk_#i divisé rtl à un tampon IP de contrôle d’horloge FPGA
- Connectez la sortie du tampon IP du contrôle d’horloge FPGA à l’entrée de l’horloge de référence IOPLL FPGA IP.
L’exemple suivant connecte out_coreclk_2 d’une IP d’horloge PLL système et de référence F-Tile à une horloge de référence IOPLL FPGA IP.
ref_sys_pll_clk_i0 : composant ref_sys_pll_clk
Plan du port (
out_systempll_synthlock_0 => out_systempll_synthlock_0,
out_systempll_clk_0 => out_systempll_clk_0,
out_refclk_fgt_2 => out_refclk_fgt_2,
in_refclk_fgt_2 => in_refclk_fgt_2,
out_coreclk_2 => out_coreclk_2) ;
processus(out_coreclk_2)
Commencer
si rising_edge(out_coreclk_2) alors
out_coreclk_2_2<= pas out_coreclk_2_2 ;
se terminent si ;
processus final ;
clkctrl_i0 : composant clkctrl
Plan du port (
inclk => out_coreclk_2_2,
clock_div1x => clkctrl_outclk) ;
iopll_i0 : composant IOPLL
Plan du port (
refclk => clkctrl_outclk,
verrouillé => ouvert,
rst => ninit_done(0),
outclk_0 => iopll_outclk_0) ;