请教诸位连续时间sigma-delta modulator的仿真结果
我试了精度设置成conservertive,步长10ps,并且去除了前20%的点,还是有同样问题。困惑中。。。
建议确认一下从7us到164.538us采4096个点是不是相当于26MHz的采样。
Cadence如果是把7us当做第一个点,你要采4096个点应该从7us采到7+4095/26M。
另外,计算SNR应该把噪底积分啊,你这量的是信号和噪声密度的比值。
谢谢回复,我去试一试你的建议。
PS:在这里说SNR是简略说法,实际是要对噪底积分的。
我按照你的建议试了一下,做的fft都形状不对了,看来还是应该从7u+4096/26M来做fft,还有好的建议没?
看你贴出来的fft,是从1us到158.538us;另一个2us到159.538us。不是你说的从6us和7us开始啊
你说的对!不过6us,7us开始作fft的现象和1us,2us开始做fft的现象相同,都是一个有80多dB,一个只有60多dB。有啥好建议没?
把data存下来 用matlab 试试? 看看现象一样不
你在matlab behavioral model里面同样input frequency,出来的频谱是什么样的?噪底在多少dB?看输出两个fft,噪底差了20dB,挺费解的
如果方便,能把时域的数据发上来吗?
这种现象我以前也遇到过,还是用理性模型跑的,低频的那段直接是直的,像是仿真器问题。你这个低频部分看起来也像是直的。能贴个对数坐标的吗?那样低频能看到的更详细。
这是我多年以前自己搭着SigmaDelt玩的时候发现的这个问题,好像就是仿真器直接把低频的精度降低了,不记得后来怎么解决的了。你可以换个波形查看器看看。
我试了一下,在某些起始点也遇到一样的情况。我觉得应该是cadence的dft在计算的时候有问题,有的时候平带加窗就对了,有的时候连noise shaping都不对了,换个起始点看起来频谱又对了。同样数据,重新采样后无论从哪个起始点开始算,用matlab都是一致的。
不过平带现象matlab里面也会遇到,加窗就没问题了。cadense的dft算得时候假设起始时间和终止时间的信号值相等,不等就出现频谱泄漏,一般加窗能解决。
我觉得比较怪异的是,有的起始点出来的noise shaping都不大对劲。
因为我一般都是把cadence的输出导入到matlab里面,所以从来没有遇到过这种现象。我觉得还是尽量自己来吧,像算dft这种,matlab写好程序分分钟的事;cadence给你一个dft的黑盒子,你也不知道内部是如何处理的。