主要内容

comm.Scrambler

争夺输入信号

描述

comm.Scrambler对象打乱一个标量或列向量输入信号。

这个示意图显示了扰码器操作。该方案操作模N,在那里N指定的值吗CalculationBase财产。

在每个时间步,输入导致寄存器的内容按顺序转变。使用多项式属性,指定每个开关的打开或关闭状态的扰频器。

争夺一个输入信号:

  1. 创建comm.Scrambler对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

扰频器= comm.Scrambler创建一个爬行者™系统对象。这个对象基于输入数据通过使用一个线性反馈移位寄存器,您指定的多项式财产。

例子

扰频器= comm.Scrambler (基地,,气孔导度)创建的扰频器对象CalculationBase属性设置为基地,多项式属性设置为,InitialConditions属性设置为气孔导度

例子:comm.Scrambler (8, ' 1 + z ^ 2 + z ^ 3 + z z ^ ^ 5 + 7”, [0 3 1 2 2 5 7])设置计算基础8扰频器多项式和初始条件指定。

例子

扰频器= comm.Scrambler (___,的名字,价值)设置使用一个或多个属性的名称-值对,以前的语法。在单引号附上每个属性的名字。

例子:comm.Scrambler ('CalculationBase',2)

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

模的扰频器中使用的输入数据范围操作,指定为一个非负整数。这个对象的输入和输出都是整数0CalculationBase- - - - - -1

数据类型:

扰频器连接线性反馈移位寄存器,指定为一个特征向量,整数向量,或二进制向量。的多项式属性定义了如果每个开关的扰频器。指定多项式:

  • 一个特征向量,例如“1 + z ^ 6 + z ^ 8”。为更多的细节在以这种方式指定多项式,明白了字符表示多项式的

  • 一个整数向量,如[0 6 8],清单的扰频器系数顺序降序的权力z1,在那里p(z1)= 1 +p1z1+p2z2+……

  • 一个二进制向量,如[1 0 0 0 0 0 1 0 1],清单的权力z出现在的多项式系数1。在这种情况下,阶多项式的争夺一个小于二元向量的长度。

例子:“1 + z ^ 6 + z ^ 8”,[0 6 8],[1 0 0 0 0 0 1 0 1]所有代表这个多项式:

p(z1)= 1 +z6+z8

数据类型:|字符

  • “属性”——指定扰频器初始条件使用InitialConditions财产。

  • 输入端口的——指定扰频器初始条件通过使用一个额外的输入参数,initcond,当调用对象。

数据类型:字符

扰频器寄存器的初始条件模拟开始时,指定为一个非负整数向量。的长度InitialConditions必须等于的顺序吗多项式财产。向量元素值必须是整数0CalculationBase- - - - - -1

依赖关系

此属性可用时InitialConditionsSource被设置为“属性”

扰频器状态复位端口,指定为真正的。如果ResetInputPort真正的,你可以重置扰频器对象通过使用一个额外的输入参数,重置,当调用对象。

依赖关系

此属性可用时InitialConditionsSource被设置为“属性”

使用

描述

例子

scrambledOut=扰频器(信号)基于输入信号。输出是相同的数据类型和长度作为输入向量。

例子

scrambledOut=扰频器(信号,initcond)提供了一个额外的输入值指定线性反馈移位寄存器的初始条件。

这个语法适用于当你设置InitialConditionsSource对象的属性输入端口的

scrambledOut=扰频器(信号,重置)提供了一个额外的输入指示是否复位加扰器的状态。

这个语法适用于当您设置InitialConditionsSource“属性”ResetInputPort真正的

输入参数

全部展开

输入信号,指定为一个列向量。

例子:scrambledOut =扰频器([0 1 1 0 1])

数据类型:|逻辑

最初的扰频器仿真开始时注册条件,指定为一个非负整数列向量。的长度initcond必须等于的顺序吗多项式财产。向量元素值必须是整数0CalculationBase- - - - - -1

例子:scrambledOut =扰频器(信号,[0 1 1 0])可能对应于初始注册状态与多项式的扰频器4和计算的基础2或更高版本。

数据类型:

重置扰频器的初始状态仿真开始时,指定为一个标量。时的值重置非零,对象是重置之前。

例子:scrambledOut =扰频器(信号,0)基于输入信号没有重置扰频器状态。

数据类型:

输出参数

全部展开

炒输出,作为一个列向量返回相同的数据类型和长度信号

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

争夺和descramble 8-ary数据使用comm.Scramblercomm.Descrambler系统对象™有8的计算基础。

创建扰频器和解码器对象,指定计算基础,多项式,使用输入参数和初始条件。与指定的扰频器和解码器多项式都不同,但相同的数据格式。

N = 8;扰频器= comm.Scrambler (N,“1 + z ^ 2 + z ^ 3 + z z ^ ^ 5 + 7”,[0 3 1 2 2 5 7]);解码器= comm.Descrambler (N, [1 0 1 1 0 1 0 1],[0 3 1 2 2 5 7]);

争夺和descramble随机整数。显示原始数据、炒数据和descrambled数据序列。

data =兰迪([0 n - 1] 5 1);scrData =扰频器(数据);deScrData =解码器(scrData);(数据scrData deScrData]
ans =5×36 7 6 7 5 7 1 7 1 7 0 7 5 3 5

验证descrambled数据与原始数据。

deScrData isequal(数据)
ans =逻辑1

争夺和descramble第四纪数据而变化的函数调用之间的初始条件。

创建扰频器和解码器系统对象计算的4。设置InitialConditionsSource财产输入端口的所以你可以设置初始条件的对象作为参数。

N = 4;扰频器= comm.Scrambler (N,“1 + z ^ 3”,“InitialConditionsSource”,输入端口的);解码器= comm.Descrambler (N,“1 + z ^ 3”,“InitialConditionsSource”,输入端口的);

Preallocate内存错误矢量将用于存储错误输出的symerr函数。

errVec = 0 (10, 1);

争夺和descramble随机整数而改变初始条件,initCond,每次循环执行。使用symerr函数来确定加扰和descrambling操作导致符号错误。

k = 1:10 initCond = randperm (3) ';data =兰迪([0 n - 1] 5 1);scrData =扰频器(数据、initCond);deScrData =解码器(scrData initCond);errVec (k) = symerr(数据,deScrData);结束

检查errVec验证解码器的输出匹配原始数据。

errVec
errVec =10×10 0 0 0 0 0 0 0 0 0

扩展功能

版本历史

介绍了R2012a

另请参阅

对象