基于M02099的CSFP光模块设计总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于M02099的CSFP 光模块设计总结
1 CSFP 光模块概述
CSFP 光模块是在SFP 模块基础上发展而来,目前应用较广的光模块类型是小型化可热插拔(SFP )模块系列产品。在当前的主流通信容量和速率下,它基本能满足通信的要求。但随着一系列热点应用的兴起以及对光模块产品低成本、高链路容量的进一步需求,紧凑型小型化可热插拔(CSFP )光收发模块便应运而生。
CSFP 光模块在传统SFP 模块外型尺寸上,集成了两个BIDI SFP 的模块。该模块由两个LC MINI BOSA 来实现原来同一外型尺寸下两个通道的双向收发。成对设计时发射中心波长采用1310nm DFB 激光器、接收采用中心波长为1490nm PIN 管。同样也可以设计发射中心波长1490nm DFB 激光器、接收采用中心波长为1310nm PIN 管。传输速率支持1.25Gbps 、2.488Gbps 。CSFP 光模块需符合CSFP MSA Option 2 及SFF-8472协议要求。
LD DRIVER1
DATA INPUT
LIMITING AMPLIFIER
EEPROM 1
MINI BOSA 1
TX&RX
DATA OUTPUT
光信号
I2C_E1
TX-FAULT1
RX-LOS1I2C
LIMITING AMPLIFIER
MINI BOSA 2
TX&RX
DATA OUTPUT DATA INPUT
光信号
EEPROM 2
I2C_E2
TX-FAULT2
RX-LOS2
I2C
TX-FAULT
OR
TX-DIS2 TX-DIS1LD DRIVER2
图1 CSFP 结构框图1
CSFP 的结构框图图1:通道CH1、通道CH2 各采用1片Mindspeed 公司的M02099驱动芯片,它是一款应用于ONU/ONT 的低功耗、高性能带有突发和连续限放功能IC ,同时集成有内部状态机,用于实时监控DDMI 信号,带宽可达3.1Gbps 。该模块发射采
用1310nm的DFB激光器,接收采用1490nm PIN管芯。模块内部两路可独立进行激光器的TX_DISABLE、LOS控制,两路TX_FAULTI信号需连接一个或门后输出。
2CSFP 光模块调试主要问题点总结
2.1A0/A2 、B0/B2地址实现
传统CSFP光模块的设计大都采用2片集成DRIVER IC加控制MCU实现,如下图2所示。这里MCU作为模块与上位机通信的控制单元,通过 MCU内部FLASH很方便就能实现两个通道A0/A2、B0/B2地址配置,但成本较高。随着集成有DDMI功能的DRIVER IC出现,可直接采用2片集成DRIVER IC加外部EEPROM来实现,这种方案具有成本优势。
图2 CSFP 结构框图2
本设计采用高集成的M02099 IC加外部EEPROM实现,如图1所示。但这种方式需要修改M02099IC两个通道的地址分别为A0/A2、B0/B2。基于M02099的CSFP (option2)的IIC控制总体结构示意如下图3,CSFP光模块的IIC下面挂两个M02099,通过M02099下挂的EEPROM设置将两路M02099分别设置为A0/A2和B0/B2。在上电的时候,M02099先根据EEPROM内部的信息进行初始化,然后再与上位机进行通信。
图3 CSFP option2 IIC连接图
本设计中是将电源VCCT、VCCR分别给通道CH1、通道CH2供电。模块上电后需修改通道CH1地址为A0/A2,通道CH2地址为B0/B2。M02099芯片默认地址为9Ch/9E,需通过相关命令进行地址修改。下面就修改M02099地址进行说明。
调试中发现任意一路单独断电,IIC电平都被拉低不能正常工作。原因是两路集成DRIVER M02099的 IIC信号直接连接在同一线上,只要是有一路断电,断电的一路M02099的IIC连接线会吸电流导致IIC电平被拉低,导致IIC电平拉低不能正常通信,地址修改不成功。
为解决IIC电平不被拉低,我们做了如下尝试:
先断掉通道CH1这路M02099芯片的时钟控制信号线SCL与HOST SCL线串联的R30 33R电阻,修改通道CH2地址为B0/B2,再将电阻焊接上后,调试完通道2的各参数指标并写所有表。接着再修改通道1这路 M02099的地址为A0/A2,调试完通道1
的各参数指标并写所有表。这种调试方式固然解决了产品的改地址困难,但模块调试完成后CH2通道是不能重新进行调试修改寄存器值的。一旦重新调试完再去写表,就会将地址为A0/A2的A通道的内容写到B通道模块内出现EEPROM信息混乱。分析原因是M02099对EEPROM的地址有如下要求:
A0 = Device Registers
A2 = Look-up Table
A4 = SFP
A6 = Digital Diagnostics
为解决这个返修调试写表出现混乱的问题,我们可以通过如下操作来解决。
a、需要重新调试B0/B2地址的CH2通道
需先保存CH1通道内的EEPROM信息,再将CH1通道的M02099的地址修改为除A0/A2之外的其他地址(例如C0/C2),这样就可以规避CH2通道写表问题,调试完CH2通道后再将之前保存的CH1通道的EEPROM信息重新导入回去。
b、需要重新调试A0/A2地址的CH1通道
重新调试此路模块寄存器参数,不会出现写表冲突,不需要修改CH2通道的地址,直接进行调试完成后写所有表即可。
2.2Tx_DIS 控制设置
M02099读/写可进入高速Access mode模式,在这种模式下M02099 TxDIS 脚需拉高处理,此时M02099可内部直接将IIC控制信号线SCL_S and SDA_S与外部EEPROM SCL and SDA相连进行快速读/写操作,进入Access mode模式操作如下:
a. Write Mindspeed password to addresses 7Bh - 7Eh on table select
00h
b. Set TxDIS pin = high
c. Write Table Select Byte 7Fh = 04h
d. Write I2C_CTRL register (Table 4/ 81h) to set I2C_CTRL[3] = 1
M0209在调试过程中发现,模块上电后,必须先将TxDIS 脚拉高一下再拉低模块才能正常发光。Mindspeed建议解决这个问题的方法是:需要将Table 2 中0x99[1]位设置为“1”,这样就可以解决上电TxDIS脚拉高拉低问题。但是在调试过程中0x99[1]位必须设置为“0”,一旦设置为“1”,M02099就进不了pass-through模