微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > FPGA与88E1111千兆以太网实现—硬件

FPGA与88E1111千兆以太网实现—硬件

时间:10-02 整理:3721RD 点击:
回想调试88E1111芯片时,遇到不少的心酸,花掉不少的money,从目前实现的UDP数据传输,ICMP ping包,ARP包,与大家一起分享一下,也许是受到调试时遇问题发帖求助,到热心网友的帮助的感慨吧;
1、芯片Package:我选择的为《117-Pin TFBGA Package》,建议没有调试过以太网的不要选择BGA封装,最好选择PQFP封装,调试过硬件会懂得;
2、硬件配置:通过芯片CONFIG[6:0]这7个引脚与外部信号相连接,得到不同的结果,例如传输速率、光线、以太网接口等,通过与外界不同管脚的连接也影响着寄存器,他们分别可以与VSS、LED_TX、LED_RX、LED_DUPLEX、LED_LINK1000、LED_LINK100、LED_LINK10、VDDO连接,依次代表3位从000到111的值;对于CONFIG[6:0]分别对应3位,每位都具有自己的含义,详见下datasheet P65;
我选择的千兆以太网的配置为:
CONFIG[0]--VSS,
CONFIG[1]-- LED_RX,
CONFIG[2]-- LED_LINK100,
CONFIG[3]-- VSS,
CONFIG[4]-- VDDO,
CONFIG[5]-- VDDO,
CONFIG[6]-- VSS,
对照上面以PHY地址为例,有PHYADR为10000b,也可参照手册实例P64;
3、MAC接口:通过上一步硬件配置知HWCFG_MODE[3:0]为1111,实际应该先确定传输速率、模式,再选择HWCFG_MODE[3:0]对应的值,参考手册P48,当选定此值时可知为GMII/MII to copper,接下来可以参照P48 GMII MAC接口图;
在此不给我实际的原理图,真是有原因的,我原来做硬件时候就是参照别人的图纸做的,做回来的板子有部分好用,部分不好用,由于采用BGA封装,当时就以为是芯片没有焊接好(没用专用BGA焊接机),做了几种板子之后发现奇怪的现象,数据只能读,不能写,其他的一切都正常,猜想过板子使用发热、焊接内部助焊剂没有清洗干净等等,其实就是自己没有看手册,太相信别人的原理图,受先入为主的思想,认为只要好使过的板子原理就没有问题,如果以后遇到调试硬件问题,一定要回答datasheet中寻求答案,大神们早都知道的东西,可我在调试以太网给我上了深深一课,这也就是不给我画好板子原理图的原因,别给大家误导了!一切都得从根本出发!
4、上拉电阻:一定要注意一些引脚需要上拉电阻,例如:MIC、MDIO、RESET等引脚;
5、电源地信号:88E1111有两种不同的电源2.5V、1.2V,对于2.5V需要区分不同的地方的供电,参照datasheet P73,我只把数字2.5V与模拟2.5V用磁珠分开,将地采用铺地的方式链接到一起;
6、以太网网线接口:有的带有变压器,有的没有,这样就需要外加芯片转换,在两者直接转换时一定要对应好引脚,否则在做好硬件后,最起码的LINK都链接不上的。
附件:
88E1111 datasheet.pdf
[发布时间:2014-11-25 08:26:15 - 下载次数:0]

最近也在搞千兆以太网,能否留个qq有些问题想向您请教

小编能否留个qq交流下,最近也在搞类似的方案

不错!

不错,感谢分享

请问小编你的UDP协议栈是用FPGA做的吗?88E1111只是PHY芯片不是吗?

一个字,说得好,值得推荐!

请教~接收数据时,LED_RX在闪,但PHY的RXDV一直为0,RXD也没有变化(有RXCLK),这是什么情况啊?

这个很久以前在别的地方看见的,不知小编怎么看



    我到没有遇到过你的问题,RX_LED是可以配置的,所以可能这部分正确就一直在变换,至于数据使能没有信号,感觉像是硬件存在问题,不过还得根具体情况分析,可以详细描述一起讨论



    对,完全是FPGA搞定,是个PHY芯片物理接口



    sorry,一直没有提示,今天突然点进来发现有说话的,你留下,我加你好友!

good job

其实调试中应该碰到的问题更多



    那是一定的,每个人调试都会有不一样的情况,也许自己在调试同样的还会出现不同问题的


没有做过以太网,协议也不是特别清楚,小编如果有什么好的资料分享一下,呵呵,多谢,希望以后如果有机会做的话,向你请教



   你看一下论坛中有关《FPGA与88E1111千兆以太网实现》这几个帖子,里面有手册及UDP协议简易说明,我主要看的的88e1111的手册,协议看过这本书《计算机网络(谢希仁第五版)》,不过从时间我上考虑,不建议一直看,多动手做实验,从实验中去理解。



   那真是要麻烦您了,我的qq是908467503

学习一下



   已经添加了,有啥问题在论坛上沟通,有啥说错的,别人也能够给指正出来

link100亮,duplex亮,tx发送时led亮,但是电脑就是接收不到数据?有人遇到过这个问题嘛?



    你要是确认你说的硬件状态对,之后就是你发送数据了,不是发送的任何数据都能接收到,没有正确的数据,网卡会给滤掉

不错。学习了

小编写的相当好啊。不知道你的以太网接口是工作在百兆模式还是千兆模式?
88E1111芯片发热厉害吗?



    千兆的以太网,有数据传输就发热,但是问题不大,原来怕出问题还加过散热,事实说明不加没啥问题的。

好经验分享,太实用了

请教个问题 我也是用的这款phy芯片 生成了一个rgmii v2.0的emac core 1G 和100/10M 通信都正常 但是设成tri模式就不能自适应 谢谢



    最近忙着项目了,一直没有关注,你的问题:我没有用过你这种方式,还有你只说不能用,说说具体情况方可知道能否帮助你。

最近我也在调试FPGA与88E1111,我不是做硬件的,我是写FPGA代码。现在各种都调通了,就有一些问题不知大家都遇到没有,
FPGA与PC机(用网口调试助手)通信时
1、采用UDP协议,FPGA接收数据时,PC机需要发送2~3(有时候4~5次,这概率有点小)次,FPGA才能收到,如果不通过外网(PC机与FPGA板子直接相连)PC机需要发送1~2,这是为什么?
2、PC机接收数据是,会有数据包丢失,大概1000多包丢失1包,随机丢失,这是为什么?
最近调的很烦,如果有正在调试的,欢迎一起交流,谢谢

看一看,学一学!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top