几个月前,作为暑期实习的一部分,我执行了 ADC 与 FPGA (Zynq-7000) 的接口。目标是从信号发生器获取模拟信号,将其馈送到 ADC 并将数字化输出呈现给 FPGA。FPGA 应该通过我们在 Vivado Suite 上编写的算法对数据执行 FFT。在波形查看器上成功获得幅度谱。
然后我们决定从数据中计算 SNR 和 SFDR 值。我计算 SFDR 的方法是记录第一奈奎斯特区的基频幅度值(不断波动,但波动不大)和下一个最高峰值(最高杂散)的值。这两个值的比率将为我提供 SFDR。
ADC 的输入是 200 kHz 正弦波。为了检查一致性,我们执行了三种不同大小的 FFT,2k-、8k- 和 32k-,并且在每次试验中,模拟信号的强度从 -60 dBm 变化到 0 dBm(步长为 10dBm)。SFDR 的值始终徘徊在 23 dBc 左右。
ADC 数据表中给出的 SFDR 值约为 80 到 90 dBc,但我们最终得到的值远小于该值 (23dBc)。
据我所知,在输入信号的强度和频率方面,计算数据表值的条件与我们的完全不同。
我想从这个平台上的专家那里澄清我的主要担忧是我的程序是否足够正确,或者至少值得赞赏?在我的方法中是否有任何我可能没有注意到的重大缺陷?我相信肯定有。之所以出现这种担忧,是因为每当我想到在简历中提到这个项目时,我都想知道考官是否会嘲笑我错过了一些基本的东西。当时没有学科专家可以指出我是否走在正确的道路上。