数字诊断部分主要由MCU 来完成。通过MCU,网络管理单元可以实时监测收发模块的温度,供电电压,激光偏置电流以及发射和接收的光功率。通过对这些参数的测量,管理单元能够迅速找出光纤链路中发生故障的具体位置,简化维护工作,提高系统的可靠性。
五个 DDM 参数首先由采集电路进行采集转换,后送至ADC 输入端,ADC 电路将送来的五个模拟电压量转换成数字信号,经译码电路存于支持DDM 的存储器的相应地址位上。信息的传递通过两线串行接口
(时钟线SCL 和数据线SDA)来实现。
1、 SFF-8472 协议简介
SFF-8472 协议是对相关参数在线监控及数字化的具体规范,它将模块的EEPROM 划分出2个256 字节的存储单元,在协议中保留了原来SFP/GBIC 在地址A0h 处的地址映射,并在地址A2h 处又增加了一个256 字节存储单元。A0h 存储单元用于存储SFP 模块的一些通用信息,如模块类型、序列号、生产日期、波长和传输距离等。A2h 存储单元用MCU 的RAM和FLASH 代替EEPROM。MCU
实时采集到的5 个模拟量的数字化测量结果、报警/告警标志位、系统状态标志位、用户自定义标志位等常常改变又不需要保护的数据存储在RAM 中,等待上位机采集。报警/告警阈值,内外校准参数、光通信系数、某些用户自定义参数等需要保护的数据存储在FLASH 中,一旦上位机改变这些数据,MCU 接收到新数据后,就要写到FLASH 保存起来,若掉电或者故障等缘故重启系统,则先从FLASH 中把这些保护的数据读出来给RAM 等待上位机读取。
2、 数字诊断硬件设计
光收发模块的5个诊断参量分别由激光驱动器和接收部分相关器件产生,但是这些参量的状态都是模拟电压信号,要实现数字诊断,首先必须将这些模拟信号通过模数转换器转换为数字信号,再跟据SFF-8472
协议的规定,实现光收发模块的数字诊断功能。
MCU 是整个DDM 系统的监测控制中心,必须满足以下条件:具有足够容量且支持在线编程的FLASH 及RAM;具有多通道的ADC 功能;内置IIC 控制模块,既可做主机模式,也可以做从机模式;具备较快的处理速率;具备较多的I/O 接口以方便扩展等。
结合以上要求,本系统MCU 采用Atmel 公司的Atmega16。Atmega16 有一个10 位的逐次逼近型ADC,该ADC 与一个8 通道的模拟多路复用器连接,能对来自端口A
的8 路单端输入电压进行采样。单端电压输入以0V(GND)为基准。ADC 还包括一个采样保持电路,以确保在转换过程中输入到ADC的电压保持恒定。ADC由AVCC引脚单独提供电源,AVCC与VCC 之间的偏差不能超过士0.3V。数字诊断原理所示。
3、 数字诊断软件实现方式
在硬件设计完成以后,还必须开发单片机工作控制程序,才能完成光模块的数字诊断功能。根据光收发一体模块的设计要求,当模块工作环境在允许范围内时,光模块的一切参数性能都必须满足SFF-8472 的要求。这就要求当单片机上电时,控制程序就开始运行,进行数字诊断。
当单片机上电后,控制程序首先开始初始化,包括对单片机I/O 接口的配置、TWI 的配置、ADC 通道的配置以及看门狗定时器的配置等。初始化结束后,控制程序循环开始运行。软件的程序流程图所示。
微信扫一扫