四位二进制乘法器设计报告
原理
此四位乘法器主要运用多次错位相加运算来实现乘法运算。由开关控制输入高电平或低电平产生两个二进制数(高电平有效),利用与门实现一位和四位的乘积运算,再将两次的乘积输入加法器,得到的和与进位与下一个乘积再进行加法运算。设两个二进制数分别是被乘数D1C1B1A1和乘数D2C2B2A2,得到结果Y8Y7Y6Y5Y4Y3Y2Y1,可以把乘法运算分解成四个一位与四位的乘积和三次错位相加。错位相加时累计和的最后一项可以直接输出为乘积的最低位,剩下三位和进位端再与高位乘积相加,每次相加后的最低位直接接到CD4511未接的最低位,经过三次相加就可以得到乘积。
以1011和1101为例
1101
*1011
110 eq \o\ac(□,1) (Y1)
+1101
1001 eq \o\ac(□,1) (Y2)
+0000
100 eq \o\ac(□,1) (Y3)
+1101
10001 (Y8—Y4)
网上有的乘法器电路图一般采用反复进行移位和加法来进行乘法计算,依靠寄存器不断左移实现错位,而我直接把最低位输出到数码管,将进位端作为最高位进行下一步计算,在接线时就完成了移位,省去了寄存器的使用,使电路更加简单。
主要器件
74ls283 3片
74ls08 4片
开关 8个
数码管 4个
CD4511 2片
10KΩ电阻 8个
470Ω电阻 14个
芯片介绍
74ls08:由四个与门组成
74ls283:加法器,(5,3,14,12,6,2,15,11)8个脚输入两个乘数,(4,,1,13,10)四个脚输出,7脚输入低电平控制芯片做加法,9脚是进位端。
CD4511:用于驱动共阴极 LED (数码管)显示器的 BCD 码-七段码译码器,无法显示十六进制数的A-E。
原理图
仿真
3*7=1*16+5=21
11*11=7*16+9=121
运算结果举例
乘数
被乘数
乘积十位
乘积个位
十进制数
1111(15)
1111(15)
E(224)
1
225
1101(13)
1101(13)
A(160)
9
169
1011(11)
1101(13)
8(128)
F(15)
143
1011(11)
1001(9)
6(96)
3
99
1001(9)
1001(9)
5(80)
1
81
0111(7)
0111(7)
3(48)
1
49
0101(5)
0101(5)
1(16)
9
25
遇到的问题
用protues仿真时输出直接接BCD码的数码管,显示的是十六进制数,焊接时用了CD4511,A-E消隐导致乘积只能显示0-9,有A-E就无法显示。