EETOP 创芯网论坛 (原名:电子顶级开发网)

标题: FPGA与88E1111千兆以太网实现—ARP包 [打印本页]

作者: topggmq    时间: 2015-2-10 13:15
标题: FPGA与88E1111千兆以太网实现—ARP包
ARP包包含两个部分,一个接受ARP请求,另一个是发送ARP回应;那么它具有什么样的作用呢?
在实际应用过程,并不是像我之前介绍的一样,将固定的信息全部都能定义到板子内部,而是根据网络或是网卡的特点一样,每个网卡都具有自己的一个物理地址,同样在以太网板子上也需要定义一个MAC地址,并在此指定IP地址,那么任何计算机或是能够发送ARP请求包的板子都可以通过这个IP寻找板子的物理地址,并为以后的数据传送到哪留下地址。
ARP请求:
是指计算机像板子发送请求,通过指定IP地址寻求板子的物理地址,那么针对与以太网板子而然,就是接收数据,进而对照之前所说的一样,就是当有rxen信号时,判断rxdata的数据,同样数据是啥是根据arp包结构而定,不同时期发过来的数据代表不同的意义,在此我不做介绍,但在下面可以推荐一种测试收到数据的方法。
利用signaltap完成数据监控,设置时钟为rxclk,监测信号为rxenrxdata,捕获时间选取rxen上升沿时刻,如果硬件、软件设计都正确,你将会发现首先接到的数据为55 55……d5,还记得这个数据吧,前导数据呀,接下来是ff ff……共计6个字节,说明ARP请求包是以广播的形式发送的,剩下的数据自己找arp数据包结构自己分析吧!
ARP响应:
它是相对与请求后的回应,告诉对方我的信息,及记录对方的信息,这些信息其实就是之前提到的IPMAC地址,说白了还是一串数据,既然是回应,那么相对于板子就是像主机发送数据,自然就会利用到txclktxentxdata这三个信号,就像发送UDP协议数据一样,与ARP请求是个反过程,但是需要注意的是发送完所有协议数据之后,不能直接将txen信号直接拉低,而是需要发送一些数据,保证一包数据的最小容量,这些数据一般都是00
总结:
要想完成ARP包,必须弄通两件事,一是arp数据包的请求、回应结构,二是根据以前介绍的内容通过FPGA完成信号与时钟的匹配,在合适发送或是接收那些指定的数据,这些数据代表的意义也就为结构中的内容,如果能够明白其中的意义,实现ARP其实不难,甚至来说比UDP要省事的多,至少它不需要穿过那么多层就可以完成。
作者: shanekong    时间: 2015-3-3 14:42
你好,问一下,你是在xilinx的芯片上做的开发呢还是altera啊?
作者: topggmq    时间: 2015-3-5 07:59
回复 2# shanekong


    altera上,是啥无所谓,都是基本的IO,没有特殊应用
作者: shashabiaoge    时间: 2015-3-6 11:26
请教楼主,PC端是用哪个软件发送arp包的?新手一枚,没找到什么好的软件来发送包
作者: topggmq    时间: 2015-3-6 13:34
回复 4# shashabiaoge


    只要PC端没有记录,无论发什么都会有ARP请求的,不需要什么特殊的软件
作者: hudongfang123    时间: 2015-4-14 19:57
您好!我现在正在弄这个开发板,不知道Mac帧中的源地址和目的地址怎么设置?目的地址是不是就是设置上位机的IP地址,源地址是不是就是88E1111的物理地址,那这个物理地址怎么找啊?不懂啊,菜鸟请高手赐教!
作者: topggmq    时间: 2015-4-23 12:41
MAC地址就像每个网卡上都有唯一物理地址,可以任意匹配IP地址,也就是MAC地址是一个固定值,那么这个值由控制端决定,当与网卡通讯时,网卡自然也有一个固定MAC值。
作者: arszx    时间: 2015-8-11 20:28
挺好的
作者: arszx    时间: 2015-8-11 20:34
硬件电路怎么连有源程序吗
作者: topggmq    时间: 2015-9-6 15:00
回复 9# arszx


    sorry,不能给的,只提供技术支持,看来在这领域你应该是新手吧,记住不要直接要代码,几乎不会有人给的,给你的都是网上泛滥的
作者: ever4ever    时间: 2015-9-15 10:05
能留个qq么?或者加826120889?求助
作者: 解东亮    时间: 2015-10-18 19:48
楼主,菜鸟一枚,请教一下,FPGA端的IP地址是怎么确定?也就是如何知道或者设置目的IP,实在是没啥概念对这个东西
作者: topggmq    时间: 2015-10-21 09:09
回复 12# 解东亮


    自己确定的,不是设定的,而是代码中要写入的,确定方式要根PC端一致,保证在一个段上好调试的
作者: 解东亮    时间: 2015-10-21 15:33
回复 13# topggmq


   那我不用mac核的话可以直接发包测试吗楼主?或者加您qq问几个小白问题吧,我现在只需要测试物理上通不通,我的qq965404806
作者: topggmq    时间: 2015-10-26 16:04
回复 14# 解东亮


    可以直接抓取的,你要是应用根我一样的片子,你可按照前面的方式操作,另外已加你好友
作者: IP核    时间: 2016-3-26 16:08
回复 1# topggmq


   最近在调试千兆网,用的FPGA内部的10/100/1000 Ethernet MAC核加外部PHY芯片实现的,UDP协议,调试板子是骏龙科技自己做的网卡,上面的PHY芯片使用的是RGMII接口,LOOPBACK模式下GMII接口通,RGMII接口的TX_CONTROL和RGMII_OUT[3:0]就是没有信号,不知道是为什么,骏龙科技那边也没找到原因,想在网上买块88E1111芯片的开发板,但是有点小贵没舍得,评估板没找到,还望楼主明示
作者: topggmq    时间: 2016-3-29 15:20
回复 16# IP核


    你这么说问题估计出现在模式配置上,但是感觉你能做出来GMII模式,你应该不会配置错的,但你还需要看看寄存器的细节配置做回环测试
作者: 574920045    时间: 2016-3-30 09:00
回复 1# topggmq

你用的是RGMII还是GMII?
作者: topggmq    时间: 2016-3-30 09:45
回复 18# 574920045


    gmii
作者: darlingsun    时间: 2016-3-30 14:10
感谢楼主分享,准备学习中
作者: 574920045    时间: 2016-3-31 08:52
回复 19# topggmq


    GMII比RGMII好弄一点吧!
作者: topggmq    时间: 2016-4-19 11:57
回复 21# 574920045


    自我感觉是这样的,并行理解,会好理解些,懂存储器就更好理解了
作者: qqiummo    时间: 2016-4-27 13:44
回复 22# topggmq

请教一个问题,那个fpga对以太网芯片发送数据前,是不是要检测连接状态的,是通过什么方法检测的呢,因为我写了一个发送的,在电脑上抓包的数据不对,谢谢
作者: qqiummo    时间: 2016-4-27 13:58
回复 22# topggmq

再请教一个问题,我用的芯片是LXT972,按原理来说,phy芯片都是类似的,连接的指示灯link up不亮的原因是什么呢,就是,我把两块开发板用网线连起来,那个link up的指示灯不亮,是不是要进行什么操作才能连接上,另外你用什么软件来抓包的,可否加个q呢?qq:2259964043
作者: topggmq    时间: 2016-6-2 10:35
回复 23# qqiummo


    我所有的芯片是没有检测的,但不知道你用的芯片有没有,还有发送程序写了,会有多种原因导致数据发不出,需要根据测试结果分析原因
作者: topggmq    时间: 2016-6-2 10:40
回复 24# qqiummo


    首先你的片子我没有用过,其次问题描述就说link不上,没发分析,多种问题都会导致的,最后已加你好友
作者: yurenyyy    时间: 2016-6-30 05:50
根据网络或是网卡的特点一样,每个网卡都具有自己的一个物理地址,同样在以太网板子上也需要定义一个MAC地址,并在此指定IP地址

----请问楼主这样要怎么做呀
作者: topggmq    时间: 2016-9-9 14:37
回复 27# yurenyyy


   sorry,问题应该解决了吧,好久没上来看了,为后人不了解的做个参考吧,这个是定义协议时指定的,看协议,ARP、ICMP、UDP、TCP等都有体现
作者: topggmq    时间: 2016-9-9 14:37
回复 27# yurenyyy


   sorry,问题应该解决了吧,好久没上来看了,为后人不了解的做个参考吧,这个是定义协议时指定的,看协议,ARP、ICMP、UDP、TCP等都有体现
作者: ldx2089    时间: 2017-9-20 10:49
回复 22# topggmq


   求助 591531463 88E1111
作者: ldx2089    时间: 2017-9-20 10:50
回复 29# topggmq


   哥  我的硬件做好了 但是调试过程中遇到一些问题 求帮忙 591531463 QQ
作者: secret52077    时间: 2017-11-22 10:21
您好,我目前正在做FPGA到上位机PC的点对点通信,关于配置TSE MAC有些问题,您能加我的qq下吗?请教一下。
qq:757381870




欢迎光临 EETOP 创芯网论坛 (原名:电子顶级开发网) (https://bbs.eetop.cn/) Powered by Discuz! X3.4