简介这份《5GNR学习笔记-理论v1.0.pdf》面向通信工程、无线网络优化方向的初学者与进阶读者系统梳理5G新空口的基础理论框架帮助读者建立从网络架构到物理层的完整认知。内容涵盖NR总体架构与功能划分包括gNB与ng-eNB节点、AMF/UPF/SMF三大核心网功能模块以及NG、Xn接口的协议栈与主要功能同时深入无线协议栈对比用户面与控制面的层次差异重点说明SDAP层在NR中的新增作用。物理层部分讲解波形、子载波间隔与CP配置、帧结构梳理15KHz至240KHz五种子载波配置、常规与扩展CP的适用条件以及PRB、时隙与符号数的对应关系。资源包为1个PDF文件大小约3.23MB结构紧凑便于随时查阅。目前已有303人学习适合作为5GNR理论入门与协议栈复习的参考笔记。1. 从一份 5GNR 学习笔记说起理论 v1.0 到底该记什么很多人第一次接触 5GNR都是从一份名为「5GNR学习笔记-理论v1.0.pdf」的资料开始的。它不像 3GPP 协议原文那样动辄几千页也不像厂商培训 PPT 那样只给结论不给推导而是把物理层帧结构、 numerology、带宽部分、参考信号这几块最硬的内容用工程视角重新串了一遍。问题在于大多数人拿到这类笔记后第一反应是「存下来慢慢看」结果永远停在第一页。真正该做的是把它当成一张施工图先搞清楚 5GNR 理论里哪些参数会直接影响你后面调基站、看日志、算吞吐再决定哪些章节值得反复啃。这篇笔记面向的是刚入行无线优化、传输承载或终端测试的工程师也适合已经做过 LTE 但想快速把 5GNR 理论框架搭起来的人。下面我按自己带新人的顺序把这份理论笔记拆成能动手验证的几条线。2. 5GNR 理论笔记的骨架帧结构、numerology 与带宽部分怎么串2.1 先分清 FR1 和 FR2 在笔记里的位置任何一份 5GNR 理论笔记第一章几乎都会先甩出频率范围划分。FR1 是 410 MHz 到 7125 MHzFR2 是 24250 MHz 到 52600 MHz。笔记里通常只给一张表但实际用起来这个划分决定了你后面所有参数的单位和量级。比如同样叫一个时隙FR1 里子载波间隔 15 kHz 时是 1 msFR2 里子载波间隔 60 kHz 时就变成 0.25 ms。如果你在看笔记时没有把频率范围钉死后面算调度周期、算 HARQ RTT 就会全乱。我一般建议在笔记第一页空白处手写一行FR1 看覆盖和移动性FR2 看带宽和波束。这样后面每读一个参数都能先问一句它属于哪个范围。2.2 numerology 不是玄学是子载波间隔和符号长度的换算表5GNR 相比 LTE 最大的理论变化就是引入了多套 numerology。笔记里通常用 μ 表示μ0 对应 15 kHzμ1 对应 30 kHzμ2 对应 60 kHzμ3 对应 120 kHzμ4 对应 240 kHz。每往上走一级子载波间隔翻倍符号长度减半一个时隙里的符号数仍然是 14 个但绝对时间缩短。这个换算关系必须背到能脱口而出因为后面看 DCI 调度、看 TDD 配比、算上行覆盖全都要用。我见过太多人把 μ1 的时隙当成 1 ms 来算结果吞吐量预估直接差一倍。笔记里如果只给了公式你最好自己补一张表把每个 μ 对应的时隙长度、符号长度、CP 开销都列出来贴在显示器边上。2.3 带宽部分 BWP 是笔记里最容易被跳过但最该动手画的部分BWP 是 5GNR 里比较新的概念一份理论笔记如果只写「BWP 是带宽子集」那基本等于没写。实际工程里BWP 决定了终端在哪个频段上收 PDCCH、在哪个频段上发 PUSCH还决定了初始接入时用哪个 BWP。笔记里通常会画一张图显示一个载波里可以配多个 BWP但不会告诉你为什么需要多个。我一般会带着新人做一件事拿一个 100 MHz 的载波假设子载波间隔 30 kHz算出一个 BWP 最多能占多少个 PRB然后手动标出初始 BWP、专用 BWP 和默认 BWP 的位置。这个动作做完后面看 RRC 重配消息里的 BWP 切换就不会懵。笔记里的理论值要和实际配置对一遍对不上就说明你漏了保护带或者载波聚合的偏移。2.4 参考信号DMRS、PTRS、CSI-RS 在笔记里各自管什么5GNR 的参考信号比 LTE 更灵活也更让人头大。DMRS 用于解调PTRS 用于相位跟踪CSI-RS 用于信道测量。笔记里一般会分别介绍但不会强调它们之间的时序关系。实际看日志时你会发现 DMRS 的配置直接决定了 PDSCH 能解调成什么样PTRS 只在 FR2 高频段才真正起作用CSI-RS 的周期又和波束管理绑在一起。我建议在读这一章时拿一张纸画出三个参考信号在一个时隙里的位置然后标出哪些符号是固定的哪些是可配的。这个图一旦画出来后面看 MIB、SIB1 里的配置字段就会快很多。笔记里的理论描述是骨架你自己画的图才是血肉。3. 把理论笔记变成可复现的验证步骤从参数计算到日志对照3.1 用 Python 算一遍 numerology 和时隙长度光看笔记里的公式容易飘最好写几行代码把关键参数算出来。下面这段脚本把 μ 从 0 到 4 的时隙长度、符号长度、每帧时隙数都打出来你可以直接拿去和笔记里的表格对。# 5GNR numerology 关键参数计算 # 参考 3GPP TS 38.211 中的帧结构定义 subcarrier_spacing_base 15 # kHz基础子载波间隔 symbols_per_slot 14 # 常规 CP 下每个时隙的符号数 slots_per_frame 10 # 一帧 10 ms for mu in range(5): scs subcarrier_spacing_base * (2 ** mu) # 子载波间隔 kHz slot_duration_ms 10 / (2 ** mu) # 一个时隙的绝对时长 ms symbol_duration_us slot_duration_ms * 1000 / symbols_per_slot # 符号时长 us slots_per_subframe 2 ** mu # 每个子帧的时隙数 print(fμ{mu}, SCS{scs}kHz, 时隙{slot_duration_ms:.4f}ms, f符号{symbol_duration_us:.2f}us, 每子帧时隙数{slots_per_subframe})这段代码的逻辑很直接子载波间隔每翻一倍时隙长度就减半符号长度也减半。参数说明里要注意symbol_duration_us 算的是包含 CP 的平均符号长度不是纯 FFT 周期。如果你拿这个结果去和笔记里的表对发现 μ2 时时隙长度是 0.25 ms那就说明你算对了。这个脚本我一般让新人自己敲一遍不要复制敲的过程中就会记住 2 的幂次关系。3.2 用表格把 BWP 配置和 PRB 数量对齐BWP 的理论计算离不开 PRB。下面这张表是我从笔记里整理出来的假设载波带宽 100 MHz、子载波间隔 30 kHz不同 BWP 配置下对应的 PRB 数和占用带宽。你可以拿它去对照实际基站配置。BWP 类型起始 PRBPRB 数量占用带宽 (MHz)典型用途初始 BWP0248.64小区搜索、SIB1 接收默认 BWP06623.76空闲态驻留专用 BWP1013247.52业务态调度高频专用 BWP2026495.04FR2 大带宽场景表格里的占用带宽是按 30 kHz 子载波间隔、每个 PRB 12 个子载波算出来的实际还要扣保护带。笔记里如果只给了 PRB 数量没给带宽你就自己乘一下。这张表的价值在于当你看到 RRC 重配里 BWP 的 PRB 范围时能立刻反应出它占了多少频谱会不会和邻区冲突。3.3 从 MIB 和 SIB1 里反推理论参数理论笔记读完后最好的验证方式是抓一次真实的小区搜索日志把 MIB 和 SIB1 里的字段和笔记里的定义对一遍。MIB 里会带 pdcch-ConfigSIB1、subCarrierSpacingCommon、dmrs-TypeA-Position 这些字段。你拿笔记里 DMRS 类型 A 的位置定义去对日志里的 dmrs-TypeA-Position 是 pos2 还是 pos3就能知道这个小区用的是哪种时域图案。SIB1 里会带 initialUplinkBWP 和 initialDownlinkBWP把里面的 locationAndBandwidth 字段换算成 PRB再和上面那张表对就能验证你算的 BWP 对不对。这个过程不需要连基站很多终端测试仪表都能导出日志。我一般会要求新人至少对三个不同的小区把 MIB 和 SIB1 的关键字段抄下来和笔记里的理论值做一次交叉验证。对不上的地方往往就是笔记里没写清楚的边界条件。3.4 用 TDD 配比验证时隙格式5GNR 的 TDD 配比在笔记里通常只给一个示意表但实际网络里配比是半静态加动态的。你可以拿笔记里的时隙格式定义去对一下实际配置。比如一个 DDDSU 的周期D 是下行时隙U 是上行时隙S 是特殊时隙。特殊时隙里又分下行符号、灵活符号、上行符号。笔记里如果写了「特殊时隙的符号分配由 tdd-UL-DL-ConfigCommon 决定」你就去找这个 IE 里的 nrofDownlinkSymbols 和 nrofUplinkSymbols算一下灵活符号还剩几个。这个动作能帮你理解为什么有些小区上行调度会卡在特殊时隙的边界上。我见过一个案例特殊时隙里灵活符号配了 6 个但实际调度只用了 4 个剩下 2 个被保护间隔占了笔记里没提保护间隔结果新人算上行吞吐时多算了 2 个符号误差就出来了。4. 5GNR 理论笔记里最容易翻车的几个坑4.1 把 μ 和时隙长度记反导致调度周期算错现象看笔记时觉得 μ1 就是 1 ms 时隙配调度周期时按 1 ms 配结果实际只有 0.5 msHARQ 反馈对不上。原因笔记里通常把 μ 和子载波间隔放在一起写时隙长度另起一行读快了就容易串。解决自己画一张 μ 到 时隙长度 的映射表贴在工位上每次配参数前看一眼。我自己的习惯是把 μ0 到 μ4 的时隙长度写成 1、0.5、0.25、0.125、0.0625单位 ms背下来。4.2 BWP 切换时忘了默认 BWP 的回退现象专用 BWP 配置了 132 个 PRB但终端在某个时刻突然回到 24 个 PRB 的初始 BWP吞吐掉底。原因笔记里只讲了 BWP 切换的触发条件没讲 BWP 定时器超时后会回退到默认 BWP。解决在笔记的 BWP 章节旁边补一行「bwp-InactivityTimer 超时回默认 BWP」然后去查这个定时器的实际配置值。一般默认 BWP 的 PRB 数比专用 BWP 少回退后调度器需要重新分配资源如果没预留过渡时间就会丢包。4.3 DMRS 类型选错解调门限直接恶化现象同样的信道质量别人能解 256QAM你只能解 64QAM。原因笔记里 DMRS 类型 A 和类型 B 的时域位置不同类型 A 靠前类型 B 靠后选错了会导致信道估计不准。解决先确认笔记里 dmrs-TypeA-Position 的取值再去对实际配置。类型 A 适合常规 CP类型 B 适合短时隙。如果你在 FR2 用类型 A 配短时隙DMRS 符号不够解调性能就崩。我一般会在笔记上标注FR1 常规时隙优先类型 AFR2 短时隙优先类型 B。4.4 参考信号周期和波束扫描周期搞混现象CSI-RS 配了 20 ms 周期但波束扫描是 5 ms 一次结果 CSI 上报跟不上波束切换。原因笔记里把 CSI-RS 和波束管理放在两章没强调两者的周期要匹配。解决把 CSI-RS 周期设成波束扫描周期的整数倍或者反过来。实际配置里SSB 周期和 CSI-RS 周期要一起看。我踩过的坑是 SSB 配了 20 msCSI-RS 配了 10 ms结果终端在 SSB 没发的时隙里做 CSI 测量测了个寂寞。4.5 把理论峰值吞吐当成实际可调度吞吐现象按笔记里的公式算100 MHz、30 kHz、4 层 MIMO 能到 1.5 Gbps实际一测只有 800 Mbps。原因笔记里的峰值是假设所有符号都用于 PDSCH、所有 PRB 都满调度、没有控制开销。实际有 PDCCH 占符号、有 DMRS 占 RE、有保护带、有 SSB 开销。解决在笔记的吞吐公式旁边补一个开销系数一般控制开销按 15% 到 20% 估DMRS 开销按 1/4 到 1/3 估。我自己的经验是理论峰值打七折才是实际能调度的上限打五折才是稳定吞吐。5. 把理论笔记用活从参数反查到排障的进阶习惯理论笔记读到最后最容易陷入的误区是把它当字典遇到问题才翻。我自己的做法是反过来先拿一个实际排障案例然后逼自己从笔记里找出对应的理论依据。比如有一次遇到上行覆盖受限终端在小区边缘发 PUSCH 一直失败。我先去笔记里翻 PUSCH 的功率控制公式找到路损补偿因子 alpha 和 P0 的配置然后去查实际参数发现 alpha 配了 1P0 配了 -100 dBm但终端上报的功率余量已经到 0 了。这说明理论公式里的路损补偿已经拉满问题不在功率控制而在上行波形。再翻笔记的 DFT-s-OFDM 和 CP-OFDM 章节发现这个小区配的是 CP-OFDM而终端在边缘应该用 DFT-s-OFDM 来降低峰均比。把波形切换后上行覆盖立刻改善。这个案例让我养成一个习惯每次排障先定位到笔记里的哪个公式或哪张表然后只改那个公式里的变量不要东改西改。另一个习惯是定期把笔记里的参数和现网配置做一次批量对照。我一般会导出基站侧的 BWP 配置、TDD 配比、DMRS 类型、CSI-RS 周期然后写一个简单的脚本和笔记里的理论值做 diff。下面这段伪代码展示了思路实际用 Python 读 CSV 就行。# 理论值与现网配置对照的伪代码 # 假设 theory.csv 和 live.csv 都有 cell_id, param, value 三列 import csv def load_params(path): params {} with open(path) as f: for row in csv.DictReader(f): key (row[cell_id], row[param]) params[key] row[value] return params theory load_params(theory.csv) live load_params(live.csv) for key in theory: if key in live and theory[key] ! live[key]: print(f不一致: {key}, 理论{theory[key]}, 现网{live[key]})这段代码的关键是 key 的设计cell_id 加 param 能唯一确定一个配置项。参数说明里要注意value 的类型要统一字符串比较容易把 30 和 30.0 判成不一致。我一般会在加载时做一次归一化。这个对照脚本跑一次就能把笔记里过时的或者理解错的地方全暴露出来。我自己的笔记已经改过三版每次都是被现网配置打脸后改的。最后一个习惯是给笔记留「后悔药」。每次改配置前先把当前配置和笔记里的理论值截个图存到一个按日期命名的文件夹里。改完如果出问题直接回滚不用凭记忆恢复。这个习惯听起来笨但救过我两次。一次是改 BWP 的 PRB 数改完发现终端接入不了翻出截图一看初始 BWP 的起始 PRB 被我不小心从 0 改成了 10终端搜不到 SSB。回滚后五分钟恢复。理论笔记的价值不在于你读了多少遍而在于你每次动手前有没有拿它当检查清单。希望帮到你。本文还有配套的精品资源点击获取
企业数字化 ERP 产品动态
相关推荐
ABAP2XLX实战:从安装到生产环境的Excel导出方案解析 ABAP2XLX这个项目在SAP圈子里通常写作abap2xlsx,我第一次注意它是因为一个很无聊但又很常见的需求:财务每周一要出一份带格式的销售分析表,不能手工操作,又不能要求每台办公电脑都装上完整版Excel组件反复折腾。当时试过CSV、试过… · 2026/9/26 6:10:41
基于Vue+SSM的商城后台管理系统实战:从零搭建到部署 这篇博文我从实际做毕设的需求出发,把“基于VueSSM的商城后台管理系统”这个项目从需求拆解、技术选型、数据库设计、前后端实操到常见坑点全部梳理一遍,给你一条可以直接落地的复现路线。1. 项目到底在做什么:一次把需求聊透1.1 拆解标题背后… · 2026/9/26 6:10:41
VoNR高掉话排查实战:从信令分段到根因定位的端到端方法 简介:这份PDF面向5G网络优化工程师、核心网与无线维护人员,聚焦VoNR端到端高掉话这一典型疑难问题,提供从指标异常发现到根因定位、优化验证的完整排查思路。资源为单文件PDF,压缩包约1.81MB,内容以案例文档形式呈现&a… · 2026/9/26 6:10:41
claude-code-templates:AI生成代码的工程化收纳盒 1. 这不是又一个 CLI 工具:Claude-Code-Templates 的真实定位与误用陷阱“claude-code-templates”——光看这个名字,绝大多数人第一反应是:“哦,Anthropic 官方出的 Claude 代码生成 CLI?”或者“是不是类似 Copilot … · 2026/9/26 6:43:26
电脑维修报修网站源码:部署配置与二次开发实战指南 简介:面向电脑维修公司的带在线报修功能网站源码,传统维修商可借此搭建线上服务入口,客户在线提交维修请求后自动生成工单,维修人员可在后台实时跟进处理状态并派单,简化服务流程并提升品牌形象。资源打包为RAR压缩包格… · 2026/9/26 6:43:26
公文排版本质是国标条款的机器可执行化 1. 公文排版不是“调格式”,而是执行一套刚性行政语言规则“公文排版神器,一键搞定专业格式”——这句话在办公软件培训群里刷屏时,我正盯着一份被退回三次的请示文件发呆。第三次退回理由只有八个字:“标题二号小标宋,… · 2026/9/26 6:43:26
ToDesk隐私屏原理与工程实践指南 1. 隐私屏不是“开关”,而是远程控制场景下的视觉隔离策略ToDesk 的“隐私屏”功能,常被误读为一个简单的“开/关按钮”——点一下屏幕变黑,再点一下恢复。这种理解在实操中会直接导致两个典型问题:一是远程会话中本地屏幕突然黑屏… · 2026/9/26 6:43:26
二阶锥松弛在主动配电网故障重构中的建模与求解实践 去年做主动配电网运行方式分析时,我被一个故障重构思路上“卡”了将近三周:模型写得很完整,约束也自洽,但一碰到大一点的算例,求解器要么迟迟不收斂,要么给出的开关组合根本过不了潮流校验。后来把目光从“… · 2026/9/26 6:43:14
LabVIEW车牌识别系统开发实战:从图像采集到界面联动的完整指南 车牌识别系统这东西,你在搜索栏敲“labview 车牌识别”,能翻出来一摞号称完整的源码包。我早年间也是这么入坑的——下载、解压、打开主VI、信心满满点运行,然后前面板一片灰,或者视频窗口永远显示“未检测到车牌”。后来在停车场… · 2026/9/26 6:43:08
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46