文章目录
- 8.2.5 模块级监控值字段
-
- (1)固定监控量
- (2)可选监控量
- 8.2.6 模块级控制字段
-
- (1)允许低功耗硬件请求(LowPwrAllowRequestHW)
- (2)静噪方法选择(SquelchMethodSelect)
- (3)低功耗软件请求(LowPwrRequestSW)
- (4)软复位(SoftwareReset)
摘要:此专栏主要介绍光模块通用管理接口规范(Common Management Interface Specification, CMIS)协议规范 V5.0 的解读。本文主要关注协议文档的 8.2 节关于标志、掩码和中断的内容。不仅是对文档的简单翻译,还会剖析协议规定背后的深层含义。为了方便与协议文档内容对应,本文的章节编号与协议文档保持一致。
8.2.5 模块级监控值字段
作用:实时监控模块级参数,此字段包含2个固定监控量和4个可选监控量。 
(1)固定监控量
- 模块温度:字节14~15,16位有符号数。单位为1/256℃。
- 供电电压:字节16~17,16位无符号数,单位为100uV。
(2)可选监控量
辅助监控器1(Aux1MonValue):字节18~19。在 Page 01h Byte 145 的 bit 0通告了辅助监控器1的功能。
- 如果 01h:145.0 = 0b:则 Aux1MonValue 的功能由用户自定义。
- 如果 01h:145.0 = 1b:则 Aux1MonValue 监测的是TEC电流,为16位有符号数。以最大TEC电流幅度 Imax 的 1/32767 为单位。正数为加热,负数为制冷。
I
T
E
C
=
I
m
a
x
32767
×
寄存器读数值
I_{TEC}=\\frac{I_{max}}{32767}\\times 寄存器读数值
ITEC=32767Imax×寄存器读数值
辅助监控器2(Aux2MonValue):字节20~21。在 Page 01h Byte 145 的 bit 1通告了辅助监控器2的功能。
- 如果 01h:145.1 = 0b:则 Aux2MonValue 监测的是激光器温度,16位有符号数。单位为 1/256℃ ,通常都是正数。
- 如果 01h:145.1 = 1b:则 Aux2MonValue 监测的是TEC电流,16位有符号数,含义同“Aux1MonValue”所述。
辅助监控器3(Aux3MonValue):字节22~23。在 Page 01h Byte 145 的 bit 2通告了辅助监控器3的功能。
- 如果 01h:145.2 = 0b:则 Aux3MonValue 监测的是激光器温度,含义同 Aux2MonValue 所述。
- 如果 01h:145.2 = 1b:则 Aux3MonValue 监测的是额外的供电电压(例如内部的某路核心电压(1.8V、1.2V)),16位无符号数,单位为 100uV 。
用户自定义监测量(CustomMonValue):完全由用户自定义使用的监控器。
为什么要让辅助监控器1和2都可以用作TEC电流的监控?
- 灵活性:允许模块设计师自由分配 Aux 通道。例如,某些模块可能希望用 Aux1 监控内部核心电压(自定义),而用 Aux2 监控 TEC 电流;或者反过来。
- 向下兼容:早期的规范版本可能 Aux1 只有一个自定义,Aux2 是激光器温度,后来为了支持 TEC 模块,又增加了 TEC 电流选项,并同时提供给 Aux1 和 Aux2,避免厂家无可用通道。
8.2.6 模块级控制字段
- 作用: “模块级控制” 与前面的 “模块级标志”、“模块级监控值” 呼应,共同构成了模块全局管理的基础,是控制模块整体行为的开关。
- 字节:该字段位于26~30字节。其中27~28字节为保留,29~30字节为用户自定义。需要重点关注26字节。

(1)允许低功耗硬件请求(LowPwrAllowRequestHW)
- 作用:位于 bit 6,它决定了模块是否听从硬件引脚 LPMode 的控制进入低功耗。默认为1b(允许)。0b:忽略 LPMode 引脚。
- 为什么默认值是 1b(启用硬件评估)?
- 主机的需求:在很多系统中,主机在启动阶段希望模块保持在低功耗模式,以免未完成配置就输出光信号或消耗过多功率。但主机上电时还没初始化 I2C 驱动,无法通过软件来控制光模块保持在低功耗模式。
- 解决方案:利用硬件引脚 LPMode。主机在给模块供电的同时,保持 LPMode 引脚有效。由于模块默认启用了硬件评估,它就会**“看到”这个硬件请求,并自动进入低功耗模式**。这样,模块从上电开始就安静地处于低功耗状态,直到主机完成初始化、准备就绪后,再通过 I2C 命令或释放硬件引脚将其唤醒。
(2)静噪方法选择(SquelchMethodSelect)
- 输入信号丢失(LOS):接收端未检测到有效光信号。
- 模块尚未完全激活:处于低功耗或启动状态,数据路径尚未就绪。
- 主机主动要求:例如通过命令让模块暂停发射。
- Pav(平均光功率):光信号的直流平均功率,可用光功率计直接测量。降低 Pav 即降低整体输出光强。
- OMA(光调制幅度):信号逻辑“1”和“0”之间的光功率差值,代表信号的有用调制能量。降低 OMA 就是减小这个差值,使信号幅度减小,但平均功率可能变化不大。

为什么提供两种静噪方法?——取决于接口标准 不同的高速通信标准对静噪期间发射机的行为有不同要求。
- 某些标准要求降低 OMA:例如,一些协议可能要求模块即使在静噪时也要保持光路连通,让对端能检测到链路依然存在(只是数据无效)。持续的 CW 光可以满足这种“非中断”或“空闲模式”需求。
- 另一些标准要求降低 Pav:许多标准(如以太网)会要求模块在静噪时彻底关闭光信号,即“激光器关闭”,以确保绝对安全并节省功耗。如果错误地用了降低 OMA 的方法,对端接收机可能会因为仍能检测到光功率而误判链路存活,导致协议层状态机出错。
(3)低功耗软件请求(LowPwrRequestSW)
- 作用:写入 1b 时,模块收到有效的低功耗软件请求,进入低功耗状态。
- 0b:没有收到低功耗软件请求。
- 1b:要求模块保持或进入低功耗状态。
- 进入低功耗状态的条件:与低功耗相关的因素有三个,分别是:低功耗软件请求(LowPwrRequestSW)、允许低功耗硬件请求(LowPwrAllowRequestHW) 和 低功耗硬件请求(LowPwrRequestHW)。这三个因素会影响状态机中的 LowPwrS 信号(当 LowPwrS 为 1 时,模块进入低功耗状态)。真值表如下所示。
根据上表可知,有两种情况会让模块进入低功耗模式,二者是 “或”的运算关系 :当任一情况出现时,模块都会进入低功耗模式。
- 软件低功耗请求为 1。
- 允许低功耗硬件请求为 1 ,并且低功耗硬件请求有效(即 LPmode 硬件管脚电平有效)。
(4)软复位(SoftwareReset)
- 作用:自清除位,当写入 1b 时,模块复位。当模块进入复位状态后,该位自动清零。软复位和硬件管脚复位的效果相同。
- 进入复位状态的条件:和复位相关的因素有三个:分别是:VCC电压过低(VccReset)、硬件复位信号(Reset) 和 软复位信号(SoftwareReset)。这三个因素会影响状态机中的 ResetS 信号( ResetS 为1时,模块就复位)。真值表如下所示。
根据上表可知,有三种情况会让模块复位,三者是 “或”的运算关系:当任一情况出现时,模块都会复位。
- VCC电压过低。
- 硬件复位管脚电平有效。
- 软复位值为1。
总结:本文介绍了模块全局监控和控制字段。这是对整个模块(而不是某个通道)进行监控和控制。下文将介绍“标志、掩码、中断”的第二个环节——“掩码”。各位小伙伴如果有什么疑问,欢迎在评论区留言讨论。






