仅对英特尔可见 — GUID: nik1415404385309
Ixiasoft
仅对英特尔可见 — GUID: nik1415404385309
Ixiasoft
7.1. 具有PreSICE校准引擎的重配置接口和仲裁
在Arria 10器件中,使用精密信号完整性校准引擎(PreSICE)进行校准。PreSICE包括一个Avalon-MM接口来访问收发器通道和PLL可编程寄存器。该Avalon-MM接口包括一个通信机制,使您能够从校准控制器中请求特定的校准序列。
PreSICE Avalon-MM接口和用户Avalon-MM重配置接口一起共享一个内部配置总线。该总线进行仲裁以获取访问收发器通道和PLL可编程寄存器,以及校准寄存器。
有两种方法可以检查哪一个可以访问内部配置总线:
- 使用reconfig_waitrequest
- 使用功能寄存器
Native PHY IP内核和PLL默认设置为使用reconfig_waitrequest。当PreSICE控制内部配置总线时,内部配置总线中的reconfig_waitrequest为高。被授予用户访问权限时,内部配置总线中的reconfig_waitrequest变低。在Avalon-MM重配置接口,reconfig_waitrequest可以来自Native PHY Ip内核的几个地方。例如:它可以来自内部配置总线、串流器等等。它们被捆绑在一起成为Avalon-MM重配置接口上的单一reconfig_waitrequest。reconfig_address确定哪一个reconfig_waitrequest显示在Avalon-MM重配置接口。返回内部配置总线到PreSICE后,内部配置总线中的reconfig_waitrequest为高。如果在校准期间,在Avalon-MM重配置接口上将reconfig_address设置成串流器偏移地址,那么在校准结束之前,reconfig_waitrequest会为低。如果在校准期间保持reconfig_address与内部配置总线偏移地址相同,那么Avalon-MM重配置接口上的reconfig_waitrequest将会变高,直到PreSICE返回内部配置总线。校准期间保持reconfig_address静态非常重要。
要使用性能寄存器来检查总线仲裁,请执行下面的操作来生成IP:
- 从Dynamic Reconfiguration选项卡上选择Enable dynamic reconfiguration。
- 选择Separate reconfig_waitrequest from the status of AVMM arbitration with PreSICE和Enable control and status registers选项。
可以读取功能寄存器0x281[2]来检查谁控制着通道访问,也可以读取功能寄存器0x280[2]来检查谁控制着PLL访问。当使能了Separate reconfig_waitrequest from the status of AVMM arbitration with PreSICE和Enable control and status registers时,在PreSICE控制内部配置总线时,reconfig_waitrequest将不会被置位高。
要返回内部配置总线至PreSICE:
- 为了触发用户重新校准:
- 写入0x01到偏移地址0x000 [7:0],用户重新校准必须要求通过偏移地址0x100。
- 为了触发DFE自适应:
- 写入0x03到偏移地址0x000 [7:0],DFE自适应触发必须使能通过0x100[6]。
- 如果不再需要使用内部重配置总线:
- 写入0x03到偏移地址0x000 [7:0]。
要检查是否运行校准进程,请执行下列操作之一:
- 监控pll_cal_busy、tx_cal_busy和rx_cal_busy信号。
- 从功能寄存器中读取*_cal_busy信号状态。
只要运行校准过程,*_cal_busy信号就会保持置位。要检查是否完成校准,可以读取性能寄存器或者检查*_cal_busy信号。Avalon-MM重配置接口中的reconfig_waitrequest不是一个可靠的指标来检查是否完成校准。如果在校准期间将0x2写入到0x0,那么PreSICE可以停止校准过程,并返回内部配置总线,因此,在reconfig_waitrequest为低时,校准没有完成。PMA tx_cal_busy和rx_cal_busy都来自相同的内部节点,它们不能从硬件中分开。配置性能寄存器0x281[5:4],通过Avalon-MM重配置接口,单独地使能或禁用tx_cal_busy或者rx_cal_busy。