WLAN-802.11-master: IEEE 802.11 物理层链路仿真平台
本项目是一个基于 MATLAB 开发的无线局域网(WLAN)物理层链路仿真平台。它严格遵循 IEEE 802.11 标准,通过数学建模和算法实现,模拟了无线信号从发射机比特流生成、经过多径衰落信道传输、再到接收机信号恢复的完整物理层过程。该平台可用于评估无线通信系统在不同信噪比环境下的误码率、星座图表现及信道估计准确性。
功能特性
- 标准化的训练序列:实现了 802.11a 标准定义的短训练序列(STS)和长训练序列(LTS),分别用于接收端的频率同步和信道估计。
- 完整的发射机链路:包含扰码处理、1/2 码率卷积编码、交织技术、16QAM 调制映射以及 OFDM 符号构建(包含循环前缀添加)。
- 模拟实际无线环境:支持自定义多径衰落信道模型,并能够模拟载波频率偏移(CFO)和加性高斯白噪声(AWGN)对信号的影响。
- 高效的接收机算法:集成了基于 STS 的载波频率偏移估计与补偿算法、基于 LTS 的频域信道估计以及一阶频率均衡技术。
- 结果可视化分析:自动生成 BER(误码率)与 PER(帧错误率)性能曲线,并可实时观察均衡后的星座图表现及估计的信道冲激响应。
---
系统要求
- 软件环境:MATLAB R2020a 或更高版本。
- 必备工具箱:Communications Toolbox(通信工具箱)及 Signal Processing Toolbox(信号处理工具箱)。
---
使用方法
- 启动 MATLAB 环境,将项目根目录设置为当前工作目录。
- 直接运行仿真主函数。
- 程序将依次历经设置的信噪比范围(0dB 到 25dB),针对每一信噪比点循环发送指定数量的数据包。
- 仿真结束后,系统将自动弹出绘图窗口,展示系统性能评估结果。
---
核心实现逻辑说明
仿真过程严格按照 802.11 物理层协议栈顺序执行,具体逻辑如下:
发射机端流程
- 比特流处理:生成随机原始比特,利用一个 7 位寄存器的扰码器进行处理,随后通过约束长度为 7、生成多项式为 [133 171] 的卷积编码器进行 1/2 码率编码。
- 数据交织:根据标准定义的两步排列算法(Index Permutation)对编码后的比特进行交织,以提高抗突发错误能力。
- 符号映射与 OFDM 调制:将比特映射为 16QAM 符号。随后进行子载波映射(包含 48 个数据载波和相应零点),执行 64 点 IFFT 并添加 16 点循环前缀(CP)。
- 帧组装:在数据段头部拼接 10 个重复的短训练序列(STS)和 2 个长训练序列(LTS),构成完整的物理层协议数据单元(PPDU)。
信道模拟
- 通过一个预设的复数系数向量实现离散多径衰落。
- 向信号施加指定的载波频率偏移,模拟发射机与接收机之间的晶振差异。
- 根据目标信噪比添加高斯白噪声。
接收机端流程
- 载波同步:利用短训练序列(STS)的周期性自相关特性,计算相位差以估计载波频率偏移(CFO),并对接收信号进行反向旋转补偿。
- 信道估计:提取接收到的 2 个长训练序列(LTS),在频域计算其与标准序列的商,得到每个子载波的信道频率响应。
- OFDM 解调与均衡:去除 CP 后进行 FFT 变换。利用估计的信道响应对数据符号进行一阶频域迫零均衡(Zero Forcing),消除多径效应引起的幅度衰减和相位扭曲。
- 解调与解码:执行 16QAM 硬判决解调,经过逆交织处理,最后通过 Viterbi 译码器(硬判决、Truncated 模式)还原比特流并解扰。
---
关键算法分析
载波频率偏移估计
系统利用 STS 序列中每 16 个采样点重复一次的特性,通过计算接收信号与其自身延迟 16 点副本的互相关角度来估算偏置频率。这种方法能够在时域快速捕获频率误差,为后续的相干解调提供基础。
频域同步与信道估计
利用 LTS 的已知频域特性,在频域对两个重复的 LTS 进行平均和最小二乘法估计。这能够有效地反转频率选择性衰落信道的影响。在代码实现中,对于零点附近的计算异常进行了排除处理,确保了均衡器的稳定性。
交织与卷积编码
代码严格实现了 802.11 标准中的交织器数学模型。第一步交织处理确保相邻编码比特映射到不相邻的子载波上;第二步交织确保相邻编码比特交替映射到星座图的重位和轻位上,极大增强了系统在衰落信道下的稳健性。
性能统计
每一轮仿真都会记录误码数和误帧数。PER(帧错误率)的统计特别适用于评估在高层应用中的吞吐量表现。最后通过图形化展示信噪比、错误率、星座图聚集度和信道响应,形成闭环的教学和研究演示平台。