您好,欢迎来到筏尚旅游网。
搜索
您的当前位置:首页组成原理 基本模型机的设计与实现实验报告

组成原理 基本模型机的设计与实现实验报告

来源:筏尚旅游网


甘肃学院

本科学生实验报告

( 五 )

姓名: 学院: 专业:

班级:2011级专升本班 实验课程名称:计算机组成原理 试验时间 2011 年 12 月 5 日 指导教师及职称

实验成绩: 开课时间 2011 学年 第一 学期

甘肃学院实验管理中心印制

实验题目 基本模型机的设计与实现实验 班 级 小组合作 是 学 号 姓 名 一、实验目的: 1.掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。 2.为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念。 二、实验环境: CCT-TV计算机组成原理教学实验系统一台,排线若干。 三、实验内容与步骤: 1.实验原理: 部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下(前4位为操作码): 助记符 机器指令码 说 明 IN 0000 0000   “INPUT DEVICE”中的开关状态R0 ADD addr 0001 0000   R0+[addr]R0 STA addr 0010 0000   R0[addr] OUT addr 0011 0000   [addr]BUS JMP addr 0100 0000   addrPC 其中IN为单字长(8位),其余为双字长指令,  为addr对应的二进制地址码。 为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。 存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWB、SWA为“0 0”时,按START微动开关,可对RAM连续手动读操作。 存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB、SWA为“0 1”时,按START微动开关,可对RAM连续手动写入操作。 启动程序:拨动总清开关CLR后,控制台开关SWB、SWA为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。 上述三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如下: 根据以上要求设计数据通路框图,如图5—1。微代码定义如表5—1所示 3 4 SS2 S1 S0 M CN WE A9 A8 223 22 21 20 19 18 17 16 15 14 13 A SWB 0 0 1 SWA 0 1 1 控制台指令 读内存(KRD) 写内存(KWE) 启动程序(RP) 图5----1 系统涉及到的微程序流程见图5—2,当拟订“取指”微指令时,该微指令的判别测试字段为P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前4位(IR7—IR4)作为测试条件,出现五路分支,占用五个固定微地址单元。 控制台操作为P(4)测试,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写。 注意:微程序流程图上的单元地址为8进制。 当全部微程序设计完毕后,应将每条微指令代码化,表5—2即为将图5—2的微程序流程图按微指令格式转化而成的“二进制微代码表”。 运行微程序 图5---2 下面介绍指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到缓冲寄存器中,然后再传送至指令寄存器。指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试[ P(1)],通过节拍脉冲T4的控制以便识别所要求的操作。“指令译码器”(实验板上标有“INS DECODE”的芯片)根据指令中的操作码译码强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。 本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备(INPUT DEVICE);另一种是数码块,它作为输出设备(OUTPUT DEVICE)。例如:输入时,二进制开关数据直接经过三态门送到外部数据总线上,只要开关状态不变,输入的信息也不变。输出时,将输出数据送到外部数据总线上,当写信号(W/R)有效时,将数据打入输出锁存器,驱动数码块显示。 本实验设计机器指令程序如下: 地址(二进制) 内容(二进制) 助记符 说明 0000 0000 0000 0000 IN “INPUT DEVICE”R0 0000 0001 0001 0000 ADD [0AH] R0+[0AH]R0 0000 0010 0000 1010 0000 0011 0010 0000 STA [0BH] R0[0BH] 0000 0100 0000 1011 0000 0101 0011 0000 OUT [0BH] [0BH]BUS 0000 0110 0000 1011 0000 0111 0100 0000 JMP [00H] 00HPC 0000 1000 0000 0000 0000 1001 0000 自定 0000 1011 1010 0000 0001 求和结果 2、实验步骤: ⑴. 按图5—3连接实验线路。 (2).写程序: ①先将机器指令对应的微代码正确的写入2816中,由于在实验三实验中已将微代码写入E2 PROM芯片中。 ②使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。 A:使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。 B:拨动总清开关CLR(0-1),微地址寄存器清零,程序计数器清零。然后使控制台SWB、SWA开关置为“0 1”,按动一次启动开关START,微地址显示“010001” 再按动一次START,微地址灯显示“010100”,此时数据开关的内容置为要写入的机器指令,按动一次START键,即完成该条指令的写入。若仔细阅读KWE的流程,就不难发现,机器指令的首地址只要第一次给入即可,PC会自动加1,所以,每次按动START只有在微地址灯显示“010100”时,才会设置内容,直到所有的机器指令写完。 ⑶. 运行程序 ①.单步运行程序 A.使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。 B.动总清开关CLR(01),微地址清零,PC计数器清零,程序首地址为00H。 C.单步运行一条微指令,每按动一次START键即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。 D.运行结束后,可检查存数单元(0B)中的结果是否和理论值一致。 ②.若连机运行时,进入DEBUG调试界面,总清开关CLR(01)清零后,程序首地址为00H,按相应功能键即可联机运行、调试程序。记录每条机器指令执行后的结果。 四、实验过程与分析 做这个实验的过程中我真的体会到了什么叫做一步一步脚踏实地,做这个实验我真的体会到什么都是循序渐进的不可能一步就完成的。我们做实验五的时候很艰辛。 实验五是在实验四的基础上做的,没有实验四的基础是不可能,因为实验四的微指令是必须存到机箱里的,为了实现我们的加法运算,我们实验四的微指令输了七八遍,刚开始输微指令的时候真的很粗心,我们一遍一遍的输入,输入微指令的时候一个一定一个数都不能错,错了就必须重新输,真是把我和我的搭档整死了。这个微指令就是我们的砍,终于做出来后我们就开始连线,刚开始光看那个图那么多的线,后面连的次数多了就觉得这没什么了。 五、实验总结: 这个实验在我所做的实验中给我的感觉是最难的。由于我们的操作仪器的问题,我们的微地址输了三遍都不合适,我们以为我们的输入有问题,但是我们都验证完都没有任何错误,但是在做实验五的时候微地址灯只显示三个灯,最后才发行我们的仪器有问题。 通过这次实验,我对存储器有了进一步的了解,理解它的功能特性和使用方法。这次实验要注意的是:在进行读操作时,必须先写第一个地址,然后读出第一个地址单元的内容,再写第二个地址,然后读出第二个地址单元的内容。如此类推。不能先连续输入所有的地址,再连续输入所有的内容或连续读出所有的内容。 在做这次的实验我把实验原理弄清楚了,做起实验来自然顺手不少,但还是需要极大的细心和耐心。 以前觉得这是个不可能完成的事实,但是我们却做到了,我觉得自己还是要认真的学习更多的东西,看更多的书籍。 六、指导教师评语及成绩: 实验过程与结果完整,分析总结得当。 教师签名 成绩 批阅日期

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- efsc.cn 版权所有 赣ICP备2024042792号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务