




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息与通信工程学院 信息与信号处理综合实验报告 (FPGA部分) 题目: 算法 班级: : :FPGACordicROM二、实验内容FPGACordicsin(x)。修改程序使其能够用于计算√x2+y2。(扩展)三、算法原理解释实验要求的两部分功能:cordic算法求算sin(x)和√x2+y2均在均在圆周系统下分别使用旋转模式和向量模式实现,所以这里也只简单介绍圆周系统下的cordic算法1. 旋转模式由图知:
Figure
周系统平面坐标旋转X j
cos
sinXiii
cos tanX jjjY
sin
cos
Y
tan
1 Y j
个平面旋转。tan
S
1,其中S表示下次旋转的旋转方向。为了 nn n2n能确定下次的旋转方向,我们引入Z
n1S
,如果Z大于0,即为还没有n i i ni0转到目标角度,下次为逆时针旋转,即Sn
1,若Zn
小于0,说明向量已经旋转超过了目标角度,需要往回转,即顺时针旋转,则Sn
1。i依此机制迭代多次,多个(i=0…n)相乘会出现增益 。K取决于迭代次数,i对于所有初始向量和所有旋转角度而言,K为一个常数(按实验指导书中,此处 旋转模式中,Z为输入,是需要旋转的角,当 Z旋转变为 0时,程序结束,即为已知目标角度,经过旋转将一向量从 0度旋转到目标角度。经 N次迭代后,上述方程转化为:X 1[X cos(Z )Ysin(Z n k 0 0 0 01
cos(Z
)
sin(Zn kn
0 0 0 0X所以如果设
k,Y
,那么N次迭代后Cordic算法输出变为:0 0 0[X出 y即可。
n+1
,Y ,n1
n
][cos,sin,0]
,这里我们要计算 所以只要输2. 向量模式 向量模式中,XY为输入,当 Y=0时结束,大致算法思想变为已知某向量位置,经过旋转,最终使向量转到 x轴上结束。迭代过程大致与旋转模式相同,但在旋转方向判断上,改用Y代替Z,如果Y大n n n于 0,即为向量还在 x轴上方,下一次为顺时针旋转,即S ,若Y小于 0,说n明向量已经旋转到 x下方,需要往回转,即逆时针旋转,则Sn向量模式下最终的结果为:
n1。1KX1KX2Y200n0n
Y Zn 0X00四、算法的 FPGA实现 由文件码简单均给赋值并不累加就不赘详细介绍主函部分另外chipscope部分也细阐简单介绍动部分。sin(X)1:DATA_WIDTH=8;/
Sarctan1i i 2i 669即d8。PIPELINE=8; phase_in; //角phase_in_reg; sin_out; //sineps; //转过角x0~7,y0~7,z0~7//中间i后函2程序流程图:于码较所以这里只用流程图替说明。开始判断第一象限将调整后赋予初y赋予相应初部分通过对于上一正负判断带不同公式6结束对结果进行换并:0~2π,-1~+1。11表360/256。111~−1256
−1。256X56进8k027Z]]为Z018°8,就覆YᵽÐ−XY0骤且据单没反馈或迭代骤下骤结构。如ue结构类似寄存器组并工作,提高了工作效率速它控了。Figure .
本了 6迭代需6寄存器外8中储存是象限信息输出时补码变换提供信息。实验结果modelsim仿真结果实验结果分析:
Figure 3modelsim 功。Chipscope仿真波形Figure 4.chipscope-bus plt个周期)re4看出这是输出仅半周期波形这主是angle.coe文件中的设定原因将向后多32数64Figure5。Figure . chipscope-bus plt一个周期)Figure .5
chipscopem半个周期) chipscope640.028。Table16误差计算22.5°0.3830.3470.03645°0.7070.7190.01267.5°0.9240.8900.03490°10.9800.02112.5°0.9240.9470.023135°0.7070.6950.012157.5°0.3830.3520.031180°00.0600.0606)tss86ns。2-的部分可能较大,经过迭代的累积,可能会产生较大的误差。通过与十次迭代对于 值的重新计算得到的图像对比得知,这也是 Figure3中红圈部分毛刺产生原因。由于迭代次数的限制,可能 Z还并没有很接近 0,导致图中阶梯状的原因。迭代运算中,、y的值有移位的操作来进行每次的除 2操作,其间被移除的数据也造成了误差。十次迭代计算 sin(x)由于 10次迭代和 6次迭代原理相同只是增加了迭代次数,这里只阐述和 6迭代的不同之处。(1) 10次迭代时需要变动的位置由 8位改为 12位,由于如果迭代 10次,原来数据长度由于值太小无法表示;增加变量。原来的 x,y,z的中间变量由 8个变为 12个;流水线由原来的 8增加到 12。判断象限和赋初值的过程未变,迭代次数增加,流水线长度也相应增加;增加7次迭代到10次迭代的代;ipcore和chipscope置中的writewidth和datawidth由8改为12;改 和 中的相应数据位长;新由于数据度变加值,如 中示。Table.8位12位8位12位45° 24° 14° 7° 4° 2°0.9°0.4°0.2°0.1°8’h01(2) 实验结果Modelsim仿真波形Figure . 次迭代modelsim仿真波形ChipscopeFigure . 代chipscope波形--bus plotFigure . 代chipscope波形--w10计算√ᵃ1ᵽÐ+ᵃᵽÐ主要输入输出变量释义://度PIPELINE=12; //流水线长x_ini; //输入的x的初值y_ini; y的初值x_out; //xx_temp;y_temp; 0~45角使用的中间变量程序流程10相同y值正负带入不同方程程序说明关x的输出:x2x2y2k
x_out<=((x10>>1)+(x10>>4)+(x10>>5)+(x10>>7)+(x10>>8)+(x10>>10)+(x10>>11)0°旋转只能覆盖一四象限还是先将节第一象限。另外y正负定旋转方角度小角角度的变化对y影响较明显如果求角度45°~90°范围内,xy0°~45°范围内进行计这样收敛速度会比较快相同次数条件下可减少误差。验结果仿真波形波形分析:
Figure
modelsim波形tyx当x0x与分析相次数还是较少形结化比较明显。ena10次约25ns。仿真波形:Figure11.chipscope--busplotY12'h100Figure .
和求根chipscope波形--wXY移位操作被省略的数值会造成的输出中的系数也是靠移位产生的,也会产生一定。10x轴上,期间会有较小的。解决法modelsim,出现的是一条直线解决formatanalog(automatic)。一开始仿真出来的sin(x)的到一个周期的图像。解决textclk5ns8192000ps多会有到四个周期。Modelsimchipsc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 虚拟舞蹈伴侣技术-深度研究
- 磁性胶束生物应用研究-深度研究
- 旅游市场营销策略优化-深度研究
- 老年人生活品质提升策略-深度研究
- 浮白识别算法创新探索-深度研究
- 跨平台数据同步机制-深度研究
- 产业链上下游协同-第1篇-深度研究
- 生物质能转化技术-第5篇-深度研究
- 生态补偿机制探索-深度研究
- 电商代理市场趋势预测-深度研究
- 2025年车位买卖合同模板电子版
- AI创作指令合集系列之-教案写作指令
- 关于投资协议书范本5篇
- 《反电信网络诈骗法》知识考试题库150题(含答案)
- 2025年上海市各区初三一模语文试卷(打包16套无答案)
- 2024 原发性肝癌诊疗指南 更新要点课件
- 《圆柱与圆锥-圆柱的表面积》(说课稿)-2023-2024学年六年级下册数学人教版
- 《人工智能基础》课件-AI的前世今生:她从哪里来
- ISO28000:2022供应链安全管理体系
- 临床营养技术操作规范(2010版)
- 2024年沙洲职业工学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
评论
0/150
提交评论