0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于MATLAB的DVB-S2端到端示例如何搭建仿真链路

FPGA算法工程师 来源:FPGA算法工程师 2023-05-17 09:07 次阅读

随着卫星互联网的兴起,我们再次将目光聚集到DVB-S2上。与之相关的还有DVB-S2X和DVB-RCS2等,以及最近几年提出的5G-NTN。

本文基于MATLAB的DVB-S2端到端示例,简述如何搭建仿真链路,同时重点关注如何让进行接收机同步处理。

这个示例演示了如何测量具有恒定编码和调制的单流数字视频广播卫星第二代(DVB-S2)链路的误码率(BER)和误包率(PER)。该示例详细描述了符号定时和载波同步策略,重点介绍了如何在高噪声条件下估计射频前端损伤。单流信号增加射频前端损伤,然后将波形通过加性高斯白噪声(AWGN)通道。

DVB-S2接收机受到输入符号率20%左右的大载波频率误差和大量相位噪声的影响。使用强大的前向纠错(FEC)机制,如Bose-Chaudhuri-Hocquenghem (BCH)和低密度奇偶校验(LDPC)码,使DVB-S2系统在每个符号的能量与噪声功率谱密度比(Es/No)值非常低的情况下工作,接近香农极限。

ETSI EN 302 307-1第6节表13[1]总结了不同调制方案和码率下AWGN信道上的准无差错(QEF)性能要求。不同传输模式的工作范围可以考虑为+2或-2 dB。

在整个链路中,载波定时同步是设计的重点和难点。

下图总结了示例的处理流程。

453c8598-f440-11ed-90ce-dac502259ad0.png

图1 DVB-S2端到端仿真模型

在接收端,经过匹配滤波后,进行定时和载波恢复操作,恢复传输的数据。为了提取PL帧,通过各种定时和载波恢复策略对失真波形进行处理以提取PL帧。载波恢复算法是导航辅助的。为了解码数据帧,从PL头中恢复物理层传输参数,如调制方案、码率和FEC帧类型。为了重新生成输入比特流,对基带(BB)报头进行解码。

由于DVB-S2标准支持分组和连续传输模式,因此BB帧既可以是用户数据包的串接,也可以是比特流。恢复BB报头以确定传输模式。如果BB帧是用户数据包的串接,则返回每个数据包的CRC (packet cyclic redundancy check)状态和解码位,然后测量PER和BER。

图2显示了同步处理过程,图3为比特级处理过程。

4562b66e-f440-11ed-90ce-dac502259ad0.png

图2 DVB-S2接收机同步处理过程

45972976-f440-11ed-90ce-dac502259ad0.png

图3 DVB-S2接收机比特级处理

为了实现DVB-S2端到端的仿真,我们需要用到MATLAB的help文档和function。

首先,我们需要下载DVB-S2 LDPC Parity Matrices文件,用于LDPC编解码。

然后,我们需要对DVB-S2进行配置。

指定cfgDVBS2结构体来定义DVB-S2传输配置参数。ScalingMethod属性适用于MODCOD在[18,28]范围内(即仅为APSK调制方案)的情况。当将流格式设置为“GS”时,UPL属性适用。

接下来,我们需要设置系统仿真参数。

DVB-S2标准支持灵活的信道带宽。使用典型的信道带宽,如36MHz。信道带宽可以更改。本例中实现的粗频率同步算法可以跟踪高达20%输入符号率的载波频率偏移。符号速率计算为B/(1+R),其中B为信道带宽,R为发射滤波器滚降因子。在本例中实现的算法可以校正采样时钟偏移高达10ppm。

要创建DVB-S2波形,使用HelperDVBS2RxInputGenerate辅助函数,并将simParams和cfgDVBS2结构体作为输入。该函数返回数据信号,发送和接收波形,以及接收器处理结构体。接收到的波形受到载波频率、定时相位偏移和相位噪声的影响,然后通过AWGN信道。接收器处理参数结构rxParams包括参考导频字段、导频索引、计数器和缓冲Buffer。绘制接收符号的星座和发射和接收波形的频谱。

45d8efbe-f440-11ed-90ce-dac502259ad0.png

图4 生成接收数据的星座图

4604e1fa-f440-11ed-90ce-dac502259ad0.png

图5 收发信号的频谱

对于DVB-S2来说,接收机的同步过程比较复杂,也是最重要的功能部件。

接下来,配置接收参数。

在接收端,对接收到的数据执行符号定时同步,然后进行帧同步。接收机算法包括粗频和细频损伤校正算法。载波频率估计算法可以跟踪输入符号率的20%以内的载波频率偏移。粗频估计以锁频环(FLL)的形式实现,将频率偏移减小到精细频率估计器可以跟踪的水平。符号定时和粗频率补偿的优选环路带宽取决于设置。

每1476个符号重复一组36个导频。粗频率误差估计使用了36个导频符号中的34个。每个区块使用的导频数(34)与导频周期(1476)之比为0.023。

465f62f6-f440-11ed-90ce-dac502259ad0.png

图6 粗频偏校正后星座图

帧同步使用PL头。由于载波同步是数据辅助的,因此帧同步必须准确地检测到帧的起始点。在确定帧同步精度方面起着至关重要的作用。当QPSK调制帧的恢复值低于3dB时,必须在多个帧上进行帧同步以进行精确检测。

细频率估计可以跟踪输入符号率4%以内的载波频率偏移。精频率估计必须处理多个导频块,以使剩余载波频率偏移减少到相位估计算法可接受的水平。相位估计算法可以处理小于输入符号率0.02%的剩余载波频率误差。只有在存在显著相位噪声的情况下,APSK调制方案才需要进行精细相位补偿。

46aa3c9a-f440-11ed-90ce-dac502259ad0.png

图7 细频偏校正后星座图

我们从图2、图3中可以看到,为了同步接收到的数据并恢复输入比特流,按照以下步骤一次处理一帧受信道影响的DVB-S2波形采样数据。

应用匹配滤波,以每个符号两个样本的速率输出。

使用Gardner定时错误检测器(TED),进行符号定时同步,并以符号速率输出。Gardner TED没有数据辅助,因此在载波同步之前执行。

应用帧同步来检测帧的开始和识别导频位置。

粗频偏估计与校正。

精频偏估计与校正。

残留频偏、相噪估计与补偿。

解码PL报头并计算传输参数。

解调和解码PL帧。

对BB报头进行CRC校验,如果校验通过,则恢复报头参数。

从BB帧重新生成数据或数据包的输入流。

图8则是对残留频偏和相噪进行估计并校正后的星座图。

46e5cdb4-f440-11ed-90ce-dac502259ad0.png

图8 残留频偏与相噪校正后的星座图

从图8中可以看出,相噪校正后的星座图符合仿真发端的设置,16APSK调制。

在DVB-S2标准中,16APSK调制映射星座图如图9所示。

47249cc4-f440-11ed-90ce-dac502259ad0.png

图9 16APSK星座映射

注意,在本次仿真过程中,笔者使用的MATLAB版本是R2021a。感兴趣的读者,可以使用相同版本或更高级版本,相信可以达到同样的仿真结果。

4756000c-f440-11ed-90ce-dac502259ad0.png

图10 Satellite Communications Toolbox端到端仿真

通过本示例,我们重点关注程序中使用的几个关键功能函数。

478f99b6-f440-11ed-90ce-dac502259ad0.png

图11 本示例中使用的函数

通过这些函数,我们可以学习如何进行时频同步帧同步细频偏估计相噪估计与补偿等。

当然,我们仅仅是通过示例来熟悉了DVB-S2的处理过程,在实际项目中,会考虑工程实现的具体情况。





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • matlab
    +关注

    关注

    175

    文章

    2924

    浏览量

    228463
  • 接收机
    +关注

    关注

    8

    文章

    1122

    浏览量

    52649
  • BCH
    BCH
    +关注

    关注

    0

    文章

    43

    浏览量

    9471
  • AWGN
    +关注

    关注

    0

    文章

    7

    浏览量

    6696

原文标题:【卫星专题】DVB-S2端到端仿真

文章出处:【微信号:FPGA算法工程师,微信公众号:FPGA算法工程师】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    申请DVB-S/DVB-S2版主

    本人烧星2年有余,积累大量卫星电视经验,能胜任版主,更能让大家对DVB有更深的了解!我有信心!!!!!!!
    发表于 05-12 22:09

    国内外主流DVB-S ,DVB-S2及ISDBT 方案,功能

    国内外主流DVB-S ,DVB-S2及ISDBT厂家,,型号,方案,及功能。第一次发贴,希望对广大烧友有用。以后再给传更多更详细的资料给大家共享! 
    发表于 10-28 10:41

    Matlab仿真1090ES数据

    本帖最后由 sy9576 于 2013-4-16 22:00 编辑 如题如题,求助各位大侠,如何在Matlab编程下仿真出1090ES数据波形?{:16:}
    发表于 04-16 21:57

    点到点和通讯

    路由器与4G DTU中间有多少机器,都必须在两头(源和目的)间建立连接,一旦连接建立起来,就说已经是连接了,即
    发表于 01-18 18:06

    N5182A信号发生器能生成dvb-s2信号吗?

    嗨,我想在L-BAND(950Mhz1950Mhz)中生成DVB-SDVB-S2信号(QPSK,8PSK,16APSK和16QAM)。 N5182A信号发生器能做到吗?我的目标是通过我的卫星设备
    发表于 08-02 12:10

    采用MSD7S45的海外DVB-S2高清机顶盒方案

      一、方案概述  MSD7S45系列芯片是Mstar推出的支持H265解码的高安DVB-S2的高清机顶盒方案。芯片内置S2解调器,支持各主流条件接收系统,支持PVR/Timeshit功能,支持各种
    发表于 07-02 17:32

    基于MSD7S01的DVB-S2机顶盒方案

      一、方案概述:  MSD7S01芯片是Mstar推出的极富竞争力的DVB-S2机顶盒方案、芯片内置64MB DDR2S2解调器、支持Biss功能、支持PVR/Timeshit功能
    发表于 07-06 10:09

    simulink仿真BPSK,用bertool看仿真误码率曲线却是直线

    1.仿真2.bertool误码率曲线:3.做这个仿真是为了完成实验报告,题目如下:基于simulink
    发表于 10-17 22:58

    PCB设计仿真之探讨源串联端接

    个简单的电路模型,给一个上升沿和下降沿均为0.5ns的脉冲波形,电压跳变为0V-2V-0V,高电平持续时间为10ns,假定芯片内部驱动17ohm,路径中传输线的时延为1ns,一起看下这个的接收
    发表于 11-22 14:14

    C语言或matlab如何实现ff调速器仿真

    C语言或matlab如何实现ff调速器仿真
    发表于 10-17 07:34

    C语言或Matlab如何实现FF调度器仿真

    C语言或Matlab如何实现FF调度器仿真
    发表于 10-18 06:12

    DVB-S/DVB-S2信号发生器 (DVB-S/S2 Si

    SSG500 is the DVB-S2 signal generator built in DVB-S2 modulator and Upconverter in one unit.
    发表于 01-15 11:32 52次下载

    基于PXA270 和STi710x 的双CPU DVB-S2

    基于PXA270 和STi710x 的双CPU DVB-S2标准卫星数字机顶盒方案:本文设计了一款基于PXA270 和STi710x 的双CPU DVB-S2 标准卫星数字机顶盒方案,充分发挥了STi710x 和ARM9 的优势。该方案不仅能完成
    发表于 01-16 15:35 41次下载

    基于PXA270和STi710x的双CPU DVB-S2标准

    基于PXA270 和STi710x 的双CPU DVB-S2 标准卫星数字机顶盒方案本文设计了一款基于PXA270 和STi710x 的双CPU DVB-S2 标准卫星数字机顶盒方案,充分发挥了STi710x 和ARM9 的优势。该方案不仅
    发表于 02-05 22:23 46次下载

    澜起科技发布DVB-S2解调芯片M88DS3103

     继其首颗DVB-S/S2解调芯片M88DS3002成功上市后,澜起科技又马不停蹄地研究客户的最新需求和市场的发展趋势,适时推出了业内首颗48管脚封装的DVB-S2解调芯片- M88DS3103。
    发表于 03-14 09:49 4754次阅读