软件无线电系列——数字调制信号的解调算法

微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等
在这里插入图片描述
本节目录

一、数字调制信号的解调算法
1、ASK解调
2、MASK解调
3、FSK解调
4、MFSK解调
5、MSK解调
6、GMSK解调
7、SFSK解调
8、PSK解调
9、MPSK解调
10、QPSK解调
11、OQPSK解调
12、π/4QPSK解调
13、QAM解调

本节内容
一、数字调制信号的解调算法
利用数字正交解调方法,对各种调制信号解调。
1、ASK解调
ASK信号表达式:
在这里插入图片描述

其中am表示输入码元,且am=0,1;g(n-m)是幅度为1,宽度为码元传输速率导数的矩形脉冲门函数。
ASK的解调方法与AM解调相同,对信号进行正交分解,得同相和正交分量:
在这里插入图片描述

之后,对同相和正交分量平方之和进行开方操作:
在这里插入图片描述

计算出a(n)后,对a(n)进行抽样判决,可恢复出调制的码元信号。
2、MASK解调
MASK信号表达式为:
在这里插入图片描述

其中am为输入码元,且am=0,1……,M-1
MASK的解调方法与ASK一样,对信号正交分解,得到同相和正交分量,对同相和正交分量平方之和进行开方,计算出a(n),之后进行抽样多电平幅度判决,恢复出调制码元信号。
3、FSK解调
FSK信号表达式:
在这里插入图片描述

其中∆ω为载波角频率间隔,am为输入码元,am=0,1。
FSK解调类似于FM解调,对信号正交分解,得到同相和正交分量:
在这里插入图片描述

对正交与同相分量之比进行反正切运算,对相位进行差分,得到瞬时频率f(n):
在这里插入图片描述

之后对f(n)进行抽样门限判决,恢复出传输的数据。
4、MFSK解调
MFSK的信号表达式为:
在这里插入图片描述

其中am为输入码元,且am=0,1……,M-1
MFSK解调类似于FSK解调,对信号正交分解,得到同相和正交分量,对正交与同相分量之比进行反正切运算,对相位进行差分,得到瞬时频率f(n),之后对f(n)进行抽样多电平门限判决,恢复出数据。
5、MSK解调
MSK信号表达式:
在这里插入图片描述

其中T为码元持续时间,am为输入码元,且am=-1,+1
Xm是为了保证相位连续而加入的相位常数
在这里插入图片描述

MSK信号的解调与FM类似,对信号正交分解,得到同相和正交分量:
在这里插入图片描述

对正交与同相分量之比进行反正切运算,对相位进行差分,得到瞬时频率f(n):
在这里插入图片描述

之后对f(n)进行抽样门限判决,恢复出码元。
6、GMSK解调
GMSK信号与MSK信号相比,仅仅对输入数据多加了一个预调制滤波器,同样可以按照MSK信号解调,再经过一个滤波器H(ω),即可求得码元。
其中H(ω)=1/G(ω),G(ω)为预调制滤波器的频率响应。
7、SFSK解调
SFSK信号表达式
在这里插入图片描述

SFSK信号解调与MSK相同,参考MSK解调方法。
8、PSK解调
PSK信号表达式:
在这里插入图片描述

其中φm=θi,i=0,1
PSK解调类似于PM解调,对信号进行正交分解后,得到同相和正交分量:
在这里插入图片描述

按照调相PM解调公式,求得瞬时相位φ(n)
在这里插入图片描述

对φ(n)抽样进行多电平门限判决,可恢复出码元数据。在解调时候,需要本地载波与信号载波严格的同频同相,同频同相可由数字科斯塔斯环获得。
9、MPSK解调
MPSK信号表达式为:
在这里插入图片描述

其中φm=θi,i=0,1……,M-1
MPSK信号解调方法和PSK一样,具体参考PSK。
10、QPSK解调
QPSK信号表达式:
在这里插入图片描述

其中am、bm为双极性数据
QPSK解调,对信号进行正交分解:
在这里插入图片描述

I、Q分量,恢复出来的并行数据,经抽样判决,恢复出码元数据后,再经过并/串转换,就可以恢复出串行码元数据。
11、OQPSK解调
OQPSK的信号表达式:
在这里插入图片描述

OQPSK解调与QPSK类似,只需要在并/串转换,对I路信号进行T/2延迟。
12、π/4QPSK解调
π/4QPSK的信号表达式为:
在这里插入图片描述

其中,φ(n)=φ(n-1)+∆φn,表示第n个码元结束时候信号的绝对相位。∆φn是由输入数据决定的相位差。
在这里插入图片描述

解调时候,对信号进行正交分解:
在这里插入图片描述

同相、正交分量的两路信号的极性,根据上表可以恢复出调制的码元数据。
13、QAM解调
QAM信号表达式:
在这里插入图片描述

其中am,bm=1,2……,M
QAM解调,对信号进行正交分解:
在这里插入图片描述

对同相、正交分量两路信号进行抽样判决,恢复出并行数据,经并/串变换后得到所传输的数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/592975.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Shell编程debug

debug调试 debug方法 sh -x显示脚本执行过程set命令设置开始debug和结束debug的位置显示脚本某一部分执行过程,解决复杂脚本故障 示例: sh -x 显示脚本执行过程 set显示脚本的部分执行过程 set -x 开始调试,从这里开始显示脚本的详细执行过…

WebAssembly 入门教程 c++、python编译wasm

WebAssembly 入门 了解 wasm 使用场景,复杂对象传递和经验法则。 简介 WebAssembly 是一种新的编码方式,可以在现代的网络浏览器中运行。它是一种低级的类汇编语言,具有紧凑的二进制格式,可以接近原生的性能运行,并…

Docker入门篇来啦~

文章目录 1虚拟化技术1.1 硬件级虚拟化1.2 操作系统级虚拟化 2 Docker是什么2.1 Docker介绍2.2 容器和虚拟机的区别2.3 为什么使用Docker 3 Docker运行环境部署3.1 Docker安装3.2 Docker服务启动 4 Docker核心组件4.1 镜像4.1.1 镜像的基本概念4.1.2 镜像的组成结构4.1.3 镜像的…

上位机图像处理和嵌入式模块部署(树莓派4b使用lua)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 lua是一个脚本语言,比c语言开发容易,也没有python那么重,整体使用还是非常方便的。一般当成胶水语言进行开发&a…

Linux基础指令001

名称日期版本说明作者了解并熟练运用Linux基础指令2024/05/04v0.0.1汇总篇lgb 一,了解Linux,并安装 Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协…

编译 x264 for iOS

文章目录 编译在 FFMpeg 启用 x264其他编译选项报错处理 环境 : macOS 14.3.1 x264 - 20191217-2245 编译 1、下载 x264 源码 http://download.videolan.org/pub/videolan/x264/snapshots/ 这里我下载x264-snapshot-20191217-2245.tar.bz2 (截止2024-…

【计算机网络】计算机网络的定义和分类

一.定义 计算机网络并没有一个精确和统一的定义,在计算机网络发展的不同阶段,人们对计算机网络给出了不同的定义,这些定义反映了当时计算机网络技术的发展水平。 例如计算机网络早期的一个最简单定义:计算机网络是一些互连的、自…

10个使用NumPy就可以进行的图像处理步骤

图像处理是一种数学计算。数字图像由称为像素的彩色小点组成。每个像素由红、绿、蓝(RGB)三个独立的颜色组成。每个像素中的主色由每个RGB分量的数值决定。 本文将介绍10个使用使用NumPy就可以进行的图像处理步骤,虽然有更强大的图像处理库,但是这些简单…

dp 动态规划 力扣

64. 最小路径和 给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例 1: 输入:grid [[1,3,1],[1,5,1],[4,2,1]] 输…

IDA使用教程-IDA7.5版本

IDA使用教程 右键使用32bit分析程序 一,IDA修改,保存 修改:IDA->edit->Patch program(补丁程序)->Assemble(汇编)修改。 保存: IDA->edit->Patch program->Appl…

【数据结构】--- 深入剖析二叉树(上篇)--- 初识树和二叉树

Welcome to 9ilks Code World (๑•́ ₃ •̀๑) 个人主页: 9ilk (๑•́ ₃ •̀๑) 文章专栏: 数据结构之旅 🏠 初识树 📒 树的概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点…

Leetcode354. 俄罗斯套娃信封问题

Every day a Leetcode 题目来源:354. 俄罗斯套娃信封问题 解法1:动态规划 我们必须要保证对于每一种 w 值,我们最多只能选择 1 个信封。 首先我们将所有的信封按照 w 值第一关键字升序、h 值第二关键字降序进行排序; 随后我们…

QT+串口调试助手+扩展版

前言:此文章是这篇文章的拓展 QT串口调试助手基本版-CSDN博客,如果需要独立完成串口调试助手直接看基本版文章即可,如果需要完成串口调试助手的其他功能,参考拓展版。 一、更新QT串口调试助手UI界面 1、ui串口设置界面 2、ui串口…

Java与Go: 生产者消费者模型

什么是生产者消费者模型 生产者-消费者模型(也称为生产者-消费者问题)是一种常见的并发编程模型,用于处理多线程或多进程之间的协同工作。该模型涉及两个主要角色:生产者和消费者,一个次要角色:缓冲区。 生…

Unity---版本控制软件

13.3 版本控制——Git-1_哔哩哔哩_bilibili Git用的比较多 Git 常用Linux命令 pwd:显示当前所在路径 ls:显示当前路径下的所有文件 tab键自动补全 cd:切换路径 mkdir:在当前路径下创建一个文件夹 clear:清屏 vim…

EtherCAT通信总线状态监视

1、EtherCAT总线运动控制学习笔记 EtherCAT总线运动控制学习笔记(RXXW_Dor)_汇川pdo控制命令607a-CSDN博客文章浏览阅读3.3k次,点赞3次,收藏9次。说到总线控制,就要说到报文、对象字典、PN通信我们大部分会说报文,EtherCAT通信我们常说对象字典,叫法不一样,但是原理基…

OneFlow深度学习框原理、用法、案例和注意事项

本文将基于OneFlow深度学习框架,详细介绍其原理、用法、案例和注意事项。OneFlow是由中科院计算所自动化研究所推出的深度学习框架,专注于高效、易用和扩展性强。它提供了一种类似于深度学习库的接口,可以用于构建神经网络模型,并…

数据结构---单链表

题目&#xff1a;构造一个单链表。 使用的软件&#xff1a;VS2022使用的语言&#xff1a;C语言使用的项目&#xff1a;test.c Setlist.h Setlish.c 项目实践&#xff1a; Setlist.h的代码为&#xff1a; #pragma once#include<stdio.h> #include<stdlib.h> #incl…

SQL注入基础-3

一、宽字节注入 1、宽字节&#xff1a;字符大小为两个及以上的字节&#xff0c;如GBK&#xff0c;GB2312编码 2、数据库使用GBK编码时&#xff0c;会将两个字符合并为一个汉字(宽字节)。特殊值字符如单引号都会被转义【--->\】&#xff0c;如sqli-lads第32关&#xff0c;输…

【C++】学习笔记——vector_2

文章目录 七、vector2. vecotr的使用3. vector的模拟实现 未完待续 七、vector 2. vecotr的使用 上节我们以二维数组结束&#xff0c;这一节我们以二维数组开始。 // 二维数组 vector<vector<int>> vv;二维数组在底层是连续的一维数组。vv[i][j] 是怎样访问的&a…