一、报错内容
[DRC REQP-1712] Input clock driver: Unsupported PLLE2_ADV connectivity.
The signal clk_50m_gen/inst/clk_in on the clk_50m_gen/inst/plle2_adv_inst/CLKIN1
pin of clk_50m_gen/inst/plle2_adv_inst with
COMPENSATION mode ZHOLD must be driven by a clock capable IO.
二、报错原因
IBUFGDS clk_inst (
.O(clk),
.I(clk_p),
.IB(clk_n)
);
pll clk_50m_gen
(
.clk_50m(clk_50m),
.clk_50m_180deg(clk_50m_180deg),
.reset(1'b0),
.locked(locked),
.clk_in(clk)
);
PLL
IP核设置出现问题。因为从上面的代码里可以看到我的PLL
的输入信号clk
是来自IBUFGDS
的输出信号clk
,而不是来自普通的单端时钟信号。虽然我的IBUFGDS
已经把差分时钟变成了单端时钟,但是它仍然不是普通的单端时钟信号,这点记住就行,因此我们需要修改PLL
的clk_in1
的source
参数。
将PLL
的clk_in1
的source
参数修改为Global buffer
即可!!!原因就是上面所说的,clk_in1
端口的信号不是来自一般的单端时钟信号,也不是直接来自差分时钟信号,而是来自IBUFGDS
。