MATLAB/Simulink中基于S-Function模块的CORDIC算法的NCO实现

本文介绍了如何使用MATLAB/Simulink中的S-Function模块结合CORDIC算法实现正弦信号发生器。通过CORDIC算法的迭代移位-相加,实现了在-99.7°到99.7°范围内任意角度的旋转,从而计算出不同相位的正弦和余弦值。在Simulink中,设置合适的采样频率和频率参数fc,可以生成所需频率的正弦和余弦信号。博客附有仿真结构框图和结果展示。
摘要由CSDN通过智能技术生成

CORIC算法是FPGA中用于正弦波信号发生器的常用算法,优势在于其不需要像查找表需要耗费大量的ROM资源,且具有较高的相位精度,本篇博文主要就借助MATLAB/Simulink中的S-Function模块实现CORDIC算法的功能,并通过搭建简单Simulink仿真模实现CORDIC算法的功能验证。

一、CORDIC算法简介

在xy坐标平面上将点(x1,y1)旋转 θ 角度到点(x2,y2)的标准方法如(1)所示:

      (1)


图1 - 笛卡尔坐标系

如果去除cosθ项,我们得到  伪旋转 方程式如(2),即旋转的角度是正确的,但 x 和 y的值增加 1/cosθ倍,如图2所示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值