SATA调试记录之物理建链失败
问题描述
现象1:在物理层进行建链过程,完成OOB信号的握手以及Dial Tone过程,当Host给DEV发Sync,
Dev仍一直给Host回Align,如下图示:


而正确的握手过程如下图:

现象2:在物理层进行建链过程,只会完成OOB信号的握手,当Host给Dev进行Dial Tone,Dev不会回复Align原语,如下图示:

物理层完成建立链接图示:

Host处于空闲时会一直向Dev发送Sync原语,间隔256时钟周期,至少向Dev发送两个连续Align原语(Ps:SATA 规范规定每发送 256 个 dword 至少插入 2 个连续的 ALIGN 原语)
问题原因
经过一顿查找,发送硬件工程师把SERDES的RX P端和N端极性接反了,在GT ip中勾选RX极性设置,调转极性即可解决问题
参考文章以及参考代码链接
参考王博知乎文章
https://zhuanlan.zhihu.com/p/554251608
参考王博的sata接口代码
https://github.com/WangXuan95

浙公网安备 33010602011771号