news 2026/4/7 6:12:58

RFSOC学习记录(六)混频模式分析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RFSOC学习记录(六)混频模式分析

混频

混频器(Mixer)是RFSOC通过ip核实现在数字域的频率搬移,主要功能是在不改变采样率的情况下,把信号的频谱中心移动到目标频率附近

他主要通过一个数控振荡器,生成复指数信号与本振信号相乘,在ip核设置的过程中主要由三个模式

BYPASS

这个又叫直通模式,即不进行任何数字混频,基带信号直接通过ADC/DAC进行输入输出,NCO和Mixer全部旁路

我们接下来都以DAC为例,假如外接频谱仪,则我们看到的信号频率就是你在PL端设计的信号频率,可能是用dds或者rom等形式输出,输出信号的频率分布直接受采样定理限制,且不涉及IQ处理,一般使用实信号或者单边带信号。

在使用DAC生成低频信号或者ADC直采低频基带的时候可以选择这个模式

COARSE

通过简单的乘法器实现频谱翻转,但是只有±Fs/2、±Fs/4、0这三种选项,不是用可编程的正弦表,而是通过硬件乘以±1,±j来实现频率的平移

他的优点是硬件代价小,延迟很低速度快,精度固定

FINE

精混频也是我们使用的最多的一种,他通过高分辨率的NCO实现任意频率的精确搬移,NCO的精度通常在48bit-64bit

NCO

通过可调的相位累加器(phase accumulator)产生离散时间的正余弦信号,是纯数字域产生的信号,频率和相位都可以编程控制,在ip核里表示就是直接输入值就可以了,可以实现极高 的频率分辨率(<1Hz), 且频率、相位变化时没有跳变或者漂移,可以与SYSREF信号实现跨通道的相位对齐,其输出的频率公式是

f_{out} = \frac{phase_inc}{2^{N}}f_{clk}

在精混频的模式下,每个通道都有独立的NCO,频率范围在±Fs/2,NCO也可以设置负频率,可以控制初始相位和配置增益,也可以支持通过SYSREF触发NCO更新,在IQ混频模式下

x_{out}[n]=x_{in}[n]e^{j(2\pi f_{NCO}n/f_{s}+\phi )}

x_{out}[n]=x_{in}[n][cos(2\pi f_{NCO}n/f_{s}+\phi )+jsin(2\pi f_{NCO}n/f_{s}+\phi )]

在DAC上变频里用于把基带搬到中频或者射频,ADC下变频中则设置和对应DAC一样的NCO值用来把信号搬移回基带

Planner实例

我们使用Xilinx官方的频率规划器,用一个DAC 和ADC的例子来分别说明

先以dac为例,假设dac采样率2GSPS,基带中心频率500mhz,带宽50mhz,混频700mhz

image

那在数据输入的时候我们看到的就是500mhz的数据,经过混频之后得到了1200mhz的中心频率,带宽保持不变

image

但在这里最后一步我们可以看到在2800mhz左右出现了频率,那是因为原来在第二奈奎斯特区的信号(1.2GHz)在频谱上以fs进行展开,则折叠在第四奈奎斯特区信号频率为2fs-fc=4-1.2=2.8ghz

image

我们再以adc为例,假设ADC 采样率 fs=4 GSPS,基带信号中心频率100MHz,带宽 100 MHz,载波信号设置为2.5GHz,带宽100MHz,那混频之后的信号中心频率 fc=2.6 GHz,带宽 100 MHz

此信号位于 奈奎斯特第 2 区,经过 ADC 采样后理论上信号折叠到基带的 1.4~1.5 GHz 区间,然后使用 Fine Mixer NCO = -1.4 GHz,即可将信号数字下变频到 0~100 MHz

我们看一下效果

image

设置完成之后发现信号的频谱确实出现在1.45GHz-1.55GHz的位置,那我们下变频只需要把NCO设置为-1.4GHz就可以了

image

我们可以看到这边出现了两个频率分量,那是因为我们可以看到在QMC的时候下面有一个real的标志,我们信号乘以实信号的时候会出现和频和差频两路信号,即

x(t)cos(2\pi f_{NCO}t) = \frac{1}{2}x(t)e^{j2\pi f_{NCO}t}+\frac{1}{2}x(t)e^{-j2\pi f_{NCO}t}

会发现出现了0GHz和2.9GHz的频率分量,但是2.9GHz会在采样域里再折叠回4-2.9=1.1GHz,就是我们在这看到的

image

但是当我们继续下一步数据路径变成复数IQ的时候,数字下变频只留下了单边带,就只剩下了最终我们需要的信号

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/3 5:26:15

K8s注解的指令模式:元数据如何控制集群行为

引言在K8s集群中&#xff0c;我们常常关注Pod、Service、Deployment等资源对象的规范定义&#xff0c;但很多人忽略了元数据部分的重要性。事实上&#xff0c;K8s的注解功能远不止是简单的"备注"或"注释"&#xff0c;它们可以被集群中的各种控制器解析为具…

作者头像 李华
网站建设 2026/4/1 14:32:52

ASP.NET Core Blazor简介和快速入门三(布局和路由)

、创建和应用Blazor 布局网站应用往往有许多公共的视图部分&#xff0c;比如顶部导航nav,底部的footer&#xff0c;管理系统的左边的menu菜单等等。Layout可以轻松实现以上的效果。Blazor 布局是一个 Razor 组件&#xff0c;它与引用该布局的组件共享标记。 布局可以使用数据绑…

作者头像 李华
网站建设 2026/4/1 12:19:48

AI大模型零基础入门:Transformer、BERT与微调技术详解

本文是AI大模型的全面学习指南&#xff0c;系统介绍了Transformer架构核心知识&#xff08;如Self-Attention机制、LayerNorm与BN的区别、位置编码等&#xff09;&#xff0c;解析了BERT模型特性与原理&#xff0c;详细讲解了注意力机制计算与优化方法&#xff0c;以及大模型训…

作者头像 李华
网站建设 2026/3/31 23:48:51

Java毕设项目:基于springboot的影院购票管理系统的设计与实现(源码+文档,讲解、调试运行,定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华