LogiCORE PCI Express v3.2  – 时钟校正设置可能导致数据包被丢弃在异步链路上-Altera-Intel社区-FPGA CPLD-ChipDebug

LogiCORE PCI Express v3.2 – 时钟校正设置可能导致数据包被丢弃在异步链路上

问题描述

使用异步链路时,核心接收的数据包可能会丢失或丢失,因为它们从未出现在接收方用户界面上。

解决/修复方法

在大多数情况下,PCI Express链路应同步计时。只有在设计人员完全控制链路两侧使用的时钟振荡器时,才应使用异步时钟链路。这可以保证它们满足所使用的Virtex器件的要求,并且不会在任何时钟源上使用SSC。有关同步与异步PCI Express链路的更多信息,请参阅(Xilinx答复19760)(Xilinx答复18329)

异步链路的用户需要覆盖在核心内使用的MGT时钟校正参数。这可以通过将正确的参数添加到UCF文件来完成。

使用当前的v3.2设置,如果由于相对时钟漂移而必须添加或删除符号,GT11将错误地删除整个时钟校正有序集(CCOS)(COM,SKP,SKP,SKP)。在任何时候需要时钟校正的情况下,最多只能在流中插入或删除1个SKP。删除整个CCOS将导致核心解扰器与连接的发送器的扰码器不同步,因为被剥离的COM字符应该重置扰码器/解扰码器对。

同步链接的用户不需要进行此更改,但如果您这样做,则不会造成任何伤害。这些更改将添加到核心的v3.4版本中,将于2006年12月发布。

当前的v3.3核心设置如下:

CLK_COR_SEQ_LEN = 4;

CLK_COR_SEQ_1_MASK = 4’b0000;

CLK_COR_SEQ_1_4 = 11’b00100011100;

CLK_COR_SEQ_1_3 = 11’b00100011100;

CLK_COR_SEQ_1_2 = 11’b00100011100;

CLK_COR_SEQ_1_1 = 11’b00110111100;

对于每个PCI Express通道RocketIO,应将这些更改为:

CLK_COR_SEQ_LEN = 1;

CLK_COR_SEQ_1_MASK = 4’b1110;

CLK_COR_SEQ_1_4 = 11’b00000000000;

CLK_COR_SEQ_1_3 = 11’b00000000000;

CLK_COR_SEQ_1_2 = 11’b00000000000;

CLK_COR_SEQ_1_1 = 11’b00100011100;

以下是为x1,x4和x8链接覆盖这些内容的示例。请注意,路径可能会因您选择的核心名称而异。

x1示例

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_1 = 11’b00100011100;

x4示例

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_1 = 11’b00100011100;

x8示例

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST2”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST3”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST4”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST5”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST5”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST5”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST5”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST5”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST5”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST6”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST6”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST6”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST6”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST6”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST6”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST7”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST7”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST7”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST7”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST7”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST7”CLK_COR_SEQ_1_1 = 11’b00100011100;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST8”CLK_COR_SEQ_LEN = 1;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST8”CLK_COR_SEQ_1_MASK = 4’b1110;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST8”CLK_COR_SEQ_1_4 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST8”CLK_COR_SEQ_1_3 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST8”CLK_COR_SEQ_1_2 = 11’b00000000000;

INST“ep / BU2 / U0 / pci_exp_1_lane_32b_ep0 / plm / v4f_mgt / gt11_by1 / GT11_PCIEXP_2_INST8”CLK_COR_SEQ_1_1 = 11’b00100011100;

请登录后发表评论

    没有回复内容