实验内容:运算器组成实验专 业:信息安全班 级:1303学 号:姓 名:电 话:邮 件:报告日期:2015-06-01 指导教师: 谭志虎
目 录
1实验目的3
2实验环境3
3实验内容3
3.1Logism实验3
3.274LS181实验3
4方案设计4
4.1运算器扩展4
4.2溢出检测5
5过程与调试5
5.1实验步骤5
5.2测试用例6
5.3结果与分析6
5.4故障与调试6
6总结与心得7
6.1实验总结7
6.2实验心得7
7参考文献8
实验目的
熟悉Logisim软件平台。
掌握运算器基本工作原理
掌握运算溢出检测的原理和实现方法;
理解有符号数和无符号数运算的区别;
理解基于补码的加/减运算实现原理;
熟悉运算器的数据传输通路。
实验环境
Logisim是一款数字电路模拟的教育软件,每一位用户都可以通过它来学习如何创建逻辑电路,方便简单。 它是一款基于Java的应用程序,可运行在任何支持JAVA环境的平台,方便学生来学习设计和模仿数字逻辑电路。Logisim中的主要组成部分之一就在于设计并以图示来显示CPU。当然Logisim中还有其他多种组合分析模型来对你进行帮助,如转换电路,表达式,布尔型和真值表等等。同时还可以重新利用小规模的电路来作为大型电路的一部分。
实验内容
Logism实验
学会使用子电路,并能将子电路放到main电路中使用
学习使用时钟,并能使用时钟单步或自动运行
学会使用分线器,理解线宽的概念
学会使用隧道,学习使用探测器,了解logisim数据监测方法。
熟悉按键、LED,
74LS181实验
构建8位运算器。在logisim平台中利用现有的74LS181子电路,构建一个请仔细思考其对应逻辑
8位运算器封装实验。将第一步实现的8位运算器电路,封装成子电路,该子电路封装基本抽象如图 1所示
图 1 运算器封装
表1所示
表1 运算符功能
S0十进制运算功能0000加法0001减法2与3或将两个74LS181芯片串联,共用一个S输入端和,将两个74LS181芯片(174LS181芯片(2
芯片(将所有关键点的值用探测和隧道方式结合引出,用
当S=1001,时执行加法运算;
S=0110,时执行减法运算;
因为0110时执行的运算为输入端的第一位的非、第四位的非和第二三位相与后取非作为芯片(
芯片(P输出的非与芯片(4.11 8位运算器电路图:
溢出检测
4.21 有符号溢出检测
根据操作数和运算结果的符号位是否一致进行检测,公式:
因为加减操作时,溢出情况不同。
加法时两同号才可能溢出,减法时两异号才可能溢出。
所以利用输入端来区分(10输入端的第一位的非、第四位的非和第二三位相与后与结果的进位位(即芯片芯片2 无符号溢出检测
直接根据运算结果的进位信号即芯片(,因为加减操作时,无符号溢出情况不同,所所以利用输入端来区分(10输入端的第一位的非、第四位的非和第二三位相与后结果的进位位(即芯片芯片
不断改变F输出端和溢出检测端的值。表2。
表2 溢出信号测试用例
#ABF运算有符号溢出无符号溢出16080E0加○○240E020加○●34060C0加●○4E08060加●●55F1F40减○○65FFF60减○●7806020减●○87FFF80减●●结果与分析
在加法运算中,运算结果和溢出检测都是正确的,减法中得到的运算结果为正确
加法时有符号溢出不符合。
问题解决方法:芯片(
输出端F 的值与输入端A 的值完全一致。
问题解决方法:当移动两芯片确定电路连接完好后检查输入端的高地位连接是否有误,以及故障
减法时输出端结果比真实值小问题及解决方法:芯片(
解决方法:检查两芯片间的进位输入以及的分离器、隧道、探测器、8位运算器,,根据运算结果的进位信号来判断,并分加、减两种情形,根据操作数和运算结果的符号位是否一致进行检测,同样分为加减两种情况。74LS181芯片的内部结构图弄清楚,理解
在本次实验中仍存在较多不足,例如在独立完成时不能很好的理解封装的意义和过程所以请教了其他同学的实验结果再加以理解方才完成。在经过多次查找资料和询问同学后,才找出消除减法时的误差方法。
对于选做题实在无能为力,因为对电路实现的理解还不够,本身知识的掌握也还不到位。在本次实验中基本是用手工绘制的逻辑