数字系统设计vhdl课设报告

数字系统设计vhdl课设报告

ID:33909823

大小:132.89 KB

页数:20页

时间:2019-03-01

数字系统设计vhdl课设报告_第1页
数字系统设计vhdl课设报告_第2页
数字系统设计vhdl课设报告_第3页
数字系统设计vhdl课设报告_第4页
数字系统设计vhdl课设报告_第5页
资源描述:

《数字系统设计vhdl课设报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、/93ASouthChinaUniversityofTechnology数字系统设计课程设计总结报告学院电子与信息学院班级09级信工二班组员李叙琼,王烁,秦子然,基于FPGA流水线结构的cordic算法实现一,背景当前最基本的运算就是加法,减法,乘法,除法。但那是随之数字化时代的来临,机器需要处理的数据运算不再仅仅是加减乘除了,会更多涉及到例如止弦,余弦,对数,方根倒数等超越函数(不能用冇限的加减乘除开方乘方来表示的函数),例如游戏《雷神Z锤iii》用到的快速平方根倒数运算就是一个复杂运算的应用,

2、这些运算不像加减乘除那么简单,那么具有绝对的精度,计算的过程涉及到多次乘除加减,移位,或者近似取值,而如何利用不同的算法来实现这些复杂运算,让其能够在合理的资源占有率的基础上以最快的时间完成运算呢?就成了当前研究的重要课题。Cpu运算器速度上面的不断升级要求普通运算的所用时间减少,从而减少功耗提高速度。对与FPGA来说,如何利用硬件的优势来实现这些复杂的运算?就是我们这次课程设计需要探讨的话题。超越函数的应用领域已经十分广泛,涉及到航空航天,机器人技术,实时语音,图像处理,滤波技术,FFT变换等多

3、个领域,随着各个领域的深入研究,画面及精度的要求提高务必要求运算器的速度和精度随着提高。当前硬件实现超越函数的算法有多种,按照数学公式一斤对应的实现方式的不同,可以分为查找表,多项式近似法,基于查找表的多项式结合方法,有理数近似和逐位法五种方法。经过对不同算法的分析和比较,我们小组采用cordic算法作为研究刈像,主要利用altera公司的cycloneii器件以及quartusii集成开发平台实现正余弦的运算。二,IEEE754单精度浮点数运算标准IEEE754规定,单精度浮点数基数为2,由数符

4、、阶码和尾数构成,各部分所占位数如下:尾数屮隐含存储着一个1,因此在计算尾数的真值时比一般形式要多一个整数1。阶码E的存储形式是127的偏移。例如:将数值・0・5按IEEE754单精度格式存储,先将・0.5换成二进制并写成标准形式:-0.5(10进制)=-0.1(2进制)=-1.0X2-1(2进制,-1是指数),这里sM为全0,E-127=-l,E=126(10进制)=01111110(2进制),则存储形式为:101111110OOOOOOOOOOOOOOOOOOOOOOOO=BFOOOOOO(1

5、6进制)浮点运算过程中会出现多种特殊值,陈列如下:1・零值:指数部分全部为0,并且尾数全部为0,则表示为浮点0.0,并且规定・0二+02.非规格化值:指数全部为0,尾数非0,则表示非规格化的值,16进制看到的就是[80xxxxxx]h或者[00xxxxxx]h3.无穷值:指数全部为1,尾数全部为0,则根据符号位分别表示正无穷大和负无穷人,16进制看到的就是[FF800000]h或者[7F800000]h4.NAN:指数全部为1,尾数非0,则表示这个值不是一个真正的值(NotANumber)。NAN

6、又分成两类:QNAN(QuietNAN)和SNAN(SingalingNAN)0QNAN的尾数部分最高位定义为1,SNAN最高位定义为0;QNAN—般表示未定义的算术运算结果,例如除0运算;SNAN—般被用于标记未初始化的值,以此来捕获异常。三,Cordie算法简介Cordie算法(TheCoordinateRotationalDigitalComputer)是一种用于计算一些常用基本运算函数和算术操作的迭代算法。从广义上来讲是一种数值计算逼近的方法,其基本思想是通过不断的偏移角度从而逼近所需旋转

7、角度的一种方法,由于这些固定的角度与计算的基数相关,所以运算只需进行移位及加减操作,不用进行传统计算中所用到的乘法器及除法器,从而节省了大量的硬件资源,同时节省很多的时间,众所周知,浮点乘法器及除法器所需要用到的硬件资源是很大的,在quartusii屮浮点的加法器IP核都至少需要用到八个时钟才能完成一次运算,如果是乘法运算则需要更多时钟周期。从而说明,利用cordic算法来做FPGA的硬件实现有利于节省空间及吋间的资源,接下来介绍cordic算法的基本原理及算法的实现可行性。⑴、cordic算法原

8、理CORDIC算法包含圆周系统,线性系统,双曲系统三种旋转系统。本文仅以圆周系统推导如下。该系统完成的是一个平面坐标旋转如图1所示,可以看出,将向量(Xi,Yi)旋转0角,得到一个新的向量(Xi,Yi),那么有:Xj=Rcos(04-P)=Xjcos0—Yjsin0Yj=Rsin(0+P)=Xjsin0+Yjcos0式屮R为圆周的半径」为旋转角度。写成矩阵形式:周系统平面坐标旋转1—tan0n'[Xnltan0n1lYnJ使用迭代的方法,旋转的角度可以在多步之内完成,每一步的旋转完

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。