基于FPGA的除法器设计.pdf

基于FPGA的除法器设计.pdf

ID:57066919

大小:271.13 KB

页数:3页

时间:2020-07-31

基于FPGA的除法器设计.pdf_第1页
基于FPGA的除法器设计.pdf_第2页
基于FPGA的除法器设计.pdf_第3页
资源描述:

《基于FPGA的除法器设计.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第9卷第6期杭州师范大学学报(自然科学版)Vol.9No.62010年11月JournalofHangzhouNormalUniversity(NaturalScienceEdition)Nov.2010DOI:10.3969/j.issn.1674232X.2010.06.017基于FPGA的除法器设计姚茂群,叶汉能,张立彬(杭州师范大学信息科学与工程学院,浙江杭州310036)摘要:运用移位、比较以及减法等主要操作设计一种基于FPGA的除法器,克服了常见除法器要求除数为2的指数幂、商为带余数的整数等限制,一定程度上扩展了除法器的功能.关键词:FPGA;除法器

2、;移位、比较以及减法;2的指数幂中图分类号:TN402文献标志码:A文章编号:1674232X(2010)06047803在FPGA得到广泛应用的情况下,应用过程中有时需要确定数据之间的具体倍数关系,因此很多公司针对自己的芯片开发了相应的除法器IP核.但是这些算法存在一些限制,比如要求除数是2的指数幂、[12]运算数据为整数以及精度受到限制等.在加、减、乘运算的设计已实现的情况下,要实现除法运算,可以[3]有2种方案:将除法转换为乘法或采用减法与移位的组合.结合实际电路的情况,该文以二进制数为例,采用减法与移位的组合,设计一种通用且任意精度的二进制

3、数除法器.整个设计、分析过程均在AlteraFPGAEP1C6Q240C8环境下进行验证.1实现过程以8位无符号数的除法为例,商根据所需精度设计相应位数.具体设计过程如下:1)设计9位数中间变量C,其高8位的初始值为00000000!,最低位置入A的最高位数,然后将被除数A进行一位左移,最低位置入0!;设计9位数中间变量D,将其最高位设置为0!,低8位为被除数B.2)在时钟的上升沿,将C与D进行比较.如果C大于或等于D,则由高到低将商中相应的位置1!,并用C减去D,将其差值重新赋予C;如果C小于D,则由高到低将商中相应的位置0!.3)在时钟下降沿,C左移一位,最低

4、位置入A的最高位;A左移一位,最低位置入0!.在时钟上升沿回到2)过程.以上2)和3)间的循环次数取决于需要得到的商的精度.2实现方式该设计采用EDA的基本思想,分模块进行,主要包括移位模块、比较模块、减法模块,并将各模块进行整合,实现完整的除法器电路.各模块如图1所示.收稿日期:20100609基金项目:浙江省科技厅计划项目(2007C31003).作者简介:姚茂群(1967),女,浙江杭州人,教授,博士,主要从事数字集成电路设计研究.Email:yaomaoqun@163.com第6期姚茂群,等:基于FPGA的除法器设计4792.1移位模块根据时钟

5、信号对移位寄存器中的数据C进行由低位向高位的移位操作,并将被除数A的最高位置入寄存器最低位.对被除数A进行左移时,将其最低位置入0!.2.2比较模块图1除法器模块图根据时钟信号对输入数据进行由高位到低位的逐次比较,并将结果中大于和等于归为一类,输出相应的比较结果1!,将小于归为一类,输出相应信号0!.2.3减法模块根据比较模块输出的信号控制减法模块的工作情况,从而实现只有在被减数大于或等于减数的时候进行运算.设计中运用将减法转化为加法的思路来设计适合该除法器的减法器.该模块用VHDL描述如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164

6、.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYMINUSISPORT(CLK:INSTD_LOGIC;INPUTA,INPUTB:INSTD_LOGIC_VECTOR(8DOWNTO0);S:OUTSTD_LOGIC_VECTOR(8DOWNTO0));END;ARCHITECTUREONEOFMINUSISBEGINPROCESS(CLK)VARIABLEDB:STD_LOGIC_VECTOR(8DOWNTO0);BEGINDB:=(NOTINPUTB)+1;IFCLK∀EVENTANDCLK=#1∀THE

7、NS<=INPUTA+DB;ENDIF;ENDPROCESS;END;该减法器RTL图如图2所示.图2减法器RTL图480杭州师范大学学报(自然科学版)2010年将以上模块整合,并要求商精确到二进制数小数点后面8位,用Quartus∃对除法器进行仿真,得到仿真波形如图3.图3除法器仿真结果图3中A和B对应被除数和除数,S为商,且S高8位为整数部分,低8位为小数部分,图中除数为00110011!,被除数或者除数的变化将触发除法器进行计算.当被除数是11110000!时结果为100.10110100!;当被除数是00001000!时结果为0.00101000!

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

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

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