tips:

块状与梳状导频

相同点或相似点

1 导频序列和训练序列的作用都是为了得到准确符号同步和频偏纠正。

2 导频序列和训练序列都进行信道估计。

3 二者都传输已知数据。

4 二者都可称之为基于辅助信息的信道估计方法。

主要区别

1 添加位置不同:导频序列加在频域上,作用在频域。训练序列是在时域上添加的特定的序列。

2 表现形式不同:导频序列表现为频谱上的一根线,散布在整个时频单元(在整个帧中是离散的)。训练序列表现为时域上的时间块,一个或多个连续的符号(集中在帧头并且连续)。

3 要求不同:加在时域的训练序列要求有较强自相关性和弱互相关性。加在频域的导频序列无此要求。

其他

1 同步信道(sync channel)的概念一般只在训练序列中涉及,对于导频来说似乎没有。

2 导频的频率应当是与载频有关的或者就是载频的频率。

3 块状导频就相当于训练序列。

4 导频序列常用于载波同步,训练序列用于帧同步?此结论待验证。

5 二者都可进行信道估计,信道估计的目的是获得信道的一些参数,如频移、时延等。因此信道估计也称为信道参数估计

IEEE 802.11a中使用了52个子载波(实际上应为53个,其中k=0处的直流子载波上不传输符号),由于IFFT算法基于2点,故采用64点的IFFT。53个子载波在频率分配时分别在编号低端和高端留有6个和5个空符号,即k=一32…,一27,27,…,31,这样就可以保证系统的子载波频谱集中,从而使得系统占用的频谱带宽尽可能窄,以节约频谱资源,减少信道间干扰。所以,52个非零子信道映射到64点输入的IFFT当中应按照下面图所指定的方式,把子信道1~26映射到相同标号的IFFT输入端口;而子信道一26~-1被映射到标记为38~63的IFFT输入端口;其余的IFFT输入端口,即27~37输入空值。

问题:现已知两个补零会使频谱中间凹陷,为什么会这样?为何补零在数据中间补零,而不是在数据两头补零?

-----------------------------以下正文---------------------------------------------------

一、课题要求如下:

使用Matlab语言,仿真实现OFDM基带信号在频率选择性信道条件下的发送与接收。输入为随机比特流,经由OFDM调制、仿真信道传输、OFDM解调后输出比特流,可计算不同信噪比条件下的误码率。其中子载波间隔15KHz,循环前缀长度及子载波数目可调,各子载波使用QPSK调制。

信道:信号经历3GPP TS36.101附录B中表B.2.2-1给出的ETU300多径信道,随后叠加一个信噪比可调的AWGN信道。

要求:能够查看并解释从输入到输出沿路各点信号的时域波形和频域特性图;能够绘制误码率随信噪比变化的曲线。

设计梳状或块状导频并在接收端完成信道估计与补偿(即均衡)。

二、仿真方案设计:

本方案在满足以上要求的前提下,选用了块状导频;除了循环前缀长度及子载波数目可调外,可以通过改变M的值,选用MPSK,且导频间隔与OFDM符号数可任意调整,并具有信道编码,交织,脉冲成型模块。

仿真系统模块依次为:二进制基带数据生成,卷积码编码,交织,QPSK调制,串并转换,加入虚载波(补零,数目为fft点数减去子载波数),插入导频,IFFT,插入循环前缀,并串转换,脉冲成型(先上采样再通过升余弦滚降滤波器),过信道。

解脉冲成型(通过相同的升余弦滚降滤波器,再抽样),串并转换,去循环前缀,FFT,信道估计(取出数据与导频,进行LS信道估计),去除虚载波(去零),并串转换,QPSK解调,解交织,信道译码(维比特译码),得到数据并计算误码率。

三、OFDM总体概述

OFDM是一种特殊的多载波传输方案,它可以被看作是一种调制技术,也可以被当作一种复用技术。

简单来说:OFDM是一种多载波的传输方法,它将频带划分为多个子信道并行传输数据,将高速数据流分成多个并行的低速数据流,然后调制到每个信道的子载波上进行传输。由于它将非平坦衰落无线信道转化成多个正交平坦衰落的子信道,从而可消除信道波形间的干扰,达到对抗多径衰落的目的。

正交频分复用(OFDM)是对多载波调制(MCM)的一种改进,在。它的特点是:各子载波相互正交,所以扩频调制后的频谱可以相互重叠,不但减少了子载波间的相互干扰,还大大提高了频谱利用率。

选择OFDM的一个很大的原因是该系统能够很好的对抗频率选择性衰落和窄带干扰。在单载波系统中,一次衰落或者干扰会导致整个链路失效,但是在多载波系统中,某一时刻只会有少部分的子信道受到深衰落的影响。

四、过程中涉及的部分模块与技术

信道编码

由于移动通信存在干扰和衰落,在信号传输过程中将出现差错,故对数字信号必须采用纠、检错技术,即纠、检错编码技术,以增强数据在信道中传输时抵御各种干扰的能力,提高系统的可靠性。这里的信道编码采用卷积编码,Viterbi译码。

卷积编码是现代数字通信系统中常见的一种前向纠错码,区别于常规的线性分组码,卷积编码的码字输出不仅与当前时刻的信息符号输入有关,还与之前输入的信息符号有关。

L

交织

交织的作用是将突发错误转换为随机错误,有利于前向纠错码的译码,提高了整个通信系统的可靠性。交织由两个变换过程组成。第一次变换保证了相邻的编码比特被映射到不相邻的子载波上。第二次变换保证了相邻的编码比特被分别映射到星座图的重要和非重要比特上,避免出现长时间的低比特位映射。

本系统使用的是分组交织,分组交织器是比较常见的一类交织器,它广泛应用于通信系统中。其交织过程描述如下:首先将输入信息序列按照行的顺序写入一个的矩阵,然后将数据按列读出。相对应的解交织处理就是将数据按列写入相同的矩阵,然后按行读出。

data_scramble 

导频

导频不携带信息,导频是双方已知的数据,是用来做信道估计的。在接收机中,虽然利用接收到的段训练序列、长训练序列可以进行信道均衡、频率偏差校正,但符号还会存在一定的剩余偏差,且偏差会随着时间的累积而累积,会造成所有子载波产生一定的相位偏移。因此,还需要不断地对参考相位进行跟踪。

保护间隔

多径信道会对OFDM符号造成ISI影响,破坏了子载波间的正交性。故需要采取一些方法来消除多径信道带来的符号间干扰(ISI)影响,即插入保护间隔。

保护间隔有两种插入方法:一种是补零(zp),即在保护间隔中填充0;另一种是插入循环前缀(cp)或循环后缀(cs)实现OFDM的循环扩展(为了某种连续性)。

zp是在保护间隔内不插入任何信号,但是在这种情况下,由于多径传播的影响,会产生载波间干扰(ICI),即不同的子载波间会产生干扰。

一般采用cp。cp是将OFDM后部的采样复制到前面,长度为Tcp,故每个符号的长度为Tsym=Tsub+Tcp,Tsub为数据部分子载波数。Tcp大于或等于多径时延,符号间的ISI影响将被限制在保护间隔中,因此不会影响下一个OFDM的FFT变换。

脉冲成型

限制信号的频率范围,这里采用的是升余弦滚降滤波器,需要注意的是脉冲成型前要进行上采样,且上采样的系数与rcosdesign的单个符号范围内的采样个数相同。

%% 脉冲成型,

视频解说

https://www.zhihu.com/video/1253377851413774336

四、matlab部分代码及图像分析

参数设置

sta_num 

发送数据的时域频域图像

经过ETU300多径信道的时域频域图

接收信号解调前的星座图(下面两图为同一张图)

不同信噪比下仿真的误码率

由上图发现,当信噪比大于15dB时,误码率并没有明显的下降,与课堂老师所展示的结果一致。

将导频间隔从4改为9,误码率曲线

将导频间隔从4改为2,误码率曲线

发现相同信噪比下,导频间隔增大会使误码率增大

8PSK下星座图与误码率曲线

发现8PSK相对于QPSK而言,也会使误码率增大

附录:matlab代码

一、程序源码

%%

感谢 @子木 的ofdm教程。

ar编码matlab仿真_matlab-ofdm通信链路仿真相关推荐

  1. ar编码matlab仿真_机器人常用可视化仿真工具

    机器人系统设计离不开仿真工具的支持.机器人仿真让我们在没有物理硬件的情况下也可以快速对算法进行验证:或者提高安全性,避免实验损伤我们的设备(比如在增强学习中,就需要大量random的explorati ...

  2. 基于matlab的OFDM通信链路仿真,输出OFDM频谱,星座图,收发时域波形

    目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 在通信系统中,信道所能提供的带宽通常比传送一路信号所需的带宽要宽得多.如果一个信道只传送一路信号是非 ...

  3. OFDM完整仿真过程及解释(MATLAB)

    因为是复制过来,如果出现图片显示不完整以及需要源程序请点击下面链接查看原文: OFDM完整仿真过程及解释(MATLAB) - 子木的文章 - 知乎 点击这里访问原文 后面的更新没有同步,点上面链接可以 ...

  4. matlab设计倒频系统,OFDM技术仿真(MATLAB代码)

    第一章 绪论 1.1简述 OFDM是一种特殊的多载波传输方案,它可以被看作是一种调制技术,也可以被当作一种复用技术.多载波传输把数据流分解成若干子比特流,这样每个子数据流将具有低得多的比特速率,用这样 ...

  5. ofdm系统matlab仿真论文,OFDM通信系统分析及其Simulink仿真

    一.课题综述及研究意义 当前,随着Internet商用化所带动的视频.音频及数字通信技术的发展,人们对无线通信寄予了更高的希望.无线移动通信作为通信行业的新兴领域正在进行着日新月异的发展,寻求一种大容 ...

  6. matlab怎么实现OFDM仿真,OFDMmatlab实现仿真源代码

    [实例简介] 正交频分复用OFDM完整运行程序,matlab实现仿真源代码 [实例截图] [核心代码] elecfans.com_matlab正交频分复用(OFDM)技术matlab实现仿真源代码 ├ ...

  7. 基于matlab的ofdm系统仿真及性能分析,基于MATLAB的OFDM系统性能仿真

    基于MATLAB的OFDM系统性能仿真(论文15000字) 摘要:本文介绍OFDM系统的基本原理与实现方法,以及移动多径环境下使用OFDM的优势,详细阐述了OFDM系统中符号间干扰ISI.载波间干扰I ...

  8. 初识OFDM(六):从零开始的OFDM误码率仿真

    文章目录 初识OFDM(六):从零开始的OFDM误码率仿真 零.代码地址 一. 加性高斯白噪声对OFDM误码率的影响 1. 代码展示 2. 代码分析 fftshift和ifftshift 能量和信噪比 ...

  9. matlab扩频与解扩,基于+MATLAB+的DSSS+系统的仿真研究.pdf

    基于+MATLAB+的DSSS+系统的仿真研究.pdf 2012年第08期 专题研究 基于MATLAB的 DS-SS系统的仿真研究 ■ 梁春东 摘要:文章阐述了扩频通信的理论基础,并利用MATLAB可 ...

最新文章

  1. WPF 把图片分割成两份自动翻页 WpfFlipPageControl:CtrlBook 书控件
  2. 第三十七期:刷脸支付叫好不叫座,为啥消费者和商家都不愿用先进科技?
  3. 【复习】使用 SQLiteDatabase 操作 SQLite 数据库
  4. 第一台鸿蒙手机是,第一台预装鸿蒙OS的手机终于登场。
  5. 浏览器九宫格的简单实现 - 蒋宇捷的专栏 - 博客频道 - CSDN.NET
  6. 正则表达式各种常规应用
  7. VMware 软件被曝其史上最严重的信息泄露漏洞之一,影响大量虚拟机和主机
  8. 在windows中用 netsh 命令修改ip地址网关和DNS等
  9. 再写轮播图——两张图切换,一张充当背景并且模糊,一张做展示图
  10. 什么是南桥芯片和北桥芯片?南桥芯片和北桥芯片区别
  11. 谢烟客---------Linux之SELinux的基本应用
  12. java对象转换String类型的三种方法
  13. Firebug网络面板里的两条竖线表示什么?
  14. java 除法运算,向上与向下取整和四舍五入
  15. vscode怎么运行android项目,windows + flutter +android+ vscode 安装配置运行流程(详细版本)...
  16. Cytoscape安装及使用
  17. 锁定计算机算qq在线吗,看对方qq上只显示“在线”两个字,是不是对方就是电脑在线?不是手机在线...
  18. 冷门工具【Powershell】学习,一
  19. 针对 WS-Discovery 协议的威胁观察
  20. python爬取去哪儿网机票_王老吉携手去哪儿网,打造出行全链路营销盛事

热门文章

  1. Kali Linux安装谷歌输入法
  2. Xamarin Android提示内存溢出错误
  3. mysql 分发_装配MySQL源代码分发
  4. bs和cs架构的区别和优缺点_C/S和B/S两种架构区别与优缺点分析
  5. java log 封装_工具类之LogUtils
  6. 脑机接口,风口还是入口?
  7. 大脑“拖延症”让你直呼“眼瞎”:加工视觉信息有15秒延迟 | Science子刊
  8. 提前体验「iPhone30」:7比32超长显示器,刷微博神器来了
  9. 英特尔用英伟达显卡,给GTA5打了个超强画质补丁
  10. 1024,点亮人间烟火