描述
在针对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
没有回复内容