<!-- title: 5G CSI-RS测量与CSI上报机制拆解 -->
<!-- domain: ran -->

# 5G CSI-RS 测量与 CSI 上报机制全链拆解（TS 38.214 / 38.331 / 38.211）

## 一、为什么 CSI 是 5G 空口的"神经末梢"

在 5G NR 中，gNB 要在每一毫秒甚至更短的粒度上决定三件事：**用哪个 MCS（调制编码阶数）传、传几层（Rank/RI）、用什么预编码（PMI）**。这三项决策的唯一输入，就是 UE 反馈上来的 **CSI（Channel State Information，信道状态信息）**。与 LTE 仅靠宽带 PMI/CQI 不同，NR 引入了 **NZP CSI-RS（非零功率信道状态信息参考信号）**、**CSI-IM（干扰测量）**、**Type II / eType II 码本**，把 CSI 从"粗粒度辅助"升级为"MIMO 与波束管理的核心驱动力"。

CSI 机制的完整闭环可以概括为：**gNB 配置 CSI-RS 资源 → UE 测量 CSI-RS（必要时测量 CSI-IM 干扰）→ UE 计算并上报 CQI/PMI/RI/CRI/LI/L1-RSRP → gNB 据此做链路自适应与调度**。这条链路横跨三个规范：

- **TS 38.211 §7.4.1**：CSI-RS 序列生成与资源映射（物理层"长什么样"）
- **TS 38.214 §5.1 / §5.2.2**：CSI-RS 资源定义、CSI 上报类型与 CSI 计算内容（"何时测、何时报、报什么"）
- **TS 38.331**：`CSI-ResourceConfig` / `CSI-ReportConfig` / `NZP-CSI-RS-Resource` 等高层配置 IE（"怎么配"）

本文聚焦 **CSI 上报的三种触发类型（Periodic / Semi-Persistent / Aperiodic）与 RRC 配置三件套** 的全链信令流程，并拆解每种类型下的关键 IE 与设计意图。

---

## 二、CSI-RS 资源模型：信道测量与干扰测量分离

NR 的一个关键设计是 **"测量信号"与"测量结果"解耦**，并显式区分信道测量与干扰测量。

### 2.1 NZP CSI-RS（信道测量）

NZP CSI-RS 由 `NZP-CSI-RS-Resource` IE 描述，关键字段包括：

| 字段 | 含义 | 取值/约束 |
|------|------|-----------|
| `csi-RS-ResourceMapping` | 时频映射：端口数、频域密度（density = 0.5/1/3）、CDM 类型、RE 偏移 | TS 38.211 §7.4.1.5 |
| `periodicityAndOffset` | 周期与子帧/时隙偏移 | 仅对周期性 CSI-RS 有效 |
| `powerControlOffset` / `powerControlOffsetSSB` | 相对功率，用于推导 CSI-RS EPRE | TS 38.214 §5.1.2 |
| `scramblingID` | 序列扰码 ID | 生成伪随机序列 |
| `resourceType` | periodic / semi-persistent / aperiodic | 决定激活方式 |

端口数支持 1/2/4/8/12/16/24/32，配合不同的 CDM 类型（`noCDM`、`fd-CDM2`、`cdm4-FD2-TD2`、`cdm8-FD2-TD2`）实现端口复用。

### 2.2 CSI-IM（干扰测量）

CSI-IM（`CSI-IM-Resource`）只占用 RE 位置但不发功率（或发零功率），UE 测得的能量即为**其他链路或小区的干扰**，用于推导更真实的 SINR/CQI。它常与 NZP CSI-RS 配对使用（`CSI-IM-ResourceSet` 对应 `NZP-CSI-RS-ResourceSet`，数量须一致，见 TS 38.331 中的约束说明）。

设计意图：**把"理想信道估计"与"实际干扰水平"分开测量**，使 CQI 反映真实可达成速率，避免高估（导致重传）或低估（导致吞吐浪费）。

---

## 三、RRC 配置三件套：Resource / Report / ResourceConfig

CSI 配置在 RRC 中通过三个核心 IE 协同工作，它们的引用关系构成了"测什么资源、按什么规则上报"的完整映射。

```mermaid
graph TB
    subgraph 测量资源侧
    NZP[NZP-CSI-RS-ResourceSet<br/>多个NZP-CSI-RS-Resource]
    IM[CSI-IM-ResourceSet]
    SSB[CSI-SSB-ResourceSet]
    end
    subgraph 资源绑定
    RC[CSI-ResourceConfig<br/>resourcesForChannelMeasurement<br/>csi-IM-Resources<br/>csi-SSB-ResourceSetList]
    end
    subgraph 上报规则侧
    RPT[CSI-ReportConfig<br/>reportConfigType<br/>reportQuantity<br/>codebookConfig]
    end
    NZP --> RC
    IM --> RC
    SSB --> RC
    RC -->|通过reportConfigLinkId关联| RPT
    RPT -.->|gNB据此调度| LA[链路自适应<br/>MCS/RI/PMI]
    style RPT fill:#e1f5ff
    style RC fill:#fff4e1
```

### 3.1 CSI-ResourceConfig：资源的容器

`CSI-ResourceConfig` 把若干个 `NZP-CSI-RS-ResourceSet`、`CSI-IM-ResourceSet`、`CSI-SSB-ResourceSet` 打包，并通过 `resourcesForChannelMeasurement` 指向信道测量资源、通过 `csi-IM-Resources` 指向干扰测量资源。一个 `CSI-ReportConfig` 通过 `reportConfigId` 关联到一个 `CSI-ResourceConfig`，从而决定了"用哪些 CSI-RS 资源算这次报告"。

### 3.2 CSI-ReportConfig：上报规则的"宪法"

`CSI-ReportConfig` 是整个 CSI 机制的灵魂，TS 38.331 中定义其关键字段如下：

| 字段 | 作用 | 关键取值 |
|------|------|----------|
| `reportConfigType` | 上报类型 | `periodic` / `semiPersistentOnPUCCH` / `semiPersistentOnPUSCH` / `aperiodic` |
| `reportQuantity` | 上报内容 | `none`(只报CRI/RSRP)、`cri-RI-PMI-CQI`、`cri-RI-LI-PMI-CQI`、`ssb-Index-RSRP` 等 |
| `codebookConfig` | 码本类型 | Type I single/multi-panel、Type II、Type II port-selection |
| `groupBasedBeamReporting` | 分组波束上报 | enabled/disabled，配合 `nrofReportedRS` |
| `pucch-CSI-Resources` | PUCCH 承载的周期/SP CSI 资源 | 关联 PUCCH 资源 |
| `csi-ReportingBand` | 子带粒度 | subband size 由 RRC 给定 |
| `aperiodicTriggeringOffset` | 非周期 CSI 触发时延 | 配合 DCI 使用 |

`reportQuantity` 是排查上报异常的第一个锚点——它直接决定了 UE 在 UCI 里到底装了哪些量。

### 3.3 NZP-CSI-RS-ResourceSet：资源的集合与触发状态

`NZP-CSI-RS-ResourceSet` 通过 `trs-Info`、`repetition` 等属性区分别的用途：

- `trs-Info` 置位 → 该集合是 **TRS（Tracking Reference Signal）**，用于时频跟踪、不属于 CSI 上报范畴；
- `repetition` = on/off → 用于波束管理（P2/P3）中判断资源间是否同发，配合 `groupBasedBeamReporting`。

---

## 四、三种 CSI 上报类型的触发与承载

NR 定义了三种 CSI 上报类型，分别对应不同的时延需求与开销策略。TS 38.214 §5.2.1.4 的 Table 5.2.1.4-1 明确了 CSI-RS 资源类型（周期/SP/非周期）与上报类型的合法组合。

```mermaid
flowchart LR
    subgraph P[Periodic 周期]
    P1[RRC直接配置周期与偏移]
    P2[无需MAC CE/DCI触发]
    P3[PUCCH承载]
    end
    subgraph S[SP 半持续]
    S1[RRC配置触发状态]
    S2[MAC CE激活/去激活]
    S3[PUCCH或PUSCH承载]
    end
    subgraph A[Aperiodic 非周期]
    A1[RRC配置触发状态列表]
    A2[DCI CSI request触发]
    A3[PUSCH承载]
    end
    P3 --> O1[低开销/低灵活]
    S3 --> O2[折中:按需激活]
    A3 --> O3[最低时延/按需]
    style A fill:#ffe1e1
    style S fill:#fff4e1
    style P fill:#e1f5ff
```

### 4.1 三类型对比表

| 维度 | Periodic CSI | Semi-Persistent CSI | Aperiodic CSI |
|------|--------------|---------------------|----------------|
| 配置方式 | RRC（周期+偏移） | RRC 配触发状态 + MAC CE 激活 | RRC 配 `CSI-AperiodicTriggerStateList` + DCI 触发 |
| 触发信令 | 无 | SP CSI-RS/CSI-IM Activation MAC CE | DCI 1_1 / 0_1 的 CSI request 字段 |
| 承载信道 | PUCCH | PUCCH 或 PUSCH | PUSCH |
| 灵活性 | 低（固定周期） | 中（激活/去激活） | 高（逐次按需） |
| 时延 | 固定（由周期决定） | 激活后按时延 | 最低（DCI 即时触发） |
| 典型场景 | RRC_CONNECTED 低速、基础链路自适应 | 中速/波束管理、按需开启 | 突发业务、低时延、切换前快速测量 |
| 信令开销 | 周期性占用 PUCCH | 激活期占用 | 仅触发时占用 PUSCH |

### 4.2 Periodic CSI（TS 38.214 §5.2.2.2）

最简单也最"死板"：gNB 在 RRC 里直接给定周期与偏移，UE 在固定 PUCCH 资源上周期性上报。无需任何动态信令触发。设计意图：**对慢变信道提供零动态开销的持续 CSI**，适合低速、稳定连接的基础调度。

### 4.3 Semi-Persistent CSI（TS 38.214 §5.2.2.4 / §5.2.2.5）

SP CSI 用 **MAC CE 激活/去激活**实现"开关"：

- **SP CSI on PUCCH**：通过 *SP CSI-RS/CSI-IM Resource Set Activation/Deactivation MAC CE*（TS 38.214 §5.2.1.5.2）激活某触发状态，激活后 UE 在对应周期 PUCCH 资源上报，去激活后停止；
- **SP CSI on PUSCH**：通过 *SP CSI activation/deactivation MAC CE* 激活，激活后由 DCI 0_1 调度承载。

SP CSI 的状态机如下：

```mermaid
stateDiagram-v2
    [*] --> 未激活: RRC配置触发状态
    未激活 --> 已激活PUCCH: SP CSI-RS Activation MAC CE
    未激活 --> 已激活PUSCH: SP CSI activation MAC CE
    已激活PUCCH --> 未激活: Deactivation MAC CE
    已激活PUSCH --> 未激活: Deactivation MAC CE
    已激活PUCCH --> 周期上报PUCCH: 按周期
    已激活PUSCH --> DCI调度上报PUSCH: DCI0_1触发
    周期上报PUCCH --> 已激活PUCCH
    DCI调度上报PUSCH --> 已激活PUSCH
    未激活 --> [*]: RRC释放
```

设计意图：**避免非周期的逐次 DCI 开销，又能按业务需求开关**——比如波束管理时只在测量窗口内开启 SP CSI，平时关闭以省电省 PUCCH。

### 4.4 Aperiodic CSI（TS 38.214 §5.2.2.3）

非周期 CSI 是三者中**时延最低、最灵活**的方式，其触发链路是排查 CSI 异常时最需要理解的部分。

gNB 通过 RRC 预配置 `CSI-AperiodicTriggerStateList`（含若干触发状态，每状态关联 1~N 个 `CSI-ReportConfig` 与 `CSI-ResourceConfig`，并带 `aperiodicTriggeringOffset`）。运行时，gNB 在调度 PUSCH 的 **DCI（0_1 或 1_1）的 "CSI request" 字段** 指向某触发状态，UE 收到 DCI 后：

1. 解析 CSI request，确定本次要上报哪些 report；
2. 测量对应的 aperiodic CSI-RS（由触发状态所引用的 `CSI-ResourceConfig` 决定）；
3. 在被调度的 PUSCH 上，于 `aperiodicTriggeringOffset` 决定的时延后，把 CSI 装入 UCI 一并上报。

```mermaid
sequenceDiagram
    participant gNB
    participant UE
    Note over gNB,UE: 0. RRC已配置 CSI-AperiodicTriggerStateList
    gNB->>UE: DCI (含 CSI request = 触发状态索引)
    Note over UE: 解析CSI request,确定关联的<br/>CSI-ReportConfig + CSI-ResourceConfig
    gNB->>UE: Aperiodic CSI-RS (NZP, 非周期发送)
    Note over UE: 测量CSI-RS, 计算CQI/PMI/RI/CRI/LI
    Note over UE: 等待 aperiodicTriggeringOffset 个时隙
    UE->>gNB: PUSCH (携带UCI: CSI payload)
    Note over gNB: 解析CSI, 更新链路自适应<br/>选MCS/RI/PMI, 后续调度PDSCH
    gNB->>UE: PDSCH (按新CSI调度)
```

设计意图：**突发/低时延场景下"用 DCI 换 CSI"**——只有真正需要时才触发一次完整的 CSI 测量与上报，把上行开销压到最低，同时把时延压到最小（CSI request 与 PUSCH 调度可在同一 DCI 完成）。

---

## 五、CSI 计算内容：UE 到底报了什么

无论哪种触发类型，UE 最终上报的内容由 `reportQuantity` 决定。TS 38.214 §5.2.2.6（CSI computation）定义了这些量的推导方式：

| 上报量 | 全称 | 作用 |
|--------|------|------|
| **CRI** | CSI-RS Resource Indicator | 指出最优 CSI-RS 资源（波束/Rank 选择的第一步） |
| **SSBRI** | SSB Resource Indicator | 基于 SSB 的波束指示 |
| **RI** | Rank Indicator | 推荐的层数 |
| **PMI** | Precoding Matrix Indicator | 推荐的预编码矩阵 |
| **LI** | Layer Indicator | 指示 PMI 中最Strong 的层 |
| **CQI** | Channel Quality Indicator | 推荐的 MCS/码率（基于 SINR） |
| **L1-RSRP** | Layer 1 RSRP | 波束管理专用，单端口功率 |

### 5.1 码本：Type I 与 Type II 的精度-开销权衡

`codebookConfig` 决定了 PMI 的表达精度：

| 码本 | 精度 | 开销 | 典型场景 |
|------|------|------|----------|
| **Type I single-panel** | 低（每子带仅 1 个预编码向量） | 小 | 普通单用户、低速 |
| **Type I multi-panel** | 中 | 中 | 多面板天线 |
| **Type II** | 高（多个基向量加权线性组合） | 大 | MU-MIMO、高速 |
| **Type II port-selection** | 高（端口域组合） | 大 | 大规模天线 |
| **eType II（Rel-16 增强）** | 高 + 压缩子带系数 | 中（相对Type II降低） | FR2 MU-MIMO |

设计意图：**Type II 用更多比特换取更细的信道刻画，使 MU-MIMO 的用户间干扰显著降低**；Rel-16 的 eType II 进一步通过子带系数压缩（宽带幅度 + 子带差分）控制开销。这是一条贯穿 Rel-15→18 的"精度 vs 开销"演进主线。

### 5.2 计算流程

UE 的 CSI 计算遵循"由粗到细"的级联：先在多个 CSI-RS 资源中选最优（CRI/L1-RSRP）→ 再在该资源内选 Rank（RI）→ 选预编码（PMI）→ 算每层的 SINR 推 CQI → 标记最强层（LI）。这个级联关系决定了排查 CQI 异常时必须**自顶向下逐级验证**（先确认 CRI 选对，再看 RI、PMI）。

---

## 六、完整闭环：从配置到链路自适应

把前述零散机制串成一条端到端闭环：

```mermaid
sequenceDiagram
    participant gNB
    participant UE
    Note over gNB,UE: 阶段1: RRC配置
    gNB->>UE: RRC Reconfiguration (CSI-ResourceConfig +<br/>CSI-ReportConfig + NZP-CSI-RS-Resource)
    Note over UE: 应用CSI配置, 建立测量-上报映射
    Note over gNB,UE: 阶段2: 周期测量与上报(Periodic为例)
    loop 每个CSI周期
        gNB->>UE: Periodic CSI-RS
        UE->>gNB: PUCCH (CQI/PMI/RI/CRI)
    end
    Note over gNB,UE: 阶段3: gNB链路自适应
    Note over gNB: 按最新CSI选MCS/层数/预编码<br/>更新TCI state, 调度PDSCH
    gNB->>UE: DCI 1_1 (调度PDSCH, 含TPC/MCS)
    gNB->>UE: PDSCH
    UE->>gNB: PUCCH (HARQ-ACK)
    Note over gNB,UE: 阶段4: 按需切换到Aperiodic(突发业务)
    gNB->>UE: DCI (CSI request触发)
    gNB->>UE: Aperiodic CSI-RS
    UE->>gNB: PUSCH (UCI含CSI)
```

可以看到，CSI 上报并不是孤立流程，它**夹在 PDSCH 调度的每一次循环中**——CSI 的质量直接决定 PDSCH 的 MCS 是否合理，进而决定吞吐与重传率。

---

## 七、抓包识别与故障排错

### 7.1 抓包识别

在 Wireshark/TShark 解析的 NG-RAN 抓包（MAC/PHY 通常通过厂商 L1/L2 日志）中，CSI 流程的特征点：

- **RRC 层**：搜 `CSI-ReportConfig` / `CSI-ResourceConfig` / `NZP-CSI-RS-Resource`，确认三件套是否齐备且 `reportConfigType` 与承载信道一致；
- **MAC CE**：搜 *SP CSI-RS/CSI-IM Resource Set Activation MAC CE*（LCID 0x37 附近）判断 SP CSI 是否被激活；
- **DCI**：DCI 1_1 / 0_1 中含 *CSI request* 字段（通常 0/1/2/3/4/6 bit，按高层配置的码点宽度），非零即触发了 aperiodic CSI；
- **UCI**：PUCCH/PUSCH 上的 UCI payload 里出现 CQI/PMI/RI/CRI 字段即 CSI 上报。

### 7.2 常见故障点

| 现象 | 可能根因 | 排查方向 |
|------|----------|----------|
| UE 从不上报 CSI | `CSI-ReportConfig` 未下发或承载 PUCCH 资源未配置 | 检查 RRC 配置完整性 |
| CQI 长期偏低 | CSI-IM 干扰测量异常 / CSI-RS EPCR 偏置错 | 核对 `powerControlOffset`、CSI-IM 配置 |
| SP CSI 不上报 | MAC CE 未激活或被错误去激活 | 确认激活状态机、触发状态 ID |
| Aperiodic CSI 缺失 | DCI CSI request 码点与触发状态不对应 | 核对 `CSI-AperiodicTriggerStateList` 与 DCI 码点 |
| MU-MIMO 性能差 | 用了 Type I 码本而非 Type II | 检查 `codebookConfig` 类型 |
| 波束切换滞后 | `groupBasedBeamReporting` / `nrofReportedRS` 配置不当 | 复核波束上报参数 |

---
## 九、常见问题

**Q1: Periodic CSI 和 Semi-Persistent CSI 都在 PUCCH 上周期上报，区别是什么？**
A: Periodic 一旦 RRC 配置即持续上报，无开关；SP CSI 在 RRC 配置后处于"未激活"态，必须由 MAC CE 激活才开始上报，也可去激活停止。本质区别是**是否存在 MAC CE 层的激活/去激活开关**。

**Q2: Aperiodic CSI 为什么必须走 PUSCH 而非 PUCCH？**
A: Aperiodic CSI 通常包含全带宽、多资源、Type II 等高精度内容，payload 远超 PUCCH 承载能力，故必须由 DCI 调度 PUSCH 来承载，并复用数据信道资源。

**Q3: CRI 和 SSBRI 有什么区别？什么时候用哪个？**
A: CRI 基于 CSI-RS 资源指示，SSBRI 基于 SSB 资源指示。波束管理初期（UE 初始接入、空闲态测量）只有 SSB，故用 SSBRI；进入连接态并配置 CSI-RS 后，更细粒度的波束/Rank 选择用 CRI。两者可并存于同一 `reportQuantity`。

**Q4: Type II 码本开销那么大，为什么还要用？**
A: Type II 用多个基向量的加权组合刻画信道，显著提升了 PMI 精度，使 gNB 能更准确地进行 MU-MIMO 配对，降低用户间干扰、提升频谱效率。Rel-16 的 eType II 通过子带系数压缩缓解了开销问题，是 FR2 大规模天线的标配。

**Q5: Rel-18 在 CSI 机制上有什么新东西？**
A: Rel-18 引入用于 L1/L2 触发移动性（LTM）的 `LTM-CSI-ReportConfig`，让 UE 上报邻区 CSI-RS 的 L1 测量结果以支撑更快的切换；同时进一步增强 CSI-RS 用于网络节能、多 TRP 场景的测量与上报能力。

---

## 参考来源

1. [3GPP TS 38.214 — NR; Physical layer procedures for data](https://www.3gpp.org/dynareport/38214.htm) — §5.1 CSI-RS、§5.2.1.4 报告配置、§5.2.2.2~5.2.2.6 三种上报类型与 CSI 计算
2. [3GPP TS 38.331 — NR; Radio Resource Control (RRC)](https://www.3gpp.org/dynareport/38331.htm) — `CSI-ReportConfig` / `CSI-ResourceConfig` / `NZP-CSI-RS-Resource` / `LTM-CSI-ReportConfig` IE 定义（§5.7.17 LTM）
3. [3GPP TS 38.211 — NR; Physical channels and modulation](https://www.3gpp.org/dynareport/38211.htm) — §7.4.1 CSI-RS 序列与资源映射
4. [ShareTechnote — 5G CSI Report / CSI-RS](https://www.sharetechnote.com/html/5G/5G_CSI_Report.html) — 三种上报类型与资源配置的图解说明
5. [iTekSpec — TS 38.214 §5.2.1.5.1a Aperiodic CSI Reporting](https://itecspec.com/3gpp/38.214/s/5.2.1.5.1a) — 非周期 CSI-RS 触发状态与处理时延

---
> 本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵**爱卫生**（微信ID: gprshome201101）维护，聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。
> 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
