微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > RFIC设计学习交流 > 对计算adc的sndr,snr,thd的理解

对计算adc的sndr,snr,thd的理解

时间:10-02 整理:3721RD 点击:
小的最近做了一个adc,现在在做动态特性的仿真,sfdr,thd都可以从频谱中直接计算,好象sndr,snr不能直接计算,看了一些matlab的代码,有些函数不是特别理解,但根据自己的理解在计算adc的动态特性,结果感觉也比较正常,下面说一下我的理解,请高人指点一下,看我的这种理解是否合理.
 1.用cadence的计算器做dft,这里不乘以20db,得到一个频谱,通常的频谱是乘以20db的结果.
 2.把1得到的频谱的每个点用计算器里面的一个列表功能全列出来,然后用csv后缀进行保存,并把保存的结果从服务器导到自己用的终端上,在windows下csv后缀的文件会被转为excel格式.
 3.sndr的计算:在得到的excel里,把基波处的值设为0,对其他所有项求平方和,excel提供这个函数,然后用基波处那个值的平方除以前面得到的平方和,得到的结果再取10log10,就得到了sndr,通过sndr就可算得enob.
 4.snr的计算:和上面的第一个步骤相同,在得到的excel里面,把基波处的值设为0,同时把需要考虑的偕波值也设为0,剩下的可认为是量化噪声,然后把剩下的项求平方和,用基波处的值除以前面得到的平方和再乘以10log10就得到了snr.
5.thd的计算:把上一步那些需要考虑成谐波的量求平方和,设这个值为a,然后b=a+基波处值^2,thd=10log10(a/b).
这是我对这几个参数的计算方法,不知道是否有问题,请高人指点啊.

直接在MATLAB里面算吧。

dddddddddd

不好意思,你这里边说的把 每个点用计算器里面的一个列表功能全列出来,这个怎么实现,用哪个function?

不好意思,你这里边说的把 每个点用计算器里面的一个列表功能全列出来,这个怎么实现,用哪个function?

LZ,请问你用来做DFT的数据是什么?是对哪个信号做的DFT呢?这个信号是怎么得到的呢?谢谢拉!
如果你有相应的matlab代码,期望分享一下,进来我也一直在研究怎么获得ADC的SNR特性(当然是不通datasheet)。
希望共同探讨,一起进步。谢谢!

用matlab计算SQNR的代码我有,但是计算SFDR、THD的代码不知能不能传给我一份,谢谢。hustlsc@gmail.com

各位大神,想请问一下频谱分析后,到底是以20lg(A)计算还是10lg(A)计算啊?

10lgA,电压电流用20,涉及到功率用10

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top