有符号5位整数除法器的设计与制作.docVIP

有符号5位整数除法器的设计与制作.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
有符号5位整数除法器的设计与制作

有符号5位整数除法器设计与制作 1.课程设计的性质、目的和任务 创新精神和实践能力二者之中,实践能力是基础和根本。这是由于创新基于实践、源于实践,实践出真知,实践检验真理。实践活动是创新的源泉,也是人才成长的必由之路。 通过课程设计的锻炼,要求学生掌握电路的一般设计方法,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,培养学生的创新精神。 2. 课程设计基本要求 掌握现代大规模集成数字逻辑电路的应用设计方法,进一步掌握电子仪器的正确使用方法,以及掌握利用计算机进行电子设计自动化(EDA)的基本方法。 3. 设计课题要求 设计一个两个五位数相除的整数除法器。用发光二极管显示输入数值,用7段显示器显示结果十进制结果。除数和被除数分两次输入,在输入除数和被除数时,要求显示十进制输入数据。采用分时显示方式进行,可参见计算器的显示功能。 4. 设计内容: 有符号5位整数除法器设计与制作 根据系统设计要求,系统设计采用自顶向下的设计方法。顶层设计采用原理图设计方式,系统的整体组装设计原理图如下图所示,它由除法器输入模块、除法实现模块和显示译码模块三部分组成。 4.1除法器输入模块 本除法器的被除数和除数(有符号5位整数)分两次输入,设置两个标志位A和B,A和B的初值均为0。当A=1,B=0时,输入为被除数;当A=1,B=1时,输入为除数。将被除数和除数分别送至显示电路,以十进制形式显示,同时送入除法实现电路进行除法运算。 输入模块的源程序如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY SHURU1 IS PORT(LOADA,LOADB,CLK:IN STD_LOGIC; DIN:IN STD_LOGIC_VECTOR(4 DOWNTO 0); A,B:OUT STD_LOGIC_VECTOR(4 DOWNTO 0)); END SHURU1; ARCHITECTURE BEHAVE OF SHURU1 IS BEGIN PROCESS(LOADA,LOADB,DIN,CLK) BEGIN IF( CLKEVENT AND CLK=1) THEN IF (LOADA=1AND LOADB=0)THEN A=DIN; END IF; IF (LOADA=1 AND LOADB=1)THEN B=DIN; END IF; END IF; END PROCESS; END BEHAVE; 生成模块如图(1-1)所示: 如图(1-1) 本模块的仿真波形如图(1-2)所示: 如图(1-2) 4.2 除法实现模块 本模块作用是将输入的被除数和除数进行除法运算,输出商和余数。 计算前在A和B端口输入被除数和除数,然后在Load线上送高电平,把数据存到除法计算电路内部,然后经过若干个时钟周期,计算出商和余数,并在SH和YU端输出。 其实现方法是,将除法器分为两个状态:等待状态与运算状态。开始时除法器处于等待状态,在该状态,在每一时钟上升沿,采样Load信号线,若是低电平,则仍处于等待状态,如果采样到高电平,除法器读取A,B数据线上的输入数据,保存到内部寄存器a_r,b_r,置sh_r为0,yu_r为a_r,判断除数是否为零,若不为零则进入运算状态。 在运算状态,设置符号位寄存器fu_r,将a_r和b_r的最高位(即符号位)异或后赋给fu_r。在每一时钟上升沿,除法器先比较yu_r,b_r低四位的大小,若yu_r大于等于b_r,则sh_r增加一,yu_r = yu_r – b_r(均为低四位),仍处于运算状态。若yu_r小于b_r的低四位,则说明运算已经完成,再将sh_r、yu_r填上符号位作为结果输出到SH,YU数据线,再次回到等待状态,等待下一次的除法运算。 除法实现模块的源程序所下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CHUFA IS PORT(CLK,L

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档