Intel® Arria® 10收发器PHY用户指南

ID 683617
日期 11/06/2017
Public

本文档可提供新的版本。客户应 单击此处 前往查看最新版本。

文档目录

6.11.2.2. fPLL 参考时钟切换

可以使用fPLL实例上的重配置接口来指定哪个参考时钟源驱动fPLL。fPLL支持使用最多五个不同的参考时钟源来进行计时。 在不同的参考时钟源之间进行选择的流程与在重配置接口中指定的发送器PLL的数目无关。

在执行参考时钟切换前,请确保fPLL实例定义多个参考时钟源。在fPLL参数化过程中请在PLL选项卡上指定Number of PLL reference clocks参数。

下表显示了fPLL参考时钟输入之间进行切换的地址和位。显示的pll_refclk端口数因您指定的参考时钟的数目而异。对于此操作,请使用fPLL重配置接口。

表 267.  切换fPLL参考时钟输入的寄存器映射
收发器fPLL端口 说明 地址
pll_refclk0 表示MUX_0的逻辑refclk0。查找寄存器x117[7:0]将逻辑refclk0的映射存储到MUX_0的物理refclk。 0x117 (查找寄存器) [7:0]
pll_refclk1 表示MUX_0的逻辑refclk1。查找寄存器x118[7:0]将逻辑refclk1的映射存储到MUX_0的物理refclk。 0x118 (查找寄存器) [7:0]
pll_refclk2 表示MUX_0的逻辑refclk2。查找寄存器x119[7:0]将逻辑refclk2的映射存储到MUX_0的物理refclk。 0x119 (查找寄存器) [7:0]
pll_refclk3 表示MUX_0的逻辑refclk3。查找寄存器x11A[7:0]将逻辑refclk3的映射存储到MUX_0的物理refclk。 0x11A (查找寄存器) [7:0]
pll_refclk4 表示MUX_0的逻辑refclk4。查找寄存器x11B[7:0]将逻辑refclk4的映射存储到MUX_0的物理refclk。 0x11B (查找寄存器) [7:0]
不适用

fPLL refclk选择MUX_0

0x114 [7:0]
pll_refclk0 表示MUX_1的逻辑refclk0。查找寄存器x11D[7:0]将逻辑refclk0的映射存储到MUX_1的物理refclk。 0x11D (查找寄存器) [7:0]
pll_refclk1 表示MUX_1的逻辑refclk1。查找寄存器x11E[7:0]将逻辑refclk1的映射存储到MUX_1的物理refclk。 0x11E (查找寄存器) [7:0]
pll_refclk2 表示MUX_1的逻辑refclk2。查找寄存器x11F[7:0]将逻辑refclk2的映射存储到MUX_1的物理refclk。 0x11F (查找寄存器) [7:0]
pll_refclk3 表示MUX_1的逻辑refclk3。查找寄存器x120[7:0]将逻辑refclk3的映射存储到MUX_1的物理refclk。 0x120 (查找寄存器) [7:0]
pll_refclk4 表示MUX_1的逻辑refclk4。查找寄存器x121[7:0]将逻辑refclk4的映射存储到MUX_1的物理refclk。 0x121 (查找寄存器) [7:0]
不适用 fPLL refclk选择MUX_1 0x11C [7:0]

在执行参考时钟切换时,请指定逻辑参考时钟,以及替换时钟的相应地址和位。请遵照下面的过程切换到所选的参考时钟:

  1. 执行动态重配置的步骤中执行步骤1到7的必要步骤。
  2. 从MUX 0的查找寄存器读取并保存所需的8位码型。例如:切换到逻辑refclk3需要使用查找寄存器0x11A的位[7:0]。
  3. 使用从查找寄存器中获得的8位值对地址0x114的位 [7:0]执行一个read-modify-write操作。
  4. 从MUX 1的查找寄存器读取并保存所需的8位码型。例如:切换到逻辑refclk3需要使用查找寄存器0x120的位[7:0]。
  5. 使用从查找寄存器中获得的8位值对地址0x11C的位[7:0]执行一个read-modify-write操作。
  6. 执行动态重配置的步骤中执行步骤9到12的必要步骤。

实例1:

pll_refclk0切换到pll_refclk1,需要对MUX_0和MUX_1的fPLL refclk选择进行read-modify-write操作:
  1. 修改MUX_0值:
    • 从0x118[7:0]读取
    • 将0x118 [7:0]的值写入到0x114 [7:0]
  2. 修改MUX_1值:
    • 从0x11E [7:0]读取
    • 将0x11E [7:0]读取的值写入到0x11C [7:0]

实例2:

pll_refclk2切换到pll_refclk3,需要对MUX_0和MUX_1的fPLL refclk选择进行read-modify-write操作:
  1. 修改MUX_0值:
    • 从0x11A [7:0]读取
    • 将0x11A [7:0]读取的值写入到0x114 [7:0]
  2. 修改MUX_1值:
    • 从0x120 [7:0]读取
    • 将0x120 [7:0]读取的值写入到0x11C [7:0]