matlab建模sar adc,SAR ADC的系统级建模与仿真

徐韦佳,田俊杰,施琴

(中国人民解放军理工大学 理学院,江苏 南京 211101)

摘要:为了实现逐次逼近型模数转换器(Successive Approximation AnalogtoDigital Converter, SAR ADC),在MATLAB平台上使用Simulink 工具,建立SAR ADC的理想模型,主要包括数模转换器(DAC)、比较器、译码器和寄存器模块。理论分析时钟抖动、开关非线性、比较器失调、电容失配等非理想因素对系统性能的影响,在理想模型基础上添加非理想因素,进行MATLAB仿真,通过分析输出信号频谱的变化,总结降低非理想因素对系统性能影响的方法,对实际电路设计具有指导意义。

关键词:SAR ADC;MATLAB;非理想因素

中图分类号:TN432文献标识码:ADOI: 10.19358/j.issn.1674-7720.2017.08.007

引用格式:徐韦佳,田俊杰,施琴.SAR ADC的系统级建模与仿真[J].微型机与应用,2017,36(8):19-22,25.

0引言

模数转换器(AnalogtoDigital Converter, ADC)作为连接外界模拟信号和数字信号处理系统的桥梁,得到了广泛应用。在诸多不同结构的ADC中,逐次逼近型ADC(SAR ADC)具有中等精度、尺寸小、功耗低、成本低等优点,广泛应用在工业控制、消费电子、信号采集等场合。近年来,随着CMOS工艺特征尺寸的不断减小,SAR ADC的速度跟精度不断提高,功耗跟电源电压不断降低,如何从系统级设计角度减小各种非理想因素对SAR ADC性能的影响,优化SAR ADC的架构设计,已成为当前研究热点之一。

当前SAR ADC的发展趋势是高速、高精度和低功耗。然而,由于一些非理想因素的存在,会影响SAR ADC系统的性能。当SAR ADC趋于高速的时候,任何微小的时钟抖动都会影响模数转换的精度。电源电压不稳定会造成系统性能的不稳定。开关非线性、器件失配、比较器失调、噪声等会造成系统精度的下降和功耗的增加,这些都是影响SAR ADC系统性能的非理想因素。因此,要设计出高性能的SAR ADC,总结降低非理想因素对系统影响的方法,尤为关键。

当前国内有关SAR ADC的研究大多着重于具体电路设计细节,而在系统级设计和建模等顶层设计方面的关注比较少[1]。今后ADC的发展趋势是片上系统(System on Chip, SOC),这是一个集成了IP核、具有专用目标的集成电路,同时也是一项从确定系统功能开始,到软/硬件划分,最终完成设计的新技术。但是SoC也会带来新的噪声以及工艺相容性等新问题,这就需要设计者从系统级设计和建模中来验证后续电路设计的可行性和价值。

基于此,本文从系统级设计角度,使用Simulink工具构建理想模型,分析各种非理想因素对系统性能的影响,通过MATLAB工具仿真和对仿真结果的频谱分析,总结降低非理想因素影响的方法,得出在所能考虑到的因素范畴内的最优化架构设计。

1SAR ADC的工作原理和整体架构

图1是8位八选一多通道输入SAR ADC的电路结构示意图,包括多通道选择器、采样保持电路S/H和DAC组成的采样DAC网络、比较器、控制逻辑电路、移位寄存器和时钟电路。SAR ADC的工作原理基于二进制搜索算法。转换开始,在时钟信号作用下,首先控制逻辑电路将移位寄存器的上一级输出清零,并将最高位置1,输出结果D[0:7]被输入给采样DAC网络,转换为参考电压Vref,比较器将Vin和Vref进行比较,比较完成后,控制逻辑电路就将比较器的输出结果传递给移位寄存器,确定该位保持1还是清为0,同时将次高位置1,产生新的参考电压,进行下一位

  • 8
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
What is PJA Toolkit ? PJA (Pure Java AWT) Toolkit is a JavaTM library for drawing graphics developed by eTeks. It is 100% Pure Java and doesn't use any native graphics resource of the system on which the Java Virtual Machine runs. java.awt.Graphics methods such as drawLine (), fillOval (), drawString (),... are implemented in the default JVM with native graphical functions (except in some cases for Java2D) : That means that drawLine () finally calls a GDI system function on Windows or X11 function on a X11/UNIX machine even if the drawing is done in an off-screen image using the class java.awt.Image. This ensures the best performance for drawing graphics with Java. But in a few cases, this default behavior can cause problems that PJA Toolkit library improves : When no X11 Display is available on a UNIX machine (also called headless environment) or when GDI resources are low on Windows, it is impossible to compute off-screen images with java.awt.Graphics methods under a JDK version < 1.4, even if your program doesn't need to display these images. Typically, this situation happens for servlets returning dynamically generated images like pies, charts or web counters. With PJA Toolkit, you don't need to change your Java programs that you expected to run : setting java.awt system property to com.eteks.awt.PJAToolkit is the only required modification to your program with Java 1.1 (see the FAQ and com.eteks.awt.PJAToolkit class documentation for more information). It is also impossible to compute off-screen images when the Java security manager forbids access to any Toolkit or the AWT library. In that case you can although create an instance of com.eteks.awt.PJAImage class which extends java.awt.Image, and draw into it with graphics methods. Drawing with native function doesn't give always the exact same results for each pixel on all platforms. For example, SansSerif font renders differently on MacOS, Windows and other systems : each letter of this font isn't drawn the same, and is different if font anti-aliasing is set or not on the system. On MacOS, circles aren't rendered as specified in Java documentation : fillArc () and drawArc () don't use the same base ellipse... Finally, PJA Toolkit library is supplied under GNU General Public License with its Java source files, and is a good exemple for studying : How pixels are drawn by graphics functions on a computer (com.eteks.awt.PJAGraphics uses Bresenham algorithms to draw lines and circles). How to use the Java paradigm for managing images specified by the ImageConsumer/ImageProducer/ImageObserver interfaces. How Java Toolkit works and what it needs to work (which abstract classes and interfaces to implement). Sources are supplied to allow developers to improve and optimize the graphic drawing methods. com.eteks.awt package files are Java 1.0 to Java 1.4.2 compliant. PJA Toolkit library core classes weighs 140 Ko at run-time (can be reduced to 73 Ko if compressed).

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值