四位二进制乘法器的设计与实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

四位二进制乘法器的设计与实现

1.实验目的

A A A A

设计一个乘法器,实现两个四位二进制数的乘法。两个二进制数分别是被乘数3210

B B B B。被乘数和乘数这两个二进制数分别由高低电平给出。乘法运算的结果即乘和乘数3210

积由电平指示灯显示的二进制数。做到保持乘积、输出乘积,即认为目的实现,结束运算。

2.总体设计方案或技术路线

总体思路:将乘法运算分解为加法运算和移位运算。根据Bi的值决定部分积P与A相加或与0相加,之后移位,经过四次以上运算后得到最终的乘积。

对于4位乘法器而言,设A=1011,B=1101,则运算过程可由下图所示。从乘法运算过程可知,乘法运算可分解为移位和相加两种子运算,而且是多次相加运算,所以是一个累加的过程。实现这一累加过程的方法是,把每次相加的结果用部分积P表示,若B中某一位Bi=1,把部分积P与A相加后右移1位;若B中某一位Bi= 0,则部分积P与0相加后右移1位(相当于只移位不累加)。通过4次累加和移位,最后得到的部分积P就是A与B的乘积。

为了便于理解乘法器的算法,将乘法运算过程中部分积P的变化情况用图3表示出来。存放部分积的是一个9位的寄存器,其最高位用于存放在做加法运算时的进位输出。先把寄存器内容清零,再经过4次的加法和移位操作就可得到积。注意,每次做加法运算时,被乘数A与部分积的P7~P4位相加。设A=1011,B=1101则结果如下图所示

技术路线:实验中,将乘法器电路分为三个部分分别设计,分别是时钟电路,乘法控制电

路,乘法运算电路。

(1) 时钟电路:由一个D 触发器和一个非门组成,D 触发器为二分频接法。时钟电路共

产生CP ̅̅̅̅, CLK,CLK ̅̅̅̅̅̅三个不同于原时钟CP 的时钟,其中CP

̅̅̅̅是寄存器1,2的时钟,CLK 是寄存器3,4的时钟,CLK

̅̅̅̅̅̅是计数器,控制端D 触发器的时钟。 (2) 乘法控制电路:由一个D 触发器,一个计数器和两个与非门组成。计算信号S 由数

据开关输入,终止信号i4由计数器产生,计算信号S 通过D 触发器产生控制信号S 和S ,控制信号S 和终止信号i4通过二输入与非门产生控制信号-i4,控制信号S ,控制信号-i4和时钟CLK 通过三输入与非门产生控制信号Cs1。控制信号S 控制寄存器1,2和计数器的清零端,控制信号S 控制寄存器3的S1,寄存器4的S0和S1,控制信号-i4控制寄存器3的S0,计数器的EP 和ET ,元件K (三输入与门)的开启与封闭,控制信号Cs1控制寄存器1和2的S1。

(3) 乘法运算电路:由四个寄存器,一个加法器和四个元件K (三输入与门)组成。被乘

数A 和B 分别由寄存器4和3输入,乘积由寄存器2和3输出,加法运算由加法器完成,移位运算由寄存器1,2和3完成。

3.实验电路图

说明:被乘数3210A A A A 和乘数3210B B B B 分别由寄存器4和寄存器3的A4A3A2A1和B4B3B2B1

在并行置数端置入。乘积由寄存器2和寄存器3的输出端C8C7C6C5C4C3C2C1输出。CP 为连续脉冲时钟信号,频率可以自行设定。S 为计算信号,初始时为0。寄存器1和寄存器2的S0,计数器的LD ,寄存器3和寄存器4的Rd ,D 触发器的Rd 和Sd 均保持为1状态,寄存器1的ABC ,加法器的C0,寄存器1的Dsr 均接地。其余管脚不接。

整体电路图:

C8 C7 C6 C5

其中K元件(实际为三输入与门)如下所示

=

时钟电路图:

CP

乘法控制电路图:

4. 仪器设备名称、型号

寄存器均选择4位多功能移位寄存器74LS194,加法器选用4位二进制超前进位加法器

74LS283,计数器选用十六进制异步清零计数器74LS161,D触发器选用上升沿双D触发器

74LS74,四输入与非门选用三个74LS20,二输入与非门选用两个74LS00,直流稳压电源,

实验箱,导线若干。

5.理论分析或仿真分析结果

1.初始状态:A4A3A2A1和B4B3B2B1均为0,S为0,寄存器1,寄存器2,计数器均处于

清零等待状态,寄存器3,寄存器4处于置数状态。此时可输入A4A3A2A1和B4B3B2B1,将

会分别置入寄存器3和寄存器4。

2.计算过程:

B B B B后,即可按下S键,使其为1,(1)将A和B置入后,在乘积电平指示灯显示00003210

计算开始。

̅̅̅̅时钟脉冲上升沿,寄存器1和2置数,将第一次计算结果传递给输出端。(2)第一个CP

(3)第一个CLK时钟脉冲上升沿,寄存器3右移,为下一次计算做准备。

̅̅̅̅时钟脉冲上升沿,寄存器1和2右移,为下一次计算做准备。

(4)第二个CP

⃐ 时钟上升沿,计数器加1。

(5)第一个CLK

(6)重复(2)(3)(4)(5)过程。

⃐ 时钟脉冲后,计算结束,电平指示灯i4亮,计算结束。电平指示灯显示为(7)在4个CLK

八位二进制计算结果。此时,元件K为关闭状态,寄存器1,2处于置数状态,寄存器3处

于保持状态,使得输出结果保持为计算乘积。

仿真实验电路图及仿真实验结果:

被乘数A 乘数B 乘积P

0001 0001 00000001

0010 0010 00000100

0100 0010 00001000

1010 1100 01111000

1100 1100 10010000

1011 1101 10001111

1111 1111 11100001

相关文档
最新文档