1.2 为什么要学,如何来学GTP?



 image.png

为什么要研究Xilinx封装好的东西?直接用不就好了嘛?我又归纳了三个原因:

第一、不得不学。我们可以参考别的代码或者说是xilinx提供的例子迅速的把这个核用起来,进而去开发我们的业务逻辑。但是,起初的调试,绝对不会是一帆风顺的,一旦涉及到核相关的问题,你就得去琢磨这个核是怎么干活的。

第二、学知识要学习知识的本质。就拿这个高速串行接口来说吧,不止有GTP还有GTXGTZ,而且还有alteraltgx,不仅这些,RapidioPCIE等等,或是GTP的旁系亲属,或是在GTP这家子上面进一步封装的核,所以说这是基础,唯有学到最根本的,才能明白万变不离其宗,在遇到新的内容,才能施展你的乾坤大挪移。

另外,如果你只会用核,很难称自己是搞高速接口的,因为不了解机制,吹不出来。我们学习GTP的目的就是了解xilinx是怎么实现高速串行接口的,我们可以了解到8B/10B 编码、极性控制、时钟恢复、均衡器等等等等,以及xinlinx对高速串行接口实现的一个解决方案,这才是我们要学的本质。

例如我们公司要用A7芯片AURORA接口实现一个BANK的四路不同速率,而A7封装的是GTP,比不了GTX每通道还有CPLL,只有两路QPLL。这怎么办呢?如果不了解aurora本质是对GTP封装的话,不了解GTP其内部结构的话是很难实现的,而我了解GTP的时钟架构,就可以立刻提出实施方案,还让领导小惊讶一下。

第三、面试好忽悠。忽悠是玩笑话,如果我们可以如数家珍搬的把这核介绍清楚了,难道不能证明你的水平么?难道不利于要工资么? 

综上,这个GTP是值得学习的,学习的回报是很大的。

 image.png

全面解读?要解读到什么程度?

为了实现上面的目的,我们当然要解读到不能再解读的程度,要对所有的信号以及硬核进行全面的分析。我们看下下面这个图,这是关于GTP内部的工作机制,下面每一个小模块就是一个功能模块,这些都是由硬核实现的,虽然我们看不到具体的实现逻辑,但我们可以根据接口实现对这些模块的控制监测,我们要达到的目的就是掌握一些重要的、熟悉一些有用的、了解一些用不到的。

当然除此之外,还有GTP核的时钟、复位等等没有包含,我也会去一一介绍。






快来扫描下方二维码关注公众号,领取站内所有相关资料,所有哦~

有建议、有需求、有疑问、联系我

<