bcm54xx系列phy光口电口的配置方法

1.芯片型号及平台

BCM54XX是博通公司的一个系列的PHY芯片,这里是BCM54616

芯片所在平台为zynq7000系列的自制ZC7045板卡,要支持两路网卡,一路光口一路电口

 

2.问题

电口的配置,大同小异,不管是哪一个Phy芯片,主要就是以下寄存器:

Auto-negotiation advertisement register

1000BASE-T control register

Control register

一般就是设置速率,自协商,然后读取协商状态和link状态,可能需要注意的就是扩展寄存器的读写方法,有的是通过22号寄存器,有的是自己特有的方式,这个需要阅读手册。

现在在配置千兆光口的时候,总是出问题,怎么配置都无法达到千兆光口的速率,乍一看博通的手册,都看不出支持千兆光口,如下:

一度使得我的配置陷入了僵局。

 

3.解决办法

其实这个很简单,BCM54616的寄存器组当中有一个0X1C号寄存器如下:

这是个影子寄存器,意思就是说,一个寄存器根据指定位写入的数值不同,可以切换到不同的寄存器模式,这里有一个Mode control register

 

在最后这几位可以看到选择phy芯片的工作模式,这里

0位置1,选择1000-x register 00-0FH

2:1位为[0:1],选择RGMII TO fiber

这样配置之后,其实前面的寄存器组就变成了光口的寄存器组,但是不能参照前面电口的00-0F的寄存器,要在手册的后面

有个serdes register descripter,在这里有对光口寄存器的描述,如下图:

其实打开看一下,第0x00号寄存器,乍一看和电口的一样的,仔细对比下发现还是有一些差别,这就导致如果按照电口的地址和位去配置光口,注定是不会成功的,对比如下:

左边为光口右边为电口:

能够找到光口配置的入口已经对应的配置寄存器组,其实就成功了,剩下的对着手册一步步配置即可。

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值