主要内容

Atan2

使用 CORDIC 逼近方法计算 Atan2 运算并带延迟进行仿真

  • HDL Math Atan2 Block

库:
HDL Coder

描述

Atan2 模块通过使用坐标旋转数字计算 (CORDIC) 逼近方法执行实数值输入信号的四象限反正切。有关详细信息,请参阅算法中的 CORDIC 逼近方法。该模块具有指示输入和输出数据是否有效的控制信号。您也可以指定算法的迭代次数和延迟策略。

要在您的 Simulink® 模型中使用此模块,请在 MATLAB® 命令行窗口中输入以下命令来打开 HDLMathLib 库:

open_system("HDLMathLib")

您可以带延迟对 Atan2 模块进行仿真。有关详细信息,请参阅 延迟注意事项

示例

端口

输入

全部展开

y 坐标数据,指定为标量或向量。输入信号必须为实数值数据。

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

x 坐标数据,指定为标量或向量。输入信号必须为实数值数据。

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

指示输入信号是否有效的输入控制信号,指定为标量。

数据类型: Boolean

输出

全部展开

xy 坐标输入信号的四象限反正切,以标量或向量形式返回。此信号是从 x_dataIny_dataIn 信号处的值到正 x 轴的向量之间的角度。

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

指示输出信号是否有效的输出控制信号,以标量形式返回。

数据类型: Boolean

参数

全部展开

要以交互方式编辑模块参数,请使用属性检查器。从 Simulink 工具条中,在仿真选项卡上的准备库中,选择属性检查器

指定 CORDIC 算法的迭代次数。

编程用法

模块参数iter
类型:字符向量
Integer values
默认值'11'

指定是使用最小值、最大值、自定义还是零延迟。有关详细信息,请参阅延迟策略

要对模块使用自定义延迟,请将延迟策略设置为自定义并在自定义延迟字段中输入延迟值。

您也可以控制迭代算法的流水线阶段数。要自定义迭代算法的延迟,请将延迟策略设置为 Custom(PerIteration) 并在 IterationsPerPipeline 字段中输入每个流水线的迭代次数值。 (自 R2025a 起)

编程用法

模块参数latencyMode
类型:字符向量
'Max' | 'Min' | 'Custom' | 'Custom(PerIteration)' | 'Zero'
默认值'Max'

指定自定义延迟值。延迟必须是在范围 [0, L] 内的非负整数,其中 L 是 Atan2 模块的最大延迟值。有关详细信息,请参阅 延迟注意事项

依赖关系

要启用此参数,请将延迟策略设置为自定义

编程用法

模块参数customLatencyValue
类型:整数
0 to Max latency
默认值0

自 R2025a 起

指定算法中每个流水线阶段要使用的迭代次数。

依赖关系

要启用此参数,请将延迟策略设置为 Custom(PerIteration)

编程用法

模块参数iterationsPerPipelineValue
类型:整数
Positive integer
默认值1

算法

全部展开

参考

[1] Volder, Jack E., “The CORDIC Trigonometric Computing Technique.” IRE Transactions on Electronic Computers EC-8 (1959); 330–334.

[2] Andraka, Ray “A Survey of CORDIC Algorithm for FPGA Based Computers.” Proceedings of the 1998 ACM/SIGDA Sixth International Symposium on Field Programmable Gate Arrays. Feb. 22–24 (1998): 191–200.

[3] Walther, J.S., “A Unified Algorithm for Elementary Functions,” Proceedings of the Spring Joint Computer Conference, May 18-20, 1971: 379–386.

[4] Schelin, Charles W., “Calculator Function Approximation,” The American Mathematical Monthly 90, no. 5 (1983): 317–325.

扩展功能

全部展开

版本历史记录

在 R2020b 中推出

全部展开