LogiCORE RapidIO  – 如何移动SRIO Core的MGT / GTP / GTX位置?-Altera-Intel社区-FPGA CPLD-ChipDebug

LogiCORE RapidIO – 如何移动SRIO Core的MGT / GTP / GTX位置?

问题描述

本答复记录描述了如何在MGT / GTP / GTX磁贴中交换通道,以简化电路板布局或修复无意中交换的电路板布局。下面的示例在x4配置中使用SRIO v4.3,并假设在TILE0和TILE1中都需要进行车道交换。

解决/修复方法

=================在瓷砖内交换车道==============

要在GTP_DUAL中交换通道,必须在每个GTP_DUAL实例中交换属性。您必须修改以下两个文件:

– rocketio_wrapper.v

– gtp_wrapper文件

具体而言,对于每个GTP_DUAL实例,必须将每个“0”属性和端口与“1”交换。大多数属性对于两者都是相同的,但它们中的一些属性不是,并且必须交换。例如,必须更改CHAN_BOND_MODE以确保通道0是通道绑定主站。必须交换所有端口。这不仅会影响通道绑定逻辑,还会影响从内核到GTP的接口的构造。

1.在文本编辑器中打开“rocketio_wrapper_v5_4x.v”文件,然后转到“gtp_wrapper”部分。

2.在gtp_wrapper实例中交换每个tile的所有通道#s。例如,在gtp_wrapper实例化的TILE0部分中……

下列:

.TILE0_RXCHARISK0_OUT(RXCHARISK2_swap [1:0]),

.TILE0_RXCHARISK1_OUT(RXCHARISK3_swap [1:0]),

变为:

.TILE0_RXCHARISK1_OUT(RXCHARISK2_swap [1:0]),

.TILE0_RXCHARISK0_OUT(RXCHARISK3_swap [1:0]),

如有必要,请对TILE 0和TILE1的其他端口和属性重复此操作。

3.在文本编辑器中打开“gtp_wrapper.v文件”。

4.交换TILE_CHAN_BOND属性上的数字…

下列:

.TILE_CHAN_BOND_MODE_0(“MASTER”),

.TILE_CHAN_BOND_LEVEL_0(2),

.TILE_CHAN_BOND_MODE_1(“SLAVE”),

.TILE_CHAN_BOND_LEVEL_1(1)

变为:

.TILE_CHAN_BOND_MODE_1(“MASTER”),

.TILE_CHAN_BOND_LEVEL_1(2),

.TILE_CHAN_BOND_MODE_0(“SLAVE”),

.TILE_CHAN_BOND_LEVEL_0(1)

5.重新连接通道绑定链。对于您已交换Master和Slave属性的TILE …

下列:

.RXCHBONDI0_IN(tied_to_ground_vec_i [2:0]),

.RXCHBONDI1_IN(tile1_rxchbondo0_i),

.RXCHBONDO0_OUT(tile1_rxchbondo0_i),

.RXCHBONDO1_OUT(tile1_rxchbondo1_i),

变为:

.RXCHBONDI0_IN(tile1_rxchbondo0_i),

.RXCHBONDI1_IN(tied_to_ground_vec_i [2:0]),

.RXCHBONDO0_OUT(tile1_rxchbondo1_i),

.RXCHBONDO1_OUT(tile1_rxchbondo0_i),

要验证修改,请运行功能仿真并检查以下内容:

port_initialized应该很高

lnk_trdy_n应该变为低

lnk_rrdy_n应该变为低

对于x4模式,mode_sel应为High

================================================== =========

================移动GTP位置=====================

1.编辑UCF文件:GTP收发器和REFCLK放置部分

INST“rio_de_wrapper / phy_wrapper / rocketio_wrapper / gtp_wrapper / tile1_gtp_wrapper_i / gtp_dual_i”LOC =“GTP_DUAL_X0Y3”; #MGT112

INST“rio_de_wrapper / phy_wrapper / rocketio_wrapper / gtp_wrapper / tile0_gtp_wrapper_i / gtp_dual_i”LOC =“GTP_DUAL_X0Y2”; #MGT114

以上是Virtex-5设计的默认位置。根据需要更改位置。

2.使用CORE Generator中提供的RocketIO GTP向导为新的GTP位置生成新的包装器。

3.用新生成的包装器替换原始GTP_Wrapper.v和GTP_Wrapper_Tile.v文件。

================================================== =============

请登录后发表评论

    没有回复内容