过采样插值DAC
这个例子展示了如何建模一个12位DAC过采样插值。
过采样插值dac使用插值来实现高分辨率输出比输入提供。这允许更少的复杂的DSP系统的输出过滤操作接近奈奎斯特速率。
模型
过采样插值DAC有三个基本功能块。第一块是一个FIR插值滤波器块从DSP系统工具箱™增加的输入采样率的采样率Fs
DAC的采样率M * Fs
。第二块是一个MATLAB函数块处理unbuffering冷杉插值的输出块。MATLAB函数块有一个clock-triggered性质使其输出抖动。这使它优于Unbuffer块从DSP系统工具箱™。第三块是一个混合信号Blockset™DAC操作M * Fs
。
DAC的参数的AD9773数据表。
工作空间变量参数:
鳍= 66.176
赫兹是输入信号的频率。Fs = 1.125
MHz是输入采样频率。M = 8
是oversample因素/比率。N = 12
是位DAC的的数量。Ref = 1.2
是引用(DAC的动态输出范围)。
DAC采样频率是由oversample因素和输入采样频率:
为简单起见,偏置误差和增益误差一直在左0% FS
在这个模型中。
模型=“InterpolatingDAC”;open_system(模型);
动态测试
来确定信噪比、第三和其他插值DAC的动态特性,使用DAC交流测量块的混合信号Blockset™。
使用频谱分析仪比较low-sample率输入的输出采样过量插值DAC。旁边的获得块频谱分析仪匹配输入波的振幅的DAC输出并排比较。
sim(模型);
静态测试
确定偏移误差,使用DAC直流增益误差,INL和黑暗与测量块。设置偏置误差的二进制加权DAC-0.02% FS
(-0.8192 LSB)并设置其的增益误差来1.0% FS
(40.96 LSB)。
bdclose(模型);模型=“InterpolatingDACDC”;open_system(模型);
块上的测量报告的摘要图标。打开块面具,按情节按钮来查看完整的INL和黑暗与阴谋。
sim(模型);掩码= Sim金宝appulink.Mask.get([模型' / DAC直流测量的]);按钮= mask.getDialogControl (“PlotBtn”);eval (regexprep (button.Callback“gcb”,(“””模型' / DAC直流测量”)));