- 博客(252)
- 收藏
- 关注
原创 深入理解5g<七十七>5g里的srs
**上行信道质量估计**:基站通过测量SRS,获知上行信道质量,从而为PUSCH(物理上行共享信道)选择最合适的**调制编码策略(MCS)** 和**发射功率**。这种方式最为灵活,开销也最可控。* **定位**:SRS也可被配置为上行定位参考信号,用于支持**上行到达时间差(UL-TDOA)**、**往返时间(RTT)** 等定位技术,实现高精度定位。* **用途扩展**:从LTE主要服务于**上行信道估计**,扩展为同时支持上行估计、**下行波束管理**和**信道互易性**利用。
2026-10-27 07:44:18
69
原创 深入理解C++ __PRETTY_FUNCTION__
是 GCC 和 Clang 等编译器提供的一个扩展,本质上是一个。与只给出函数名的__func__或不同,它在 C++ 中能携带参数类型、类名、命名空间甚至模板实例化信息,因此在日志、调试和需要"类型自省"的模板元编程中非常有用。
2026-10-27 07:40:19
153
原创 深入理解5g<七十六>RU里时域和频域转换的数学推导
在FR1中,\(\mu\in\{0,1,2\}\),对应 \(\Delta f\in\{15,30,60\}\,\mathrm{kHz}\);RU接收到模拟射频信号后,经ADC采样得到时域离散序列,**首先去除CP**(丢弃开头的 \(N_{\mathrm{CP}}\) 个样本),然后对剩余 \(N_{\mathrm{FFT}}\) 个样本执行 \(N_{\mathrm{FFT}}\) 点**FFT/DFT**,将信号变回频域IQ样本序列,再通过前传接口送往DU进行解调、均衡等后续处理。
2026-10-26 09:10:34
269
原创 深入理解C++ assert
assert是 C 标准库提供的,在 C++ 中通过<cassert>(或<assert.h>)引入。。它是调试期的“安全网”,而不是错误处理机制。
2026-10-26 09:06:41
256
原创 深入理解C++ std::function
是 C++11 引入的,它像一个“万能容器”,能够存储、复制和调用任何符合特定签名的可调用对象。它的核心价值在于:无论你放入的是普通函数、Lambda、还是函数对象,对外都呈现出统一的类型,从而让回调、事件处理等机制的设计变得简洁而灵活。
2026-10-26 08:39:38
298
原创 深入理解5g<七十六>RU的功能
例如,在O-RAN主推的**Split 7.2x**方案中,物理层(PHY)被分为**High-PHY**(留在DU)和**Low-PHY**(下沉到RU),在功能、成本与前传带宽之间取得了平衡。2. **Low-PHY处理(若包含)**:进行数字信号调理后,执行**快速傅里叶变换(FFT)**,将时域信号转换回频域,并**移除循环前缀(CP)**。4. **射频发射**:处理后的数字信号经**DAC**转换为模拟信号,上变频至5G工作频段,由**功率放大器(PA)** 放大,最终通过天线辐射出去。
2026-10-25 07:39:00
333
原创 深入理解C++ std::all_of
原因:这是"空真"(vacuous truth)——"所有元素都大于 100"在没有任何元素时逻辑上为真。如果你的业务语义是"至少有一个元素且全部满足",需要先自己判断。,并增加了 ranges 版本(可以直接传容器,不必写。它本质上是"全称量词":对区间里每个元素,谓词都返回。传入的元素(虽然语法上允许,但语义上应保持纯函数)。是 C++11 引入的算法,定义在。它们之间可以用德摩根律互相推导,比如。头文件中,用来判断区间。调用,返回值可转换为。
2026-10-25 07:33:12
278
原创 深入理解C++ std::find
定义在 头文件中,用于在区间 中线性查找第一个等于给定值的元素。C++17 及之前:cpptemplate <class InputIt, class T>InputIt find(InputIt first, InputIt last, const T& value);C++20 起增加了 :cpptemplate <class InputIt, class T>constexpr InputIt find(InputIt first, InputIt la
2026-10-25 07:30:35
407
原创 深入理解C++ std::find_if
是 C++ 标准库中的一个算法,用于在区间中查找。它比std::find更灵活,因为查找条件可以是任意可调用对象,而不只是“等于某个值”。
2026-10-24 07:53:55
396
原创 深入理解C++ USHRT_MAX
USHRT_MAX是 C++ 从 C 标准库继承下来的一个宏,表示 unsigned short。它定义在<climits>(C 风格头文件为<limits.h>)中。
2026-10-24 07:50:43
262
原创 深入理解5g<七十五>5g系统属于srb4的信令
1. **`MeasurementReportAppLayer`**:这是SRB4最主要的应用消息,用于**UE向网络**发送**应用层测量报告**。* **建立/修改**:网络通过`RRCReconfiguration`消息中的**`srb4-ToAddMod-r17`**字段为UE添加或修改SRB4的配置。SRB4本身的建立、修改和释放,是通过**`RRCReconfiguration`**消息中的**`RadioBearerConfig`**信元来控制的。### 📨 SRB4承载的核心信令消息。
2026-10-24 07:47:29
300
原创 深入理解5g<七十四>5g系统属于srb3的信令
**底层承载**:SRB3使用**DCCH(专用控制信道)** 作为逻辑信道,其**逻辑信道ID为3**。* **不支持Split SRB**:与SRB1和SRB2不同,**SRB3不支持Split SRB(分裂信令无线承载)** 功能,这意味着SRB3的信令无法同时通过MN和SN两条路径进行传输。* **与主节点信令隔离**:**没有任何MN的RRC消息会映射到SRB3上进行传输**。* **生命周期**:SRB3由SN决定建立,其配置通过SN RRC消息发送给UE。
2026-10-23 08:34:39
367
原创 深入理解C++ 容器 std::flat_set
是 C++23 中与 一同引入的扁平化关联容器。它提供了与 几乎相同的接口,但底层实现从红黑树切换为有序的连续存储(默认为 ),从而在特定场景下带来显著的性能与内存优势。 是一个容器适配器,用于存储唯一元素的有序集合。排序通过比较函数 完成,其类模板签名清晰地揭示了它的底层结构:cpptemplate< class Key, class Compare = std::less<Key>, class KeyContainer = std::vector<
2026-10-23 08:32:31
168
原创 深入理解C++ 容器 std::flat_map
是 C++23 标准中新引入的一种关联容器,它提供与 几乎相同的接口,但在内部实现和性能特性上有着根本性的不同。 是一个容器适配器,它提供关联容器的功能,存储具有唯一键的键值对。它的核心特点是使用连续内存来存储数据,而不是像 那样使用基于节点的树结构。在默认情况下, 底层使用两个 来分别存储键(keys)和值(values)。这两个 vector 是并行的:第一个 vector 中的键是经过排序的,而对应的值则存储在第二个 vector 的相同索引位置。例如,如果 是 "bob",那么 就是 "b
2026-10-23 08:30:24
340
原创 深入理解5g<七十三>5g系统属于srb2的信令
**安全处理**:AS 安全激活后,在 SRB2 上传输的所有 RRC 消息(包括其中封装的 NAS 消息)都会由 PDCP 层进行**完整性保护和加密**。- **Split SRB 支持**:SRB2 支持 **Split SRB** 特性,这在 MR-DC(多无线双连接)等场景下,可以将信令通过多个网络节点进行分流传输。| ****SRB2** | **NAS 消息 & 含记录测量信息的 RRC 消息** | **DCCH** | **AS 安全激活后配置;优先级低于 SRB1** |
2026-10-22 08:26:38
155
原创 深入理解C++ 容器 std::span
std::span是 C++20 引入的一个核心工具,它本质上是。你可以把它理解为一个“更安全的指针 + 长度”的组合,专门用来解决 C/C++ 中传递数组时指针与大小分离的经典难题。
2026-10-22 08:24:47
394
原创 深入理解C++ 容器 std::bitset
是 C++ 标准库中用于处理的工具。你可以把它理解为一个长度在就已确定的二进制数组,它既提供了类似数组的按位访问能力,又像整数一样支持整套位运算,同时还会将存储空间压缩到极致(理论上每个 bit 只占 1 bit 空间,无额外指针开销)。
2026-10-21 07:22:33
357
原创 深入理解5g<七十二>5g系统属于srb1的信令
SRB1与SRB0的关键区别在于,它工作在**DCCH(专用控制信道)** 上,使用**AM(确认模式)** RLC,并且在AS安全激活后,其承载的所有RRC消息(包括捎带的NAS消息)都会在PDCP层受到**完整性保护和加密**。* **RRCSetupComplete**:确认RRC连接建立成功,是UE在SRB1上发送的第一条消息,通常会捎带初始NAS消息。* **RRCReestablishment**:在网络接受重建立请求后,用于重新建立SRB1并恢复安全。
2026-10-21 07:18:27
153
原创 深入理解5g<七十一>5g系统属于srb0的信令
SRB0映射到**公共控制信道(CCCH)**(或在特定情况下映射到CCCH1),其RLC模式为**TM(透明模式)**。* **RRCReject**:当网络由于负载控制等原因,**拒绝**UE的RRC连接建立(`RRCSetupRequest`)或恢复(`RRCResumeRequest`)请求时,会发送此消息。* **RRCSetup**:作为对`RRCSetupRequest`的响应,网络通过此消息来配置并建立**SRB1**,标志着RRC连接建立流程的完成。### 💡 补充说明。
2026-10-21 07:17:23
281
原创 深入理解5g<七十>5g系统里的移动性管理(切换)
CHO的做法是**提前准备多个候选目标小区**,并将每个候选的接入配置和**执行条件**预先下发给终端。5G在Rel-16中引入了两项针对性增强,分别解决“**中断时间**”和“**切换可靠性**”两个不同问题。| **Xn切换** | 源和目标属于**不同gNB**,但两者之间有**Xn接口**直连 | gNB ↔ Xn ↔ gNB | 较低,基站间直接交互 || **NG切换** | 源和目标gNB之间**没有Xn直连** | gNB ↔ 核心网(AMF)↔ gNB | 最高,信令需绕经核心网 |
2026-10-20 07:37:37
440
原创 深入理解5g<六十九>5g系统里的测量
终端会比较该小区各波束的层1测量值,只有**高于门限**的波束才会被纳入小区质量的计算,并且参与平均的波束数量不超过配置的上限,最终取这些合格波束测量值的**线性平均**,作为该小区的层3小区级质量。5G中一个小区的覆盖是由**多个波束**共同构成的,因此“小区质量”不是一个可以直接读取的单一数值,而是一个需要从**多个波束的测量结果中推导**出来的量。| **B2** | PCell质量**低于**门限1,且**异系统**邻区质量**高于**门限2 | 跨RAT的覆盖边缘切换 |
2026-10-20 07:35:20
145
原创 深入理解人工智能 基于深度学习的波束管理与波束赋形在AI-RAN中的应用
*(2)端到端的权重预测。从工程验证角度看,**NVIDIA Aerial RAN**、**OpenAirInterface(OAI)** 与 **USRP 软件无线电**的组合已经成为 AI-RAN 波束管理研究的主流测试床形态,部分平台进一步集成了**数字孪生**环境,用于在部署前对模型进行高保真预验证。- **非实时 RIC(Non-RT RIC,>1 s)** :适合承载需要跨小区、跨时段聚合数据的**离线训练**与长期策略优化,例如码本结构的周期性更新、波束配置的长期参数调优。
2026-10-20 07:31:42
277
原创 深入理解C++ 容器 std::priority_queue
cpptemplate<class T,参数含义默认值T元素类型Container底层容器,需支持随机访问迭代器Compare比较器,定义"优先级低于"的关系由于默认(即a < b表示 a 优先级更低),默认行为是"大顶堆"top()返回最大元素。比较器的语义是"a 是否比 b 优先级低"(即表示 a 应排在 b 后面)。1. 函数对象(推荐,C++98 起可用)cpp// priority 大的先出decltype(C++11)cpp注意:用时必须把比较器对象传入构造函数。
2026-10-20 07:29:02
232
原创 深入理解5g<六十八>5g系统里的公共接口之NG口
NG接口定义了NG-RAN节点(包括5G基站**gNB**和升级后的4G基站**ng-eNB**)与5G核心网之间的连接。* **NAS消息传输**:NGAP为UE和核心网(AMF)之间提供**非接入层(NAS)** 消息的透明传输通道。| **NG** | NG-RAN ↔ **5GC** | **RAN与核心网的连接** | 控制面(NG-C/NGAP)+ 用户面(NG-U/GTP-U) |* **NG-C(控制面)**:连接NG-RAN节点与核心网中的**AMF(接入和移动性管理功能)**。
2026-10-19 07:29:29
165
原创 深入理解5g<六十七>5g系统里的公共接口之E1口
这里的核心原则是:**控制面集中、用户面可以分布**。E1接口是5G NG-RAN架构中一个**纯粹的控制面逻辑接口**,它的作用是在**gNB-CU-CP(集中单元-控制面)** 与**gNB-CU-UP(集中单元-用户面)** 之间传递信令。* **状态监控与错误处理**:包括**错误指示**、**复位**,以及CU-UP向CU-CP上报自身的**过载/非过载状态**。| **E1** | gNB-CU-CP ↔ gNB-CU-UP | **CU内部的控制信令** | 纯粹的控制面(E1AP) |
2026-10-19 07:27:53
275
原创 深入理解C++ 容器 std::stack
std::stack是 C++ 标准库提供的,实现的栈结构。它本身不管理内存,而是把已有序列容器(默认std::deque)的接口"裁剪"成只保留栈语义的那几个操作。
2026-10-19 07:25:18
421
原创 深入理解人工智能 基于深度学习的信道估计在AI-RAN中的应用
实测结果显示,该AI估计器(“AI Tookie”)在不同SINR下比手工调优的加权阈值滤波器好**1–5 dB**,代价是约**120微秒**的额外延迟,但仍处于可实时运行的范围内。这些结果说明,在AI-RAN中,信道估计的DL化往往与导频资源的AI化设计是同一个问题的两面。这些进展的共同信号是:DL信道估计在AI-RAN中的角色正在从“研究提案”向“可纳入联盟工作项和产业验证流程的工程对象”过渡,而这一过渡的核心议题始终围绕**实时性、泛化性和硬件可实现性**,而非单纯的估计精度上限。
2026-10-19 07:19:40
197
原创 深入理解C++ 容器 之 红黑树
一个关键设计是 **header 节点**:树根的父亲指向一个特殊的 header,header 的左指针指向最左节点(`begin()`),右指针指向最右节点(`end()-1`),这样 `begin()` 和 `--end()` 都是 O(1)。**你的代码不应依赖这些内部细节**。删除修复最多 **3 次旋转**,总复杂度 **O(log n)**。| **插入/删除的旋转次数** | 较多,可能 O(log n) 次旋转 | **最多 2 次旋转**(插入)、**最多 3 次旋转**(删除) |
2026-10-18 07:50:02
104
原创 深入理解C++ 容器 std::unordered_map
的完整模板签名有五个参数,日常使用通常只写前两个:cpptemplate<class Key,class T,Key / T:键类型和值类型。Hash:哈希函数对象,默认使用。自定义类型需要提供哈希特化或传入自定义哈希器。KeyEqual:键相等比较器,默认。Allocator:内存分配器,一般不用改。对于自定义类型作为键,常见做法是特化std::hash或在构造时传入 lambda/函数对象作为哈希器。
2026-10-18 07:47:36
350
原创 深入理解C++ 容器 std::unordered_multiset
是 C++11 引入的,定义在头文件中。你可以把它理解为的“允许重复元素”版本:它存储的是的元素,底层基于哈希表实现,而非红黑树。
2026-10-18 07:31:57
387
原创 深入理解5g<六十六>5g系统里的公共接口之F1口
**Rel-17及以后**:F1AP的功能列表持续扩充,新增了**定位(Positioning)功能**、**IAB(集成接入与回传)支持功能**、**NR MBS(多播广播业务)功能**以及**QMC(QoS监测收集)支持功能**等。* **F1 UE上下文管理**:这是F1-C最核心的流程之一。| **连接范围** | **单个gNB内部**:gNB-CU ↔ gNB-DU | **基站之间**:gNB ↔ gNB / ng-eNB | **基站与核心网**:NG-RAN ↔ 5GC |
2026-10-18 07:29:13
420
原创 深入理解5g<六十五>5g系统里的公共接口之Xn口
**AI/ML数据收集**:在最新的3GPP Release 18中,Xn接口新增了**AI/ML支持流程**,用于在NG-RAN节点间**启动数据收集并上报**,为网络智能化的数据闭环提供了接口基础。* **Rel-17**:引入了**DTLS over SCTP**等安全增强,以更好地支持**网络切片隔离**和**边缘计算**场景下的基站间通信安全。* **Rel-16**:增强了对**URLLC(低时延高可靠)** 场景的支持,并引入了**多SCTP关联**等机制以提升传输可靠性。
2026-10-18 07:27:37
233
原创 深入理解人工智能 深度学习的CSI反馈在AI-RAN中的应用
一项严格遵循3GPP CDL-C信道模型的评估显示,基于CsiNet扩展的**M-CsiNet**相比Type-II和Enhanced Type-II码本方案,在链路级BLER和吞吐量上取得**10—15 dB的SNR增益**,同时反馈开销降低**约两个数量级**,且计算复杂度有所下降。**Rel-19**的特征工作提供了**单边AI/ML模型**的规范支持,涵盖波束管理、定位增强和**CSI预测**(UE侧模型)三个推荐用例,并建立了功能级LCM框架,包括激活、去激活、切换、回退以及性能监测等机制。
2026-10-18 07:25:50
180
原创 深入理解C++ 容器 std::map 的完整声明
是 C++ 标准库中的有序关联容器,存储唯一键的键值对,按键排序,基于红黑树实现。下面从声明、模板参数、成员类型、成员函数到可运行示例完整介绍。C++11 及之后, 在 头文件中的声明为:cpptemplate< class Key, class T, class Compare = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>
2026-10-17 10:16:26
256
原创 深入理解C++ 容器 std::unordered_set
对于自定义类型,需要提供哈希函数和相等比较器。例如:cppint age;也可以使用 lambda 或函数对象。C++20 起还可以使用std::hash的特化。
2026-10-17 08:05:16
206
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅