问题描述
使用异步链路时,核心接收的数据包可能会丢失或丢失,因为它们从未出现在接收方用户界面上。
解决/修复方法
在大多数情况下,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;
没有回复内容