主要内容

dsp。以区域

生成实或复正弦信号

描述

数控振荡器,或以区域对象生成实或复正弦信号。产生的信号的振幅总是1。

产生真实的或复杂的正弦信号:

  1. 创建dsp。以区域对象并设置其属性。

  2. 调用带有参数的对象,就像调用函数一样。

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

例子

以区域= dsp。以区域返回一个以区域系统对象™,以区域,它产生一个多通道实正弦信号或复正弦信号,每个输出通道具有独立的频率和相位。

例子

Nco = dsp。甲(名称,值返回一个以区域系统对象,以区域,每个指定的属性设置为指定的值。

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放函数解锁它们。

如果属性是可调,您可以随时更改其值。

有关更改属性值的更多信息,请参见在MATLAB中使用系统对象设计系统

指定相位增量的来源为“属性”输入端口的

将相位增量指定为整数值标量或向量。

依赖关系

此属性仅在设置PhaseIncrementSource财产“属性”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定相位偏移源为“属性”输入端口的

将相位偏移指定为整数值标量或矢量。

依赖关系

此属性仅在设置PhaseOffsetSource财产“属性”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

将此属性设置为真正的在NCO算法中加入内部抖动。方法添加抖动PN序列发生器(通信工具箱)

指定抖动位的个数为正整数。

依赖关系

此属性仅在设置高频振动财产真正的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

将此属性设置为真正的启用累积相位的量化。

将量化器累加器位数指定为大于2且小于累加器字长(CustomAccumulatorDataType).此属性确定查找表中sin值的条目数。

依赖关系

此属性仅在设置PhaseQuantization财产真正的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

将此属性设置为真正的输出相位量化误差。

依赖关系

此属性仅在设置PhaseQuantization财产真正的

指定输出信号的类型。

指定输出信号的每帧采样数。当PhaseOffsetSource属性是输入端口的,以及PhaseIncrementSource属性是“属性”,相位偏移输入的行数或帧大小决定了输出信号的每帧采样数。当你设置两个PhaseOffsetSource而且PhaseIncrementSource属性输入端口的时,输入的行数必须为1,输出信号的每帧采样数为1。

依赖关系

此属性仅在设置PhaseOffsetSource财产“属性”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi

将输出数据类型指定为“双”“单一”“自定义”.当您选择“自定义”,您还必须设置CustomOutputDataType财产。

定点属性

这个常数属性有一个值“地板”

这个常数属性有一个值“包装”

这个常数属性有一个值“自定义”

将累加器定点类型指定为未缩放类型numerictype(定点设计师)对象。Signedness汽车

将输出定点类型指定为缩放类型numerictype(定点设计师)对象。Signedness汽车

依赖关系

此属性仅在设置OutputDataType财产自定义

使用

描述

Y=甲()时返回一个正弦信号PhaseIncrementSourcePhaseOffsetSource属性都设置为“属性”

Y=甲(phInc返回一个正弦信号,Y,由以区域对于指定的相位增量,phInc

Y=甲(抵消返回一个正弦信号,Y,具有相位偏移,抵消,当PhaseOffsetSource属性设置为输入端口的

Y=甲(phInc抵消返回一个正弦信号,Y,随着相位的增加,phInc,相位偏移,抵消,当PhaseIncrementSourcePhaseOffsetSource属性都是输入端口的phInc而且抵消两者必须是相同长度的行向量,其中长度决定了输出信号中的通道数。

Y余弦= nco(___返回一个正弦信号,Y和余弦信号,余弦,当波形属性设置为' sin和cos '.该语法可以包括以前语法中的任何输入参数。

YqErr= nco(___返回一个正弦信号,Y,输出量化误差,qErr,当PhaseQuantizationPhaseQuantizationErrorOutputPort属性都是真正的

输入参数

全部展开

相位增量,指定为标量或行向量,其中每个元素对应一个单独的通道。

当两个PhaseIncrementSource而且PhaseOffsetSource属性设置为输入端口的,两个输入,phInc而且抵消必须有相同数量的通道。

依赖关系

此属性仅适用于PhaseIncrementSource属性设置为输入端口的

数据类型:int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi

相位偏移,指定为行向量或矩阵。的行数抵消确定输出信号每帧的采样数。的列数抵消决定输出信号的通道数。

当两个PhaseIncrementSource而且PhaseOffsetSource属性设置为输入端口的phInc而且抵消必须有相同数量的通道。

依赖关系

此属性仅适用于PhaseOffsetSource属性设置为输入端口的

数据类型:int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi

输出参数

全部展开

NCO输出,作为向量或矩阵返回。输出信号的行数由:

  • SamplesPerFrame财产——何时PhaseOffsetSource设置为“属性”

  • 抵消输入参数——当PhaseOffsetSource设置为输入端口的

输出信号中的通道数由相位偏移和相位增量信号中的通道数决定,两者必须相等。

的数据类型决定输出的数据类型OutputDataType财产。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi

余弦信号,作为向量或矩阵返回。的余弦输出信号的大小和数据类型与正弦信号相同,Y

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi

输出量化误差,作为矢量或矩阵返回。的qErr输出信号与正弦信号大小相同,Y

依赖关系

的情况下才可用此输出PhaseQuantizationPhaseQuantizationErrorOutputPort属性设置为真正的

数据类型:fi

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放名为obj,使用以下语法:

发行版(obj)

全部展开

信息 所生成信号的特征信息
一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 的内部状态重置系统对象

例子

全部折叠

请注意:本例仅在R2016b或更高版本中运行。如果您使用的是较早的版本,请将对函数的每次调用替换为等效函数一步语法。例如,myObject()变成了step(myObject)。

根据给定的规格设计一个NCO源。

Df = 0.05;%频率分辨率= 0.05 HzminSFDR = 96;%伪自由动态范围>= 96 dBTs = 1/8000;%采样周期= 1/8000秒d= /2;%期望相位偏移= pi/2;

计算给定频率分辨率所需的累加器位数。

Nacc = ceil(log2(1/(df*Ts)));

实现实际频率分辨率。

actdf = 1/(Ts*2^Nacc);

从SFDR要求中计算量子化累加器的位数

Nqacc = ceil((minsdr -12)/6);

计算相位偏移

phOffset = 2^Nacc*dphi/(2*pi);

设计NCO源代码。

Nco = dsp。甲(“PhaseOffset”phOffset,...“NumDitherBits”4...“NumQuantizerAccumulatorBits”Nqacc,...“SamplesPerFrame”1 / Ts,...“CustomAccumulatorDataType”numerictype ([] Nacc));光谱分析仪(“SampleRate”1 / Ts,...“方法”“韦尔奇”“AveragingMethod”“指数”...“ForgettingFactor”, 0.3,...“PlotAsTwoSidedSpectrum”、假);

在频谱分析仪上查看NCO源的输出。将模拟中间的输出频率从510hz更改为1520hz。

抽搐;Toc < 10如果toc < 5 F0 = 510;其他的F0 = 1520;结束计算相位增量phIncr = int32(round(F0*Ts*2^Nacc));y = nco(phIncr);圣(y)结束释放(san)

NCO对象的特征信息由以下字段定义:

  • NumPointsLUT—查找表中的数据点个数。

  • SineLUTSize-四分之一波正弦查找表大小(以字节为单位)。

  • TheoreticalSFDR- dBc的理论伪散动态范围(SFDR)。

  • FrequencyResolution的频率分辨率以区域

以获得上述特征为具体以区域对象,调用信息函数在对象上。

Nco = dsp。以区域
Nco = dsp。以区域with properties: PhaseIncrementSource: 'Input port' PhaseOffsetSource: 'Property' PhaseOffset: 0 Dither: true NumDitherBits: 4 PhaseQuantization: true NumQuantizerAccumulatorBits: 12 PhaseQuantizationErrorOutputPort: false Waveform: 'Sine' SamplesPerFrame: 1 OutputDataType: 'Custom' Show all properties
信息(nco)
ans =带有字段的结构:NumPointsLUT: 1025 SineLUTSize: 2050理论sfdr: 84频率分辨率:1.5259e-05

字段及其对应的值根据对象的设置而变化。例如,如果PhaseQuantization属性设置为,TheoreticalSFDR字段不显示。

以区域。相位equantiization = false;信息(nco)
ans =带有字段的结构:NumPointsLUT: 16385 SineLUTSize: 32770 FrequencyResolution: 1.5259e-05

算法

类中描述的算法、输入和输出以区域阻塞引用页面。对象属性对应于块属性,但没有对象属性对应于样品时间块参数。该对象假定采样时间为1秒。

扩展功能

版本历史

在R2012a中介绍

另请参阅

功能

对象