EDA与VHDL实现8位加法器.docx

EDA与VHDL实现8位加法器.docx

ID:59255707

大小:24.59 KB

页数:5页

时间:2020-09-08

EDA与VHDL实现8位加法器.docx_第1页
EDA与VHDL实现8位加法器.docx_第2页
EDA与VHDL实现8位加法器.docx_第3页
EDA与VHDL实现8位加法器.docx_第4页
EDA与VHDL实现8位加法器.docx_第5页
资源描述:

《EDA与VHDL实现8位加法器.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、EDA技术与VHDL实训姓名:李*班级:电信**-*学号:12********电子与信息工程学院8位加法器设计一实训目的1.学习使用VHDL语言设计电路,加深对VHDL语言的理解与应用。2.学习8位加法器的VHDL程序设计方法。3.学习例化语句的应用,并能够利用例化语句完成从半加器到全加器的设计。二加法器加法器是为了实现加法的。即是产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。常用作计算机算术逻辑部件,执行逻辑操作、移位与指令调用。对于1位的二进制加法,相关的有五个的量:1,

2、被加数A,2,被加数B,3,前一位的进位CIN,4,此位二数相加的和S,5,此位二数相加产生的进位COUT。前三个量为输入量,后两个量为输出量,五个量均为1位。对于32位的二进制加法,相关的也有五个量:1,被加数A(32位),2,被加数B(32位),3,前一位的进位CIN(1位),4,此位二数相加的和S(32位),5,此位二数相加产生的进位COUT(1位)。要实现32位的二进制加法,一种自然的想法就是将1位的二进制加法重复32次(即逐位进位加法器)。这样做无疑是可行且易行的,但由于每一位的CIN都是由前一位的COUT提供的,所以第2位必须在第1位计算出结果后,才能

3、开始计算;第3位必须在第2位计算出结果后,才能开始计算,等等。而最后的第32位必须在前31位全部计算出结果后,才能开始计算。这样的方法,使得实现32位的二进制加法所需的时间是实现1位的二进制加法的时间的32倍。三实训内容首先设计半加器,然后用例化语句将它们连接起来。利用半加器和或门构成1位全加器,以1位全加器为基本硬件,构成串行进位的8位加法器。3.1设计1位半减器利用真值表设计1位半减器。图3-1中的h_add是半加器,sum是输出和,a_out是进位输出,add_in是进位输入。表3-1加法真值表加数x加数y和sum进位a_out000001101010110

4、1add_ine d summ add_out f yxx y h_add suma_out x y h_addsum a_out 图3-1半加器原理图实现1位半减器VHDL程序。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYh_addISPORT(x,y:INSTD_LOGIC;a_out,sum:OUTSTD_LOGIC);ENDENTITYh_add;ARCHITECTUREadd0OFh_addISSIGNALs:STD_LOGIC_VECTOR(1DOWNTO0);BEGINs<=x&y;PROCESS(s)B

5、EGINCASEsISWHEN“00”=>a_out<=‘0’;add<=‘0’;WHEN“01”=>a_out<=‘1’;add<=‘0’;WHEN“10”=>a_out<=‘1’;add<=‘0’;WHEN“11”=>a_out<=‘0’;add<=‘1’;WHENOTHERS=>NULL;ENDCASE;ENDPROCESS;ENDARCHITECTUREadd0;3.2设计或逻辑门实现或逻辑门的VHDL程序。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYorISPORT(a,b:INSTD_LOGIC;c:OUT

6、STD_LOGIC);ENDENTITYor;ARCHITECTUREorrOForISBEGINc<=aORb;ENDARCHITECTUREorr;3.3设计1位全加器实现1位全加器的VHDL程序。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYf_addISPORT(x,y,add_in:INSTD_LOGIC;add_out,sum:OUTSTD_LOGIC);ENDENTITYf_add;ARCHITECTUREadd1OFf_addISCOMPONENTh_addISPORT(x,y:INSTD_LOGIC;a

7、_out,summ:OUTSTD_LOGIC);ENDCOMPONENTh_add;COMPONENTorISPORT(a,b:INSTD_LOGIC;c:OUTSTD_LOGIC);ENDCOMPONENTOR;SIGNALd,e,f:STD_LOGIC;BEGINu1:h_addPORTMAP(x=>x,y=>y,sum=>d,a_out=>e);u2:h_addPORTMAP(x=>d,y=>add_in,sum=>summ,a_out=>f);u3:orPORTMAP(a=>f,b=>e,c=>add_out);ENDARCHITECTUREadd1;3.

8、4设计8位

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。