




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、«电了设计自动化课程设计题目:2位十进制四则运算器电路摘要本次设计的目的是通过 QuartusII 软件实现输入两个 2 位十 进制数( 099),输出它们的四则运算(加减乘除)结果(发光极管显示运算模式;调用LPM_MULT LPMCONSTANTLPMDIVIDE模块)。实现的方法是利用四则运算的规律进行初步设计,然后进行调整和修改。 最终结果要求: 随机的输入两个数, 经过加法、 减法、乘法和除法的运算, 可以得到正确的运算结果。主要分为 4 大部分:一、 2 位十进制数模块;二、加减乘除 四则运算四个小模块;三、加减乘除四则运算的选择模块;四、 处理输出结果的模块。目录10系
2、统设计单元电路设计软件设计系统测试14结论146 参考文献141、系统设计一、设计要求:输入两个2位十进制数(099),输出它们的四则运算(加减乘除)结果;发光二极管 显示运算模式;可调用 LPM_MUL及LPMDIVIDE模块。二、系统设计方案:(1)系统设计思路要完成2位十进制四则运算器电路,首先,需要生成2个两位的十进制数,其次,需要加减乘除四个运算,然后,四种运算的选择,最后,对输出结果的处理。2个2位十进制模块:法一,用两个100进制计数器构成;法二,用 4个10进制计数器构成。因为add1模块(后面详细介绍)只有两个输入口,所以选择法一比较方便。制成模块,再分别取出它的各位、LPM
3、的方法制成一个模块,在分别取出LPM制成乘法模块。除法:直接调加减乘除四则运算:加法:写一个加法程序, 十位、百位。减法:写一个减法程序,用调用 它的各位、十位和符号位。乘法:直接调用内部 用内部LPM制成除法模块。分别选择加减乘除。加减乘除运算的选择:写一个4路选择器,对输出结果的处理:写一个程序,对应不同选择下的不同输出,注意位数(加法:输出在0198之间,需3个LED灯来显示;减法:输出在099之间,需3个LED灯(其 中一个符号位);乘法:输出在09801之间,需4个LED灯;除法:输出在099之间, 需2个LED灯。综上可知,输出一共需 4个LED灯)。(2)总体方案的论证与比较该方
4、案能够较好的实现本设计的功能。一些小模块可以有不同做法。如:2位十进制模块:法一,用两个100进制计数器构成;法二,用 4个10进制计数器构成。因为add1模块(后面详细介绍)只有两个输入口,所以选择法一比较方便。加减乘除输出结果的处理:要求出各个位的数。(假设输出结果3位)法一:每次除以10,依次求出个位、十位、百位;法二:除以100,得百位,除以10得个位和十位。因为法二需要较多的 LPMDIVIDE和LPMCONSTANT所以,法一比较好。(3 )各功能块的划分与组成(4)系统的工作原理对于随机输入的两个数,系统都会对其进行加减乘除四则运算,然后选择加法、减 法、乘法或除法来作为输出,并
5、验证其正确性。2、单元电路设计一、输入单元( 2 个 2 位十进制模块)输入单元设计中,用VHDL语言来实现该功能,然后制成模块。二、加法单元对两个输入的数进行加法运算, 可用VHDL语言来实现该功能。其输出结果在0198 之间,将其结果显示在 LED灯上,就需调用 4个LPMDIVIDE和4个LPM_CONSTAN来实 现。三、减法单元 对两个输入的数进行减法运算,可用表示负号。输出范围在 果显示在LED灯上。四、乘法单元 乘法单元可调用LPMDIVIDE和4个LPMCONSTANTS其结果显示在 LED灯上。五、除法单元 除法单元直接调用六、选择模式单元 用VHDL语言写一个四路选择器程序
6、,然后制成模块。七、输出单元用VHDL语言写一个程序可实现该功能,然后制成模块。099之间,需VHDL语言来实现。结果有正、负之分,“F”来2 个 LPMDIVIDE 和 2 个 LPM_CONSTANT将其结LP M_MULT莫块来实现。其输出结果在0 9801 之间,需 4 个3个LPMDIVIDE和2个LPM_CONSTA就可以实现其要求。3、软件设计一、软件设计平台和开发工具在在Quartus II平台中用 VHDL语言编程和调试。并调用其Quartus II 的内部模块来实现设计要求。二、程序原理图总程序图及其仿真波形! rssrbi TVFFwrvrt:lai1I 彎”_ . _
7、卜 W d B-JL、 J I* L 迟 Fl - 比礴q m 3UP 11* " * * F I:匡,.ifc-vE.J"LIr'yF'E 勺3典cixqd11pmmrrl »匸 i EZZ3kfi.F- ! WrF - !' HI Ird V4- «l I'l葩蹴 1.* rvfr盛p C-i:iavH jeMl:! HiiljivfaC中 iimfW為 flic刚聊 亍匪窗n|l.町- iViwhL»dCg-=KSi- A>nhU2"*"*V hq°IH'pi v
8、ip q.、7y、VM . 、-Vf n 、H L» n -'."电刃 -I l_ L -l_ , 1,. _ -t -i*JTfclJW£ymrPffT:! mA.:*ulL'FiBffi昴血和,嗣“砂 mjirpqHkc4f1|l.D|!前而=- I I lEWy I III. .-話IA1i曲i|5 Q|hjb.wtZIlQ|呷9 0|懺jja|'rti|E Q| mUjxjl怡.习 '4h£)9 0| ffliJ_Sulip.O( miJ_iiJl2p.O( mui_wnD -Hwt a| dLHrtIO 胡
9、39;dijS ill 召5叩.間rtf 乂 q 利ji; q aHjWPl anju叭 苦 帆帖閃 MW Uft创 nd jLl哥斗DLtTDCfl a 0AS卫舟ME期JiiXfZlfl jhEL血Hfil! i ;:;:;:;:; ;:; fttfrtttflLOl Mbttrpi耳 如叩胡-rihii c -gunr D litii 旷''二VRB'Il-lWV耳卿沖 r::DmiLhSOC: U T - f ! ”、WH -toZQ'ftiS"= 4L _ 1I _、g1F r» »r ! -rT T-n.!【9】7 w
10、M頤旷1船【:帀3【0】!im但而贡血dnia !皿!nsrnrsin旷nn:i血ifi硕国:iNif園 j( L e nncYanmoanimunionrnfar ;【厂 ffiO" J】_. ynnrninB 【i i 関 i 丨同"hErr .厂& iI呦iX 1:1園 JP7N000000圍【 ! ! ! ! !y 【0 f 【那冋:、?1 I冈 T ro LTTT 】)!砌而而厂丽帀r園鬧rnm厂仃旷iir( m i囿nrErn旷厂耐n口【曽旧)育厂mn丽口门而:帀丫莎帀了¥口丫¥1:EZ0I_U II InjuiTuuva一 一 一一
11、 O-iQQ呢 咒闪 SI D tE SMT1J 叫哑 ”【皿: 心即 Funu EU j(jj 訶丁啣 星MlF (E1f:叩 "卬n即叩on E帘DM Fn冋艸Fi7护呼E1,pnw Eb加SWT 0:f*T 0Hm g1 Yf77IV订'S£ IhM ,!明|;1-V曾IFsV叽旻:削站lypun|:'jn jpoi m:卩丁壬 轴山囲硼山螂卩邺irvi rtcniip 旧 IV宰碍怎5-西S兰g-s亠書£鬼星L址瑩-qFgE左电0号=pdls 暨屯斋M U吕号宀523 一百进制模块 其程序为:library ieee;use ieee.st
12、d_logic_1164.all;use ieee.std_logic_ un sig ned.all;en tity t100 isp ort(clk,rst,e n:i n std_logic;cq:out std_logic_vector(6 dow nto 0);cout:out std_logic);end t100;architecture behav of t100 isbeginpro cess(clk,rst,e n)variable cqi:std_logic_vector(6 dow nto 0); beginif rst ='1' the n cqi:=
13、(others =>'0');elsif clk'eve nt and clk='0' the nif en ='1' thenif cqi<99 the n cqi:=cqi+1;else cqi:=(others=>'0');end if ;end if;end if;if cqi=99 the n cout<='1'else cout<='0'END IF;cq<=cqi;end pro cess; end behav;仿真波形为:IrleivdlO
14、psErdDue恤(!dkAl殂Ar5tJU0A CcoatEl如 lefTinEbi逸血训»叫咋 唧护 唧护叫阳 叫瞋 叫晔 皿UTmRmmrnmAORioRiRRonRommAo?BSBBOEESHnnnDEEEfflEBIXniEQZEQIJMnXQOS!'''''II IIIIIIIrII:IrIIriI IIIIIIIIIQIIIIIIIII IIII!0!'!'!II IIIIIiIIII :IIIIIIiII IIII IrillI a r - I r - I - r r I I 加法模块(1 )、add 程序li
15、brary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_ un sig ned.all;en tity add isport(shu1: in std_logic_vector(6 dow nto 0);shu2: in std_logic_vector(6 dow nto 0); shu_out: out std_logic_vector(7 dow nto 0);end add;architecture behav of add is sig nal a,b:std_logic_vector(7 dow nto 0); begin
16、pro cess(shu1,shu2)begina<='0' &shu1;b<='0' &shu2;shu_out<=a+b;end p rocess;end behav;(2) add1 模块2位十进制数(即输入宽度是7字节6.0),所以输出范围为0198(3 )有关说明 因为输入是两个(即输出宽度为8字节7.0),之后除以100得百位,再除以10的各位和十位。减法(1) sub程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;
17、en tity sub is port(sub_ in1, sub_i n2flagsub out:in std_logic_vector(6 dow nto 0);:out std_logic;:out std_logic_vector(6 dow nto 0);end en tity sub;architecture beh of sub isbeginp rocess(sub_ in1, sub_ in2)beginif sub_ in 1>sub_ in2 the n flag <= '1'elsesub_out <= sub_i n1-sub_ in
18、2;flag <= '0'end if;end pro cess;end architecture beh;(2) sub1 模块 sub_out <= sub_i n2-sub_ in1;IpmcJonstawS i-EAip :L4WEL."'5fl HJJb_4Ulfl C;1亠r:LHI - : I pin constants :! I 卄numt4E.m quDi旳匪 G?dEnarr.q re'-Bhl.C)UhrS<3MED - - - I-;!IpftidMdeQnun*lE.m puDi和曙 dEnanf? q wn
19、iifLCl 秤i一)百也b ihjm.ljKS iMED j !DwHittd UhrS5MED i rail(3 )有关说明字节。flag是标示位,两数相减若两个百进制数相减,最大为99,即输出最多需要为正数,flag输出为0;若为负数,flag输出为"F” 乘法(1) mul1 模块:ln consBSs i樽.'Iptn constsrtjj- - lpm”niij曲 二冬-匚:曲Egrr . 2 .-: . Iir W-T ' jracB Fr ri 1-. :旳 "11 H, - 1-上 1Llom dsTJel r'如哺 drswifS
20、(1h.ieHfiChiLiii : *|'-Ipffl caistairil:I呵IumflSl.EI qiKt(即二刈伽帝 0J TnSfiU Q1畑9關弟ChKff.niiSMD-b(r_cnnitartj!i -: I血13 ruineillLJff wneifllCf 虫呵14rcrtnp.D,gr.UHSi 强 J Eve it U阀逅Ipffi dM肘qHdSTlIJ.”dernr.lT reiHip.ff -孙:. 応別BiaiE?;.-;(2 )有关说明因为99*99=9801,所以输出需14个字节,即宽度为13.0.共需4个lpm_divide。除以10得个位,再除
21、以10的十位,然后除以10得百位,最后再除以10得千位。 除法(1) div1 模块(2 )有关说明除法单元直接调用 3个LPM DIVIDE和2个LPM CONSTANT就可以实现其要求。选择模块library ieee;use ieee.std_logic_1164.all; use ieee.std_logic_ un sig ned.all;en tity ct4 is port(CLK:IN STD_LOGIC;A:OUT STD_LOGIC_VECTOR(1 DOWNTO 0);END ct4;architecture one of ct4 isSIGNAL B:STD_LOGIC
22、_VECTOR(1 DOWNTO 0); beginprocess(CLK)beginif CLK'event and CLK='1' THENIF B<3 THEN B<=B+1; ELSE B<=(OTHERS=>'0');END IF ; END IF;END PROCESS;A<=B;END ARCHITECTURE;输出模块(1)输出模块程序 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cal4_mo
23、d ISPORT( mod_seladd_out1add_out2add_out3 flag sub_out1: 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;sub_out2mul_out1mul_out2mul_out3mul_out4div_out1div_out2 outmod outLED1outLED2outLED3outLE
24、D4: 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); : 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_vecto
25、r(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);END cal4_mod;ARCHITECTURE bhv OF cal4_mod ISBEGINprocess(mod_sel)begincase mod_sel iswhen "00"=>outmod<="1000"outLED
26、1<=(others=>'0');outLED2<=add_out3; outLED3<=add_out2; outLED4<=add_out1;when "01" => outmod<="0100"=>outLED1<=(others=>'0');outLED2<=(others=>(not flag) ; outLED3<=subout2; outLED4<=subout1;when "10"=>outmod<="0010"outLED1<=mulout4;outLED2<=mulout3;outLED3<=mulout2; outLED4<=mulout1;when others =>outmod<="0001" outLED1<=(others=>'0');outLED2<=(others=>'0'); outLED3<=divout2; outLED4<=divout1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 我心中的未来城市想象画想象写物结合类作文12篇范文
- 金融咨询服务协议
- 门面租房协议书合同
- 2022学年上海复旦附中高一(下)期末历史试题及答案
- 2021学年上海华二紫竹高一(下)期中地理试题及答案
- 《中国古代文化史讲座:中华传统文化教育教案》
- 工地无伤赔偿协议书
- 八月装修公司活动方案
- 公交公司为民活动方案
- 公交宣传活动方案
- 《redis讲解》PPT课件
- TOM全面品质管理PPT课件
- 风机基础施工强条执行记录表
- (完整版)澳洲不随行父母同意函
- 模具报价表精简模板
- 客诉处理与应对技巧
- 哈工大桥梁基础与墩台复习总结盛洪飞
- 框架六层中学教学楼工程施工方案
- 浅析Zabbix平台在电力企业信息设备监控中的应用
- 螯合树脂资料
- 电力工程监理规划
评论
0/150
提交评论