欢迎来到天天文库
浏览记录
ID:14133610
大小:145.00 KB
页数:9页
时间:2018-07-26
《算术运算单元alu的设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一、设计题目及要求设计题目:算术运算单元ALU的设计要求:1.进行两个四位二进制数的运算;2.算术运算:A+B,A-B,A+1,A-1;3.逻辑运算:AandB,AorB,Anot,AxorB。注意:从整体考虑设计方案,优化资源的利用。二、设计过程及内容(包括总体设计的文字描述,即由哪几个部分构成的,各个部分的功能及如何实现方法;主要模块比较详尽的文字描述,并配以必要的图片加以说明,但图片数量无需太多)1.整体设计思路(1)根据设计要求将题目划分为五个模块。包括两个逻辑运算模块,两个算术运算模块,和一个控制模块。其中逻辑运算模块为AandB和AorB,Anot和AxorB;算术模块为A±B,A
2、±1。(2)因为需要进行四位二进制数的运算,因此用A4A3A2A1表示四位二进制数A,用B4B3B2B1表示四位二进制数B,用C4C3C2C1表示四位二进制数C。其中A,B为输入,C为输出。(3)用74283超前进位加法器和其他所学元器件设计并建立四个运算模块,每一个模块在高,低电平的控制下均可分别实现两个运算功能。再设计一个二线四线译码器作为控制模块控制四个运算模块,然后将各个模块连接起来,这样就实现了题目要求的八个运算功能。总体电路设计原理图9总体电路仿真图2.分模块设计(1)A且B和A或B模块A且B模块直接通过四个二输入与门实现,A或B直接通过四个二输入或门实现。同时设计一个转换控制端M
3、,当M=1时,A且B工作,M=0时,A或B工作。最后设计一个总的控制端K1,K1=1时模块正常工作,K1=0时模块不工作。A与B和A或B模块原理图A与B仿真图9A或B仿真图(2)A非和A异或B模块A非直接通过四个非门实现,A异或B直接通过四个异或门实现。同时设计一个转换控制端M,M=1时A非工作,M=0时A异或B工作。最后在设计一个总的控制端K2。K2=1时,模块正常工作,K2=0时,模块不工作。9A非和A异或B模块原理图A非仿真图A异或B仿真图9(3)A+B和A-B模块A+B直接通过74283两个四位二进制数加法器直接实现。A-B可以看做A+(-B),即A加B的补码来实现。同时再设计一个转换
4、控制端M。M=0时实现A+B,M=1时实现A-B。最后再设计一个总的控制端K3,K3=1时模块正常工作,K3=0时不工作。做加法时,CO为进位输出,CO输出1表示有进位,做减法时,CO为借位输出,CO输出1表示有借位。A+B和A-B的模块原理图A+B仿真图9A-B仿真图(4)A+1和A-1模块A+1如同A+B一样可以通过74283加法器实现,只要把B设置成1即可。A-1可以看成A加上1的补码实现。同时设计一个转换控制端M。M=0时实现A+1,M=1时实现A-1.最后再设计一个总的控制端K4,K4=1时模块正常工作,K4=0时模块不工作。做加法时,CO为进位输出,CO输出1表示有进位,做减法时,
5、CO为借位输出,CO输出1表示有借位。9A+1和A-1模块原理图A+1仿真图A-1仿真图(5)控制模块控制模块可以通过一个二线四线译码器来实现,依次控制上述总的控制端K1,K2,K3,K4。从而可以分别实现各个模块的功能。译码器真值表输入端输出端S1S0K1K2K3K40010000101001000101100019控制模块原理图控制模块仿真图三、设计结论(包括设计过程中出现的问题;对EDA课程设计感想、意见和建议)通过这次EDA课程设计,我收获很多,也学到了很多。一开始刚拿到题目的时候,很没有思路,后来经过耐心的思考和上网查阅资料开始理出了一点头绪。每个模块设计的都很顺利,仿真也很成功。但
6、在后期将电路下载到实验箱进行硬件仿真时,却屡屡出错。经过多次排查,最后确定为实验箱问题,换了一个就好了。不其中线路接触不好的问题也给我带来了很大的苦恼,很多时候结果输出不正确,转动转动接触点就好了。总之最后的实验还是很成功的。看着自己做出来的东西也很激动。最后,感谢学校给我们安排了这样的一次课程设计。让我们可以将所学应用实践之中。感谢实验过程中各位老师的悉心指导与帮助。99
此文档下载收益归作者所有