OAI框架下OFDM调制过程

举报
nimo的小舔狗 发表于 2022/08/21 00:19:27 2022/08/21
【摘要】 OFDM通过进一步压缩载波间隔,使得在同一带宽,信号数目增加,信号输出量增加,频带利用率上升。LTE标准中多为下行传输方案。5G中因为使用的调制方式仍然是OFDM。 1.串并转换 进行IFFT,即由单点变N点,增加了系统的抗干扰能力。 2.增加循环前缀 消除码间干扰,加CP增加冗余符号信息,保证正交性,减少多载波间干扰。 常规...

OFDM通过进一步压缩载波间隔,使得在同一带宽,信号数目增加,信号输出量增加,频带利用率上升。LTE标准中多为下行传输方案。5G中因为使用的调制方式仍然是OFDM

1.串并转换

进行IFFT,即由单点变N点,增加了系统的抗干扰能力。

2.增加循环前缀

消除码间干扰,加CP增加冗余符号信息,保证正交性,减少多载波间干扰。

常规CP:14;扩展CP:12;

OFDM的优势与不足:

优势:抗衰落能力强;频带利用率高;适合高速数据传输;抗码间干扰(ISI)能力强。

不足:对频偏和相位噪声比较敏感;功率峰值与均值比(PAPR)大,导致射频放大器的功率效率较低。

首先观察openair1/README.TXT

可以发现每个目录下至少都有一个def.h文件来声明结构体和函数,extern.h来声明外部变量以及vars.h文件来声明变量,知道MODULATION是存放调制解调操作的

进入openair1\PHY\MODULATION\ofdm_mod.c,找到OFDM调制代码,OFDM输入信号在经过信道编码,交织,调制后成为比特流,通过IFFT及那个频域输入映射到时域后根据情况加上循环前缀(后缀,补零或者无)。

首先是函数do_OFDM_mod

根据帧来判定是MBSFN调制还是PDCCH调制,同时判定为常规CP还是扩展CP,实现一是IFFT,二是添加循环CP。

 

判断常规和扩展CP,?6:7。

然后实现调制功能的PHY_ofdm_mod函数

通过ifdef~endif测试函数是否可用 

对每个OFDM符号进行IFFT

openair1\PHY\MODULATION\ofdm_mod.c中引入的头文件中,找到了PHY_ofdm_mod的详细定义(通过循环扩展或者补零完成调制过程)

PDCCH是下行控制信道,在PHY/defs_common.h中可找到PDCCH_CONFIG的定义

在进入PHY/impl_defs_top.h后找到相关OFDM调制的过程

_PHY_MODULATION_ Modulation and Demodulation负责与OFDMA调制和解调相关的程序

在ofdm_mod.c文件中关于idft_size_idx_t的使用中

可以在PHY/TOOLS/tools_defs.h中找到其定义

可以发现其上方是dft点数的定义

在同一文件中可找到关于dft和idft函数调用的定义

进入load_dftslib函数中,跳转到dfts_load.c文件中,找到idft相关具体操作

搜寻shlib_fdesc,找到定义数组

继续搜寻结构体loader_shlibfunc_t,找到common/utils/load_module_shlib.h

在ofdm_mod.c文件最后找到rotate_cpx_vector,执行向量与复数向量相乘的操作,可在tools_defs.h文件中找到相关定义

在oai_dfts.c文件中找到相关idft具体算法

先完成第一个蝶形的运算

调整了stage1的输出序列的顺序,使得stage2的输出序列是顺序的

计算第二个蝶形

继续观察,发现idft64等更高阶idft基于idft16完成定义

 

文章来源: blog.csdn.net,作者:渣渣ye,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/yyfloveqcw/article/details/126431531

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。