华中科技大学 组成原理实验报告 运算器组成实验_第1页
华中科技大学 组成原理实验报告 运算器组成实验_第2页
华中科技大学 组成原理实验报告 运算器组成实验_第3页
华中科技大学 组成原理实验报告 运算器组成实验_第4页
华中科技大学 组成原理实验报告 运算器组成实验_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程实验报告课程名称: 计算机组成原理 专业班级:信息安全1003班学号:_U 名: 同组成员:张源信 报告日期:2012年5月 计算机科学与技术学院目录TOC\o"1-5"\h\z\o"CurrentDocument"一、实验名称 3\o"CurrentDocument"二、实验目的 3\o"CurrentDocument"三、实验设备 3\o"CurrentDocument"四、实验任务 3\o"CurrentDocument"五、预备知识 4\o"CurrentDocument"1、运算器的相关知识 4\o"CurrentDocument"2、注意事项: 4\o"CurrentDocument"六、设计思路、电路实现与电路分析说明 4\o"CurrentDocument"1、任务分析 4\o"CurrentDocument"2、设计思路 6\o"CurrentDocument"3、电路实现与详细分析说明 7\o"CurrentDocument"七、实验结果的记录与分析 9\o"CurrentDocument"八、实验中碰到的问题及解决办法 10\o"CurrentDocument"九、收获与体会 10\o"CurrentDocument"十、参考书目 11―、实验名称实验名称:运算器组成实验二、实验目的1、 掌握带累加器的运算器实验2、 掌握溢出检测的原理及实现方法3、 理解有符号数和无符号数运算的区别4、 理解基于补码的加\减运算实现原理5、 熟悉运算器的数据传输通路6、 利用74181和74182以及适当的门电路和多路选择器设计一个运算,要求支持有符号数和无符号数的运算支持补码加减法运算,支持有符号数溢出检测等功能三、实验设备JZYL—II型计算机组成原理实验仪一台芯片:74LS181运算器芯片 2片74LS3738D锁存器 3片、实验任务自己设计一个电路和利用实验参考电路进行实验,实验要求先将多个运算数据事先存入存储器中,再由地址选中,选择不同的运算指令,进行运算,并将结果显示,还可以进行连续运算和移位,最后将最终结果写入到存储器中。LaLiLiLaL«LsULtflWJLaLiLiLaL«LsULtflWJ五、预备知识1、运算器的相关知识运算器是对数据进行加工处理的部件,它具体实现数据的算术运算和逻辑运算,所以又称算术逻辑运算部件,简称ALU,它是中央处理器的重要组成部分。计算机中的运算器结构一般都包含如下几个部分:加法器、一组通用寄存器、输入数据选择电路和输出数据控制电路等。74LS181能执行16种算术运算和16种逻辑运算,当工作方式控制端(M)为低电平时执行算术运算,当工作方式控制端(M)为高电平时执行逻辑运算,运算功能由功能选择端(S0-S3)决定。对74LS181的说明:引出端符号:A〜A03运算数输入端(低电平有效)B〜B03运算器输入端(低电平有效)CIn进位输入端COn4进位输出端F〜F03运算输出端(低电平有效)M工作方式控制S〜S功能选择032、注意事项1) 74LS181的输入和输出应按顺序,不能接乱或接反。2) 实验中的开关较多,实验时若记不清楚就容易因混乱而发生错误,因此对于用不到的引脚就不用接开关了。六、设计思路、电路实现与电路分析说明1、任务分析方案选择:这个实验既可以自己设计电路,也可以参考老师所给的电路。我们选择了参考老师所给的参考电路。芯片选择与分析:根据方案的示意图,方案需要用到两片74LS181芯片和三片74LS373芯片。其中74LS181做数据运算器,74LS373做数据锁存器。各芯片介绍如下:1)74LS373:74LS373是一个8D锁存器。当三态允许控制端OE为低电平时,00~07为正常逻辑状态,可用来驱动负载或总线。当OE为高电平时,OO~O7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端LE为高电平时,O随数据D而变。当LE为低电平时,O被锁存在已建立的数据电平。当LE端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。引出端符号:DO〜D7数据输入端OE三态允许控制端(低电平有效)LE锁存允许端OO~O7输出端74LS373管脚图Vcc07 0?0?Og询匹由0』L£20 19|16]'V|16'15 14|13|-2 1112ILd「26_L|]|勺 10CEDqD]5 0?D?D3GND;74LS373真值表DnLEOEOnHHLHLHLLXLLQ0XXH高阻态2)74LS181:74LS181是一个四位运算器。实验中要用多个如下图所示的异或门来实现数据的奇偶校验。AjBoGCn+4PA=&%|242322212019asilialKialialiEilialI12131415K17llh9,10n1112]BqAqS3SiSjSgCnMfdF1F2GND

74LS181管脚图741S1的功能表幌件方式选择S5S2S1SO逻辑运算M=1算术运算cn=iOCOOF=AF=A?=A4-QF=A+D0010F=A+B0011F=0卩=减10100F^ABF=A加AB0101F=BF=<A-B)加AB0110F=AF=A咸B减101.11F=AB减11COOF=A+BF=A力目AB1001F=A啓UF=A加B1010F=BF=<A+-B)1JDADW11F=ABF=AB减11100F=1F=A*1101F=A"F=CA+B)加A1110?=a+bF-CA4D)inA1111F=AF=AM12、设计思路1) 将两片74LS181通过373连在一起,通过373的锁存功能实现八位运算2) 溢出检测的设计:无符号:无符号运算中,若最高位存在进位,则表示有溢出,否则则表示无溢出,所以只需直接将最高进位位(即Cn+4)与灯相接,高电位表示有溢出,低电位表示无溢出(电路图略)有符号:根据运算过程中最高数据位的进位与符号位的进位位是否一致进行检测,设运算过程中最高数据位的进位产生的进位信号为Cd,符号位产生的进位信号为Cf,当参加运算的两数均为正数时,则Cf=0且符号位之和为Sf=0,此时若Cd=1,则导致运算结果的符号位与参加运算的数的符号位不同,会发生溢出;当参加运算的两数为负数,则Cf=1,且之和为Sf=0,此时只有Cd=1才能使Sf=1,运算结果的符号位才与参加运算的符号相同,若Cd=0,则Sf=0导致运算结果的符号位与参与运算的数的符号位不同,也会发生溢出。综上所述,利用公式V=C㊉C即可进行溢出检测。df但上述方案在已有条件下难以实现,经老师建议,改为根据操作数和运算结果的符号是否一致进行溢出检测。设X,Y为参加运算数的符号位,Sff f为结果的符号位,V为溢出标志符,当V取1时表示发生一处。基于该方法的公式为:V二xy;T+XYsffffff3、电路实现与详细分析说明1)74LS181模块:第一个cn接开关,第一个的cn+4接第二个的cn;第二个181的cn+4接入溢出检测模块;连个的M接在一起,接到开关上;S3至S0依次接到控制开关上;A0至A3分别依次接到两个373的输出端Q上;B0至B3分别依次和开关相连;F3至F0分别依次接到373的输入端D,同时接到指示灯上。2)74LS373:373(U1)的8D至1D依次接到两个181的F3至F0上;U2和U3的8Q至5Q依次接到181的A0至A3上;373(U1)的8Q至1Q依次接到两个74LS373(U2、U3)中的电路连接3)溢出检测模块:运算数的符号位与求反后的运算结果符号位相与,与运算数符号位求反并与运算结果符号位相与的结果求或,结果输出至溢出检测灯。aAI疋俎38-1監%6•—■yLL■■■-B-JaAI疋俎38-1監%6•—■yLL■■■-B-J溢出检测部分的电路连接总电路图:

七、实验结果的记录与分析1、实验过程1构造八位运算器检测记录:构造八位运算器检测记录表S3S2S1SO数据A数据B运算结果MCn10010000000100000001000000100110010000001000000001000000110110010000000100000010000000110110011000000010000000000000000111100000000100000001000000000111000000001000000000000000101110000000000000000100000001011101010101001010101111111110该记录表明:8位运算器构造成功2、实验过程2添加溢出检测检测记录添加溢出检测检测记录表S3S2S1S0数据A数据B运算结果MCn溢出10010111111110000000001111111011该记录表明:溢出检测添加失败,没有达到预期效果3、实验过程3添加373芯片后检测记录添加373芯片后检测记录表脉冲A脉冲BS3S2S1S0数据结果A结果BMCn1010010000000100000001000000000101100100000001000000010000000101101001000000010000001000000001010110010000000100000010000000100110100100000010000001000000001001011001000000100000010000000100011010010000001000000110000001000101100100000010000001100000011001该记录表明:可实现累计和数据传送4、实验过程4添加求补电路后检测记录添加求补电路后检测记录表脉冲A脉冲BS3S2S1S0数据结果A结果BMCn0/1101001000001010000010100000000011011001000001010000010100000101011001001100000110000010100000101000101001100000110000001000000101000该记录表明:可实现求补功能并完成负数运算和减法运算八、实验中碰到的问题及解决办法本实验过程中遇到的最大问题是溢出检测的实现问题,最初采用的检测方案即为实验过程第2步所述方案,但连接后发现不能达到预期效果,经过向老师请教,发觉上述溢出检测设计方案中难以取出最高有效数据位,而且在只用两片LS74181芯片的前提下也难以实现符号位的相加,所以也难以取出符号位的进位。所以决定换一种溢出检测方案,改为根据操作数和运算结果的符号位是否一致来进行溢出检测。只有两个符号相同的数相加才有可能产生溢出检测,因此,可根据操作数和运算结果的符号位是否一致进行检测。设Xf,Yf为参加运算数的符号位,Sf为结果的符号位,V为溢出标识符,则该方法可用公式V二XYS+XYS来实现。ffffff九、收获与体会这是计算机组成原理的第一次实验,因为之前做过数字逻辑的实验,而且老师也对实验台进行了介绍,所以虽然是第一次接触该实验台,但是对仪器还是相对熟悉的,了解各芯片的基本原理及使用方法。这次实验老师在讲解的过程中给出了整个实验的思路并将实验分为了四块,每块递进处理,所以上手还是比较快的,按照老师给出的思路,很快完成了第一步,做出了8位计算器,并且进行算数运算与逻辑运算测试均得到了预期效果。然后开始进行第二步,为该运算器添加溢出检测,经过商议,决定采用课本上给出的第二种溢出检测方法,即根据运算过程中最高数据为的进位与符号位的进位是否一致来进行溢出检测,在草稿纸上画出简单的电路图后开始连线,连线完毕后进行检测却出现了错误,在没有溢出时却出现了有溢出标志,仔细检查电路连线没有发现错误,后来通过向老师请教和与同伴商量,发觉该方案存在一些问题:难以取出最高有效数据位,而且在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论