明德扬论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫一扫,快捷登录!

查看: 126687|回复: 0

基于Arria10的SGM ii通信

[复制链接]
发表于 2019-12-3 21:37:12 | 显示全部楼层 |阅读模式

马上注册,看完整文章,学更多FPGA知识。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
基于Arria10的SGM ii通信

本文为明德扬原创文章,转载请注明出处!

一、RGMII和GMII连接图
我想大部分千兆网工程一般都是做GMII通信方式或者是RGMII模式的,这两类通信模式都是相对来说比较简单的,以上两种方式都是基于时钟线和数据线一起发送或者接收的。
图片2.png
GMII连接图

图片3.png
RGMII连接图

从上面的图中我们可以看出,不管是RGMII还是GMII它们都是有时钟线和数据线的,当要发送数据的时候,TX_EN <=1 ,TX_CLK <= 125M,然后TXD <= data即可,当然了,TX_EN的发送是一段一段的,也就是说你不能总是让TX_EN 一直等于1,在发送了一小段数据之后就要拉低TX_EN,然后等待下一次的数据的发送


二、SGMII和GMII的区别
SGMII模式下,是没有时钟线,只有数据线。比如说常见的AR8031芯片,有的工程师可能会有迷惑,那只有数据线如何通信呢?数白了SGMII遵循的是SERDES总线,在收到数据之后,FPGA的IP核会根据收到的数据自动恢复出时钟。


三、SGMII的调试
那我们又应该如何调试呢?SGMII该怎么从硬件处开始调呢?当我们拿到板子之后先不要急着去调试SGMII。首先我们要做的是观测芯片的正常工作正常与否。那如何知道芯片工作了呢?大多数的工程师都知道一般的千兆网芯片上面都有设置寄存器的MDCMDIO的两根线,我们可以根据数据手册上的时序图去设计MDCMDIO的时序,然后读写PHY芯片的寄存器,如果能够读写成功,那么恭喜你,你设计的电路50%是没有问题的。

我想接下来有可能有的工程师就会根据MDCMDIO的设置去调试PHY芯片的回环了吧?如果你是那样做,那么恭喜你,你中招了。根据SGMII协议,你直接调试回环是调试不出来的。所以我们接下来的是如何捕捉SGMII的协议的呢?偷偷的告诉你,在MDC和MDIO调试好的情况下(即你的板子能正常工作的情况下),用两个PHY芯片直接去对接,先不用经过FPGA进行数据处理,也就是说不用FPGA先让两个芯片能收发正常。那两个PHY芯片如何对接呢?很简单两个PHY芯片的RX对TX,TX对RX即可,然后在FPGA连接RX的那一端的端口设置为Input方向,捕获信号。如果你觉得我说的太复杂,那么你可以想象串口同行的模式。串口里面也是RX对TX,TX对RX,当你用串口1的TX发送数据给串口2的时候,串口2收到数据,同时把串口2的RX的线连接到FPGA的端口,设计FPGA的端口方向位输入方向,这样子是不是就可以捕捉串口的数据了。只要你理解了串口,那么SGMII也是同样的道理,其实你可以把SGMII理解成一个类似于高速的串口。在两个PHY芯片能相互发送数据之后,那么你就可以根据观测的数据线上的数据,然后根据数据线上的数据去设计你的FPGA的代码,也就是说FPGA发送一段和你捕捉的数据一样的数据即可,此时是可以发送数据的了。


四、SGMII协议理论分析
好了,说了那么多,都只是说的是怎么调试,是不是感觉还是缺少了相关的理论呢???那么我们下来就说说理论吧。
SGMII协议是有个数据链路层的,简单的说就是FPGA和PHY芯片之间有个通信的握手机制,PHY和FPGA之间要先通信握手,通信机制建立好了之后才可以进行数据的发送和接收。有工程师又有疑问了,SGMII协议每TX_EN线,那么PHY芯片是如何知道要发送数据的呢?很简单,就是FPGA在发送数据之前要先发送一个起始码,在发送数据之后发送一个结束码,这样子就可以把数据发送出去了
当然了,以上说的就是调试SGMII的步骤,基于ARRIA10的SGMII通信方式首先你要把Arria10的SERDES调通,调通了之后才可以去根据我上面所说的步骤去SGMII。如果你想调试8路16路24路网口通信可以在下方留言联系我们。至于Arria10的光口通信时怎么调试的,请关注我们的下一个章节。

FPGA视频课程  培训班 FPGA学习资料
吴老师 18022857217(微信同号) Q1241003385
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|MDYBBS ( 粤ICP备16061416号 )

GMT+8, 2024-4-19 13:36 , Processed in 0.056013 second(s), 25 queries .

Powered by Discuz! X3.4

本论坛由广州健飞通信有限公司所有

© 2001-2019 Comsenz Inc.

快速回复 返回顶部 返回列表