为什么级联PLL设计中的第二个PLL不能在仿真期间实现锁定?-Lattice-莱迪斯社区-FPGA CPLD-ChipDebug

为什么级联PLL设计中的第二个PLL不能在仿真期间实现锁定?

我的设计使用级联的2个PLL;

即第一个PLL的输出是第二个PLL的输入。

第一个PLL在模拟中运行良好,但第二个PLL无法实现锁定,输出频率不正确。

第一个PLL的输入频率为16.8 MHz,CLKOP的输出频率为268.8 MHz。

要获得这些设置,分频比为16/1。

在测试平台中,PLL的输入频率通常使用时钟周期来定义,该时钟周期指定为最接近的ps;

即我们的16.8 MHz示例为59.524 ns。。当此值乘以除法器值比率时,结果是重复小数,模拟器无法精确解析;。在我们的例子中3.72025 ns。
。模拟器将此解析为2个不同的时钟周期,一个为3.720 ns,另一个为3.722 ns。。它将在大多数时钟周期内使用3.720 ns,但偶尔会用3.722 ns值代替,以便在大量周期内将时钟上升沿保持在正确的位置。。来自第一个PLL的CLKOP是第二个PLL的输入,因此第二个PLL将时钟周期的这种变化视为抖动。。不幸的是,PLL仿真模型不能处理这种抖动,因此第二个PLL失锁并且PLL输出将变低。
。解决方案是在模拟中使用一个时钟周期,它将在乘以除法器值比率后避免输出时钟周期的重复十进制值。
。对于我们的示例,在模拟测试平台中使用59.2 ns的时钟周期而不是59.524 ns,模拟将正常工作。。这对应于第一个PLL的输入频率16.892 MHz和270.27 MHz(时钟周期= 3.7 ns)的输出。
。这些频率足够接近客户用来证明其设计正常工作的频率。。请记住,这只是一个模拟问题。。实际PLL将在其输入上接受一定量的抖动,如数据手册中所示,并且不会受此问题的影响。。实际的PLL将在数据手册中所示容差范围内选择的频率下工作。

请登录后发表评论

    没有回复内容