文章目录
- 8.8.0 带 Bank 的 Page 10h(通道控制与数据路径控制)概述
- 8.8.1 数据路径初始化控制 (DPDeinit位)
- 8.8.2 通道特定直接效果控制字段
- 8.8.2.0 概述:什么是“直接效果控制”?
- 8.8.2.1 Tx输出静音功能及其控制
- 8.8.2.2 Rx输出静音功能及控制概述
- 8.8.2.3 通道特定的 Tx 和 Rx 控制字段
- 总结
摘要:此专栏主要介绍光模块通用管理接口规范(Common Management Interface Specification, CMIS)协议规范 V5.0 的解读。本文主要关注协议文档的 8.8 节关于 Page 10h 的内容。不仅是对文档的简单翻译,还会剖析协议规定背后的深层含义。为了方便与协议文档内容对应,本文的章节编号与协议文档保持一致。
8.8.0 带 Bank 的 Page 10h(通道控制与数据路径控制)概述
Page 10h存储的内容
Page 10h这一页里存放的是每个通道的独立开关和参数,比如:- 发射使能/禁用
- 接收使能/禁用
- 均衡器参数调整
- 通道级的信号状态标志
Page 10h支持多bank
Page 10h可以支持多个Bank,每个Bank只能容纳8个通道。Page 10h 也可以只有一个Bank。例如,对于标准的QSFP-DD,只有8个通道,用一个Bank就可以容纳。但如果某款光模块有16个通道,那么,支持多Bank的Page 10h具备这种扩展能力,可以存储更多通道的数据。“可选”但“强制”
和Page 01h、Page 02h一样,Page 10h也具有“可选”但“强制”的特性:对于平坦内存模块(例如无源铜缆),不支持Page 10h。对于分页内存模块,这一页是强制必须支持的。由Page 00h: Byte 2: bit 7通告此光模块是否支持Page 10h。
8.8.1 数据路径初始化控制 (DPDeinit位)
- 背景
对于4x100G的光模块,每个100G就是一个数据路径。我们可以把每个数据路径比喻成工厂的一条生产线。DPDeinit 位就相当于生产线上的电闸开关。- DPDeinit = 1:电闸断开,表示这条生产线关闭(Deinit),不工作。
- DPDeinit = 0:电闸闭合,表示这条生产线开启,可以准备干活了。
- 什么时候看 DPDeinit 位?
模块状态机里有一个关键状态叫ModuleReady。只有到了这个状态,模块才会去看这些电闸是开还是关,然后决定要不要启动生产线。 - 自动启动与手动启动
- 默认情况下,DPDeinit 都为 0,模块一进入到 ModuleReady后,所有数据路径都会自动开始初始化。这就像工厂自检完,老板说“所有机器自动开机”,省得人工一个个按按钮。
- 但如果主机(交换机)想手动控制呢?比如它想先配置一下参数,再一条条启动。那就可以在光模块还在LowPwr(低功耗,相当于停工待命) 阶段,提前把所有电闸都断开(DPDeinit全写成 1)。这样等模块进入 Ready 状态时,一看电闸全是关的,就不会自动开机了。然后主机想开哪条线,就把对应的位清零即可。
- 各条数据路径独立工作
这些数据路径(生产线)互相不影响。你可以让路径 1 先启动,路径 2 等一会儿再启动;也可以同时启动。它们各自初始化,互不干扰,提高了灵活性。
8.8.2 通道特定直接效果控制字段
8.8.2.0 概述:什么是“直接效果控制”?
主机对这些控制位的操作,会直接作用到对应的通道上,不经过暂存,也不属于控制集(Control Set)的一部分,是独立于数据路径的。
注意:有些情况下,即使写了控制位,模块可能不会立即执行,因为它要服从数据路径状态机。比如模块还在初始化过程中,你让它打开激光器,它是不会打开的。
8.8.2.1 Tx输出静音功能及其控制
Tx输出静音有两种方式:“禁用”和“静噪”。
- 禁用:直接把激光器关掉,光功率几乎为零(<-20dBm)。
- 静噪:不是完全关掉,而是把输出信号大幅衰减,让对端感觉不到有效信号。既可以采用衰减光调制幅度(OMA)的方式,也可以采用衰减平均功率的方式。
联合控制
光模块上电后,“直接效果控制”和“数据路径状态机”共同作用于光模块,二者联合控制光模块。- 禁用功能的联合控制:Tx禁用功能通常仅由主机控制。但当主机已解除禁用时,数据路径状态机有时也会“强行”关掉输出,以保证设备安全。
- 静噪功能的联合控制:Tx输出静噪功能既可由主机控制,称为强制输出静噪。也可由模块内部的静噪控制器控制,当主机侧没有合适的输入信号可供转发到媒体侧输出时,该控制器会自动激活输出静噪功能,这被称为自动输出静噪。
优先级:禁用的优先级高于静噪。当Tx输出被禁用时,静噪功能被屏蔽,不起作用。“禁用”相当于水管上的“开关”,“静噪”相当于“开关”之后的“调节阀”。
8.8.2.2 Rx输出静音功能及控制概述
- Rx输出静音也分为禁用和静噪,但协议文档没有对 静音方法和输出信号特性的优先权 做规定。
- Rx输出禁用功能由主机控制。
- Rx输出静噪功能由模块内部的静噪控制器控制,主机不能强制Rx静噪。
- Rx输出静噪功能的控制
- 当Rx媒体通道检测到信号丢失(例如Rx LOS被置位)时,该控制器会自动激活输出静噪功能,直到重新检测到了有效信号。这样做的目的是避免链路震荡。
- 单个Rx输入通道可能与一个以上的Rx输出通道相关联。对于属于同一数据路径的所有通道,自动静噪设置应相同。
8.8.2.3 通道特定的 Tx 和 Rx 控制字段
- Tx 输出控制
- 主机可以使用 OutputDisableTx<N> 来禁用或解除禁用 Tx 输出通道 N。
- 主机可以使用 OutputSquelchForceTx<N> 来强制或解除强制静噪 Tx 输出通道 N。
- 主机可以使用 AutoSquelchDisableTx<N> 来禁用或启用通道 N 的内部自动静噪控制器。
- Tx 输入控制
- 主机可以使用 InputPolarityFlipTx<N> 来翻转通道 N 的主机侧输入信号极性。
- 主机可以使用 AdaptiveInputEqFreezeTx<N> 来冻结通道 N 的主机侧输入均衡器的自适应过程。
- 主机可以使用 AdaptiveInputEqStoreTx<N> 来存储通道 N 的当前均衡器设置,以便后续调用。
- Rx 输出控制
- 主机可以使用 OutputDisableRx<N> 来禁用或解除禁用 Rx 输出通道 N。
- 主机可以使用 OutputPolarityFlipRx<N> 来翻转通道 N 的输出信号极性。
- 主机可以使用 AutoSquelchDisableRx<N> 来禁用或启用通道 N 的内部自动静噪控制器。
注: 不存在与 OutputSquelchForceTx<N> 对应的 OutputSquelchForceRx<N>。
注: 建议主机为同一数据路径内的所有通道(Tx 的媒体通道和 Rx 的主机通道)配置相同的自动静噪设置,否则可能会导致意外行为。
总结
本文解读了CMIS V5.0协议中Page 10h的通道控制功能,包括数据路径初始化控制(DPDeinit位)以及通道特定的直接效果控制字段,详细说明了Tx/Rx输出静音(禁用与静噪)的实现方式、控制逻辑与优先级。如有疑问,欢迎在评论区留言讨论。