中频采样和IQ采样的比较和转换

news2024/9/21 21:45:10

一、什么是中频采样,什么是IQ采样

射频接收系统通常使用数字信号处理算法进行信号解调和分析,因此需要使用ADC对信号进行采样。根据采样频率的不同,可以分为射频直接采样、中频采样、IQ采样。射频采样和中频采样只需要一路ADC,采样结果为一组数字序列,而IQ采样需要两路ADC,采样结果为两组数字序列。中频采样比射频采样对ADC的带宽和采样率要求更低,同时宽带接收机的中频频率一般为固定频率,故中频采样应用非常广泛。中频采样的主要原理框图如下:

​图1、中频采样框图

IQ采样能提供数字信号解调和分析算法中常见的IQ两路数据,也有非常广泛的应用。IQ采样的主要原理框图如下:

​图2、IQ采样框图

二、中频采样和IQ采样的比较

中频采样与IQ采样的主要区别包括采样信号的载波频率、采样通道数、采样率等。以中频频率70MHz带宽10MHz信号为例,对两种采样方式进行比较。中频信号的载波频率为IF(实例为70MHz),最低频率为IF-BW/2 (实例为65MHz),最高频率为IF+BW/2 (实例为75MHz)。IQ信号为基带信号,没有载波,最低频率为DC,最高频率为BW/2(实例为5MHz)。如果都使用低通采样,采样率至少为模拟信号最高频率的2倍,则中频采样的最低采样率为2*IF+BW(实例为150MHz),IQ采样的最低采样率为BW(实例为10MHz)。

由此可见,IQ采样的采样率更低,即使考虑两路采样的因素,数据量仍然更小,故而在信号采集存储和数字信号处理中具有优势。

然而IQ采样硬件结构更为复杂,同时IQ采样对硬件的性能要求很高,理想的IQ采样需要两路信号幅度相等(即IQ两路平衡),相位相差90度(即IQ两路正交)。实际的硬件很难满足IQ采样的两路平衡和正交要求,因而会引入额外的性能恶化。为了避免IQ采样硬件的不平衡和非正交性带来的性能恶化,有一种先中频采样再使用数字下变频得到IQ数据的方法,可以算是中频采样和IQ采样的结合。

三、仪表中常见的中频采样和IQ采样

工程师对信号采样的目的有很多,可能是为了信号解调和分析,也可能是为了将信号复现出来。例如设备在某电磁环境中工作异常,就可以用仪器将此电磁环境信号采集存储,将采集数据带回实验室再使用仪器复现出来。

工程师在信号采集和回放过程中可能使用到的仪表有的是使用IQ采样数据,有的是使用中频采样数据。如果不理解两者的差异,很容易出现错误。

信号与频谱分析仪是一种常见的射频信号采集仪表。信号与频谱分析仪一般具有模拟中频输出接口,可以连接采集卡进行采样,得到的数据为单路中频采样数据,载波频率为频谱仪的中频频率。这种方式的优点是采集时间可以很长,采集时间由采集卡决定。同时,很多信号与频谱分析仪也有保存IQ采样数据文件的能力,保存的数据文件为两路IQ采样数据(可能是一个文件,但数据是两路数据,例如以IQIQIQ的形式存储)。一般信号与频谱分析仪保存的IQ采样数据文件的采样点较少。

矢量信号源是一种常见的信号回放仪表。一般情况下,矢量信号源需要IQ采样格式的数据文件进行信号回放。如果是中频采样的单路中频采样数据使用矢量信号源回放,就会出现不匹配的问题。为了解决这个问题,有两种方案可供选择:

1) 将中频采样信号直接作为IQ采样信号中的一路,另一路不使用(值为零)

2) 将中频采样信号转换为IQ采样信号

其中方法一较为简单,方法二需要一定的数字信号处理能力。方法一的主要缺点有:

1) 在矢量信号源上设置的频率并非真实载波频率,使用不直观。真实载波频率=仪表设置频率±中频频率。例如采集的中频70MHz带宽10MHz的信号,如果希望回放时信号中心频率为1GHz,矢量信号源的频率不能设置为1GHz,而应该设置为930MHz或者1070MHz。

2) 产生的信号为双边带信号,会在RF+IF、RF-IF各产生一路信号,其中一个边带为无用信号、干扰信号。例如实例中如果设置矢量信号源频率为930MHz,那么在1GHz和860MHz都会产生带宽为10MHz的信号。

3) 矢量信号源需要更高的采样率、更高的信号带宽,意味着更昂贵的仪表。例如中频70MHz带宽10MHz的信号,中频采样的采样率需要150MHz,IQ采样的采样率为10MHz。

因此,方法二是更理想的选择。

四、中频采样数据与IQ采样数据的相互转换

IQ采样数据转换为中频采样数据的过程,其实就是用数学运算实现IQ调制的过程。此过程只需要简单的加法和乘法运算。

IF_Signal = I_signal*cos(a) + Q_signal*sin(a)

需要注意的是:由于IQ采样的采样率很低,中频采样需要的采样率更高,在进行加法和乘法运算前,可能需要先提高IQ数据的采样率。可以使用Matlab的重采样函数resample(x,P,Q)来提高采样率。

中频采样数据转换为IQ采样数据要相对更加复杂一点。中频采样数据可以通过数字下变频转换为IQ采样数据。其主要原理框图如下:

​图3、中频采样信号数字下变频框图

将中频采样数据转换为IQ采样数据的主要过程包括:数字下变频、滤波、抽取。抽取是指采样率降低的过程,因为IQ采样需要的采样率更低,因此一般都包含抽取。使用Matlab的数字信号处理工具包中的数字下变频函数dsp.DigitalDownConverter,可以较为方便的将中频采样信号转换为IQ采样信号。

使用Matlab将中频采样数据转换为IQ采样数据的参考代码关键部分如下:

clear;

%构造一个数字下变频函数,抽取系数为2,中频50MHz,滤波器带宽20MHz,带内纹波0.5dB,带外抑制60dB

hDDC = dsp.DigitalDownConverter(...

'DecimationFactor',2,...

'SampleRate', samplerate,...

'Bandwidth', 20e6,...

'StopbandAttenuation', 60,...

'PassbandRipple',0.5,...

'CenterFrequency',50e6);

% 进行数字下变频,IF_Sample_Data为中频采样数据

IQ_Sample_Data = step(hDDC,IF_Sample_Data);

下面是数据转换前后的信号频谱图对比,主要是载波频率的搬移。载波频率由中频频率转换为DC。原始中频采样数据的频谱,中频为50MHz:

​图4、中频采样信号频谱

转换后IQ采样信号频谱没有载波频率,如下图所示:

图5、转换为IQ采样后的频谱

作者:皓月

来源:中频采样和IQ采样的比较和转换 - RFASK射频问问

关于RFASK射频问问

射频问问是在"微波射频网”系列原创技术专栏基础上升级打造的技术问答学习平台,主要围绕射频芯片、微波电路、天线、雷达、卫星等相关技术领域,致力于为无线通信、微波射频、天线、雷达等行业的工程师,提供优质、原创的技术问答、专栏文章、射频课程等学习内容。更多请访问:RFASK射频问问 - 射频技术研发服务平台 | 技术问答、专栏文章、射频课程

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

搜索引擎ES相关问题

一、什么是倒排索引?有什么好处?索引: 从ID到内容。倒排索引: 从内容到ID。好处: 比较适合做关键字检索。 可以控制数据的总量。提高查询效率。搜索引擎为什么比MySQL查询快? lucence文章 -》 term ->排…

element-ui中el-table点击其他自定义按钮展开table中某一行

element-ui中el-table点击其他自定义按钮展开table中某一行 在日常开发中,我们遇见了会有点击某些按钮,使得表格行展开的需求,这时候去查看文档 element-ui(table) 这里官方提供了示例为在行最左侧有一个展开合并ico…

JAVA开发测试(jmeter如何测试性能与估算)

对C的业务网站或应用,进行性能测试来评估使用服务器情况是必不可少的一项工作。 一、测试工具: Apache JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能,是Apache组织开发的…

CCF-CSP真题《202212-1 现值计算》思路+python满分题解

想查看其他题的真题及题解的同学可以前往查看:CCF-CSP真题附题解大全 试题编号:202212-1试题名称:现值计算时间限制:1.0s内存限制:512.0MB问题描述: 问题描述 评估一个长期项目的投资收益,资金的…

中点BH算法对任意斜率的直线扫描转换方法

作者:非妃是公主 专栏:《计算机图形学》 博客地址:https://blog.csdn.net/myf_666 个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩 文章目录专栏推荐专栏系列文章序一、算法原理二、…

六“元”数智增长模型,企业元宇宙时代的经营新范式

摘要:在中国传统哲学里,“元”表示最基本的、最根本的东西;在企业管理经营中,将“元”解释为企业的核心竞争力或者基础能力;元宇宙下,“元”就代表数智化下的新场景,来支撑企业的各种业务创新。 一、元宇宙下的“元” …

分享IDEA通过插件 【一键自动生成】 在线api接口文档

开发写代码已经很辛苦,相信每个开发人员都不想写接口文档,但是不写又不行。尤其现在开发的项目偏向于前后端分离,在没有接口的情况下,前后端很难对接联调,测试也无法很好的测试。现在IDEA的插件仓库里有款插件&#xf…

qt 内存泄漏处理办法

windows 版本windows msvc版本可以使用vld检测可以得到内存泄漏点的调用堆栈,如果可以的话,还可以得到其所在文件及行号;可以得到泄露内存的完整数据;可以设置内存泄露报告的级别。缺点:1.只针对 Visual C &#xff08…

VUE -- defineExpose

defineExpose定义demo定义 defineExpose定义:用于组件通信中父级组件调用操作子组建方法和响应式属性参数能力 在使用definExpose前需要了解两个拷贝对象函数 对象copy:shallowReactive 与 数据 copy:shallowRef 这两个都是vue包里面的 简…

图片文字识别OCR调研-中文

直接看效果对比 tesseract-ocr 该识别引擎最新版本tesseract4添加了支持神经网络(LSTM)的,该引擎专注于线条识别, 同时也保留了Tesseract OCR 引擎,该引擎通过识别字符模式来工作。 我们需求端的后台语言是go&#x…

时尚高级实用,零跑C01满足各种用车需求

零跑C01在新能源车市场上销量可观且口碑较好,为什么消费者会相中这个国产车全域自主研发的新能源车呢?下面的介绍会给出答案。就其外观而言,零跑C01的外观定位于中大型轿车,在外观设计上充分考虑到美学观念。零跑给出了七个车身颜…

扬帆优配|日均客运量恢复,民航业加速复苏,外资买入2股超亿元

春运民航客运量康复至疫情前七成。 2月16日,民航局举行2月例行新闻发布会。会上介绍,自1月7日至2月15日,春运40天,民航运送旅客5523万人次,日均客运量138万人次,同比去年春运添加39%,康复至2019…

Lesson5.1---Python 之 NumPy 简介和创建数组

一、NumPy 简介 NumPy(Numerical Python)是 Python 的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比 Python 自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示…

【贰】嵌入式系统的分类

随手拍拍💁‍♂️📷 日期: 2022.08.31 地点: 杭州 介绍: 2022.08.31下午一点,在闷热的学校里实在是待不下去了,跑到了门口的钱塘江边散了一会儿步🚶正值盛夏,八月即将完结,日子越过越快&#x1…

FPGA MAX 10 10M50系列10M50DAF484C8G/10M50DAF484C7G/10M50DCF484C7G规格

介绍MAX 10器件是单芯片、非易失性低成本可编程逻辑器件(pld),用于集成最优的系统组件集。MAX 10设备的亮点包括:内部存储双配置闪存用户闪存即时支持集成模数转换器(adc)支持Nios II单芯片软核处理器MAX 10设备是系统管理、I/O扩展、通信控制平面、工业、汽车和消费…

ant design vue 组件中经常会出现 label过长被盖住的情况

ant design vue 组件中经常会出现 label过长被盖住的情况,我还特地找了解决方法:当过长时让他换行显示,还写了一篇博客记录,今天同样是写代码,但并没有做特殊的设置,结果却出乎意料的正常,过长自…

2023美赛A题:收干旱影响的植物群落(MCM)思路Python代码

赛题目的:分析干旱程度与植物群落中物种数量的关系赛题解读&解题思路链接: (1)这道题的难点是寻找数据,如果能找到干旱程度的适应性代表的指标以及对应植物群落物种的数量,那这道题基本上是迎刃而解,只需要简单去搭建一个预测模型即可仿真 (2)目标是对马萨马拉这个…

基于dll注入 读取任务管理器中指定进程的详细信息

关键字 注入dll,遍历ListView 技术调研背景 QA测试程序时,往往需要关注进程的性能指标,比如:CPU,GPU,内存,显存。最终根据各个采样数据,生成基于时间轴的状态表(类似任…

37.网络结构与模型压缩、加速-4

37.1 减少网络碎片化程度(分支数量) 模型中分支数量越少,模型速度越快 此结论主要是由实验结果所得。 以下为网络分支数和各分支包含的卷积数目对神经网络速度的影响。 实验中使用的基本网络结构,分别将它们重复10次,然后进行实验。实验结果如下: 由实验结果可知,随着网络…

【JVM与性能调优】JVM常用指令之Javap详解

一、JavaP 命令是什么? JavaP 命令是 Java 语言的一种工具 ,Java中一种反汇编器! 二、JavaP 命令的作用 帮助开发者深入了解 Java 编译器的机制显示字节代码含义显示编译类文件中的可访问功能和数据查看Java类文件中类和接口的内部结构显示…