1、计算机组成原理实验报告 计算机组成原理实验报告系 别: 三系 专 业:计算机科学与技术 年 级: 2010级 班 级: 学 号: 姓 名: 指导老师: 成 绩: 实验一 真值、浮点数、存储器的读写实验 3实验二 存储器实验 13实验三 8位算术逻辑运算实验.17实验四 带进位控制8位算术逻辑运算实验 22实验五 移位运算器实验.28.实验六 微控制器实验 33实验一 真值、浮点数的表示、原码一位乘法、存储器 的读写实验一 实验目的借助相关的模拟软件深入地了解真值、浮点数的具体表示方法,原码一位乘法的步骤及存储器的读写过程二 实验内容(1)真值的计算机表示1.置入一个有符号数2.通过软件的仿真模
2、拟,表示出该数的原码、反码、补码、移码3.改变该有符号数的符号位,仿真出该数的原码、反码、补码、移码(2)浮点数的表示1.置入一个二进制小数2.通过软件,依次求出该数的指数、尾数、真值3.写出该数的浮点数表示(3)原码的一位乘法1.依次置入被乘数、乘数2.单击单步调试按钮,看清原码一位乘法的具体步骤(4)存储器的读写实验1.了解存储器的实验连线和各部分的具体功能2.根据模拟软件的步骤调试,依次实现存储器的读和写过程三 实验过程(1)真值1)正数置数转换原码转换反码转换补码转换移码转换2)负数置数转换原码转换反码转换补码转换移码转换(2)浮点数表示1.求十进制数的浮点数表示2 求浮点数的十进制值
3、(3)原码的一位乘法(4)存储器的读写实验 注:图中蓝色为写入的数据,红色为读出的数据。四 实验分析总结DVCC系列实验计算机配备windows环境下集成调试软件,具有多个显示窗口,很容易上手,通过本次的实验,我对仿真软件进行了初步的认识,并且了解到关于它的基本功能以及使用方法,也能够利用它实现真值的计算机表示、浮点数与十进制数的相互转换、原码的一位乘法和存储器的读写功能。起初根据调试软件显示的多个窗口的提示,一步一步进行操作的,到了后来,当我对某个部件的功能实现过程有了进一步了解之后,我开始不根据提示,直接根据想要实现的功能,然后进行操作,这样做的目的,主要还是为了能够更加熟悉过程,了解转换
4、和存储读写功能的原理! 实验二 存储器实验一 实验目的 掌握静态随机存取存储器RAM的工作特性及数据的读写方法二 实验内容1.实验原理 主存储器单元电路主要用于存放实验机的机器指令,如上图所示,它的数据总线挂在外部数据总线EXD0-EXD7上;它的地址总线由地址寄存器单元电路中的地址寄存器74LS273(U37)给出,地址值由8个LED灯LEA0-LEA7显示,高电平亮,低电平灭;在手动方式下,输入数据由8位数据开关KD0-KD7提供,并经由一三态门74LS245(U51)连至外部数据总线EXD0-EXD7,实验时将外部数据总线EXD0-EXD7用8芯排线连到内部数据总线BUS0-BUS7,分
5、时给出地址和数据。它的读信号直接接地;它的写信号和片选信号由写入方式确定。该存储器中机器指令的读写分手动和自动两种方式。手动方式下,写信号由W/R提供,片选信号由CE提供;自动方式下,写信号由控制的.提供,片选信号由控制的.1提供。图中信号线LDAR由开关LDAR提供,手动方式实验时,跳线器LDAR拨在左边,脉冲信号T3由实验机上时序电路模块TS3提供,实验时只需将J22跳线器连上即可,T3的脉冲宽度可调。2.实验接线(1)MBUS连BUS2(2)EXJ1连BUS3(3)跳线器J22的T3连TS3(4)跳线器J16的SP连H23(5)跳线器SWB、CE、WE、LDAR拨在左边(手动位置)3.实
6、验步骤(1)连接实验电路,仔细检查无误后接通电源(2)形成时钟脉冲信号T3,方法如下:将时序电路模块中的“运行控制”开关设置为“运行”状态,“运行方式”开关置为“单步”状态,T3输出一个正单脉冲。(3)给存储器的00地址单元中写入数据11,具体步骤如下:数据置入地址寄存器SWB=1, CE=1 SWB=0 开输入三态门数据开关置数KD0-KD7=00000000 SWB=0 CE=1 LDAR=1图1 T3 数据置入存储器RAMSWB=1, CE=0 SWB=0 开输入三态门数据开关置数KD0-KD7=00010001 LDAR=0 CE=0 WE=1 LDAR=0 T3 图2(4)读出刚才写
7、入00地址单元的内容,观察内容是否与写入的一致。具体步骤如下:数据置入地址寄存器SWB=1, CE=1 SWB=0 开输入三态门数据开关置数KD0-KD7=00000000 SWB=0 CE=1 LDAR=1图3 T3 SWB=1数据从存储器读出CE=0WE=0 LDAR=0三 实验结论图1图2四 实验分析总结写地址的操作完成后,在做写内容操作时,要关闭LDAR。通过本次关于存储器的实验,认识到半导体随机存储器的操作以及读取数据操作和原理,大致了解了本课程的上机流程,熟悉了实验操作台;通过仿真软件,进一步加深了对计算机中存储器的运行机理的掌握,并利用仿真软件模拟运行了完整的一次数据存取过程。
8、利用实验箱实现存储器的读写过程,相对于上次实验中的仿真软件体验实验,这次的实际操作显得更加形象化,开始的时候连找接线的位置都要费好一段时间才能找到。虽然后来的接线都不会出错,但是,对于SWB的认识,还是有所欠缺。有的时候,还会因为阅读操作流程的不仔细,导致低级错误。在实验中,首先,要仔细读指导书,然后再动手去做。我了解到我们不仅要知道基本的理论知识,更需要锻炼自己的操作能力。两者相互结合才能更好地掌握知识点。对于6116芯片不要断电,因为6116为静态随机存储器,如果掉电所存的数据全部丢失! 实验三 8位算术逻辑运算实验一 实验目的1.掌握简单运算器的数据传送通路组成原理2.验证算数逻辑运算功
9、能发生器74LS181的组合功能二 实验内容1.实验原理实验中所用的运算器数据通路如上图。其中运算器由两片74LS181以并/串形成8位字长的ALU构成。运算器的输出经过一个三态门74LS245到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0-D7插座BUS1-6中的任一相连,内部数据总线通过LZD0-7显示灯显示;运算器的两个数据输入端分别由两个锁存器锁存,两个锁存器的输入并联后连至插座,实验时通过芯排线连至外部数据总线插座EXJ1-3中的任一个;参与运算的数据来自于8位数据开关KD0-7,并经过一个三态门直接连至外部数据总线,通过数据开关输入的数据由显示。图中算术逻辑运算功能发生
10、器的功能控制信号S3、S2、S1、S0、CN、M并行相连后连至SJ2插座,实验时以手动方式来调节。另有信号T4为脉冲信号,在手动方式下进行实验时,只需将跳线器J23上的T4与手动脉冲发生开关的输出端SD相连,按手动脉冲开关即可获得实验所需的单脉冲。2 实验连线 本实验用到4个主要模块:(1)低8位运算器模块(2)数据输入并显示模块(3)数据总线显示模块(4)功能开关(借用微地址输入模块)根据实验原理详细接线如下:(1)ALUBUS连EXJ3(2)ALUO1连BUS1(3)SJ2连UJ2(4)跳线器J23上T4连SD(5)LDDR1、LDDR2、ALUB、SWB四个跳线器拨在左边(6)AR跳线器
11、拨在左边,同时开关AR拨在1电平3 实验步骤(1)连接线路,仔细检查无误后,接通电源(2)用二进制数码开关KD0-7向DR1和DR2寄存器置数。具体操作步骤如下:数据置入地址寄存器 ALUB=1 LDDR1=1 开输入三态门数据开关置数KD0-KD7=00110101 SWB=0 LDDR2=0 T4数据置入地址寄存器 ALUB=1 LDDR1=0 开输入三态门数据开关置数KD0-KD7=01001000 SWB=0 LDDR2=1 T4(3)检验DR1和DR2中存入的数据是否正确,利用算数逻辑运算功能发生器的逻辑功能,即M=1。具体操作为:关闭数据输入三态门SWB=1,打开ALU输出三态门A
12、LUB=0,当置S3、S2、S1、S0、M为1111时,总线指示灯显示DR1中的数,而置成10101时显示DR2中的数。(4)验证74LS181的算数运算和逻辑运算功能(采用正逻辑)在给定DR1=35,DR2=48的情况下,改变算数逻辑运算功能发生器的设置,观察运算器的输出,并填入下表中。三 实验结果DR1DR2S3S2S1S0M=0(算数运算)M=1(逻辑运算)Cn=1Cn=035480000F=35F=48F=CA35480001F=7DF=7EF=8235480010F=B7F=B8F=4835480011F=FFF=00F=0035480100F=6AF=6BF=FF35480101F
13、=B2F=B3F=B735480110F=ECF=EDF=7D35480111F=34F=35F=3535481000F=35F=36F=CA35481001F=7DF=7EF=8235481010F=B7F=B8F=4835481011F=FFF=00F=0035481100F=6AF=6BF=FF35481101F=B2F=B3F=B735481110F=ECF=EDF=7D35481111F=34F=35F=35四 实验过程图1 图2五 实验分析总结通过本次的实验,我发现算数运算和逻辑运算在存储器中进行操作的流程和具体内容是不一样的。还有连线时ALU01和BUSI相连时注意对齐,写入数据
14、时注意调至写入开关,对算术逻辑运算器单元ALU(74LS181)的工作原理有了一定的认识,对接下来的学习和实验起到了很好的引导作用,本次实验,我操作了两次,第一次,在检查接线正确之后,开始实验,但是检查数据的时候,突然发现有错误,然后又重试了一遍,之后发现错误还是没有解决。第二次,在灰心之下,抱着试试看的心态,去别人的实验箱做了一下,结果是正确的。原来是自己的实验箱有问题。 实验四 带进位控制8位算术逻辑运算实验一、 实验目的1、验证带进位控制的算术逻辑运算发生器的功能。2、按指定数据完成几种指定的算术运算。二、 实验内容1、实验原理 带进位控制运算器的实验原理如图所示,在实验三的基础上增加进
15、位控制部分,其中高位74LS181(U31) 的进位CN4通过门UN4E、UN2C、UN3B进入UN5B的输入端D,其写入脉冲由T4和AR信号控制,T4是脉冲信号,在手动方式下进行实验时,只需将跳线器J23上T4与手动脉冲发生开关的输出端SD相连,按手动脉冲开关,即可获得实验所需的单脉冲。AR是电平控制信号(低电平有效),可用于实现带进位控制实验。从图中可以看出,AR必须为“0”电平,D型触发器74LS74(UN5B)的时钟端CLK才有脉冲信号输入。才可以将本次运算的进位结果CY锁存到进位锁存器74LS74(UN5B)中。2、实验接线(1)ALUBUS连EXJ3(2)ALUO1连BUS1(3)
16、SJ2连UJ2(4)跳线器J23上T4连SD(5)LDDR1、LDDR2、ALUB、SWB四个跳线器拨在左边(手动方式)(6)AR、299B跳线器拨在左边,同时开关AR拨在“0”电平,开关299B拨在“1”电平(7)J25跳线器拨在右边。3、实验步骤(1)仔细查线无误后,接通电源。(2)用二进制数码开关KD0-KD7向DR1和DR2寄存器置数,方法:关闭ALU输出三态门ALUB=1,开启输入三台门SWB=0,输入脉冲T4按手动脉冲发生按钮产生。如果选择参与操作的两个数据分别为55H、AAH,将这两个数存入DR1和DR2的具体操作步骤如下:(3)开关ALUB=0,开启输出三态门,开关SWB=1,
17、关闭输入三态门,同时让 LDDR1=0,LDDR2=0。(4)如果原来有仅为,即CY=1,进位灯亮,但需要清零进位标志时,具体操作方法如下:S3,S2,S1,S0,M的状态置为00000,AR信号置为“0”电平(清零操作时DR1寄存器中的数应不等于FF)。(5)验证带进位运算及进位锁存功能这里有两种情况: 进位标志已清零,即CY=0,进位灯灭,此时,使开关CN=哦,再来进行带进位算术运算。例如步骤(2)参与运算的两个数为55H和AAH,当S3、S2、S1、S0、M状态为10010,此时输出数据总线显示灯上显示的数据为DR1加DR2再加初始进位“1”(因CN=0),相加的结果应为ALU=00,并
18、且产生进位,此时按动手动脉冲开关,则进位标志灯亮,表示有进位。如果开关CN=1,则相加的结果ALU=FFH,并且不产生进位。 原来有进位,即CY=1,进位灯亮,此时不考虑CN的状态,再来进行带进位算术运算。同样步骤(2)参与运算的两个数为55H和AAH,当S3、S2、S1、S0、M状态为10010,此时输出数据总线显示灯上显示的数据为DR1加DR2再加当前进位标志CY,相加的结果同样为ALU=00,并且产生进位,此时按动手动脉冲开关,则进位标志灯亮,表示有进位。3、实验过程及结论图1图2图3图4图54、实验分析总结通过本次实验,联系上次实验中的八位算术逻辑运算,在检查连线正确之后,按照表格中的
19、数据,进行的一对一的检查,结果都正确,唯一的区别在于:本次实验中,按手动脉冲发生开关,CY=0,即清进位标志。(主:CY亮表示进位标志为“1”,灭表示进位标志为“0”。)期间,有的时候,会忘记所存数据,导致,有的数据会覆盖上一次的存储器中的内容,所以,又得重新设置前一次的实验数据。然后再继续往下做。这教导我做实验,每一步都要仔仔细细,不能有一点马虎,这样才能减少不必要的操作和麻烦。实验五 移位运算器实验一 、实验目的 验证移位控制器的组合功能二、实验内容 1、实验原理 移位运算实验原理如图所示,使用了一片74LS299(U34)作为移位发生器,其八位输入/输出端引出8芯排座ALUO2,在实验时
20、用8芯排线连至数据总线插座BUS4.299B信号由开关299B提供,控制其使能端,T4为其时钟脉冲,手动方式实验时将T4与手动脉冲发生器输出端SD相连,即J23跳线器上T4连SD。由信号S0,S1,M控制其功能状态,详情见下表:299BS1S0M功能000任意保持0100循环右移0101带进位循环右移0010循环左移0011带进位循环左移任意11任意装数2、实验连线(1)ALUO2连BUS4(2)EXJ1连BUS3(3)SJ2连UJ2(4)跳线器ALUB、299B、SWB拨在左边(手动位置),且开关ALUB拨在1电平,299B拨在“0”电平。(5)跳线器J23上T4连SD3、实验步骤(1)连接
21、试验线路,仔细检查无误后接通电源(2)置数,具体步骤如下:(3)移位,参照上表改变S0,S1,M,299B的状态,按手动脉冲开关以产生时钟脉冲T4,观察移位结果。3、实验过程及结论四、 实验分析总结通过本次实验,我了解了74LS299(U34)的功能,作为移位发生器,它的实现原理,我也通过实验的方式,进行了初步的了解。实验过程中,在检查连线正确之后,进行的每一步操作都很顺利,没有遇到很大的问题,中间换过一次实验箱,因为自己的实验箱好像数的存储方向是反过来的,与指导书上的提示不一致,所以就换了实验箱继续进行实验。之前只知道SWB是三态门,本次试验中,知道当SWB置数为“1”的时候,是关输入三态门
22、,当置数为“0”的时候,是开输入三态门。之前还以为按手动脉冲才是开输入三态门。实验六 微控制器实验一、实验目的1掌握时序产生器的组成原理。2掌握微程序控制器的组成原理。3掌握微程序的编制、写入,观察微程序的运行。二实验设备 TDNCM+计算机组成原理教学实验系统一台。三实验内容1实验原理 实验所用的时序电路原理如图31所示,可产生4个等间隔的时序信号TslTS4,其中为时钟信号,由实验台右上方的方波信号源提供,可产生频率及脉宽可调的方波信号。学生可根据实验自行选择方波信号的频率及脉宽。为了便于控制程序的运行,时序电路发生器也设置了一个启停控制触发器cr,使Ts1Ts4信号输出可控。图中STEP
23、(单步)、STOP(停机)分别是来自实验板上方中部的两个二进制开关STEP、STOP的模拟信号。START键是来自实验板上方中部的一个微动开关START的按键信号。当STEP开关为0时(ExEc),一旦按下启动键,运行触发器cr一直处于“l”状态,因此时序信号TslTS4将周而复始地发送出去。当sTEP为1(STEP)时,一旦按下启动键,机器便处于单步运行状态,即此时只发送一个cPu周期的时序信号就停机。利用单步方式,每次只读一条微指令,可以观察微指令的代码与当前微指令的执行结果。另外,当机器连续运行时,如果sTOP开关置“1”(sTOP),也会使机器停机。由于时序电路的内部线路已经连好,所以
24、只需将时序电路与方波信号源连接(即将时序电路的时钟脉冲输入端由接至方波信号发生器输出端H23),时序电路的CLR已接至实验板左下方的cLR模拟开关上。2微程序控制电路与微指令格式(1)微程序控制电路 微程序控制器的组成见图32,其中控制存储器采用3片2816的E2PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(273)和一片4D(175)触发器组成。微地址寄存器6位,用三片正沿触发的双D触发器(74)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当n时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一
25、触发器置为“1”状态,完成地址修改。 在该实验电路中设有一个编程开关(位于实验板右上方),它具有三种状态:PROM(编程)、READ(校验)、RuN(运行)。当处于“编程状态”时,学生可根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。当处于“运行状态”时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。图中微地址寄存器输出端增加了一组三态门,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。(2)微指令格式 微指令字长共24位,其控制位顺序如
26、下:表 3-1其中UA5一UAO为6位的后续微地址,A、B、c为三个译码字段,分别由三个控制位译码出多位。c字段中的P(1)一P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图33所示,图中17一I2为指令寄存器的第72位输出,sE5一sEl为微控器单元微地址锁存器的强置端输出。AR为算术运算是否影响进位及判零标志控制位,其为零有效。B字段中的RsB、R0一B、RIB分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器RO、R1及R2的选通译码,其原
27、理如图34,图中IO14为指令寄存器的第04位,LDRi为打入工作寄存器信号的译码器使能控制位。3 实验步骤(1)图35为几条机器指令对应的参考微程序流程图,将全部微程序按微指令格式变成二进制代码,可得到表32的二进制代码表。 (2)按图36连接实验线路,仔细查线无误后接通电源。(3)观测时序信号用双踪示波器(或用PC示波器功能)观察方波信号源的输出,时序电路中的“STOP”开关置为“RuN”,“STEP”开关置为“EXEC”。按动START按键,从方波器上可观察到TS1、TS2、TS3、TS4各点的波形,比较它们的相互关系,画出其波形,并标注测量所得的脉冲宽度,见图37。(4 )观察微程序控
28、制器的工作原理: 编程A将编程开关置为PROM(编程)状态。B将实验板上“STATE UNIT“中的“STEP”置为“STEP”,“STOF”置为“RUN”状态。C用二进制模拟开关置微地址MA5一MA0。D在MK24一MKI开关上置微代码,24位开关对应24位显示灯,开关量为“0”时灯亮,开关量为“l”时灯灭。E启动时序电路(按动启动按纽“START”),即将微代码写入到E2PROM 2816的相应地址对应的单元中。F重复CE步骤,将表32的微代码写入2816。 校验A将编程开关设置为READ(校验)状态。B将实验板的“sTEP”开关置为“STEP”状态。“STOP”开关置为“RUN”状态。C用二进制开关置好微地址MA5一MA0。D按动“START”键,启动时序电路,读出微代码,观察显示灯MD24MD4的状态(灯亮为“0”,灭为“l”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新执行即可。 单步运行A将编程开关置于“RUN(运行)”状态。B实验板的“STEP”及“STOP”开关保持原状。C操作CLR开关(拨动开关在实验板右下角)使CLR信号l0l,微地址寄存器MA5一MAO清零,从而明确本机的运行入口微地址为000000(二进制)。D按动“START”键,启动时序电路,则每按动一次启动
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1