一、PHY层简介
PHY层(Physical Layer)是OSI模型中最低的一层,也是最基本的一层,PHY是物理接口收发器,它实现物理层。包括MII/GMII(介质独立接口)子层、PCS(物理编码子层)、PMA(物理介质附加)子层、PMD(物理介质相关)子层。主要功能包括:
- 将mac层的数据转换为适合在相应物理介质中传输的信号
- 进行编码或者解码,进行直流平衡,使得对端接收简单
- 对数据进行调制解调,或者加入扰码使其数据接近白噪声,提高在信道中的刚干扰能力
- 在MAC层之前进行数据对齐
其中MII/GMII是与MAC与PHY之间的接口(具体可参考之前写的一篇文章),PCS主要是将数据进行编码或是加入扰码,例如8B/10B、64B/66B,另外一个功能进行CRC校验编码。PMA的主要作用是进行并串/串并转换,将数字信号转换为模拟信号,并可以选择进行前加重、后加重,继承了SEDDES、发送/接收缓冲器、时钟发生器和时钟恢复器。PMD主要指的是将光信号转变为电信号的光电转换模块。
此次要设计PHY层的PCS\PMA主要利用7系列FPGA的GT实现,而我们主要是对GT接收过来的数据进行数据对齐以及大小端转换,对于发送的数据我们主要进行一个大小端转换和加入随机码。
二、GT IP核介绍
1、打开7系列GT IP核
选择将共享逻辑放入到例子工程中,方便我们后续使用
2、线速率、参考时钟选择(CPLL应该是6.6G以下可以使用)
3、编码/时钟选择
4、COMMOA对齐和均衡
COMMOA的作用只是标记一帧的开始和结束,同时进行时钟矫正。在从串行数据转换为并行数据的过程中,会按位流动的检测COMMOA符号,当检测到所设置的COMMOA时,证明有数据到来。
5、PCIe、SATA所使用的选项
只勾选LOOPBACK选项
6、时钟矫正