XAUI v10.4及更早版本 –  Virtex-6器件 –  TX通道有时无法成功对齐-Xilinx-AMD社区-FPGA CPLD-ChipDebug

XAUI v10.4及更早版本 – Virtex-6器件 – TX通道有时无法成功对齐

描述

如果在XAUI核心启动时针对Virtex-6器件,则传输通道有时不会对齐,导致链接伙伴接收器未对齐。

向XAUI核心发出重置可以导致链接伙伴成功对齐。

在最新的v10.4内核(以及使用MMCM的先前版本)的example_design.v / vhd包装器文件中,reset156不会等到MMCM锁定之后。

此外,Tx相位对齐电路可以在MMCM锁定并且156 userclk有效之前启动。

要更正此问题,请进行以下更改:

Verilog的:

1)为确保输入到MMCM的时钟有效,MMCM复位应由GTX PLLLKDET驱动。

在<core_name> example_design.v中,mmcm_txoutclk实例化,更改:

.LOCKED()

.RST(复位)

至:

.LOCKED(MMCM_locked),

.RST(〜txlock)

2)为了确保156MHz时钟有效,156_reset应该由来自MMCM的锁定驱动(如果使用的话,MMCM锁也应该驱动10GEMAC上的DCM_locked信号)。

在<core_name> example_design.v中,创建信号MMCM_locked,对MMCM实例化进行上述更改,并更改:

reset156_r1 <= ~txlock;

至:

reset156_r1 <= ~MMCM_locked;

3)目前,<core_name> _block.v包含以下内容,在PLL锁定之前保持tx同步复位,但直到MMCM锁定为止:

assign reset_txsync = mgt_reset_terms || 〜锁;
assign mgt_reset_terms = reset || mgt_powerdown_falling;

要锁定MMCM,请从以下位置更改:

assign reset_txsync = mgt_reset_terms || 〜锁;

至:

assign reset_txsync = reset156 || mgt_powerdown_falling;

VHDL:

1)为确保输入到MMCM的时钟有效,MMCM复位应由GTX PLLLKDET驱动。

在mmcm_txoutclk实例化的<core_name> example_design.vhd中,更改:

LOCKED =>打开,
….
RST =>重置

至:

LOCKED => MMCM_locked,
….
RST =>(不是txlock)

2)为了确保156MHz时钟有效,156_reset应该由来自MMCM的锁定驱动(如果使用的话,MMCM锁也应该驱动10GEMAC上的DCM_locked信号)。

在<core_name> example_design.vhd中,创建信号MMCM_locked,对MMCM实例化进行上述更改,并更改:

reset156_r1 <= not txlock;

至:

reset156_r1 <= not MMCM_locked;

3)目前,<core_name> _block.vhd包含以下内容,在PLL锁定之前保持tx同步复位,但直到MMCM锁定为止:

reset_txsync <= mgt_reset_terms或(不锁定);
mgt_reset_terms <= soft_reset或reset或mgt_powerdown_falling;

要锁定MMCM,请从以下位置更改:

reset_txsync <= mgt_reset_terms或(不锁定);

至:

reset_txsync <= reset156或mgt_powerdown_falling;

请登录后发表评论

    没有回复内容