电子科技大学
数字电路课程设计报告
姓名:
张华博
学号:2011091010004
选课号:
132
指导老师:
张刚
f组合逻辑电路课程设计
16位BCD码加法运算器的实现
使用芯片74x283、74x157及与、或、非门器件设计一个电路,实现16位BCD加法运算。画出电路逻辑图,并用VerilogHDL进行仿真。注:74x283是4位二进制先行进位加法器,输入端有:Ci
、A30、B30;输出端有:Cout、S3:0;其功能大致可以表示为:Cout,SABCi
74x157为多路复用器,输入端有:S、A3:0、B3:0;输出端有:Y3:0;其功能为:YS’ASB
分析16位BCD码加法器,即:4位10进制加法器。记两加数分别为A、B,进位为Ci
,和为Sum对十进制有:Ci
个位Sum个位A个位B个位Ci
十位Sum十位A十位B十位Ci
个位Ci
百位Sum百位A百位B百位Ci
十位Ci
千位Sum千位A千位B千位Ci
百位易知:各数位运算规则基本相同,所以设计BCD加法器时可先独立设计4位(即:十进制一位)加法器。设计求和结果的不同表示形式如下表,使用74x283求和后的输出形式为普通二进制,最终输出结果为BCD码表示。由表易知:当(S1S2)S3Cout0时,YS;当(S1S2)S3Cout1时Y0S0Y1S1’Y2S1S2S1’S2’Y3S3’S2’S1S0’显然,Y与S之间可用74x157多路复用器进行转换74x157芯片的选择输入端为:s(S1S2)S3Cout
fCout00000000000000001111逻辑图
普通2进制表示S3S2S1000000001001010010011011100100101101110110111111000000001001
S001010101010101010101
Cout00000000001111111111
Y300000000110000000011
BCD码表示Y2Y1Y0000001010011100101110111000001000001010011100101110111000001
据分析易得BCD加法器个位部分逻辑图如下图(1)所示;
图(1)
f16位加法器整体逻辑图如下图(2):
pi
_
ame
INPUTVCC
pi
_
ame56
INPUTVCCOR2
AND2
OR2
OR2
AND2OR2
i
st11
i
st14
i
st15
i
st13
74283
GND
74157
SELA1B1A2B2A3B3A4B4GN
i
st
i
st42
i
st43
CINA1B1A2B2A3B3A4B4
i
st54
74283
CINA1B1A2B2A3B3A4B4
i
st74
74157
SELA1B1A2B2A3B3A4B4GN
GND
SUM1SUM2SUM3SUM4COUT
NOT
i
st16
Y1Y2Y3Y4
SUM1SUM2SUM3SUM4COUT
NOT
i
st44
Y1Y2Y3Y4
BITADDER
GND
AND2
MULTIPLEXER
BITADDER
i
st41MULTIPLEXER
AND2OR2OR2NOT
NOT
i
st17AND2i
st19i
st48NOT
i
st45AND2i
st47i
st46
AND4
i
st20NOT
i
st21
NOT
i
st18
AND4
i
st49
NOT
i
st23
NOTNOT
i
st51
NOT
i
st24i
st22
NOT
i
st52i
st50
i
st25
i
st53
OR2
AND2OR2
OR2
AND2OR2
i
st12
r