EDA课程设计论文——乘法器.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA课程设计论文——乘法器

目录 一、 综述 2 乘法器总体设计 2 二、 设计内容与仿真结果 2 1. 防抖存数部分 2 小结 5 2. 输入模块部分 6 3. LED显示部分 6 4. 乘法部分 7 小结 9 5. 选择显示部分 10 6. 数码管显示部分 10 7. 整体结果 12 小结 12 8. 附2进制转BCD码 13 小结 14 三、 总结 15 一 乘法器总体设计 本设计由防抖存数模块,输入模块,乘法模块,LED显示模块,选择显示模块以及数码管显示模块组成。可实现两个5位数相乘。用发光二极管显示输入数值,用7段显示器显示十进制结果。乘数和被乘数分两次由实验箱上的按键输入,同时在数码管显示分别显示乘数与被乘数。输入显示和计算结果显示,采用分时显示方式进行,可参见计算器的显示功能,显示采用16进制。KEY1~KEY5为数A、数B的输入端,KEY6表示乘号,KEY7表示等号。初始时刻数码管显示“00”,此时可直接输入数A,数码管显示数A,此后按下KEY6,表示数A输入完毕,此后输入为数B,数码管显示数B,数B输入完毕,按下KEY7,对输入的两数进行乘法计算,并由数码管显示结果。 各模块均由VHDL语言编写,例化成元件后采用原理图法进行连接。可简单清晰地描述各模块之间信号的传递。 实验箱主要由EPM7128SLC84-15及其外围电路组成,箱上LED及数码管均为共阳极接法,按键按下时输出高电平。 乘法器整体设计如下图所示: 设计内容与仿真结果 防抖存数部分 本设计采用按键输入,所以需对按键进行防抖,同时,由于按键按下后会弹起,不能保持输出高电平,所以须对输入处理,此处曾设计了两种方案: 采用RS触发器搭建而成,R端接地,在时钟上升沿触发下,S端输入高电平(按下按键)时Q端输出为高,此后S端输入低电平(松开按键),Q端保持输出为高。 用RS触发器搭建的实现方式如图: 但此方法在输入A时置为高的位,输入B时仍为1,此时需要清零。所以将清零端接到”乘法”(图中为”CHENG”)控制端,按下此键,表示数A输入完成,同时对前5位清零。按下“等号”(图中为”DENGYU”)后,计算完成,需对各位清零。在试验箱上实验时发现,用一位按键清零,干扰十分严重,只要有输入就会对其他位清零。故采用两位同时控制清零。“CHENG”与“RES”同时按下清前5位,“DENGYU”与“RES”同时按下清各位零。注意按“CHENG”的时间前后都要长于按“RES”的时间,按“DENGYU”的时间前后要短于按“RES”的时间,才能达到正确的效果。仿真结果如图: 采用程序方法控制,当检测到输入的上升沿时输出取反。此时需要按键的输入稳定,故需防抖模块,可用两个D触发器搭建,也可用程序描述,防抖时需要的时间延迟可计数实现,也可对实验箱的时钟分频,得到稳定的时钟脉冲防抖。此处采用分频方式实现。分出8HZ的频率。 整体电路如图所示: 防抖模块主要程序: ARCHITECTURE behave OF fangdou IS SIGNAL QA,QB:STD_LOGIC; BEGIN PROCESS(CLK) BEGIN IF(CLKEVENT AND CLK=1) THEN QA=KEY; QB=QA; END IF; KOUT=QA AND (NOT QB); END PROCESS; END behave; 程序所描述的原理图为: 仿真结果如下: KEY(保持输入)模块主要程序: ARCHITECTURE behave OF KEY IS BEGIN PROCESS(SHURU) VARIABLE QA:STD_LOGIC; BEGIN IF(SHURUEVENT AND SHURU=1) THEN QA:=NOT QA; END IF; SHUCHU=QA; END PROCESS; END behave; 仿真结果如下: 可以看出,与二分频效果相同。 分频模块主要程序: ARCHITECTURE behave OF fenpin IS SIGNAL QA:STD_LOGIC; SIGNAL QB:STD_LOGIC; BEGIN PROCESS(clk) VARIABLE I:INTEGER RANGE 0 TO 99 ; BEGIN IF(clkevent and clk=1) THEN IF(i99) THEN I:=I+1; ELSIF(i=99) THEN i:=0; QA=NOT QA; END IF; END IF; -- HZ8=QA; END PROCESS; PROCESS(QA) VAR

文档评论(0)

糖糖 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档