




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上本文介绍如何使用xilinx的CORDIC 核生产一个sin和cos波形?cordic的原理就不介绍了,百度一大堆,我们知道原理后,需要去使用它。环境:xilinx ISE 14.5 cordic 4.0modelsim 首先是IP核的选项设置,照例的有图才方便学习 标注1:选择函数的类型,我们选择计算sin和cos值。标注2:选择cordic的结构,是字串行还是并行,我们选择并行。标注3:选择输出流水线类型,我们选择不要流水线。关于cordic的计算结构,是并行还是串行,datasheet上面有介绍时序图: 看时序图可知,s
2、erial类型计算一个值,需要的clk比parallel需要的多,但是datasheet后面有说serial占用的资源少。如果感兴趣可以看datasheet上介绍的二者的内部结构。serial 占用的资源少,需要的clk多,也会使端口多出几个PIN,控制起来麻烦一点,如下图: 关于输出流水线类型,我们选择NO Pipelining ,如果选择其他的,那么输出的结果会延迟不定时的clk才产生,当然好处是节省资源。选择NO Pipelining 时, 1个clk就出一个计算值,有点费资源。文档的最后有对二者的资源占用比较,可以参考。如果对延时不在意,但是想节省资源的话,就选择优化。dat
3、asheet相关介绍: 标注1:选择相位角的格式,我们选择Scaled Radians(意思是多少PI)。标注2:选择数据宽度,这个和你需要多少位宽的数据有关,我们选择16位。标注3:舍位模式,选择的是近似值。对于相位角格式,datasheet的定义为:数据的有效值的定义为:相位角: 第一位是符号位,第二、三位是整数位,其他是小数位。sin数据: 第一位符号位,第二位整数位,其他小数位。cos数据:第一位符号位,第二位整数位,其他小数位。数据的舍位模式:(具体可以看下表) 标注1:选择阶乘和精度,0表示根据数据来自动选择。标注2:选择cordic算法
4、的范围,将输出值控制在-pi/4 +pi/4之间还是-pi +pi之间。标注3:选择PIN,本来sin和cos功能是可以不要RDY的,但是我需要RDY来查看什么时候输出数据才有效。标注2的详解: 如果你要生成正弦余弦波,那么你的Coarse Rotation必须选上,让输出数据是整个圆平面。这样设置好的cordic IP核只是第一步,下一步是来设置合适的相位phase,以产生完整的波形。datasheet所示:我设置的数据位是16位,那么+1.0 -> 16h2000; -1.0 -> 16'he000;(暂时给定phase的步进为16h00C0,至
5、于怎么确定,下面会说到,cordic的时钟我设置的是100Mhz)如果直接让phase从 16h2000 到 16'he000 ,那么波形就会变成这样:原因是,16h2000 到 16'he000 之间有一长段的phase是大于+1和小于-1的,cordic IP核会当做+1和-1计算,所以才会一直是相同的值。那么怎样才能产生完整的正弦波?我们将phase从16'he000 到 16h2000 ,仿真结果为:发现有的地方是完整的波形了,那么现在我们需要找到波形的衔接点:我选取x_out的二个波谷做一个周期,那么找到二个波谷对应的phase即可,注意c
6、ordic计算是需要clk,当rdy为1时,数据才有效,所以我们要找到延时的clk数。我用cnt来计算,大概11个clk,数据有效。(注意不同的cordic设置会产生不同的延时,所以cnt不是固定的)那波谷对应的phase是向前数11个clk对应的phase:16hd980 同样找到另一个波谷的phase值为:16h1940 仿真产生完整的正弦余弦波: 测试的testbench: 那么步进的phase怎么计算呢?我选择的是16h00C0,十进制是192。刚才提到了,+1 到 -1(16h2000 到 16'he000)之前有 :16'he
7、000 - 16h2000 = 16hC000,也就是49152.256 * 192 = 49152,那么当步进取192的时候,256个clk就可以从2000加到E000了。这样不会出现起始数据不定的状况。这里建议数值是49152的约数比较好,当然不是它的约数也行。16h00C0 -> 0000 0000 1100 0000,按照datasheet的phase数据格式:000,0 0000 1100 0000,也就是十进制的0.。而这个数的角度值为:0. * 180° = 4.21875°,也就是每个clk步进4.21875°。一个圆有360°,那么从0°到360°一共步进360° / 4.21875° 约等于 85.3次。我选择的clk为10ns,也就是85.3 * 10 ns输出一个完整的正弦余弦波。所以正弦余弦波的周期为1 / 853 ns 约等于 1.17Mhz。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023七年级数学上册 第一章 有理数1.4 有理数的乘除法1.4.1 有理数的乘法第1课时 有理数的乘法教学实录(新版)新人教版
- 2024秋七年级数学上册 第三章 整式的加减3.1 列代数式 3列代数式教学实录(新版)华东师大版
- 2024秋七年级英语上册 Unit 7 Days and Months Lesson 37 Seasons and Weather教学设计 (新版)冀教版
- 安徽省合肥市长丰县七年级生物下册 4.2.3《合理营养与食品安全》教学实录3 (新版)新人教版
- 2023八年级历史下册 第五单元 国防建设与外交成就第16课 独立自主的和平外交教学实录 新人教版
- Unit 2 Colors Grammar 教学设计 2024-2025学年牛津译林版英语九年级上册
- 全国浙教版信息技术七年级下册第二单元第7课《传感器的应用》教学设计设计
- DB6107-T 67-2024 马铃薯-玉米-大豆带状复合种植技术规程
- DB1331T 063-2023雄安新区地埋管地源热泵系统工程技术规程
- 2024-2025学年新教材高中化学 第二章 分子结构与性质 2 分子的空间结构教学实录 新人教版选择性必修2
- 明亚保险经纪人考试题库答案
- 初中语文作业设计研究
- 水工金属压力钢管焊接工艺规程
- 古代美洲文明:2阿兹特克
- 生物多样性生物多样性的价值
- 2022年《旅游经济学》题库及答案(共8套)
- 2015-2022年北京电子科技职业学院高职单招语文/数学/英语笔试参考题库含答案解析
- 高中音乐(必修)《音乐鉴赏》 (人音版)《家国情怀的民族乐派》格林卡与穆索尔斯基《荒山之夜》
- 《有效小组合作的22个案例》读书笔记思维导图PPT模板下载
- 碧桂园青岛后田项目专项拿地报告
- GB/T 7714-1987文后参考文献著录规则
评论
0/150
提交评论