当前位置: 首页 > news >正文

通过时间交织技术扩展ADC采样速率的简要原理

 前言

数据采集是将自然界中存在的模拟信号通过模数转换器(ADC)转换成数字信号,再对该数字信号进行相应的接收和处理。数据采集系统作为数据采集的手段,在移动通信、图向采集、无线电等领域有重要作用。随着电子信息技术的飞速发展,电信号呈现出高度复杂化的变化趋势,高频、瞬态信号的捕获、分析需要跟高带宽、更高采样率的数据采集系统。提升数据采集系统前端ADC的性能和利用并行采样方法的系统架构是提高采集系统性能的2个有效途径。


一、非线性混叠

采样过程通过时间离散的脉冲采集输入信号特定时刻的幅度,脉冲频率即为采样时钟速率,根据采样定理,采样后的数字域仅能够看到二分之一采样速率的频谱。理想情况下模拟域整个频谱都会由于采样过程造成的周期性延拓混叠进入这个数字谱。在链路设计中,进入采样器前通常都需要足够抑制度的模拟滤波以实现抗混叠,但采样器本身及其调理电路存在非线性,会产生多次谐波和交调,这些产物最终也会呈现在数字谱范围内。

比如采样速率2GHz的采样器,输入频率800MHz,考虑基波到5次谐波频率依次为[0.7,1.4,2.1,2.8,3.5],通过下面的程序能够计算得到混叠到数字谱对应出现的频率。


clear all; close all; clc; format compact;
Fs = 2; % 采样速率
f1 = 0.7; % 射频频率
Fs_index = [-5:1:5]*Fs;
fspurs = [1, 2, 3, 4, 5]*f1; % 射频信号谐波
f_overlap = zeros(1, length(fspurs));
for n = 1:length(fspurs)
temp = Fs_index-fspurs(n);
for k = 1:length(temp)
if abs(temp(k))<Fs/2
f_overlap(n) = abs(temp(k));
end
end
end
f_overlap

计算输出得到的频率为[0.7,0.6,0.1,0.8,0.5]GHz。进一步通过仿真来查看该混频器混叠效应。仿真速率为32GHz,16倍抽取仿真采样,引入幂级数模拟非线性,采样点数为2^16,采样前仿真得到的频谱如图1所示。

图1 包含5次谐波单音信号的采样前频谱

通过采样后得到的频谱如图2所示。数字基带谱带宽1GHz,基波、二次、三次、四次、五次谐波分别出现在[0.7,0.6,0.1,0.8,0.5]GHz频率处。

图2 包含5次谐波单音信号采样后的混叠频谱

二、通过时间交织技术扩展带宽

时间交织是一种将多颗ADC芯片并联的技术,对N颗子ADC芯片并行交替采样,从而使得整个系统的采样率N倍提高。每个子ADC具有相同的采样速率,但N个子ADC采样时钟时序间隔相差1/(Fs×N),每次采集到的数据不重合,最后通过逻辑电路再次依次把N个子ADC的数据按顺序整合,理想情况下这种频接的N个ADC就能够实现Fs×N的采样速率。

交织采样时钟的硬件实现方案一般有2种:一种方案提出直接通过时钟芯片自身的延时功能,依次产生4路相位差相同的采样时钟;另一种方案为在4路子ADC前加入定制数字电路,控制数据选通,使得4路子通道的时钟依次对ADC进行采样。

仿真实现延续前面文章中采用抽取实现采样的方法,采用4相TI-ADC进行采样,可将采样速率又2GHz扩展为8GHz,四路脉冲抽取分别在下列采样点进行,

1..17...33...49...

5..21...37...53...

9..25...41...57...

13..29...45...61...

最终重新组合等效为在下述时间点进行抽取。仿真结果如图3所示。

1...5...9...13...17...21...25...29...33...37...41...45...49...53...57...61

图3 4相TI-ADC的采样频谱

由于扩展了采样速率,谐波没有混叠而是以原来的频率出现在数字谱中。

实际ADC为了抑制偶次谐波采用差分输入输出,因此理论上最差的谐波通常是三次,此外上述仅仅是理想情况的TI-ADC,实际由于并行ADC的不一致以及采样时间偏差,会导致较多杂散项。


总结

采样速率提高到一定程度就会难以进一步提高,更高速率的采样器通常都会选择时间交织频接技术进行采样速率扩展,本文通过简要仿真说明了理想TI-ADC的原理。

参考文献:12GSa/s12bit超宽带数据采集系统研究 电子与封装 2022.11

相关文章:

通过时间交织技术扩展ADC采样速率的简要原理

前言 数据采集是将自然界中存在的模拟信号通过模数转换器&#xff08;ADC&#xff09;转换成数字信号&#xff0c;再对该数字信号进行相应的接收和处理。数据采集系统作为数据采集的手段&#xff0c;在移动通信、图向采集、无线电等领域有重要作用。随着电子信息技术的飞速发展…...

FluxMQ—2.0.8版本更新内容

FluxMQ—2.0.8版本更新内容 前言 FLuxMQ是一款基于java开发&#xff0c;支持无限设备连接的云原生分布式物联网接入平台。FluxMQ基于Netty开发&#xff0c;底层采用Reactor3反应堆模型&#xff0c;具备低延迟&#xff0c;高吞吐量&#xff0c;千万、亿级别设备连接&#xff1…...

计算机寄存器是如何实现的

冯诺依曼体系 冯诺依曼体系为现代计算机的设计和发展奠定了基础&#xff0c;它的核心思想和原则在当今计算机体系结构中仍然被广泛采用和应用。所以只要谈论计算机的组成就离不开冯诺依曼体系 作为核心组成部分的CPU除了由运算器和控制器组成之外&#xff0c;还有一些寄存器…...

两数之和 三数之和 哈希方法

两数之和 package com; import java.util.*; public class Test5 { //两数之和 public static void main(String[] args) { int[] arr {1,2,3,4,5,6,7,94,42,35}; int target99; Arrays.sort(arr);//快速排序 for(int i0;i<arr.length;i) { int wtarget-arr[i]; int indexA…...

Object Detection in 20 Years: A Survey(2019.5)

文章目录 Abstract1. Introduction1.1. Difference from other related reviews1.2. Difficulties and Challenges in Object Detection 2. OBJECT DETECTION IN 20 YEARS2.1. 目标检测路线图2.1.1. 里程碑:传统探测器&#xff08;粗略了解&#xff09;2.1.2. 里程碑:基于CNN的…...

Springboot 设置时区与日期格式

1.配置文件修改&#xff08;范围修改&#xff09; spring:jackson:# 东8 北京时区time-zone: GMT8# 日期格式date-format: yyyy-MM-dd HH:mm:ss 2.Java代码修改&#xff08;范围修改&#xff09; 2.1 时区 import org.springframework.context.annotation.Bean; import org.…...

从零开始学Go web——第一天

文章目录 从零开始学Go web——第一天一、Go与web应用简介1.1 Go的可扩展性1.2 Go的模块化1.3 Go的可维护1.4 Go的高性能 二、web应用2.1 工作原理2.2 各个组成部分2.2.1 处理器2.2.2 模板引擎 三、HTTP简介四、HTTP请求4.1 请求的文本数据4.2 请求方法4.2.1 请求方法类型4.2.2…...

6.Eclipse里下载Subclipse插件

方法一&#xff1a;从Eclipse Marketplace里面下载 具体操作&#xff1a;打开Eclipse --> Help --> Eclipse Marketplace --> 在Find中输入subclipse搜索 --> 找到subclipse点击install 方法二&#xff1a;从Install New Software里下载 具体操作&#xff1a;打开…...

家用洗地机哪个品牌最好最实用?热门洗地机测评

随着社会的不断进步&#xff0c;我们逐渐意识到日常生活中的许多任务需要消耗大量的时间和体力。一个典型的例子是卫生清洁工作&#xff0c;尤其是在大面积地区&#xff0c;如大型建筑物、商场或工厂。这些任务不仅繁琐&#xff0c;还可能影响生活质量和工作效率。为了应对这一…...

【C语言:自定义类型(结构体、位段、共用体、枚举)】

文章目录 1.结构体1.1什么是结构体1.2结构体类型声明1.3结构体变量的定义和初始化1.4结构体的访问 2.结构体对齐2.1如何对齐2.2为什么存在内存对齐&#xff1f; 3.结构体实现位段3.1什么是位段3.2位段的内存分配3.3位段的跨平台问题3.4位段的应用3.5位段使用注意事项 4.联合体4…...

【1day】华天软件 OAworkFlowService接口SQL注入漏洞学习

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现...

Oracle(2-11)RMAN Backups

文章目录 一、基础知识1、RMAN Backup Concepts RMAN备份概念2、RMAN Backup Modes RMAN备份的类型3、Backup File Types 备份文件类型4、RMAN Backup Destinations RMAN备份目标5、Backup Constraints 备份约束6、Recovery Manager Backups 恢复管理器备份7、Characteristics …...

使用docker搭建『Gitea』私有仓库

文章目录 一、安装 docker 环境1、移除以前的 docker 相关包2、配置yum源3、安装 docker4、启动 docker 二、安装 docker compose1、安装docker compose2、赋予下载的docker-compose执行权限 三、安装 gitea1. 创建工作目录2. 创建 Docker Compose 文件3. 启动 Gitea4. 访问 Gi…...

CopyOnWriteArrayList怎么用

什么是CopyOnWriteArrayListCopyOnWriteArrayList常用方法CopyOnWriteArrayList源码详解CopyOnWriteArrayList使用注意点CopyOnWriteArrayList存在的性能问题CopyOnWriteArrayList 使用实例基本应用实例并发应用实例 拓展写时复制 什么是CopyOnWriteArrayList CopyOnWriteArra…...

旋转设备状态监测与预测性维护:提高设备可靠性的关键

在工业领域的各个行业中&#xff0c;旋转设备都扮演着重要的角色。为了确保设备的可靠运行和预防潜在的故障&#xff0c;旋转设备状态监测及预测性维护变得至关重要。本文将介绍一些常见的旋转设备状态监测方法&#xff0c;并探讨如何利用这些方法来实施预测性维护&#xff0c;…...

类和对象——(7)this指针

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 人生就像骑单车&#xff0c;想保持平衡…...

回溯算法题型分类

题型一&#xff1a;排列、组合、子集相关问题 提示&#xff1a;这部分练习可以帮助我们熟悉「回溯算法」的一些概念和通用的解题思路。解题的步骤是&#xff1a;先画图&#xff0c;再编码。去思考可以剪枝的条件&#xff0c; 为什么有的时候用 used 数组&#xff0c;有的时候设…...

ApplicationRunner 类

优质博文&#xff1a;IT-BLOG-CN 在开发中可能会有这样的情景。需要在容器启动的时候执行一些内容。比如读取配置文件&#xff0c;数据库连接之类的。SpringBoot给我们提供了两个接口来帮助我们实现这种需求。这两个接口分别为CommandLineRunner和ApplicationRunner。他们的执…...

QT中的 容器(container)-大全

一、介绍 Qt库提供了一套通用的基于模板的容器类&#xff0c;可以用这些类存储指定类型的项。比如&#xff0c;你需要一个大小可变的QString的数组&#xff0c;则使用QVector<QString>。 这些容器类比STL&#xff08;C标准模板库&#xff09;容器设计得更轻量、更安全并…...

Docker配置镜像加速器

Ubuntu 安装&#xff0f;升级Docker客户端 推荐安装1.10.0以上版本的Docker客户端&#xff0c;参考文档docker-ce配置镜像加速器 针对Docker客户端版本大于 1.10.0 的用户 您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器 sudo mkdir -p /etc/docker sudo t…...

从OBS源码看WASAPI实战:Windows音频采集的‘静音循环’修复与高精度时间戳处理

从OBS源码剖析WASAPI音频采集&#xff1a;静音循环修复与高精度时间戳的工程实践 在直播软件OBS的音频处理模块中&#xff0c;WASAPI接口的高效运用直接决定了音画同步质量与系统资源占用率。本文将深入OBS源码&#xff0c;揭示其解决Windows音频采集两大核心难题的技术方案&am…...

每天20分钟值不值?淘宝任务自动化的取舍之道

每天20分钟值不值&#xff1f;淘宝任务自动化的取舍之道 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本&#xff0c;包含蚂蚁森林收取能量&#xff0c;芭芭农场全任务&#xff0c;解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinbi 在数字生活时代…...

告别重复造轮子:用快马一键生成模块化cnn开发模板提升效率

最近在做一个图像分类项目时&#xff0c;发现每次从头搭建CNN模型都要重复写大量模板代码&#xff0c;从数据加载到训练循环&#xff0c;很多环节都是固定套路。经过几次折腾后&#xff0c;终于摸索出一套高效开发方法&#xff0c;今天分享如何用模块化思维提升CNN开发效率。 数…...

GitOps实战:用ArgoCD监控GitLab仓库,实现K8s部署的“无人值守”与一键回滚

GitOps实战&#xff1a;ArgoCD与GitLab深度整合的自动化部署与回滚策略 1. GitOps核心价值&#xff1a;从理论到实践 在云原生技术快速发展的今天&#xff0c;GitOps已成为现代DevOps实践中不可或缺的一环。与传统CI/CD流程相比&#xff0c;GitOps将Git仓库作为唯一可信源&…...

SeqGPT-560M开源可部署安全实践:SELinux策略配置与容器最小权限原则

SeqGPT-560M开源可部署安全实践&#xff1a;SELinux策略配置与容器最小权限原则 1. 引言&#xff1a;为什么企业级AI部署必须关注安全&#xff1f; 当你把像SeqGPT-560M这样强大的智能信息抽取系统部署到生产环境时&#xff0c;兴奋之余&#xff0c;一个严肃的问题必须摆在首…...

MIKE21不同下垫面添加随时空变化净雨过程线

近期很多文章都是关于市政管网方向的&#xff0c;今天小编换个口味&#xff0c;对MIKE21中添加降雨边界文件有了一种新的制作形式。其实这种方法涉及到MIKE SHE一个小工具&#xff0c;不过确实很实用&#xff0c;就让小编给大家介绍下吧。第一步 下垫面转DFS2熟悉MIKE21的同学们…...

SAR成像CS算法实战:从原理到点目标仿真的MATLAB实现

1. CS算法在SAR成像中的核心价值 第一次接触SAR成像处理时&#xff0c;我被CS&#xff08;Chirp Scaling&#xff09;算法的精妙设计震撼到了。这个算法就像一位经验丰富的魔术师&#xff0c;能够将雷达回波中的距离徙动&#xff08;RCMC&#xff09;和二次距离压缩&#xff08…...

别只背概念了!用这5个真实安全场景,带你重新理解CISSP核心模型(附实战案例)

别只背概念了&#xff01;用这5个真实安全场景&#xff0c;带你重新理解CISSP核心模型&#xff08;附实战案例&#xff09; 当安全团队复盘某跨国电商的数据泄露事件时&#xff0c;发现攻击者竟是通过供应链系统中的第三方插件漏洞&#xff0c;绕过了价值千万的防火墙体系。这个…...

小样本学习:OpenClaw+nanobot镜像快速领域适配方案

小样本学习&#xff1a;OpenClawnanobot镜像快速领域适配方案 1. 为什么需要小样本领域适配 作为一名长期关注AI落地的开发者&#xff0c;我经常遇到这样的困境&#xff1a;通用大模型在垂直领域表现不佳&#xff0c;而从头训练专业模型又需要海量标注数据。直到发现OpenClaw…...

深耕.NET开发三载,我靠技术实力买下人生第一套房

作为一名深耕.NET领域的开发者&#xff0c;从刚毕业敲下第一行C#代码的青涩&#xff0c;到如今拿到属于自己的房产证&#xff0c;这一路&#xff0c;是技术能力的层层进阶&#xff0c;是职业道路的稳步前行&#xff0c;更是用代码筑造起现实生活的温暖港湾。在很多人眼里&#…...