四位ALU算术逻辑单元设计实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实 验 报 告
实 验 人: 赵** 学 号: 09***** 日 期: 2010-10-08 院(系):
专业(班级): 09
实验题目: 四位ALU 算术逻辑单元设计实验
一. 实验目的
1. 了解ALU (算术逻辑单元)的功能和使用方法;
2. 认识和掌握超前(并行)进位的设计方法;
3. 认识和掌握ALU 的逻辑电路组成;
4. 认识和掌握ALU 的设计方法。
二. 实验原理
从结构原理图上可推知,本实验中的ALU 运算逻辑单元由4个一位的ALU 运算逻辑单元所组成。每一位的ALU 电路由全加器和函数发生器所组成,如下图(1)所示。事实上,ALU 的设计是在全加器的基础上,对全加器功能的扩展来实现符合要求的多种算术/逻辑运算的功能。为了实验多种功能的运算,An 、Bn 数据是不能直接与全加器相连接的,它们受到功能变量F3-F1的制约,因此,可由An 、Bn 数据和功能变量F3-F1组合成新的函数Xn 、Yn ,然后,再将Xn 、Yn 和下一位进位Cn-1通过全加器进行全加运算以实现所需的运算功能。ALU 中C0为最低位的进位输入端,C4为最高位的进位输入端,Sn 为运算结果。一位算/逻辑运算单元的逻辑表达式(n=1、2、3、4)如下:
Sn=Xn ⊕Yn ⊕Cn-1 Cn=XnYn+(Xn+Yn)Cn-1 令Pn=Xn+Yn , Gn=XnYn 则Cn=Gn+PnCn-1
X
B
A
全加器
函数发生器
Sn
C 4
Y
C 0
F1
F3 F2
图(1)
实验要求进位位采用超前(先行、并行)进位实现。超前进位电路同时形成各位进位,因此实现快速进位,达到快速加法的目的。这种加法器称为超前进位加法器。
各超前(先行)进位位的形成根据表达式Cn=XnYn+(Xn+Yn)Cn-1来确定,其中n=1、2、3、4。后产生的进位与前进位有关,最终每个进位也只和Xn、Yn、C0有关,而Xn、Yn、又是An、Bn的函数,如:
C1=G1+P1C0=X1Y1+(X1+Y1)C0
C2=G2+P2C1=X2Y2+(X2+Y2)X1Y1+(X2+Y2)(X1+Y1)CO
一些控制信号如F3-F1为功能控制信号,控制着4位ALU运算逻辑单元的八种功能操作:A4-A1和B4-B1为ALU的两组数据输入端;S4-S1为了4位ALU的4个输出端,S表示为S=SS43S2S1;C4为4位ALU的最高位进位输出端,依次还有C3、C2、C1。(考虑级联关系时,如有必要可增加级联控制端G)。
三. 实验内容
依照ALU的原理与逻辑结构原理图,用超前进位的方法设计能实现下面八种功能操作的4位ALU,并对电路进行封装。
要求:
输入信号:A4-A1、B4-B1、F3-F1、低位进位C0、(级联控制端G);
输出信号:S4-S1、进位C4。
4位ALU的八种功能如下:
四. 实验器材
1.电脑一台
2.MAX+PLUS II 电路设计软件一套
3.根据需要选用器件,但以基本逻辑门电路器件为主
五. 实验分析与设计
实验要求设计四位ALU,其中加法减法运算要求全部采用超前进位,所以不把单个ALU 进行封装,而是把整个四位ALU超前进位电路图一次画出。超前进位的原理是所有进位都可以表示成AN…A1,BN…B1,CI的函数,与前一个运算单元无关。而SN等于CN-1异或AN 异或BN。由于运算的独立性,可以使四个运算单元并行运算,从而大大提高效率。(这里特别说明一下,由于扩展的需要,多个四位ALU并联的时候F1要作为进位输入。)
而对于ALU,要实现的功能大都与超前进位加法器有关,基本思路是如果F3=1,则将AN直接输入,否则输入0;如果F2=0,则将BN取反输入,否则输入BN;如果F1=1,则进位设为1。然后都通过加法器相加。
当F3,F2.F1同时为1时,就输出AN…A0,BN…B0的异或,所以有一个三输入与门专门控制。为了方便看,波形图已将输入输出设置为数组(实际上电路图的输入输出并没设成数组,因
为这样封装后反而难布线)。波形图如下:
由于已经考虑到了扩展,所以八位的ALU的设计就很简单了,只要将第一个ALU的进位输出与第二个的F1相连,由于F3,F2,F1同时为一时要进行异或运算,而这时候第一个ALU的输出有可能不是1,所以这时就要强制把第二个的F1设置为1。电路图如下
电路图如下:
六. 实验心得
通过本次试验,使我明白了ALU的基本构成原理,同时也深刻的认识到ALU和加法器,乘法器等的区别与联系,更认识到了ALU在CPU中的重要地位。对超前进位这种进位方法对串行进位的优势也有了了解。