【ADC】噪声(1)噪声分类
概述
本文学习于TI 高精度实验室课程,总结 ADC 的噪声分类,并简要介绍量化噪声和热噪声。
文章目录
- 概述
- 一、ADC 中的噪声类型
- 二、量化噪声
- 三、热噪声
- 四、量化噪声与热噪声对比
一、ADC 中的噪声类型
ADC 固有噪声由两部分组成:第一部分是量化噪声,这实际上是由于需要将无限数量的可能模拟输入映射到有限数量的数字输出代码而产生的误差。该误差将平滑的正弦波输入转换为阶梯形输出,如下图所示。
第二种噪声是热噪声,它是由电导体的固有特性引起的。由于这种噪声不是模数转换过程的产物,因此即使没有输入信号,它仍然是存在的。上图右侧显示了 ADC 的输入短路至中间电源的情况。蓝色输出信号是时域热噪声信号。
二、量化噪声
所有 ADC 中都存在这两种类型的噪声,但通常其中一种噪声占主导地位,具体取决于 ADC 的分辨率。下图是 ADC 的理想传递函数。如果此处显示的图表上的绿线代表纯模拟信号,则红线代表量化输出,不受偏移或增益误差的影响。注意,此传递函数延伸到象限 1 和 3,假设 ADC 使用二进制补码编码格式。
如前所述,量化噪声源于将无限数量的模拟输入电压映射到有限数量的可用数字代码之一的过程。例如,假设这个 4 位 ADC 的满量程输入为 ±2.5 V,则输出代码 0100 可以对应 1.093 至 1.406V 之间的任何模拟输入电压。对于任何 ADC,这个步长称为最低有效位,LSB。1 LSB 的值是 ADC 理论上可以解析的最小信号,但实际限制通常使 ADC 无法真正解析到 1LSB 的水平。如屏幕上的公式所示,LSB 大小与 ADC 的参考电压成正比,与 ADC 的分辨率成反比。这种关系有助于解释为什么分辨率更高的 ADC 通常提供更好的噪声性能。更多可用代码会降低 LSB 大小,从而降低量化噪声。
下图显示的是绿色波形是通用正弦波输入。如果将上一张图片中的 4 位 ADC 传递函数应用于此正弦波,则输出将类似于右侧的量化结果。与 ADC 传递函数一样,红色显示的量化输出具有“阶梯”形状。每个阶梯代表一个 ADC 代码,每个代码与无限数量的可能模拟输入电压相关,这些电压受 ADC 的 LSB 大小限制。
从这些图中可以看出,量化输出不一定能很好地再现输入正弦波。由于我们在本例中使用的是 4 位 ADC,因此转换器没有足够的分辨率来精确复制输入信号。如前所述,更高分辨率的 ADC 会同时减小右侧图中“阶梯”的宽度和高度,从而产生更接近正弦波的量化输出。
下图显示的是组合图,红色量化输出叠加在绿色模拟正弦波输入上。此图下方是另一张图,绘制了模拟输入和量化输出之间的差异。此紫色图表表示组合图上每个点的量化噪声幅度,称为“锯齿”形误差。
如果放大 LSB 误差图的一部分,可以看到连续模拟输入和阶梯形输出之间的差异如何导致锯齿波形。注意,LSB 误差图在正负半个 LSB 之间变化。在一个 LSB 内,ADC 无法确定实际模拟输入电压的位置。直流信号也是如此,但没有频率分量,量化“噪声”实际上在 ADC 输出中表现为偏移误差,也称为量化误差。
三、热噪声
当量化直流信号(例如 2.5V)时,理想情况下期望没有量化误差,并输出单个代码,如下图顶部所示。然而,对于许多 ADC,即使没有信号,也能观察到噪声。例如,前文所述的热噪声框图将 ADC 的输入短路至中间电源。在这种情况下测量的噪声称为热噪声。与特定于模拟到数字或数字到模拟转换过程的量化噪声不同,由于电导体内电荷的随机运动,热噪声是所有电气元件所固有的。下图显示了热噪声在时域中的样子,以及 ADC 输出的可能分布代码。
热噪声很大程度上是 ADC 设计的结果,当 ADC 的 LSB 大小较小时,可以观察到热噪声,这通常仅在高分辨率 ADC 中出现。对于低分辨率 ADC,时域噪声图看起来更类似于理想情况,即具有单个输出代码且几乎没有量化噪声。其次,ADC 中的热噪声被认为是除量化噪声之外的所有其他内部噪声源的组合。在系统级,包括放大器和电压基准在内的其他组件可能会影响测量到的热噪声。最后,热噪声频率是具有高斯分布的宽带,因此总 ADC 噪声性能应使用平方和根将量化和热噪声相加。
四、量化噪声与热噪声对比
在频域中,量化噪声和热噪声在整个频率范围内通常看起来是均匀的,如下图的功率与频率图所示。热噪声通常具有宽频谱,显示为蓝色频率图。量化噪声也是宽带的,这是因为之前看到的“锯齿”形波形的频谱很宽,混叠回 0 Hz 至采样频率一半的频率范围。虽然热噪声显示低于量化噪声水平,但情况并非总是如此。对于许多 ADC,热噪声的幅度大于量化噪声。对于其他 ADC,热噪声和量化噪声可能大致相等。ADC 的分辨率通常决定了不同噪声水平的幅度。对于这个特定的频率图,可以得出结论这是一个低分辨率 ADC,因为量化噪声占主导地位。在这种情况下,与热噪声相比,ADC 具有相对较大的 LSB 大小。
另一方面,如果观察高分辨率 ADC 中的噪声水平,会看到量化噪声水平低于热噪声水平,如图所示。量化噪声水平较低是由于高分辨率 ADC 中的 LSB 大小要小得多。例如,使用5 伏参考电压且无增益的 24 位 delta-sigma ADC 的 LSB 大小小于 300 nV,远低于 ADC的热噪声水平。
ADC 的分辨率通常决定哪种类型的噪声占主导地位。对于较低分辨率的 ADC,LSB 大小较大,导致量化噪声水平高于热噪声水平,如下图左侧所示。相反,在较高分辨率的 ADC 中,我们可以观察到由于量化噪声水平相对较低而产生的热噪声,如右图所示。
热噪声是 ADC 的一个特性,用户无法改变。但是,由于量化噪声是 ADC 分辨率和参考电压的乘积,因此可以在此处进行更改以提高系统性能。例如,如果系统允许,可以在较低分辨率 ADC 中使用较小的参考电压来降低 LSB 大小和随后的量化噪声幅度,这可以降低 ADC 的总噪声。对于热噪声占主导地位的较高分辨率 ADC,实际上可以使用更大的参考电压来增加 ADC 的输入范围,同时确保将量化噪声水平保持在热噪声以下。假设其他系统没有变化,增加的参考电压可以实现更好的信噪比。
相关文章:

【ADC】噪声(1)噪声分类
概述 本文学习于TI 高精度实验室课程,总结 ADC 的噪声分类,并简要介绍量化噪声和热噪声。 文章目录 概述一、ADC 中的噪声类型二、量化噪声三、热噪声四、量化噪声与热噪声对比 一、ADC 中的噪声类型 ADC 固有噪声由两部分组成:第一部分是量…...

网络安全概述:从认知到实践
一、定义 网络安全,即致力于保护网络系统所涵盖的硬件、软件以及各类数据,切实保障其免遭破坏、泄露或者篡改等不良情形的发生。 二、重要性 个人层面:着重于守护个人隐私以及财产安全,为个人在网络世界中的各项活动提供坚实的保…...

Vue.js组件开发研究
摘要 随着前端技术的快速发展,Vue.js以其轻量级、高性能和组件化开发的优势,在前端开发领域占据了重要地位。本研究深入探讨了Vue.js组件开发的理论基础、开发方法以及实际应用。通过系统梳理Vue.js框架的核心特性、组件化思想及Vue.js组件的基本概念&am…...

OpenHarmony(鸿蒙南向开发)——轻量系统芯片移植案例(一)
往期知识点记录: 鸿蒙(HarmonyOS)应用层开发(北向)知识点汇总 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ 持续更新中…… 轻量带屏解决方案之恒玄芯片移植案例 本文章基于恒玄科技BES2600W…...

【Llamaindex RAG实践】
基础任务 (完成此任务即完成闯关) 任务要求:基于 LlamaIndex 构建自己的 RAG 知识库,寻找一个问题 A 在使用 LlamaIndex 之前InternLM2-Chat-1.8B模型不会回答,借助 LlamaIndex 后 InternLM2-Chat-1.8B 模型具备回答 A 的能力,截…...

[Linux]:线程(三)
✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:Linux学习 贝蒂的主页:Betty’s blog 1. POSIX 信号量 1.1 信号量的概念 为了解决多执行流访问临界区,…...

云原生(四十一) | 阿里云ECS服务器介绍
文章目录 阿里云ECS服务器介绍 一、云计算概述 二、什么是公有云 三、公有云优缺点 1、优点 2、缺点 四、公有云品牌 五、市场占有率 六、阿里云ECS概述 七、阿里云ECS特点 阿里云ECS服务器介绍 一、云计算概述 云计算是一种按使用量付费的模式,这种模式…...

qemu-system-aarch64开启user用户模式网络连接
一、问题 在使用qemu构建arm64的虚拟机时,虚拟机没有网络,桥接方式相对麻烦,我只是需要联网更新即可。与宿主机的通信我使用共享文件夹即可满足要求。 使用指令启动虚拟机时,网络部分的参数为 -net user,hostfwdtcp::10022-:22 …...

Android车载——VehicleHal初始化(Android 11)
1 概述 VehicleHal是AOSP中车辆服务相关的hal层服务。它主要定义了与汽车硬件交互的标准化接口和属性管理,是一个独立的进程。 2 进程启动 VehicleHal相关代码在源码树中的hardware/interfaces/automotive目录下 首先看下Android.bp文件: cc_binary …...

CTFshow 命令执行 web37-web40
目录 web37 方法一:php://input 方法二:data协议 web38 web39 web40 方法一:构造文件读取 方法二:构造数组rce web37 error_reporting(0); if(isset($_GET[c])){$c $_GET[c];if(!preg_match("/flag/i", $c)){incl…...

数据结构与算法篇((原/反/补)码 进制)
目录 讲解一:原/反/补)码 一、原码 二、反码 三、补码 四、有符号位整型 五、无符号位整型 六、Java中的整型 七、整数在底层存储形式 讲解二:进制 一、简介 二、常用的进制 十进制 二进制 八进制 十六进制 知识补充 三、进制转换 1. 二…...

Python画笔案例-077 绘制 颜色饱和度测试
1、绘制 颜色饱和度测试 通过 python 的turtle 库绘制 颜色饱和度测试,如下图: 2、实现代码 绘制 颜色饱和度测试,以下为实现代码: """饱和度渐变示例,本程序需要coloradd模块支持,请在cmd窗口,即命令提示符下输入pip install coloradd进行安装。本程序演…...

简历投递经验01
嵌入式简历制作指南与秋招求职建议 技术要求概览 在嵌入式领域求职时,技术能力是HR和面试官最关注的点之一。以下是一些关键技术点,以及它们在简历中的体现方式。 1. 编程语言与开发环境 掌握C/C语言。熟悉至少一种单片机或微处理器的开发环境。 2.…...

数据和算力共享
数据和算力共享 针对数字化应用实践中需要在不同的物理域和信息域中进行数据的访问交换以及共享计算等需求,本文分析了在数据平台、数据集成系统以及信息交换系统中存在的问题。 在基于联邦学习的基础上,提出一种跨域数据计算共享系统,能够同时共享数据和计算资源,并支持在线…...

SpringBoot 集成 Ehcache 实现本地缓存
目录 1、Ehcache 简介2、Ehcache 集群方式3、工作原理3.1、缓存写入3.2、缓存查找3.3、缓存过期和驱逐3.4、缓存持久化 4、入门案例 —— Ehcache 2.x 版本4.1、单独使用 Ehcache4.1.1、引入依赖4.1.2、配置 Ehcache4.1.2.1、XML 配置方式4.1.2.1.1、新建 ehcache.xml4.1.2.1.2…...

CSP-J 复赛真题 P9749 [CSP-J 2023] 公路
文章目录 前言[CSP-J 2023] 公路题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示 示例代码代码解析思考过程总结 总结 前言 在CSP-J 2023的复赛中,出现了一道引人注目的题目——“公路”。这道题目不仅考察了选手们对算法的理解和运用能力,…...

MeterSphere压测配置说明
在MeterSphere中,执行性能测试时的配置参数对测试结果有重要影响。以下是对MeterSphere压测配置中几个关键参数的解释: 执行方式:决定了测试的执行模式,例如可以按照持续时间或迭代次数来执行测试。 按持续时间:在这种…...

数据库软题6.1-关系模式-关系模式的各种键
关系模式的各种键 题1-由关系模式求候选键 1. 候选键唯一不冗余 对选项进行闭包运算,如果得到全部属性U,则为候选码 A:AC-ABC-ABCD B:AB-ABC-ABCD C:AE-ABE-ABCE -ABCDE-ABCDEH D:DE2. R的候选码可以从A1,A2,A3,A1A2,A1A3,A2A3,A1A2A3中选择ÿ…...

ulimit:资源限制
一、命令简介 ulimit 是一个用于资源管理的工具,对于确保系统资源的合理分配和安全使用至关重要。 使用场景: 系统管理:限制用户进程使用的资源,防止资源滥用,保证系统稳定。调试:调整核心文件大…...

解决Python使用Selenium 时遇到网页 <body> 划不动的问题
如果在使用 Selenium 时遇到网页的 <body> 划不动的问题,这通常是因为页面的滚动机制(例如,可能使用了一个具有固定高度的容器或自定义的滚动条)导致无法通过简单的 JavaScript 实现滚动。可以通过以下方法来解决该问题。 …...

pytorch版本和cuda版本不匹配问题
文章目录 🌕问题:Python11.8安装pytorch11.3失败🌕CUDA版本和pytorch版本的关系🌕安装Pytorch2.0.0🌙pip方法🌙cuda方法 🌕问题:Python11.8安装pytorch11.3失败 🌕CUDA版…...

Vue/组件的生命周期
这篇文章借鉴了coderwhy大佬的Vue生命周期 在Vue实例化或者创建组件的过程中 内部涉及到一系列复杂的阶段 每一个阶段的前后时机都可能对应一个钩子函数 以下是我根据coderwhy大佬文章对于每一个阶段的一些看法 1.过程一 首先实例化Vue或者组件 在实例化之前 会对应一个钩子函…...

【Nacos架构 原理】内核设计之Nacos寻址机制
文章目录 前提设计内部实现单机寻址文件寻址地址服务器寻址 前提 对于集群模式,集群内的每个Nacos成员都需要相互通信。因此这就带来一个问题,该以何种方式去管理集群内部的Nacos成员节点信息,即Nacos内部的寻址机制。 设计 要能够感知到节…...

入门案例:mybatis流程,核心,常见错误
入门案例:mybatis执行流程分析 说明: 1.第一步:是从核心配置文件mybatis-config.xml中构建SqlSessionFactory对象,由于核心配置文件mybatis-config.xml中关联了映射文件UserMapper.xml,所以在SqlSessionFactory中也存在映射文件的…...

C++ | Leetcode C++题解之第456题132模式
题目: 题解: class Solution { public:bool find132pattern(vector<int>& nums) {int n nums.size();vector<int> candidate_i {nums[0]};vector<int> candidate_j {nums[0]};for (int k 1; k < n; k) {auto it_i upper_…...

自然语言处理问答系统
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...

Python的几个高级特性
引言 Python是一种功能强大的编程语言,它简洁的语法和强大的库支持使其成为数据科学和机器学习领域的热门选择。在Python的高级特性中,生成器、迭代器、闭包、装饰器和内置高阶函数是实现高效、优雅代码的关键。本文将逐一介绍这些特性,并提…...

【颜色平衡树 / E】
题目 思路 DFS暴力 60分 代码 #include <bits/stdc.h> using namespace std; const int N 5010; const int M 5010; int h[N], e[M], ne[M], idx; int c[N], f; int ans; void add(int a, int b) // 添加一条边a->b {e[idx] b, ne[idx] h[a], h[a] idx ; } …...

滑动窗口--(中篇)
将X减到0的最小操作数 给你一个整数数组 nums 和一个整数 x 。每一次操作时,你应当移除数组 nums 最左边或最右边的元素,然后从 x 中减去该元素的值。请注意,需要 修改 数组以供接下来的操作使用。 如果可以将 x 恰好 减到 0 ,返…...

Java性能调优:实战技巧与最佳实践
引言 Java作为企业级应用开发的首选语言之一,其性能直接影响到系统的响应速度和用户体验。性能调优是一项复杂的工作,涉及多个层面的知识和技术。本文将通过具体的示例,探讨一些常见的性能调优技巧及最佳实践。 1. 了解你的应用程序 示例&…...