打印

以太网自动协商

[复制链接]
1311|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
omgaa|  楼主 | 2018-7-23 20:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
楼主最近在看以太网,之前一段时间粗略的看过,要做的东西没做出来,后来也没管,所以以太网很多东西都是一知半解。前几天又重新看,有一些疑问希望各位帮忙解答一哈,我会尽力把问题说清楚。

首先用到了rtl8201的以太网芯片,支持10/100M,利用FPGA写MAC层,MII接口,形成一个系统。最终把两个的系统(都是rtl8201+FPGA)相连,然后再自定义一些协议。
以太网芯片开启了自动协商,通过硬件设置默认工作在100M全双工的模式下。也就是10M/100M连接10M/100M,默认都是100M(SPEED拉高)。
我写了一个最简单的发送,tx_en一直拉高,txd[3...0]每个时钟转换一次电平。我以为这样算是一直在发送,时钟也应该一直是25M,可是实际用示波器测的时候,发现tx_clk在25M和2.5M之间来回切换。看了一下芯片手册,觉得可能是和自动协商有关,我没有开省电的模式,软件都是默认状态,还没用MDIO配置rtl8201的寄存器,看了自动协商的原理,还是不清楚为什么时钟一直在切换。
所以第一个疑问就是:为什么在100M自动协商工作模式下,保持发送的时候时钟会一直切换,而且2.5M的时钟和25M时钟持续时间差不多,这样的话实际带宽不久少了很多了吗。
第二个是MDC/MDIO的时钟,MDC是需要外部提供的吗?

相关帖子

沙发
linqing171| | 2018-7-23 21:18 | 只看该作者
自动协商不是和接收相关吗?

使用特权

评论回复
板凳
omgaa|  楼主 | 2018-7-23 21:19 | 只看该作者

使用特权

评论回复
地板
omgaa|  楼主 | 2018-7-23 21:28 | 只看该作者
linqing171 发表于 2018-7-23 21:18
自动协商不是和接收相关吗?

为啥说是和接收有关,我看的是和双方都有关系,两边都是自动协商,100M模式下的

使用特权

评论回复
5
omgaa|  楼主 | 2018-7-24 16:37 | 只看该作者
本帖最后由 omgaa 于 2018-7-24 16:39 编辑

用软件把自动协商功能关了之后,时钟一直保持在25M,不会变化,至于开着自动协商为什么会变暂时还不是很清楚

使用特权

评论回复
6
ar_dong| | 2018-8-14 09:52 | 只看该作者
2.5M是十兆模式
25M是百兆模式
应该在进行速度的自动协商

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

37

帖子

0

粉丝