模拟集成电路设计系列博客——7.4.5 多比特Σ-Δ ADC

news/2024/10/5 14:35:55/文章来源:https://www.cnblogs.com/sasasatori/p/18269737

7.4.5 多比特Σ-Δ ADC

尽管1bit过采样ADC有着可以实现高线性度的优点,但其也有一些缺点。例如,动态范围小;1bit过采样ADC可能会由于反馈中的高度非线性出现不稳定;还有闲音(idle tones)的问题,即当输入信号接近直流或者是一个幅值为很小的正弦波时,在输出端就会产生一个很明显的tone。使用多比特DAC可以优化缺点,但是必须通过精心设计来确保多比特ADC保持线性。一个典型的多比特过采样ADC系统与1bit的系统架构类似,主要是在调制器中会使用一个M bit的量化器,且其输出会驱动一个M bit的DAC。这一节会讨论一些多比特过采样ADC的架构,以及一些让整体系统保持高度线性的方法。

一种在过采样ADC里使用多比特DAC的方法是使用一个修正循环,其中数字电路用于建模DAC的静态非线性,如下图所示[Larson, 1988]:

image

通过这种方式,多比特数字信号\(x_2(n)\)\(x_1(n)\)处产生\(2^N\)个输出电平,在时间上一致,但是并不一定与\(x_2(n)\)呈线性。但是调制器的反馈回路强制使得\(x_1(n)\)的带内频率非常接近等于\(u(n)\),因此\(x_1(n)\)仍然与\(u(n)\)呈现线性相关。通过使用数字数字修正电路,如果其非线性与DAC相同,信号\(y(n)\)也会与\(x_1(n)\)相同。为了实现数字修正电路,一个\(2^N\)个字的查找表RAM被使用,其尺寸至少与想要实现的线性度相等。例如,如果使用了一个4 bi DAC,并且需要18 bit的线性度,那么数字修正电路需要由一个16字RAM组成,每个字需要至少有18 bit(或者等效的说288 bit的RAM)。更进一步的,RAM的尺寸可以通过仅仅将所需要的线性度和DAC的预期线性度之差进行数字化来减小[Sarhang-Nejad, 1993]。例如,如果DAC预期有至少9 bit的线性度,那么RAM仅仅需要有10 bit的字长来实现18 bit的整体线性度。

数字修正电路的校准可以通过将\(\Delta \Sigma\)调制器重配置为一个单比特系统来实现。1 bit转换器的输入是要校准的4 bit DAC电平之一。换而言之,当其输出被施加在1 bit AD调制器时,多比特转换器在多个时钟周期内保持固定。这使得1 bit信号被数字低通滤波,并且能够给出DAC特定直流值的所需要的数字等效值。这个过程被重复16次直到找到RAM的16个字。

另一种非常有趣的架构是同时使用多比特反馈和单比特反馈[Hairapetian, 1994]。下图展示了一个三阶ADC的例子:

image

假定1 bit ADC和5 bit ADC的量化误差分别为\(Q_1\)\(Q_5\),而5 bit DAC由于非线性注入的误差为\(Q_d\)。对上图中的系统做线性分析:

\[U_s(z)=U(z)z^{-1}+Q_1(z)\frac{(1-z^{-1})^2}{1-0.5z^{-1}}-Q_5(z)\frac{z^{-1}(1-z^{-1})^{-2}}{1-0.5z^{-1}}- \\Q_{d}(z)\frac{z^{-1}(1-z^{-1})^{-2}}{1-0.5z^{-1}} \tag{7.4.34} \]

在数字信号处理之后,数字输出信号\(Y(z)\)为:

\[Y(z)=U(z)z^{-1}+2Q_5(z)(1-z^{-1})^3-2Q_d(z)z^{-1}(1-z^{-1})^2 \tag{7.4.35} \]

可以看出,基于理想积分器的假设,1 bit ADC的量化噪声可以完全消除,5 bit ADC的量化噪声收到了三阶的噪声整形,而5 bit DAC的非线性噪声收到二阶整形。当然,如果积分器不理想,那么1 bit ADC的量化噪声无法被完全取消,但是仍然会收到二阶噪声整形。可以看到这个系统的稳定性类似于二阶\(\Sigma\Delta\) ADC。需要注意的是数字信号处理不需要任何乘法,但是多比特信号必须跟随抽取器处理,导致其实现变得复杂。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java逐层解析JSON:揭秘流式解析器的魅力与实战

哈喽,大家好,我是木头左!一、深度理解JSON和流式解析 在Java的世界里,处理JSON数据是一项常规且重要的任务。随着Web服务和移动应用的兴起,JSON作为一种轻量级的数据交换格式,其简洁和易用性使其成为前后端交互的首选。但当遇到大型复杂的JSON数据时,传统的解析方法可能…

Java逐层解析JSON:揭秘流式解析器的工作原理与魅力

哈喽,大家好,我是木头左!一、深入了解JSON和Java的亲密关系 在当今数据交换的世界里,JSON(JavaScript Object Notation)已经成为了事实上的标准。它以其简洁明了的格式和跨平台的特性,成为了前后端通信的首选协议。而Java作为一门强大的通用编程语言,其在处理JSON数据时…

历史与未来的交响曲:历史建筑保护与现代技术的完美融合

在时间的长河中,历史建筑如同凝固的诗篇,记录着过往的辉煌与沧桑。然而,岁月的侵蚀、自然灾害的威胁以及现代化进程的冲击,使这些宝贵的文化遗产面临前所未有的挑战。作为建筑设计领域的探索者,我们肩负着保护历史记忆、传承文化血脉的重任。今天,让我们一同探讨如何借助…

一码胜千言,博园Polo衫,上架预售啦

在5月30日博客园T恤上架后,考虑到有些园友上班不能穿T恤,我们将周边下一站锁定在 polo 衫。 锁定容易设计难,polo 衫容不得半点复杂的设计,我们没有想到更好的创意,于是偷懒地沿用T恤的设计,去掉「废话少说」(TALK IS CHEAP),删掉「放码过来」(Show me the code.),只留…

Go语言编译时为exe添加图标和属性信息的方法

在使用Go语言开发应用程序时,有个非常方便的地方就是编译得到的可执行文件可以不依赖任何动态链接库、并且不需要任何运行环境即可运行,本文给大家介绍Go编译时为exe添加图标和属性信息的方法,需要的朋友可以参考下1,安装go-winres命令2,创建配置模板3,修改配置(1) 图标指定…

[AFCTF 2021]google authenticator google验证生成 redis提权

今天学习几个知识点。进入页面发现登录框,扫目录没发现有用东西,弱口令没用,那就是sql注入,试试看。万能登录试试发现回显有东西。进入去看看。发现了个这个东西,去搜搜看。找到可利用的东西,且给出了用法,但是我们不知道secret,去数据库里看看。报错注入发现users表,…

配置h5py、netCDF4库的方法:Anaconda环境

本文介绍基于Anaconda环境,下载并安装Python中h5py与netCDF4这两个模块的方法~本文介绍基于Anaconda环境,下载并安装Python中h5py与netCDF4这两个模块的方法。在Python语言中,h5py与netCDF4这两个模块是与遥感图像处理、地学分析等GIS操作与算法等研究息息相关的模块,应用较…

Aloha Mobile 移动机器人机器学习套件

Mobile Robotic Machine Learning Kit 移动机器人机器学习套件Upgraded Grippers, Haptics, and Joint 升级的夹持器、力反馈和关节 New all-metal gripper linkages for long-term reliabilityCompression-proof bearings with no risk of overtightening or wearing out …

QDU-OJ python升级后不能正确编译的问题

报错情况修改编译选项 docker exec -it oj-backend shpython3 manage.py shellfrom options.options import * print(SysOptions.languages)这是系统使用的语言和编译器信息和编译选项,是 judge/languages.py 的拷贝(参见judgerServer),如果只修改 py 文件,是不会生效的。需…

slab分配器(深入理解linux内核)

引子 前文介绍了使用为了解决外部碎片,使用Buddy System进行连续内存页面的分配,但对于使用内存的程序而言,Buddy System分配的内存粒度过大,假如我们需要动态申请一个内核结构体(占 20 字节),若仍然分配一页内存,这将严重浪费内存。那么该如何分配呢?slab 分配器专为…

由本签名控制的文档修订版次尚未被更改,但在其后,文档已被更改

原文链接:https://blog.csdn.net/weixin_45303938/article/details/108007791 签章后修改文档如果把一个有签过名的PDF文档进行修改,再验证时可能会有以上的提示:“由本签名控制的文档修订版次尚未被更改,但在其后,文档已被更改”。出现这种情况的原因来自于PDF文档独特的…

yolov5-v7.0 目录结构

一、一级目录下各文件功能模型架构(位于 /models): 如果希望改变YOLOv5的架构,需要修改通常位于 models 目录中的模型定义文件。这可能包括改变网络的深度和宽度,更改层类型或添加新层。 训练数据(位于 /data): 为了提高模型在特定任务上的表现,需要更新位于 data 目…