跳到主要内容

08. CESOC 800G 物理层分析

概述

[DOC] CESOC Reference Guide 1.1:

"CESOC_800G_192B is a design that includes CEMAC_800G, CEPCS_800G and CEFEC_800G IP cores to support 16 SERDES lanes application. And it supports 10G/25G/50G/100G/200G/400G/800G Ethernet."

CESOC是合见工软的以太网控制器子系统, 为PAXI提供物理层连接。

IP组成

[DOC] 1.4 IP Blocks and Functions:

No.IP名称说明
1CEMAC_800G10G/25G/50G/100G/200G/400G/800G Ethernet MAC
2CEPCS_800G10G/25G/50G/100G/200G/400G/800G Ethernet PCS
3CEFEC_800G10G/25G/50G/100G/200G/400G/800G RSFEC
4CESOC_800G_REG配置寄存器
5IF_192B192B用户逻辑接口

层次关系

用户逻辑(PAXI)
|
| IF_192B接口 (192B TDM, 8端口)
v
┌─────────────────────────┐
│ CEMAC_800G │ ← MAC层: 帧处理、流控
│ - Flow Control │
│ - PTP 1588 │
│ - L2 Retry │
├─────────────────────────┤
│ CEPCS_800G │ ← PCS层: 编码/解码
│ - Lane Swap (8x8) │
├─────────────────────────┤
│ CEFEC_800G │ ← FEC层: 前向纠错
│ - RSFEC │
│ - L1 Retry │
├─────────────────────────┤
│ SerDes x 8 │ ← 物理层: 112G PAM4
│ - 8 x 112G PAM4 │
└─────────────────────────┘

核心特性

[DOC] 1.2 Features List:

  • [DOC] Up to 800G bps MAX bandwidth for Ethernet
  • [DOC] Support 800G-Ethernet system
  • [DOC] Support bounding 8x112G PAM4 SERDES for Ethernet protocol
  • [DOC] Ethernet error rate lower than 10e-12
  • [DOC] Support 1588 PTP include 1-step and 2-step
  • [DOC] Support APB interface for Register Access
  • [DOC] Support loopback modes for diagnosis
  • [DOC] Support system clock frequency up to 1.35GHz
  • [DOC] Support 192B TDM interface which shared 8 ports and per-port credit flow control for User logic
  • [DOC] 800G system supports 8x8 any-to-any SERDES lane swap both on TX/RX
  • [DOC] Support 6nm/5nm Tech

灵活的端口配置

[DOC] 800G系统支持多种客户端口配置:

配置通道数每通道速率总带宽
25GE x 8825 Gbps200 Gbps
50GE x 8850 Gbps400 Gbps
100GE x 88100 Gbps800 Gbps
200GE x 44200 Gbps800 Gbps
400GE x 22400 Gbps800 Gbps
800GE x 11800 Gbps800 Gbps

[推导] 这种灵活性意味着:

  • 同一IP核可以适配不同的互联需求
  • 可以在带宽和端口数之间权衡
  • 例如: 需要连接8个芯片时用25GE x 8, 需要最大带宽时用800GE x 1

192B TDM用户接口

[DOC] 2.2.4 Interface 192B (For User):

TX Data Bus

信号宽度说明
IF_192B_TX_DATA_I1536 bits (192B)用户发送数据
IF_192B_TX_DATA_VALID_I1数据有效指示
IF_192B_TX_DATA_FCS_I3FCS模式
IF_192B_TX_DATA_BCNT_I8有效字节计数, 最大192
IF_192B_TX_DATA_CH_I3通道号 (0~7)
IF_192B_TX_DATA_SOF_I1帧起始指示
IF_192B_TX_DATA_EOF_I1帧结束指示
IF_192B_TX_DATA_CREDIT_O8Per-port credit返回

[DOC] FCS模式 (IF_192B_TX_DATA_FCS_I):

说明
3'h0保持FCS
3'h1添加正确FCS
3'h2添加错误FCS
3'h3替换正确FCS
3'h4替换错误FCS
3'h5~7保留

RX Data Bus

信号宽度说明
IF_192B_RX_DATA_O1536 bits (192B)接收数据
IF_192B_RX_DATA_VALID_O1数据有效
IF_192B_RX_DATA_BCNT_O8有效字节计数
IF_192B_RX_DATA_CH_O3通道号
IF_192B_RX_DATA_SOF_O1帧起始
IF_192B_RX_DATA_EOF_O1帧结束
IF_192B_RX_DATA_ERR_O2错误指示

关键设计:

  • 数据总线宽度: 192 Bytes = 1536 bits
  • 8个端口通过TDM共享
  • Per-port credit流控
  • 支持SOF/EOF帧界定

SerDes配置

[DOC] 每条Lane独立的TX/RX时钟:

  • SD0~SD7_TX_CLK_I: 8条TX Lane时钟
  • SD0~SD7_RX_CLK_I: 8条RX Lane时钟
  • 每条Lane 112G PAM4

[DOC] 8x8 Lane Swap:

"800G system supports 8x8 any-to-any SERDES lane swap both on TX/RX"

  • TX和RX方向都支持任意Lane交换
  • 8条Lane可以任意映射到另外8条Lane
  • [推导] 这简化了PCB布线, 不需要物理Lane严格对应

PTP 1588时间同步

[DOC] 5. PTP 1588:

支持两种模式:

  • 1-step: 在发送时直接修改报文中的时间戳
    • CorrectionField Update
    • OriginTimestampField Update
  • 2-step: 发送时记录时间戳, 之后通过Follow-up消息传递

PTP相关信号:

信号说明
IF_192B_TS_64NS_I64-bit纳秒时间戳输入
IF_192B_TS_32S32NS_I32秒+32纳秒时间戳
IF_192B_TX_TS_RX_ITX时间戳接收
IF_192B_TX_TS_CMD_I时间戳命令

时序约束

[DOC] 2. Hardware Interface, Table 2-1 Timing Definition:

时序参数定义
DC信号在使用前至少一个周期有效
Begin信号在时钟上升沿后8%周期内有效
Early信号在时钟上升沿后18%周期内有效
Middle信号在时钟上升沿后43%周期内有效
Late信号在时钟上升沿后58%周期内有效
End信号在时钟上升沿后78%周期内有效

大部分用户接口信号的时序要求为 Middle (43%周期), 说明有充足的建立时间裕量。