2023年计算机组成原理实验报告3.pdf
计算机组成原理课程实 验 报 告学 院:_ _ _ _ _ _ _ _ _ _ _ _专 业:_ _ _ _ _ _ _ _ _ _ _ _ _ _班级学号:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _学生姓名:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _指导老师:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _成绩评估:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _五邑大学计算机学院计算机组成原理实验室实 验 三实验日期:2 0 2 3-1 2-0 1一、实验名称:微程序控制器实验二、实验目的:掌握微程序的编制、写入、观测微程序的运营情况,了解微程序流程原理。三、实验原理:微程序控制器的基本任务是完毕当前指令的翻译和执行,即将当前指令的功能转换成可以控制硬件逻辑部件工作的微命令序列,以完毕数据传输和各种解决操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令同样,用数字代码的形式表达,这种表达称为微指令。这样就可以用一个微指令序列表达一条机器指令,这种微指令序列称为微程序。微程序存储在一种专用的存储器中,该存储器称为控制存储器。微程序流程图:0 0二进制代码表:地址十六进制高五位S3-SOA字段B字段C字段MA5-MA00000 0001000 0 00 0000000 0000 00 0 0001010 0 7 0700 0 0 000 0001 110 0 00011 100000400 24 0500 0 0000000100 1 000 00 0010 10504 B2 0100 0 001 0010 1 100 10 00000001300 0 1 4040000000 0 00 0101000000 0 100321 8 30010 0 01 10 0 000 1100 000000 0 0013328 0 4010 01010 0 0 00000 1 00000 0 0001350 0 0 0350 0 0 000 00 00 0 00 000001 10 1 0 1四、实验设备:TD-CMA实验系统一套五、实验环节:1、对微控器进行编程(写)(1)将时序与操作台单元的开关KK1置为停止档,KK3置 为 编程档,KK4置为控存档,KK5置 为 置数档。(2)使用CON单元的S D 0 5-S D 0 0 给出微地址,I N 单元给出低8位应写入的数据,连续两次按动时序与操作台的开关S T,将 I N单元的数据写到该单元的低8 位。(3)将时序与操作台单元的开关KK5置 为 加 1 档。(4)I N 单元给出中8位应写入的数据,连续两次按动时序与操作台的开关ST,将 I N 单元的数据写到该单元的中8 位。IN单元给出高8位应写入的数据,连续两次按动时序与操作台的开关S T,将 I N 单元的数据写到该单元的高8位。(5)反 复(1)(2 )(3)(4)四步,将二进制代码表的微地址(地址和十六进制)写入芯片中。2、对微控器进行校验(读)(1)将时序与操作台单元的开关KK1置 为 停止档,KK3置为校验档,K K 4 置为控存档,KK5置 为 置数档。(2)使 用 CON单元的S D 0 5-S D 0 0 给出微地址,连续两次按动时序与操作台的开关S T,M C单元的指数据指示灯M 7-M 0 显示该单元的低8 位。(3)将时序与操作台单元的开关K K 5 置 为 加 1 档。(4)连续两次按动时序与操作台的开关S T ,MC单元的指数据指示灯M 1 5-M 8 显示该单元的中8位,MC单元的指数据指示灯M 2 3-M 1 6 显示该单元的高8位,(5)反复(1)(2)(3)(4 )四步,完毕对微代码的校验,假如校验出微代码写入错误,重新写入,校验,直至确认微指令的输入无误为止。3、运营微程序(1)将时序与操作台单元的开关K K 1,K K 3置 为 运营档,按 动 CON单元的CLR按钮,将微地址寄存器(MAR)清零,同时也将指令寄存器(IR)、ALU单元的暂存器A 和暂存器B 清零。(2)将时序与操作台的单元的开关K K 2置 为 单拍档,然后按动ST按钮,观测Tl,T2,T3,T 4节拍变化。(3)按动CON单元的C L R 按钮,清微地址寄存器等,并将时序与操作台的开关KK2置为单步档。(4)置 IN单元的数据为000000 0 1,按动ST按钮,当M C单元后续地址显示为0 0 0 0 001时,在 C O N 单元的SD2 7 SD2 0 模拟给出IN 指令0 0 1 0 0 0 00 并继续单步执行,当MC 单元后续地址显示为0 00 0 0 0 1 时,说明当前指令已经执行完毕,在 CON单元的SD27-SD2 0 给 出 ADD指令0 0 000000,接下来在CO N 单元的SD27-S D20给出OUT 指令0 0110000,并继续单步执行,当M C单元后续地址显示为0000001时,观测OUT单元显示数据是否为02。六、实验结果实验中所置微地址为000 0 0 001(01),连续运营后,OUT单元显示数据为0 2,可知操作对的。七、分析讨论指令的输入和时序的控制对数据结果的影响很重要,所以对微地址的输入要进行校验,时序控制几乎在每一个环节中都要进行,所以把握好微地址和时序信号,是实验结果对的的前提。根据程序流程图可以知道,通过了 IN、ADD、OUT指令的执行后,输出的数据为本来数据的两倍,所以写入数据为0 0 000001,读出的数据 为02。八、心得体会通过本次实验,我了解了微程序控制器的功能、组成知识,知道了指令格式和各字段功能,掌握了微程序的编制、写入、观测微程序的运营,学习了基本指令的执行流程。这次实验的原理比较难以理解,但是实行起来其实是不难的。在实验过程中,不知道是由于接线的问题还是仪器的问题一度不能成功,录入了数据但是跳转不到要去的地方。我们认为是输入数据时犯错,重新输了好多遍,但是都还是同样的结果。通过请教同学的帮助之后终于得出了对的的结果。随后就很顺利地完毕了实验。这次实验使我懂得要认真弄清楚每一步实验的原理和所需要的知识点,这样才可以较好地完毕实验。