学生实验报告
实验课名称:计算机组成原理
实验项目名称:基本运算器实验
一、实验名称:
基本运算器实验
二、实验目的:
(1)了解运算器的组成原理
(2)掌握运算器的工作原理
三、实验要求:
通过一个基本运算器实验,了解运算器的组成原理、工作原理,了解运算器的基本结构,设计一个加法器。
四、实验内容:
运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,妥处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A和B的数据(有些处理器体素结构把移位运算器放于算术和逻镇运算部件之前,如ARM) ,各部伴对操作数进行何种运算由控制信号S3…S0和CN来决定,任何时候,多路选择开关只选择三部件中-一个部伴的结果作为ALU的输出。如果是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。ALU中所有块集成在- 片CPLD中。逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赞述。移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,通过分别对暂存器A和暂存器B所存数值,利用ALU单元进行加法运算,利用仿真软件,得到数据流程图,并判断FC、FZ的值。
五、实验设备及工具:
PC机一台,TD-CMA实验系统一套
六、实验过程详述:
(1) 按图1-1-5连接实验电路,并检查无误。图中将用户需要连接的信号用圆圈标明(其它实验相同)
(2)将时序与操作台单元的开关KK2置为‘单拍’档,开关KK1、KK3置为‘运行’档。
(3)打开电源开关,如果听到有‘嘀’ 报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。然后按动CON单元的CLR按钮,将运算器的A、B和FC、FZ清零。
(4)用输入开关向暂存器A置数。
①拨动CON单元的SD27… SD20数据开关,形成二进制数01100101 (或其它数值),数据显示亮为‘1’, 灭为‘0’。
②置LDA=1, LDB=0,连续按动时序单元的ST按钮,产生-一个T4上沿,则将二进制数01100101置入暂存器A中,暂存器A的值通过ALU单元的A7….A0八位LED灯显示。
(5)用输入开关向暂存器B置数。
①拨动CON单元的SD27…SD20数据开关,形成二进制数10100111 (或其它数值)。
②置LDA=0, LDB=1,连续按动时序单元的ST按钮,产生-一个T4上沿,则将二进制数10100111置入暂存器B中,暂存器B的值通过ALU单元的B7… BO八位LED灯显示。
(6)改变运算器的功能设置,观察运算器的输出。置ALU B=0、LDA=0、LDB=0,然后按表1-1-1 .置S3、S2、S1、S0和Cn的数值,并观察数据总线LED显示灯显示的结果。如置S3、S2、S1、S0为0010,运算器作逻辑与运算,置S3、S2、S1、So为1001,运算器作加法运算。如果实验箱和PC联机操作,则可通过软件中的数据通路图来观测实验结果(软件使用说明请看附录- -),方法是:打开软件,选择联机软件的“[实验]一[运算器实验]",打开运算器实验的数据通路图,如图1-1-6所示。进行上面的手动操作,每按动一次ST按钮,数据通路图会有数据的流动,反映当前运算器所做的操作,或在软件中选择“[调试]一[单节拍]", 其作用相当于将时序单元的状态开关KK2置为‘单拍’档后按动了一次ST按钮,数据通路图也会反映当前运算器所做的操作。重复上述操作,并完成表1-1-2。然后改变A、B的值,验证FC、FZ的锁存功能。
七、实验结果与分析:
分析
通过对A进行锁存01100101,对B进行锁存10100101,计算所得结果是10a,也就是000100001010,由于结果是8位二进制数,所以结果显示为00001010,FC是进位,这里有进位,所以FC=1,FZ是判断结果是否为0,这里结果不为0,所以FZ不为0。在这次实验中,通过对A、B分别锁存数值,这里采用的是利用时钟信号进行周期的进行,通过在工具箱上面手动按压clk按钮,模拟信号的传递,然后在仿真软件上看到数据流向及结果。
八、心得体会:
在这次的实验中,使得自己对计算机内部组成有了更加深刻的了解。同时在连接电路的时候,也对计算机内部的一些的一些部件连接有了感性的认识,以往都是从书本上得知数据总线、地址总线等,但是其实还是会一些不明白,但是自己动手操作了一番,深有体会啊,原来计算机是这样工作的啊。工具箱中每个单元对于用户来说都是封闭的,但是给用户留出了接口,用户可以根据需要进行使用,这也体现的计算机的模块化思想,每个单元各司其职,这为硬件设计者带来了很大的遍历。利用仿真软件对数据流进行仿真,生动形象的描绘了数据各个时刻在CPU里面的流向以及各个变量值的情况。