QPLL概念视图
上图为 QPLL0/1 架构的概念视图。 在将输入时钟送入鉴频鉴相器之前,可以将输入时钟除以 M 倍。 反馈分频器 N 决定了 VCO 倍频比。 对于低于 28.1 Gb/s 的线路速率,支持小数 N 分频器,其中有效比率是 N 因子加上小数部分的组合。 QPLL0/1 输出频率取决于 QPLL[0/1]CLKOUT_RATE 的设置。 当 QPLL[0/1]CLKOUT_RATE 设置为 HALF 时,输出频率为 VCO 频率的一半。 当设置为 FULL 时,输出频率与 VCO 频率相同。 锁定指示器块比较参考时钟和 VCO 反馈时钟的频率,以确定是否已实现频率锁定
公式介绍及参数说明
PLL的输出频率由以下公式得出:
输入的参考时钟先经过M分频,当 QPLL[0/1]CLKOUT_RATE 设置为 HALF 时,QPLL[0/1]CLKOUT_RATE=2; 当设置为 FULL 时,QPLL[0/1]CLKOUT_RATE=1。再乘上反馈倍频器的值N.FractionalPart。N为整数部分,FractionalPart为小数部分。
线速度的计算公式如下:
小数部分的计算公式如下:
下面的表格给出了允许的分频器的值
修改输出频率以及线速率
下面结合ip代码来修改线速率,以10g以太网,100m参考时钟为例,修改到12.5g的线速率。(当然你可以说直接修改ip不好吗,这种方式不需要重新生成ip,同时为不同需求场景增加了灵活性与可能性)。
步骤
1.确保Structural Options中的Include transceiver COMMON in the 为Example Design,这样COMMON部分会从ip core里拿到外面,vivado才允许你对其修改。
2.找到example_wrapper_inst下的gtwizard_ultrascale_v*_gtye4_common.v模块打开
3.调整整数分频:找到对应的qpll,如果你使用的qpll1,就找qll1对应的信号名,这里使用的是qpll0,将下面的值改为125,该信号的物理意义为反馈倍频器的整数部分
4.调整小数部分:将下面的值改为0,该信号的物理意义为反馈倍频器的小数部分
5.同时输出频率也变为12.5/64=195.3125MHz(raw模式) 或12.5/66 = 189.39394MHz