版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、M *吟Huaqiao university电子设计自动化课程设计题目 2位十进制四则运算器电路院(系)信息科学与工程学院专 业通信工程届 别2011 级班 级学 号姓 名任课老师 彭盛亮摘要本设计是利用 EDA 技术实现的 2 位十进制四则运算器,是基于 QuartusII7.2 软件,利用其强大、直观、便捷和操作灵活的原理图输 入设计的功能来完成本次设计的。此设计利用 QuartusII7.2 中的 EP2C5T144C芯片来控制整个程序的运行,用七段数码管显示各个输 入和输出,用LED灯的亮灭来显示运算模式,而软件部分则是由VHDL 语言来编写的, 是通过精心的设计和合理的规划而完成的设
2、计。 设计 完成后的运算器不仅能实现数据的加减乘除运算, 而且还能使数据及 其计算结果在数码管上显示出来,能够实现 0-99 的十进制数字四则 运算。目录第一章 系统设计 11.1 设计要求 11.2 系统设计方案 11.2.2 总体方案的论证 21.2.4 各功能块的划分和组成 3第二章 单元电路设计 42.1 输入模块 42.2 加法模块 52.3 减法模块 52.4 乘法模块 62.5 除法模块 72.6 模式选择模块 82.7 输出模块 8第三章 软件设计 93.1 软件设计平台、开发工具和实现方法 93.2 程序的流程方框图 93.3 实现的功能及程序清单 103.3.1 百进制计数
3、器 103.3.2 四选一数据选择器 113.3.3 加法模块: 123.3.4 减法模块 123.3.5 乘法模块 133.3.6 除法模块 133.3.7 输出模块 13第四章 系统测试 154.1 功能的测试方法、步骤 154.2 仪器设备 16第五章 结论 16参考文献 16附录 A 电路图图纸 17附录 B 软件程序 20第一章系统设计1.1设计要求输入两个2位十进制数(099),输出它们的四则运算(加减乘除)结果;发光二极管显示运算模式;可调用LPM_MUL及LPM_DIVIDE模块。1.2系统设计方案系统设计思路通过分析可知,要完成本次课程设计可以分为三个模块来实现相应的功能,分
4、别是输入模块、计算模块以及输出模块。其中各个模块的任务要求为:输入模块:输入两个2位十进制数以及运算模式的选择*计算模块:根据输入模块的选择完成相应的运算过程*输出模块:输出各个输入及计算结果总体方案的论证方案一:根据功能和指标要求,计算器电路包括三个部分:显示电 路、 输入电路和芯片控制电路。用七段数码管作为显示电路,各作为 输入电路,利用程序输入法将计算器所需的程序写入芯片。模块图如下:方案二:根据计算器的功能要求,计算器电路可包括四个部分:选用LED数码管作为显示部分,各按键作为输入部分,运算模块,芯 片控制部分。模块图如下:123方案的对比选择从电路清晰程度来说方案二要优于方案一,因为
5、方案二显示 结果清楚明了,比用方案一的准确度更高,而且电路分模块来做, 更加清晰,连线相对也比较简单。所以为了得到更好的结果,我 所以选择方案二。124各功能块的划分和组成选择模块加法输入1减法乘法芯片控制LED输出输入2除法计算模块125系统的工作原理(1)由于要设计的是四则计算器,可以进行四则运算, 则采用七段数码管显示数据和结果。(2) 另外键盘包括两个十进制数输入键、一个模式选择 键,故只需要3个按键即可。(3)执行过程:使能端打开后显为示零,等待键入数值,当键入两个数字,计算器在内部执行数值转换和存储,并等 待键入模式,当再键入模式后将在数码管上显示运算结果。第二章单元电路设计2.1
6、输入模块工作原理: 一百进制数输出最高是99,故需7个字节才可能将其包含在内,因此cq的宽度6.0。 LED每一位的最高输出为9,故需4个字节才可能将其包含在 内,故LED1和LED2的宽度为3.0。2.2加法模块工作原理:利用VHDL语言来实现两个2位十进制数的加法,做出一个小加add_in16.O;add_out13.Qiadd_in26.(add_out33.Oadd_ou123.0size_adldrH法模块。又由于其输出结果在 0 198 之间,故要将此小减法模块将和2个lpmdividel 和 2 个 lpm constant0 相连,从而 使得当两个十进制数输入后可以在 3个LE
7、D数码管上显示最终结果参数计算: 输入最高值是 99,需7个字节才可能将其包含在内,因此 add_in1 和 addn2 的宽度6.0。 输出结果最高值为3位数,且要将其显示在LED灯上,则设置 3个输出,可利用LPM_CONSTAN取10,将输出的结果2次模10得 到百位数、十位数和个位数。LED每一位的最高输出为 9,故add_out1、add_out2和add_out3 的宽度为3.0。2.3减法模块工作原理:subjnl 6,r0flagsub_in2(6.期sub_cut23 .0:size_subb| 帕 |2利用VHDL语言来实现两个2位十进制数的加法,做出一个小减法模块。又由于
8、其输出结果在-99 99之间,故将此小减法模块将和2个lpm dividel 和2个lpm constantO相连,从而使 得当两个十进制数输入后可以在 3个LED数码管上显示最终结果,其 中一个LED数码管显示结果的符号,若为负数则符号位出现“ F”参数计算: 输入最高值是 99,需7个字节才可能将其包含在内,因此 subn1和subn2的宽度6.0。 所得结果最高值为2位数,且要将其显示在LED灯上,则设置 2个数值输出,又由于可能出现结果为负数的情况,故又设一个符号位输出。可利用LPM_CONSTAN取10,将输出的结果2次模10得到 十位数和个位数。 LED每一位的最高输出为 9,故s
9、ub_out1和sub_out2的宽度 为3.0。2.4乘法模块乘法运算可以直接调用lpm_mulT1 .0工作原理:结果在0 9801之间,故要将此模块和out_mult3P,.O的模块来实现乘法运算。又由于其输出7datab6014个lpm divide1 和4个lpm constant0 相连,从而使得当两个十进制数输入后可以在4个LED数码管上显示最终结果参数计算: 输入最高值是99,需7个字节才可能将其包含在内,因此dataa 和datab的宽度6.0。 所得结果最高值为4位数,且要将其显示在LED灯上,则设置 4个数值输出,可利用LPM_CONSTAN取10,将输出的结果4次模 1
10、0得到千位数、百位数、十位数和个位数。 LED每一位的最高输出为9,故 out_mult1、out_mult2、out_mult3 和 out_mult4 的宽度为3.0。2.5除法模块工作原理:size drw, t,、 一 size 加idiv_h16 .0 div?停可div_out1I3.Q| di/_out23 (J|除法运算可以直接调用ipU divJn16-.O djv_out13.0?t “in26 0 divoutZR O LPM_DIVIDE的模块来实现除法运算。又-_:Kt3由于其输出结果在0 99之间,故要将此模块和2个lpm divide1 和2个lpm consta
11、nt0 相连,可利用LPM_CONSTAN取 10,将输出的结果2次模10得到十位数和个位数。 参数计算: 输入最高值是99,需7个字节才可能将其包含在内,因此div_in1 和 div_in1 的宽度6.0。 所得结果最高值为2位数,且要将其显示在LED灯上,则设置2个数值输出,可利用LPM_CONSTAN取10,将输出的结果2次模10得到商的十位数和个位数。 LED每一位的最高输出为 9,故div_out1和div_out2的宽度为3.0。2.6模式选择模块工作原理:CLKCQp-.ORSTCOJTEN殆t4由于要在加、减、乘、除四个模式中选择一 个进行计算,所以可利用一个四选一的数据选
12、择器来作为模式选择器,通过一个时钟信号来 改变改变数据选择器从而控制模式选择。2.7输出模块s z mod-1frwd_Eei.0,outmod3 0J JjutLEDl1.31add_art23.DOJILED2I3. .013OutL=C-l3.J10);HI:=(OTHERS =0);ELSIF CLKEVENT AND CLK=1 THENIF EN =1 THENIF HI9 THENIF CQI0);HI:=HI+1;END IF ;ELSE HI:=(OTHERS =0);END IF;IF CQII0);END IF ;END IF;END IF;IF(CQI=9 AND HI
13、=9) THEN COUT=1;ELSE COUT=0;END IF ;CQ=CQII;LED1=HI;LED20) ;ELSIFCLKEVENT AND CLK=1 THENIF EN = 1 THENCQI := CQI + 1;END IF;END IF;IF CQI = 0 THEN COUT = 1;ELSE COUT = 0;END IF;CQ i i i nnMnr fan d诃eI*rai(3.I ht*|I:L1细_肘血1 叫晰勒iull?.1: MMn3 J mrii|l.CWu昨JEF山昶:Mijh 血 1 -.rrr.r :uwnlp.C卫 IKT: liehrVIIE
14、b粧旳Ipm conslandQ-i_&LriJf mF IP 訥_聆.旬-. . -.335乘法模块功能:进行乘法运算原理图:除法模块功能:进行除法运算原理图:CtrayiisUhlSiaiEC:h&lnumt 1(6,0 quolifh聃間 denoir .0)wnain6期jneriiUHSIGhED r -nurw(6.,0 quoteni|6 0| - dnnfl 口 iBmaln .即Nume- e UNSIGMEjDe-cm s UNSIGNED;:J Ipm d丽血Driuiwp queffl|6 OfIpn coianrfQ-Bdi:Inm rnn时讪fl i-r-r n-i
15、-i:ar-r-p C .ifiiIsnuiiiii iii4taIa.4I.aiaiiiiBiiiiaHaaiiiBii输出模块功能:控制输出结果程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SIZE_MOD ISPORT( MOD_SELADD_OUT1ADD_OUT2ADD_OUT3FLAGSUB_OUT1SUB_OUT2MUL_OUT1MUL_OUT2MUL_OUT3MUL_OUT4DIV_OUT1DIV_OUT2 OUTMOD OUTLED1 OUTLED2 OUT
16、LED3 OUTLED4 END SIZE_MOD;: IN STD_LOGIC_VECTOR(1 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC;IN STD_LOGIC_VECTOR(3 DOWNTO 0);IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0);IN STD_LOGIC_VECTOR(3 DOWNTO 0
17、); IN STD_LOGIC_VECTOR(3 DOWNTO 0);IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); OUT STD_LOGIC_VECTOR(3 DOWNTO 0);: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); : OUT STD_LOGIC_VECTOR(3 D
18、OWNTO 0);ARCHITECTURE BHV OF SIZE_MOD ISBEGINPROCESS(MOD_SEL)BEGINCASE MOD_SEL IS WHEN 00 0);OUTLED2=ADD_OUT1(3 OUTLED4OUTMOD=1000; OUTLED1 DOWNTO 0);OUTLED3OUTMOD=0100; OUTLED1 0);OUTLED2(NOT FLAG);OUTLED3=SUB_OUT1(3DOWNTO0); OUTLED4 OUTMOD=0010; OUTLED1=MUL_OUT1(3 DOWNTO 0);OUTLED2=MUL_OUT2;OUTLED
19、3=MUL_OUT3; OUTLED4 OUTMOD=0001; OUTLED1 0);OUTLED2 0);OUTLED3=DIV_OUT1(3 DOWNTO 0); OUTLED4=DIV_OUT2;END CASE;END PROCESS;END BHV;第四章 系统测试4.1 功能的测试方法、步骤软件部分:1、将写好的的程序先进行编译2、编译通过后,利用波形仿真来观察结果是否正确。3、采用模式 5 进行分配管脚后,再进行编译4、将编译通过的程序下载到EDA实验箱上进行硬件验证。 硬件部分1、选择模式 5 进行测试2、利用多邦线将 en 接 vcc,rst 接 gnd3、根据管脚的分配(
20、键1 clkl、键2clk2,键3clk3),按键 1 和键 2 来改变输入值,按键 3改变运算模式。比如: 当按键 1 和键 2 输入 38 和 47,则可在数码管上显示 85,按键 3 改变加法、减法、乘法、除法模式。当模式为减法时,其结果为“ F9”当模式为乘法时,其结果为1786;当模式为除法模 式时,其结果为 0.4.2 仪器设备EDA技术实验箱PC机(带有quartus软件)第五章 结论本次设计完成了设计的基本要求, 即随机输入两个 2 位数, 可进 行该两个数的四则运算并且输出相应的结果。同时也掌握了用 VHDL 语言来设计四则运算的基本要求,加深了对软件的了解。参考文献潘松,黄
21、继业.EDA技术与VHDL语言.第三版.北京:清华大学出版社.2011.附录A电路图图纸总系统电路图纸pjTWT gT 耳 ill;.屯e4 .-Ft 丫芒 朴二二TF1IZ2石屠addiilasql-; Jvxx mils2 I *3m*;!out mLdt2【3LP言弐05:3 里Jmtea _nN:吕O1oul42:耳slosSIG 日 肿EOJrp q ilgs _sTULwop g EOJSC-IQ li-s OJLESH 吕 0Bh _iJamr 冬w LaiWf -Ig岸-除法模块电路图乘法模块电路图=u merasquaienrta34mnonx6;已 恳畐亘6;且1吕2 二工
22、5一GNEnDwom K UN3-GNE口-Bnn CDnslsrnc宀盘二multicaIFilll|&矍 m:二 唱 c口看 taJaX:1-=3l?D l-:aEKr 1居 mee3. 且 qg.is-s.u3:D一 knsrrp:吕 帚 mam 一 3:口IMJW 斫 UMSIGKD053STUNSIGNE:-01 总黑 q _i Q-lT F J: 1 -_-:hrq - J4 -Dm生乏刍I mmrtpo】 quof 帀吴6.S一 1 gdeno 旦 3“ 吕 Ema=:3&- I burner 丙 UNS-GHEOlal Denoni is UNS-GHEIO.uJn2 .cl
23、- - - JI:一:昭丄飞-rI一-pin corlslgrnfomme 巳 3oj qgbewso一1 -s-ne 旦.! .mismaie: 口一LmertGIJNS 帀商口 033 is 匸富|0hiu-口-m EnsiBnp :一-pm CDnsl&rFn一pm dividenumert62QLlH.iensH -a a %- -az-PTPtT _Nugts umsqneoDelcrrMIuhsqhee眉|5 -SE-nfar - -iT s quoffi-s=3: 口1 -&n0ml 严旦 吊 ExV E is ums 亞丙U5wcssu尹巨%|numefpw.sq 药.iE-3
24、.=3. .2 isunw is UNSIShELJ 053STsjnsignem- 3_Ararsi-J- J.加法模块电路图减法模块电路图0- 蔓,倉-.|自 岂.|-衿7呂3wr4J1Z.-mdMdlcpl - numerp 吕 quotients 1 defIQmp,.吕 rmmamps I zumr审 匸扁一燮EDDe忌n匝匚瞬-GHEDfeeIsrlm=dalag T 皆严 inzpa書产05;4:9-pm conslsrns- I 一y 一nsxE:-DmuMdITL numefp:三 qua.帀nt7-亘-1 蛊 n 豈 3:srem 豈 3:sI0_SB UNS-GNED-B
25、rEM“ -pmnon5ans.一一 DmidMd 呂I n umer6;oj quoffn-s: 9 denwnpo一 Emam 一 3:QMl dr e llks-GNm口 Dswm G US-GNED nsQf 尸 3Lt2J:Q一 -pm CCInsIErnuJ -nurner6:c GUa:Ea6- deno 旦 3rem.np3 Murrf m UMS-QhlEC n-lul m UMy?GNmcdivide。一nsif附录 B 软件程序小加法模块程序 :LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSI
26、GNED.ALL;entity cal4_add isport( add_in1, add_in2 : in std_logic_vector(6 downto 0); add_out: out std_logic_vector(7 downto 0);end entity cal4_add;architecture beh of cal4_add issignal a1: std_logic_vector(7 downto 0);signal a2: std_logic_vector(7 downto 0);signal a3: std_logic_vector(7 downto 0);beginprocess(add_in1, add_in2)begina1=0&add_in1; a2=0&add_in2; a3 = a2+a1; add_outsub_in2 thenflag = 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年成人高考专升本《英语》全真模拟试卷(一)
- 诺如病毒暴发环境终末消毒实操课件
- 世界传统医药日互动游戏课件
- 国际雪豹日互动游戏课件
- 大雪:多吃温性食物御寒课件
- 2026成都市石室天府高一入学数学分班考试真题含答案
- 2026年【临床医学检验技术(士)】题库及答案
- 2025年湖北省(专升本)历史历年真题及答案
- 2025年度乳腺甲状腺外科护士长工作总结暨工作计划
- 2026公务员时事政治热点必考题库及一套完整答案
- 中国临床肿瘤学会(CSCO)胃癌诊疗指南(2026版)
- 湖南省长沙市2026-2027学年高二上学期第一次月考物理自编卷01(人教版必修一、二、三9-11单元)(含答案)
- 2026年硕士研究生《306临床医学综合能力(西医)》试题
- 二年级(上)语文生字课课贴250字
- 小学主题班会课件:语言表达
- 《决策树与智能推理》教学课件-2025-2026学年人教版初中信息技术(人工智能专册)
- 2026年春季开学“两案九制”完整文件,工作方案应急预案晨午检复课证明传染病防控健康教育消毒隔离制度等
- SHS 01038-2019包装机维护检修规程
- 2026广发银行秋季校园招聘笔试历年典型考题及考点剖析附带答案详解
- 2026年超声乳化术配合培训视频资料
- 国际贸易参展计划书模板
评论
0/150
提交评论