VHDL实验三实验报告.docVIP

  1. 1、本文档共11页,可阅读全部内容。
  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文档。上传文档
查看更多
VHDL实验三实验报告

实验三. 四位有符号数除法 实验目的 使用硬件描述语言(VHDL)对除法器进行描述,并进行模拟和验证,熟悉fpga开发基本流程,加深对二进制数运算方法的理解。 二.实验内容 设计四位定点有符号整数除法器(op=ai÷bi),软件仿真通过后下载到FPGA板子进行验证: 1、 使用clock为输入时钟信号,其频率为50MHz 2、 使用拨码开关sw7~sw4为被除数ai,其中sw7为MSB(高位),sw4为LSB(低位) 3、 使用拨码开关sw3~sw0为除数bi,其中sw3为MSB,sw0为LSB 4、 使用按钮btn0作为输入确定信号,在每次改变输入时按下按钮得到输出结果 5、 以LED7~4为所得商op,LED3为MSB,灯亮代表该位为1. 6、 以LED3~0为所得余数,LED7为MSB 7、 若除数为0,则led7闪烁(闪烁频率自定义,以肉眼能分辨为准),led6~0熄灭 三.设计思路 对于有符号位数,在被除数与除数均为正数的情况下,使用的是如下的方法:被除数为A:A3,A2,A1,A0,除数为B:B3,B2,B1,B0。其中A3,B3为符号位,算法思想如下: 1、将二个操作数A,B都扩展成7位即:( A3和B3是符号位,不参与具体运算) A:0 0 0 A2 A1 A0 B:0 0 0 B2 B1 B0 2、将B左移三位得Q: B2 B1 B0 0 0 0 比较A与Q,若A=Q,商上1,A=A-Q; 否则,商上0,A=A; B右移一位; 如此循环四次,便得到所要的结果 但是被除数与除数中有一个是负数的情况下,需要分类讨论,具体如下: (1)被除数为负,除数为正。这种情况需将被除数取其补码,然后按上述方法操作,在得到相应的余数以及商的结果后,需将余数以及商都转为其补码形式再输出。 (2)被除数为正,除数为负。这种情况下需将除数取其补码,然后按上述方法操作,在得到相应的余数以及商的结果后,需将商转为其补码形式输出,余数按正常结果输出。 (3)被除数除数均为负。这种情况需将其两均转化为补码形式,然后按照上述方法操作,在得到相应的余数以及商的结果后,需将余数转为补码输出,商按正常结果输出。 四.模块划分 整个主程序划分为四个模块,分别为防按键抖动模块(bounce_eliminating)、除法模块(division)、LED灯控制模块(lout)以及分频模块(clk_divider)。 其中分频(clk_divider)模块将50MHz的频率分为200Hz用于控制刷新拨码开关的状态,2Hz用于控制当除数为零时LED灯的闪烁,分为2Hz是为了人眼的区分。 五.FPGA资源使用情况 Device Utilization Summary [-] Logic Utilization Used Available Utilization Note(s) Total Number Slice Registers 58 1,920 3% ? ????Number used as Flip Flops 49 ? ? ? ????Number used as Latches 9 ? ? ? Number of 4 input LUTs 127 1,920 6% ? Number of occupied Slices 93 960 9% ? ????Number of Slices containing only related logic 93 93 100% ? ????Number of Slices containing unrelated logic 0 93 0% ? Total Number of 4 input LUTs 168 1,920 8% ? ????Number used as logic 127 ? ? ? ????Number used as a route-thru 41 ? ? ? Number of bonded IOBs 18 83 21% ? ????IOB Flip Flops 7 ? ? ? Number of BUFGMUXs 1 24 4% ? Average Fanout of Non-Clock Nets 3.05 ? ? ? 整个的资源利用率较高,对于寄存器的使用情况,这组实验占用了58个,其中使用为触发器的为49个,使用为锁存器的为9个。主要是由于在与本次实验操作中,有些信号的赋值是以另外信号的跳变为条件的(即同步赋值),这些信号经过编译就会生成寄存器。整体说来,本次实验产生的寄存器的数量不是很多,情况很理想。 六.实验心得 这个实验是我第一次用FPGA板子,也是第一次使用xilinx编程

文档评论(0)

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

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

1亿VIP精品文档

相关文档