DP83849IF光纤以太网硬件和驱动调试问题20130314,谢谢!
一,硬件系统概况:我们的硬件系统采用FREESCAL的COLDFIRE 54418处理器(32位)+DP83849IF双路以太网, 和其他复位电路,NANDFLASH,DDR2等合在一起做成一块小的核心板。DP83849IF的两路以太网收发信号和光纤检测信号FXSD,LED信号通过2.54mm间距的双排排针引到下面的外围接口大板上。外围接口大板有2种,一种是双路电口以太网,一种是双路光口以太网,当然还有其他外围电路不同。硬件电路设计中,MAC接口采用RMII接口,外接50MHZ有源晶振。
二,软件系统概况:采用FREESCAL的支持COLDFIRE 54418处理器的实时操作系统QMX,里面 自带以太网协议栈和DP83849的电口以太网驱动.
三,目前调试情况和遇到的问题:
目前,双路电口以太网已经调试成功,能够可靠链接进行数据通信。
光口以太网调试不成功:(调试程序以及驱动和电口的完全一样,下面的硬件管脚配置修改主要参考 DP83849IF的 DATASHEET1.7 STRAP OPTIONS管脚)
1,修改硬件管脚配置为光纤模式,DP83849IF的15页TABLE3 LED MODE工作在MODE 2时,LED_LINK管脚不停闪烁,但是交换机的相应光口的LINK灯不闪烁,并且PING不通DP83849的网口。(交换机的两路光口互连时LINK灯不停闪烁)
2,硬件原理图完全按照文档 snlr002(DP83849IFVS-EVK SCH )的PORT B的光口电路和文档snlu081(DP83849IFVS-EVK Purpose and Contents)的跳线来修改硬件管脚配置后,DP83849IF的15页TABLE3 LED MODE工作在MODE 1时,灯亮,但是交换机的相应光口的LINK灯不闪烁,并且PING不通DP83849的网口。
不同情况下的部分寄存器读取置如下:
电口调通的情况下 上面1的情况 上面2的情况
00H BMCR 0x3100 0x2100 0x2100
01H BMSR 0x7869 0x7859 0x7859
10H PHYSTS 0x1115 0x0005 0x0005
16H PCSR 0x0100 0x014B 0x014B
19H PHYCR 0x8021 0x0001 0x0021
请问:能否只改变DP83849管脚的硬件的上下拉电阻配置,驱动不用更改就可以调通光纤以太网;还是需要硬件管脚配置和驱动一起修改才可以调通光纤以太网?
并且怎么修改?谢谢!
不知道您的问题有没有解决。对于register 的不同如下,看起来没有问题,只是的确由于FX无通讯造成Far End Fault 。建议您确认连接上是否有问题,另外确认RMII Receive Timing 和 100BASE-TX and 100BASE-FX MII Receive Packet Latency/Deassertion Timing,因为FX和TX这里会有区别。
BMCR:
bit12, Auto-Negotiation Enable
BMSR:
bit 5: Auto-Negotiation Complete
Remote Fault condition detected (cleared on read or by reset). Fault criteria: Far End Fault Indication or notification from Link Partner of Remote Fault
PHYSTS:
Polarity indication is not available in 100Mb forced mode of operation or in a parallel detected 100Mb mode.
Fiber mode is 100Mb only and does not support Auto-Negotiation.
PCSR:
FEFI_EN 前者为EN,FX时候为DIS_EN
NRZI_BUPASS前者为EN,FX时候为DIS_EN:In FX mode, the device bypasses MLT3 Decoder and the Descrambler. This allows for the reception of serialized 5B4B encoded NRZI data at 125 MHz.
The only added functionality for 100BASE-FX from 100BASE-TX is the support of Far-End Fault detection.
PHYCR:
Auto-MDIX enable前者为EN,FX时候为DIS_EN
Hi,
pls check FXSD pin:
DP83849 connect to signal detect input. most of optical module for loss of signal(LOS), so this would to be inverted before connected to DP83849.
看了各位的答复,非常感谢。我们也初步判断,
A,驱动应该没有问题,
B,PHY芯片DP83849IF的光模式的配置(和电模式的区别)也应该是没有问题的,
C,那么有问题的只有可能是PHY的收发差分信号在PHY端和光模块端的上下拉电阻配置(PHY的电平和光模块的电平匹配问题,光模块接口是标准LVPECL电平,型号是武汉元创的OCM3521-51).
因此今天做了如下试验:
1,电阻电平配置后还是不通,我们的光模块的SD信号只上下拉了电阻,没有接到DP83849IF的FXSD上(电路板上割断了),请问Jeff Wang1这样会影响光口通信吗?
2,DP83849IF的FXSD曾经接死过(通过2.4K电阻上拉和下拉都试过),也通信不上PING不通。
3,DP83849IF的FXSD信号是高电平输入表示有有效光信号,还是低电平输入表示有效光信号?信号不接会影响DP83849的正常工作吗?
谢谢,
另外Jeff Wang1可否把办公电话留给我,方便沟通,我公司邮箱:lihui2@mailkge.com
哦,对了,光模块的SD信号信息如下:
4 |
SD |
PECL/LVPECL |
接收部分无光告警。低电平告警 Optical alarm of receiver section,low level when no light |