CMIS 通道页寄存器映射(10h、11h、VDM、CDB)
CMIS 模块中所有按通道划分的内容都保存在按 bank 分组的页面中:bank b(lower byte 126)覆盖通道 8b+1 … 8b+8。10h 页是主机写入的内容,包括数据通路初始化、Tx 禁用、极性、静噪、均衡,以及用来选择应用的分级控制集(staged control set);11h 页是主机读回的内容,包括数据通路状态、按通道的标志位、监测值、配置状态和当前生效的控制集。20h–2Fh 页保存 VDM,9Fh 页是 CDB 邮箱。本页列出关键字节,依据 CMIS 5.x 编写(部分信号完整性字段的字节位置在 4.x 和 5.x 之间有差异,这些情况以范围形式给出)。详细说明见: CMIS。
图例:按通道分配的字节使用第 n−1 位对应通道 n(bit 0 = 通道 1 … bit 7 = 通道 8);半字节(nibble)字段除非另有说明,每对通道中奇数通道使用 bits 7–4,偶数通道使用 bits 3–0; rsvd = 保留。
10h 页:通道控制(主机写入)
| 字节 | 字段 | 位 / 内容 |
|---|---|---|
| 128 | DPDeinitLane | 每通道 1 位:1 = 反初始化(将该通道的数据通路置为 DPDeactivated) |
| 129 | rsvd | — |
| 130 | OutputDisableTx | 每通道 1 位:1 = 关闭 Tx 输出(激光器) |
| 131 | PolarityFlipTx | 每通道 1 位:翻转 Tx 电气输入极性 |
| 132 | SquelchDisableTx | 每通道 1 位:1 = 禁用自动 Tx 静噪 |
| 133 | ForceSquelchTx | 每通道 1 位:1 = 强制 Tx 静噪 |
| 134 | rsvd | — |
| 135 | AdaptiveInputEqEnableTx | 每通道 1 位:1 = 启用主机侧输入自适应均衡 |
| 136 | AdaptiveInputEqRecallTx | 每通道 1 位:恢复已保存的均衡设置(4.x:冻结) |
| 137 | rsvd | — |
| 138–141 | FixedInputEqTargetTx | 每通道半字节(138:通道 1–2 … 141:通道 7–8):固定输入均衡代码 0–15 |
| 142 | rsvd | — |
| 143 | ApplyDPInitLane | 每通道 1 位:1 = 应用 Staged Control Set 0 并运行 DPInit |
| 144 | ApplyImmediateLane | 每通道 1 位:应用 SCS0,但不重新初始化数据通路 |
| 145–152 | Staged Control Set 0:数据通路配置 | 每通道 1 字节(145 = 通道 1 … 152 = 通道 8):bits 7–4 为 AppSelCode(1–15 = 描述符索引,0 = 无)· 3–1 为 DataPathID(该数据通路的第一个主机通道号 − 1)· 0 为 ExplicitControl(1 = 使用下方的 SI 设置,而不是应用默认值) |
| 153 | SCS0 AdaptiveInputEqEnableTx | 每通道 1 位 |
| 154 | SCS0 AdaptiveInputEqRecallTx | 每通道 1 位 |
| 155 | rsvd | — |
| 156–159 | SCS0 FixedInputEqTargetTx | 每通道半字节 |
| 160 | SCS0 CDREnableTx | 每通道 1 位:1 = 开启 Tx CDR,0 = 旁路 |
| 161 | SCS0 CDREnableRx | 每通道 1 位 |
| 162–165 | SCS0 OutputEqPreCursorTargetRx | 每通道半字节 |
| 166–169 | SCS0 OutputEqPostCursorTargetRx | 每通道半字节 |
| 170–173 | SCS0 OutputAmplitudeTargetRx | 每通道半字节 |
| 174–177 | rsvd | — |
| 178–210 | Staged Control Set 1 | 与 145–177 布局相同(178–185 为数据通路配置,186–210 为 SI 目标值) |
| 211–255 | Rx 输出控制与掩码 | OutputDisableRx、PolarityFlipRx、SquelchDisableRx(按通道);page 11h 的标志掩码(字节位置因版本而异) |
选择流程:写入 145–152 → 为相应通道设置 143 → 轮询 page 11h 202–205 的 ConfigStatus → 读取 128–131 获取数据通路状态,参见:CMIS, 速率与协商。
11h 页:通道状态(主机读取)
| 字节 | 字段 | 位 / 内容 |
|---|---|---|
| 128 | DPStateHostLane 1–2 | 3–0 为通道 1 状态 · 7–4 为通道 2 状态(见下方代码表) |
| 129 | DPStateHostLane 3–4 | 同上 |
| 130 | DPStateHostLane 5–6 | — |
| 131 | DPStateHostLane 7–8 | — |
| 132–133 | rsvd | — |
| 134 | DPStateChangedFlag | 每通道 1 位;锁存 |
| 135 | TxFaultFlag | 每通道 1 位 |
| 136 | TxLOSFlag | 每通道 1 位(主机侧输入 LOS) |
| 137 | TxCDRLOLFlag | 每通道 1 位 |
| 138 | TxAdaptiveInputEqFailFlag | 每通道 1 位 |
| 139 | Tx 功率高告警 | 每通道 1 位 |
| 140 | Tx 功率低告警 | — |
| 141 | Tx 功率高预警 | — |
| 142 | Tx 功率低预警 | — |
| 143 | Tx 偏置高告警 | — |
| 144 | Tx 偏置低告警 | — |
| 145 | Tx 偏置高预警 | — |
| 146 | Tx 偏置低预警 | — |
| 147 | RxLOSFlag | 每通道 1 位(线路侧 LOS) |
| 148 | RxCDRLOLFlag | 每通道 1 位 |
| 149 | Rx 功率高告警 | — |
| 150 | Rx 功率低告警 | — |
| 151 | Rx 功率高预警 | — |
| 152 | Rx 功率低预警 | — |
| 153 | OutputStatusRx | 每通道 1 位:1 = Rx 输出已启用/有效 |
| 154–169 | Tx 功率监测值 | 每通道 2 字节(154–155 为通道 1 … 168–169 为通道 8),无符号,0.1 µW |
| 170–185 | Tx 偏置监测值 | 每通道 2 字节,2 µA × 倍数 |
| 186–201 | Rx 功率监测值 | 每通道 2 字节,0.1 µW |
| 202 | ConfigStatus 通道 1–2 | 3–0 为通道 1 · 7–4 为通道 2(见下方代码表) |
| 203 | ConfigStatus 通道 3–4 | — |
| 204 | ConfigStatus 通道 5–6 | — |
| 205 | ConfigStatus 通道 7–8 | — |
| 206–213 | Active Control Set:数据通路配置 | 每通道 1 字节,布局与 page 10h 145–152 相同:当前实际生效的配置 |
| 214–234 | Active Control Set:SI 设置 | 自适应均衡使能/恢复、固定均衡、CDR Tx/Rx、Rx 前/后游标、Rx 幅度,布局与 SCS 相同 |
| 235 | DPInitPending | 每通道 1 位:1 = 有分级配置等待 ApplyDPInit |
| 236–255 | rsvd / 因版本而异的标志位 | — |
数据通路状态代码(bytes 128–131)
| 代码 | 状态 | 含义 |
|---|---|---|
| 1h | DPDeactivated | 通道空闲;Tx 关闭 |
| 2h | DPInit | 正在用已应用的配置初始化 |
| 3h | DPDeinit | 正在反初始化 |
| 4h | DPActivated | Tx 开启,数据正常传输 |
| 5h | DPTxTurnOn | 激光器正在开启 |
| 6h | DPTxTurnOff | 激光器正在关闭 |
| 7h | DPInitialized | 已配置完成,等待 Tx 使能 |
| 0h, 8h–Fh | rsvd | — |
ConfigStatus 代码(bytes 202–205)
| 代码 | 状态 | 含义 |
|---|---|---|
| 0h | ConfigUndefined | 尚未应用任何配置 |
| 1h | ConfigSuccess | 分级配置集已被接受并生效 |
| 2h | ConfigRejected | 一般性拒绝 |
| 3h | ConfigRejectedInvalidAppSel | AppSel 代码未被声明支持 |
| 4h | ConfigRejectedInvalidDataPath | 该应用不允许使用此 DataPathID |
| 5h | ConfigRejectedInvalidSI | 信号完整性目标值超出范围 |
| 6h | ConfigRejectedLaneInUse | 该通道已属于另一条生效中的数据通路 |
| 7h | ConfigRejectedPartialDataPath | 该数据通路并非所有通道都已配置 |
| 8h–Bh | rsvd | — |
| Ch | ConfigInProgress | 正在应用 |
| Dh–Fh | 自定义 | 厂商 |
12h 页:可调谐激光器控制(按通道)
按通道设置信道编号、设置波长/频率、精调偏移量、调谐状态和标志位,相关能力见 page 04h,参见:可调谐内存映射。
20h–2Fh 页:VDM(Versatile Diagnostics Monitoring)
| 页 | 内容 | 布局 |
|---|---|---|
| 20h–23h | 描述符 | 每个观测量 2 字节(128–255 → 每页 64 个,共 256 个):byte 0 的 bits 7–4 为阈值集 ID,3–0 为通道(0 = 模块级);byte 1 为观测量类型(1 激光器老化 · 2 TEC 电流 · 3 激光器频率误差 · 4 激光器温度 · 5/6 媒介/主机侧 eSNR · 7/8 媒介/主机侧 PAM4 电平转换 · 9–16 媒介/主机侧 FEC 前 BER 最小/最大/平均/当前值 · 17–24 媒介/主机侧 FERC 最小/最大/平均/当前值 · 128+ 相干参数集) |
| 24h–27h | 采样值 | 每个观测量 2 字节,索引与其描述符相同;格式为 U16 / S16 / F16 |
| 28h–2Bh | 阈值 | 每个阈值集 8 字节:高告警、低告警、高预警、低预警 |
| 2Ch–2Fh | 标志位与掩码 | 每个观测量的告警/预警标志位(2Ch–2Dh)和掩码(2Eh–2Fh) |
F16 比值格式:bits 15–11 为指数 e,bits 10–0 为尾数 m;数值 = m × 10^(e − 24)。详情参见:VDM 与 FEC 指标。
9Fh 页:CDB 命令块
| 字节 | 字段 | 内容 |
|---|---|---|
| 128–129 | CMD ID | 命令标识符,MSB 在前(0000h 查询状态 · 0040h 模块功能 · 0041h 固件管理功能 · 0100h 获取固件信息 · 0101h 开始固件下载 · 0102h 中止 · 0103h 通过 LPL 写入固件块 · 0104h 通过 EPL 写入固件块 · 0107h 完成下载 · 0109h 运行镜像 · 010Ah 提交镜像) |
| 130–131 | EPL 长度 | pages A0h–AFh 中扩展负载(extended payload)的字节数 |
| 132 | LPL 长度 | 本地负载(local payload)的字节数(0–120) |
| 133 | CdbChkCode | 覆盖 128–132 和 LPL 的校验和:(Σ) mod 256 的反码 |
| 134 | RPL 长度 | 由模块写入的回复负载长度 |
| 135 | RplChkCode | 回复校验和 |
| 136–255 | LPL | 本地负载(命令参数 / 回复) |
| A0h–AFh 128–255 | EPL | 最多 2048 字节的扩展负载 |
最后写入 byte 129(CMD ID 的 LSB)会触发命令执行;随后主机轮询 lower bytes 37–38 (CdbStatus),直到 CdbIsBusy 清零。
相关映射表
- CMIS 下位页映射表:模块状态、标志位、应用。
- CMIS 上位页映射表:身份信息、能力声明、阈值。
- SFF-8636 下位页映射表:四通道时代的前身规范。