搜索
bottom↓
回复: 21

CORDIC算法的VERILOG实现

[复制链接]

出0入0汤圆

发表于 2012-12-21 16:36:28 | 显示全部楼层 |阅读模式
这几天研究了cordic算法,从参考别人代码到自己改写到合适精度的以及象限转换,遇到的问题基本解决,有遇到问题的可以来这里互相讨论cordic算法,互相学习吧。
以下付出verilog的源码以及相应的简单激励,输出波形sin和cos,另外如果利用cordic1.0v文件将出现毛刺现象,希望对大家有用。
attach://79149.zip

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2012-12-21 16:38:22 | 显示全部楼层
第一次不太会贴链接呀。。
源码

出0入0汤圆

 楼主| 发表于 2012-12-21 16:39:31 | 显示全部楼层
只能做出超级链接了,呵呵
cordic算法的verilog实现以及仿真激励源码

出0入0汤圆

发表于 2012-12-21 17:41:16 | 显示全部楼层
顶一下  学习一下传说中的算法

出0入0汤圆

发表于 2012-12-21 19:07:38 | 显示全部楼层
wuyuehang 发表于 2012-12-21 16:39
只能做出超级链接了,呵呵
cordic算法的verilog实现以及仿真激励源码

xilinx 有DSP48,ALtera 也有 alt_MUL...速度比較快.

出0入0汤圆

 楼主| 发表于 2012-12-21 19:20:31 | 显示全部楼层
sky5566 发表于 2012-12-21 19:07
xilinx 有DSP48,ALtera 也有 alt_MUL...速度比較快.

嗯,那个的确有。但是cordic算法也不只是实现sin和cos嘛。

出0入0汤圆

 楼主| 发表于 2012-12-21 19:21:15 | 显示全部楼层
sky5566 发表于 2012-12-21 19:07
xilinx 有DSP48,ALtera 也有 alt_MUL...速度比較快.

这个也不是很难,所以就自己写一个嘛

出0入0汤圆

 楼主| 发表于 2012-12-21 19:22:00 | 显示全部楼层
wangshaosh123 发表于 2012-12-21 17:41
顶一下  学习一下传说中的算法

这里文档我就不整理了,网络上面基本千篇一律的。

出0入0汤圆

发表于 2012-12-21 19:41:43 | 显示全部楼层
有IP核的,造车不用从造轮子完全自己做

出0入0汤圆

 楼主| 发表于 2012-12-21 20:06:51 | 显示全部楼层
NJ8888 发表于 2012-12-21 19:41
有IP核的,造车不用从造轮子完全自己做

嗯,是啊。有些就弄不出来了,虽然有些舍近求远。ip是方便,不过不如自己写的清晰。现在是学生也不是公司员工,基本功打好也蛮好的。

出0入0汤圆

发表于 2012-12-21 21:51:28 | 显示全部楼层
matlab仿真+system generator生成IP
vivado直接将C/C++算法转换成verilog
有了这些强有力的工具,可以更加专注于系统设计……

出0入0汤圆

发表于 2012-12-22 21:23:05 | 显示全部楼层
pocker5200 发表于 2012-12-21 21:51
matlab仿真+system generator生成IP
vivado直接将C/C++算法转换成verilog
有了这些强有力的工具,可以更加 ...

vivado直接将C/C++算法转换成verilog
这个现在只有7系列的一个类型的芯片支持   
离普及还有一段距离  不过这是发展趋势

出0入0汤圆

发表于 2012-12-23 16:30:34 | 显示全部楼层
用到了来找楼主讨论

出0入0汤圆

 楼主| 发表于 2012-12-24 10:01:27 | 显示全部楼层
yixinyiyi 发表于 2012-12-23 16:30
用到了来找楼主讨论

你可以像上面几楼说的用ip核。不过出于兴趣自己可以实现以下,对算法认识就更加彻底了,欢迎交流。

出0入0汤圆

发表于 2013-8-22 01:16:51 | 显示全部楼层
ip核不给力啊         

出0入0汤圆

发表于 2013-9-4 23:06:29 | 显示全部楼层
支持一下哦

出0入0汤圆

发表于 2013-10-2 06:25:36 | 显示全部楼层
自己动手写理解的比较深刻,感谢楼主。

出0入0汤圆

发表于 2013-10-4 20:08:02 | 显示全部楼层
支持一下啊

出0入0汤圆

发表于 2013-10-4 21:11:54 | 显示全部楼层
试过 latice 的 IP 核,只有16位的精度,感觉不是很够,自己写可以写到18位,20次迭代

出0入0汤圆

发表于 2014-6-12 11:05:26 | 显示全部楼层
mark之,多谢楼主

出0入0汤圆

发表于 2016-4-9 20:05:39 | 显示全部楼层
你确定能用?为什么我测试下来发现是错的,你的输入phase_in是怎么定义的啊?

出0入0汤圆

发表于 2016-4-9 22:07:14 | 显示全部楼层
用过cordic求过artan反正切值,没来的及细细弄懂里面的细节
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-14 01:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表