Main Content

Sine 和 Cosine 模块

通过利用象限波对称性的查找表方法实现定点正弦或余弦波

  • Sine block

库:
Simulink / Lookup Tables

描述

Sine 和 Cosine 模块通过利用象限波对称性的查找表方法来实现定点正弦和/或余弦波。模块可以输出输入信号的以下函数,具体取决于您为输出公式参数选择的设置:

  • sin(2πu)

  • cos(2πu)

  • exp(j2πu)

  • sin(2πu) and cos(2πu)

请在查找表的数据点数参数中定义查找表点数。当您将查找表数据点指定为 (2^n)+1(其中 n 是整数)时,模块实现最有效。

使用输出字长参数指定定点输出数据类型的字长。输出的小数长度等于输出字长减去 2。

端口

输入

全部展开

输入信号 u,指定为实数值标量、向量或矩阵。

提示

要获得有意义的模块输出,模块输入值应位于 [0, 1) 的范围内。对于不在此范围内的输入值,它们将被转换为无符号数据类型,发生溢出时将进行绕回。对于这些超出范围的输入,模块输出可能没有意义。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

输出

全部展开

定点正弦波,使用查找表方法实现。

依存关系

输出公式设置为 sin(2*pi*u)sin(2*pi*u) and cos(2*pi*u) 时,此端口启用。

数据类型: fixed point

定点余弦波,使用查找表方法实现。

依存关系

输出公式设置为 cos(2*pi*u)sin(2*pi*u) and cos(2*pi*u) 时,此端口启用。

数据类型: fixed point

exp(j*2*pi*u),使用查找表方法实现。

依存关系

输出公式设置为 exp(j*2*pi*u) 时,此端口启用。

数据类型: fixed point

参数

全部展开

编程用法

模块参数:Formula
值:'sin(2*pi*u)' | 'cos(2*pi*u)' | 'exp(j*2*pi*u)' | 'sin(2*pi*u) and cos(2*pi*u)'

当您将查找表的数据点指定为 (2^n)+1(其中 n 是整数)时,实现的效率最高。为了与输出字长参数兼容,查找表的数据点数必须小于或等于 (2^(Output word length-2)+1)

编程用法

模块参数:NumDataPoints
类型:标量
值:integer >= 2
默认值:'(2^5)+1'

输出的小数长度等于输出字长减去 2。为了与查找表的数据点数参数兼容,(2^(Output word length - 2) +1) 必须大于或等于查找表的数据点数

注意

模块使用双精度浮点值来构造查找表。因此,输出中可以实现的最大精度为 53 位。将字长值设置为大于 53 位并不会提高输出的精度。

编程用法

模块参数:OutputWordLength
类型:标量
值:integer from 2 to 53
默认值:'16'

选择速度可以提高计算速度。但这样可能会损失精度,通常最多 2 位。

编程用法

模块参数:InternalRulePriority
值:'Speed' | 'Precision'
默认值:'Speed'

模块特性

数据类型

Boolean | double | fixed point | integer | single

直接馈通

多维信号

可变大小信号

过零检测

扩展功能

C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。

定点转换
使用 Fixed-Point Designer™ 设计和仿真定点系统。

版本历史记录

在 R2006a 之前推出