LogiCORE IP RXAUI  –  GTX收发器延迟对准器勘误和解决方案-Xilinx-AMD社区-FPGA CPLD-ChipDebug

LogiCORE IP RXAUI – GTX收发器延迟对准器勘误和解决方案

描述

在针对Virtex-6器件时, (Xilinx答复39430)中描述的Virtex-6 GTX延迟对准器勘误项影响了RXAUI v1.2及更早的内核。有关更多信息,请参阅EN142勘误表和Xilinx产品变更通知XCN11009。

使用针对Virtex-6器件的RXAUI IP内核的设计绕过TX缓冲器以最小化TX通道到通道的偏斜,并且需要实现下面的解决方案。 RX缓冲区未被旁路,因此RX端不需要进行任何更改。

此问题的症状包括丢失MMCM锁定和链接问题。

将在ISE 13.1中发布的RXAUI v2.1核心包括该修复程序。

请按照以下四个步骤解决此问题。

< 步骤1

在RXAUI v1.2及更早版本中,需要修改GTX属性以禁用延迟对齐器。要解决此问题,请编辑<rxaui_core_name> /example_design/gtx_wrapper.v [hd]。需要修改POWER_SAVE [5:4],并保留所有其他位。

对于Verilog更改:
.POWER_SAVE(10’bxxxx10xxxx),

.POWER_SAVE(10’bxxxx11xxxx),

对于VHDL更改:
POWER_SAVE =>“xxxx10xxxx”,

至:

POWER_SAVE =>“xxxx11xxxx”,

第2步

修改POWER_SAVE属性会导致ISE软件12.4,12.3和12.2中出现软件错误。 (Xilinx答复39434)提供了一种解决这些错误的方法。

第3步

在RXAUI v1.2及更早版本中,MMCM使用内部反馈环路。需要将BUFG添加到MMCM反馈路径中。

对于<core_name> _example_design.v中的Verilog:
a)为BUFG的输出添加一根电线:
wire clkfb_bufgout;
b)为反馈时钟添加bufg实例化:
BUFG clkfb_bufg_i(
.I(CLKFB),
.O(clkfb_bufgout));
c) 更改MMCM实例化以使用BUFG的输出驱动CLKFBIN:
.CLKFBIN(clkfb_bufgout),

对于<core_name> _example_design.vhd中的VHDL:

a)为BUFG的输出添加一个新的信号名称声明:
signal clkfb_bufgout:std_logic;
b)为反馈时钟添加一个bufg:
clkfb_bufg_i:BUFG
港口映射(
I => clkfb,
O => clkfb_bufgout);
c)更改MMCM实例化以使用BUFG的输出驱动CLKFBIN
CLKFBIN => clkfb_bufgout,

步骤4

修复延迟对齐器问题的部分要求是GTX TXOUTCLK必须直接驱动MMCM而路径中没有BUFG。默认情况下,在包装器中,TXOUTCLK已经直接驱动MMCM,路径中没有BUFG。唯一需要的更改是修改POWER_SAVE属性。但是,这意味着MMCM被限制在与MGT相同的区域,用户不得添加BUFG以将MMCM移出该区域。每个GTX Quad跨越整个时钟区域,每个时钟区域有两个可用的MMCM,所使用的MMCM必须被约束到相同的时钟区域,否则将自动插入BUFG。可以使用Virtex-6封装和引脚指南 (UG365)确定这些位置: http//www.xilinx.com/support/documentation/user_guides/ug365.pdf

如果用户修改了包装器以向该路径添加BUFG以便将MMCM移出具有MGT的区域,则必须将其移除并且MMCM应位于MGT提供TXOUTCLK的区域中。

修订记录:
1/24/2011 – 添加了第3步 – 需要在MMCM反馈时钟路径中插入BUFG

请登录后发表评论

    没有回复内容