数字设计-组合逻辑电路-BCD加法器课程设计报告.docx

数字设计-组合逻辑电路-BCD加法器课程设计报告.docx

ID:57286019

大小:51.08 KB

页数:6页

时间:2020-08-09

数字设计-组合逻辑电路-BCD加法器课程设计报告.docx_第1页
数字设计-组合逻辑电路-BCD加法器课程设计报告.docx_第2页
数字设计-组合逻辑电路-BCD加法器课程设计报告.docx_第3页
数字设计-组合逻辑电路-BCD加法器课程设计报告.docx_第4页
数字设计-组合逻辑电路-BCD加法器课程设计报告.docx_第5页
资源描述:

《数字设计-组合逻辑电路-BCD加法器课程设计报告.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、电子科技大学数字电路课程设计报告姓名:张华博学号:04选课号:132指导老师:张刚组合逻辑电路课程设计——————16位BCD码加法运算器的实现使用芯片74x283、74x157及与、或、非门器件设计一个电路,实现16位BCD加法运算。画出电路逻辑图,并用VerilogHDL进行仿真。注:74x283是4位二进制先行进位加法器,输入端有:Cin、A[3:0]、B[3:0];输出端有:Cout、S[3:0];其功能大致可以表示为:{Cout,S}=A+B+Cin74x157为多路复用器,输入端有:S、A[3:0]、B[3:0];输出端有:Y[

2、3:0];其功能为:Y=S’·A+S·B分析16位BCD码加法器,即:4位10进制加法器。记两加数分别为A、B,进位为Cin,和为Sum对十进制有:{Cin个位,Sum个位}=A个位+B个位{Cin十位,Sum十位}=A十位+B十位+Cin个位{Cin百位,Sum百位}=A百位+B百位+Cin十位{Cin千位,Sum千位}=A千位+B千位+Cin百位易知:各数位运算规则基本相同,所以设计BCD加法器时可先独立设计4位(即:十进制一位)加法器。设计求和结果的不同表示形式如下表,使用74x283求和后的输出形式为普通二进制,最终输出结果为BCD

3、码表示。由表易知:当(S1+S2)·S3+Cout=0时,Y=S;当(S1+S2)·S3+Cout=1时,Y0=S0Y1=S1’Y2=S1·S2+S1’·S2’Y3=S3’·S2’·S1·S0’显然,Y与S之间可用74x157多路复用器进行转换74x157芯片的选择输入端为:s=(S1+S2)·S3+Cout普通2进制表示BCD码表示CoutS3S2S1S0CoutY3Y2Y1Y0000000000000001000010001000010000110001100100001000010100101001100011000111001110

4、10000100001001010010101010000010111000101100100100110110011011101010001111101011000010110100011011110010110001001111001逻辑图据分析易得BCD加法器个位部分逻辑图如下图(1)所示;图(1)16位加法器整体逻辑图如下图(2):图(2)仿真(VerilogHDL)首先,对74x283芯片进行仿真,定义adder模块如下:moduleadder(A,B,Cin,S,Cout);input[3:0]A,B,Cin;output[3:

5、0]S;outputCout;assign{Cout,S}=A+B+Cin;endmodule然后,调用adder模块,组合设计BCDaddermoduleBCDadder(C,D,Cin1,Su,CO);input[15:0]C,D;input[3:0]Cin1;output[15:0]Su;outputCO;wire[15:0]S1,SS;wire[3:0]Cout1;adder(.A(C[3:0]),.B(D[3:0]),.Cin(Cin1),.S(S1[3:0]),.Cout(Cout1[0]));assignSS[0]=(S1[1

6、]

7、S1[2])&S1[3]

8、Cout1[0];assignSu[0]=S1[0];assignSu[1]=SS[0]&(~S1[1])

9、~SS[0]&S1[1];assignSu[2]=SS[0]&(S1[1]^~S1[2])

10、~SS[0]&S1[2];assignSu[3]=SS[0]&(~S1[3]&~S1[2]&S1[1]&~S1[0])

11、~SS[0]&S1[3];adder(.A(C[7:4]),.B(D[7:4]),.Cin(SS[3:0]),.S(S1[7:4]),.Cout(Cout1[1]));assignSS[4]=(S

12、1[5]

13、S1[6])&S1[7]

14、Cout1[1];assignSu[4]=S1[4];assignSu[5]=SS[4]&(~S1[5])

15、~SS[4]&S1[5];assignSu[6]=SS[4]&(S1[5]^~S1[6])

16、~SS[4]&S1[6];assignSu[7]=SS[4]&(~S1[7]&~S1[6]&S1[5]&~S1[4])

17、~SS[4]&S1[7];adder(.A(C[11:8]),.B(D[11:8]),.Cin(SS[7:4]),.S(S1[11:8]),.Cout(Cout1[2]));assignSS

18、[8]=(S1[9]

19、S1[10])&S1[11]

20、Cout1[2];assignSu[8]=S1[8];assignSu[9]=SS[8]&(~S1[9])

21、~SS[8]&S1

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

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

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