主要内容

设计和分析数字转换器

这个例子展示了如何使用数字下变频器(DDC)系统对象来模拟TI Graychip 4016数字转换器以简单的方式。我们的示例基于比较在MATLAB GSM数字下变频器的例子。我们展示如何使用DDC系统对象的设计和分析大量毁灭过滤器和快速探索不同的设计选择,满足不同的通带和阻带频率和衰减规范。这个例子需要定点设计师™许可证。

如果~ isfixptinstalled错误(消息(“dsp: dspDigitalDownConverterDesign: noFixptTbx”));结束

介绍

在MATLAB GSM数字下变频器示例提供了所需的步骤模拟数字转换器,TI Graychip 4016带来了通带信号集中在14.44 MHz基带,下下样本信号256倍带来的输入采样率69.333 MHz到270.83 KHz。在这个例子中你经历以下步骤:

1)设计一个数控振荡器产生混合频率为14.44 MHz。

2)加载一组预定义的系数来生成一个中投杀害多人者过滤器,CIC补偿滤波器和数字滤波器的通带频率80千赫。

3)频率转换一个GSM信号(模拟复指数),样本下转换输出大量毁灭的级联滤波器。

4)执行数据铸造获得所需的定点数据类型在不同转换部分。

在MATLAB GSM数字下变频器例子还创建一个冷杉率转换器重新取样数据在第三滤波器的输出阶段。如DDC系统对象不包含率转换器;因此,这个示例中不包括实现一个。

这个例子展示了如何使用DDC系统对象设计的大量毁灭过滤器。它还表明,监护对象实现转换过程和简单的步骤更少。

以下,DDC系统框图对象包含在每个阶段的数据类型和数据率的例子。你控制的输入数据类型过滤器使用FiltersInputDataType和CustomFiltersInputDataType属性。你控制的输出数据类型使用OutputDataType和CustomOutputDataType属性。

定义DigitalDownConverter系统对象

创建一个包括DDC系统对象。对象的输入采样率设置为每秒69.333大型样品(议员),和大量毁灭因素256年实现输出270.83 KHz的采样率。监护对象自动因素大量毁灭价值,CIC滤波器会毁坏,到64年,中投公司补偿器使得除以2,第三阶段过滤器会毁坏了2。

如ddc = dsp.DigitalDownConverter (“SampleRate”,69.333 e6,“DecimationFactor”,256);

大量毁灭滤波器设计

在MATLAB GSM数字下变频器示例使用一组预定义的滤波器系数生成两个冷杉杀害多人者和一个中投杀害多人者系统对象。设计大量毁灭过滤器,这样他们的级联反应满足给定的通带和阻带衰减和频率规范可以是一个复杂的过程,你必须选择正确的组合每个滤波器的通带和阻带频率阶段。正确选择阻带频率保证低阶滤波器的设计。

监护对象自动设计大量毁灭过滤器基于一组通带和阻带衰减和频率规范。

最低订购量滤波器设计

监护对象获得最低订购量大批杀害滤波器设计与您提供的通带和阻带衰减和频率规范。设置MinimumOrderDesign属性为true以获得最低订购量滤波器的设计。

监护系统。MinimumOrderDesign = true;

转炉流程一个GSM信号的双面带宽160千赫。将带宽监护对象的属性设置为160 KHz,这样才滤波器级联的通带频率等于160 e3/2 = 80千赫。

设置StopbandFrequencySource财产“汽车”所以监护对象设置级联反应的截止频率大约在输出奈奎斯特率,即在270.83 e3/2 = 135.4 KHz,和阻带频率2 fc-fpass = 2 * 135.4 e3/2 e3 - 160 = 190.8 KHz, Fc在哪里通带频率截止频率和成就。当您设置StopbandFrequencySource“汽车”,监护对象放松阻带频率尽可能获得最低的过滤器订单允许一些混叠的成本能源过渡带的级联反应。这个设计权衡方便当你的首要任务是减少过滤器订单。

监护系统。带宽= 160年e3;%通带频率等于80千赫监护系统。StopbandFrequencySource =“汽车”;%允许混叠在过渡带

最后,设置一个阻带衰减55分贝和通带波纹为0.04 dB。

监护系统。StopbandAttenuation = 55;监护系统。PassbandRipple = .04点;

您可以分析的反应级联通过调用大量毁灭的过滤器fvtool监护对象的方法。指定一个定点算术这样监护对象对滤波器系数最优的比特数,使级联反应来满足阻带衰减规范。

fvt = fvtool(监护系统“算术”,“定点”);

得到设计过滤器订单和中投的单词长度系数补偿器和第三阶段冷杉设计。

ddcFilters = getFilters(监护系统“算术”,“定点”);n = getFilterOrders (ddc);CICCompensatorOrder = n.SecondFilterOrder% #好吧ThirdStageFIROrder = n.ThirdFilterOrder% #好吧CICCompensatorCoefficientsWordLength =ddcFilters.SecondFilterStage.CustomCoefficientsDataType.WordLength% #好吧ThirdStageFIRWordLength =ddcFilters.ThirdFilterStage.CustomCoefficientsDataType.WordLength% #好吧
CICCompensatorOrder = 12 ThirdStageFIROrder = 18 CICCompensatorCoefficientsWordLength = 11 ThirdStageFIRWordLength = 11

如果混叠过渡带是不可接受的,阻带频率设置为任意值通过设置StopbandFrequencySource财产“属性”。获得窄过渡带通过设置阻带频率128 KHz的一个更大的第三阶段过滤器。

监护系统。StopbandFrequencySource =“属性”;监护系统。StopbandFrequency = 128年e3;关闭(fvt) fvt = fvtool(监护系统“算术”,“定点”);

n = getFilterOrders (ddc);CICCompensatorOrder = n.SecondFilterOrder% #好吧ThirdStageFIROrder = n.ThirdFilterOrder% #好吧
CICCompensatorOrder = 10 ThirdStageFIROrder = 34

可视化的反应每个过滤阶段和整个级联使用visualizeFilterStages监护对象的方法。

关闭(fvt) fvt = visualizeFilterStages(监护系统“算术”,“定点”);

控制过滤订单

在某些情况下当过滤器订单是主要的设计约束。你使用监护对象设计大量毁灭过滤器通过设置指定的顺序MinimumOrderDesign属性为false。你仍然可以指定所需的通带和阻带频率的级联反应。注意然而,阻带衰减和涟漪现在由过滤器的顺序控制而不是属性值。

振荡器的设计

监护对象设计基于少量的数控振荡器的参数。设置振荡器财产“甲”选择一个数控振荡器。使用32蓄电池比特,18量子化的蓄电池。设置中心频率为14.44 MHz,选择14位优柔寡断。

监护系统。振荡器=“甲”;监护系统。CenterFrequency = 14.44 e6;监护系统。NumAccumulatorBits = 32;监护系统。NumQuantizedAccumulatorBits = 18;监护系统。NumDitherBits = 14;

定点设置

你可以设置不同的监护对象上的属性来控制定点数据类型的转换路径。

这个词和部分长度的输入每个过滤器到20和19位分别通过设置CustomFiltersInputDataType财产numerictype ([] 20 19)。注意监护对象尺度数据的输出中投杀害多人者。事实上,这个比例是不做的在MATLAB GSM数字下变频器例子解释了部分长度的差异值选择在每一个例子。

设置输出数据类型有24位字长和一小部分的长度23位。

监护系统。FiltersInputDataType =“自定义”;监护系统。CustomFiltersInputDataType = numerictype(19)[], 20日;监护系统。OutputDataType =“自定义”;监护系统。CustomOutputDataType = numerictype([], 24岁,23);

处理循环

初始化一个正弦波发生器模拟GSM来源。初始化一个缓冲输入信号数据类型转换为19位字长和18位部分的长度。配置数据绘制光谱信号的估计。

Fs = 69.333 e6;FrameSize = 768;正弦= dsp.SineWave (“频率”14.44 e6 + 48 e3,“SampleRate”Fs,“PhaseOffset”0,“SamplesPerFrame”,FrameSize);(FrameSize gsmsig = fi(0, 1),真的,19日18);inputSpectrum = dsp.SpectrumAnalyzer (“SampleRate”sine.SampleRate,“SpectralAverages”10“标题”,输入信号的功率谱);outputSpectrum = dsp.SpectrumAnalyzer (“SampleRate”sine.SampleRate / ddc.DecimationFactor“SpectralAverages”10“标题”,变频技术的信号的功率谱);

主要模拟循环

2 = 1:1000%建立GSM信号19位字长和18位的分数%的长度。gsmsig (,) = sin ();%将GSM信号downConvertedSig =, ddc (gsmsig);%频域图inputSpectrum (gsmsig);outputSpectrum (downConvertedSig);结束%释放对象释放(sin);释放(ddc);释放(inputSpectrum);释放(outputSpectrum);

所需注意的简化步骤转换信号相比在MATLAB GSM数字下变频器的例子。

结论

在本例中,您所需的步骤来设计数字相比转换器所示在MATLAB GSM数字下变频器示例使用DDC系统对象时所需的步骤。监护对象允许您获得了转换器的设计在一个简单的步骤。它提供了工具来设计大量毁灭过滤器满足通频带的频率,通带波纹,阻带频率,阻带衰减规范。监护对象还提供了方便的工具来可视化和分析大量毁灭滤波器响应。

进一步的探索

您可以使用dsp。DigitalUpConverter系统对象来设计数字转换器系统。