RapidIO的phy_link_reset问题
时间:10-02
整理:3721RD
点击:
大家好,最近在调试RapidIO的phy_link_reset功能,不知各位有没有之前调试过RapidIO的这个功能。简单地说就是通过RapidIO核拉出的两个信号:phy_link_reset和phy_rcvd_link_reset。两个设备通过RapioIO对接,一边配置phy_link_reset,另一边的phy_rcvd_link_reset信号会置高,同时port_initialized信号拉低,从而完成了从一边进行两端的PHY层复位。
但是目前实现结果有点问题,在本设备与其他设备对接时,有时需要发送两次phy_link_reset对方才可以收到,有时对方根本接收不到,目前分析原因可能与RapidIO核的版本有关,或者License?
当前的现象是:本设备V6-240T,RapidIO核的版本为Gen2:1.6。
1.与使用相同版本RapidIO核的V6-130T设备对接,每次得发送两次phy_link_reset信号对方才可以收到;对方给本设备发送phy_link_reset一样需要两次。
2.与使用不同版本RapidIO核(Gen1:4.X)的V6-315T设备对接,对方发phy_link_reset,本设备1次就可以收到;本设备发phy_link_reset,对方设备一直收不到。
不知之前有没有调试过这个功能的大神,可以提供宝贵意见,先表感谢啦
当时调的时候没注意这个信号,看下注释
phy_link_reset, // Send link reset control symbols
phy_rcvd_link_reset, // Received 4 consecutive reset symbols
看到下面那个解释说是接收4个复位信号才会使能,会不会是这个原因
你所谓的没有收到是没有看到复位信号输出还是确认没有收到这个link-request控制符啊,我记得这个控制符要连续三个才有效(最好查一下协议)
感谢回复! 没错儿,是接收到连续4个周期的复位信号phy_rcvd_link_reset会置高,但是我确定发够足够长的phy_link_reset了
感谢回复!是本端发送了phy_link_reset信号,对方没有收到(对方的phy_rcvd_link_reset信号没有置高响应),查看了手册,确定发送复位的时间足够长
