计算机组成原理实验报告(共5页).doc
精选优质文档-倾情为你奉上计算机组成原理实验报告微程序控制器实验一实验目的:1. 能看懂教学计算机(TH-union)已经设计好并正常运行的数条基本指令的功能、格式及执行流程。并可以自己设计几条指令,并理解其功能,格式及执行流程,在教学计算机上实现。2. 深入理解计算机微程序控制器的功能与组成原理3. 深入学习计算机各类典型指令的执行流程4. 对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念5. 学习微程序控制器的设计过程和相关技术二实验原理:微程序控制器主要由控制存储器、微指令寄存器和地址转移逻辑三大部分组成。其工作原理分为:1、将程序和数据通过输入设备送入存储器; 2、启动运行后从存储器中取出程序指令送到控制器去识别,分析该指令要求什么事; 3、控制器根据指令的含义发出相应的命令(如加法、减 法),将存储单元中存放的操作数据取出送往运算器进行运算,再把运算结果送回存储器指定的单元中;4、运算任务完成后,就可以根据指令将结果通过输出设备输出三微指令格式: 微指令由下地址字段及控制字段组成.THUNION教学机的微指令格式如下:下地址CI30SCCMRWI8-I0B口A口SSTSSHSCIDC2DC1其中高八位为下地址字段.其余各位为控制字段.1)微地址形成逻辑 THUNION 教学机利用器件形成下一条微指令在控制器存储器的地址.下地址的形成由下地址字段及控制字段中的CI3SCC控制.当为顺序执行时,下地址字段不起作用.下地址为当前微指令地址加1;当为转移指令(CI30=0011)时,由控制信号SCC提供转移条件,由下地址字段提供转移地址.2)控制字段控制字段用以向各部件发送控制信号,使各部件能协调工作。控制字段中各控制信号有如下几类: 对运算器部件为了完成数据运算和传送功能,微指令向其提供了24位的控制信号,包括:4位的A、B口地址,用于选择读写的通用积存器组位的控制码II、II、II,用于选择结果处置方案、运算功能、数据来源。组共位控制信号控制配合的两片GAL20V83位SST,用于控制记忆的状态标志位2位SCI,用于控制产生运算器低位的进位输入信号2位SSH,用于控制产生运算器最高,最地位(和积存器)移位输入信号 对内存储器I/O和接口部件,控制器主要向它们提供读写操作用到的全部控制信号,共3位,即MRW 对CPU内部总线数据来源的控制,主要通过3位编码标记为DCD,来选择把哪一组数据发送到内部总线(IB)上。 对几个特定的积存器接受输入的控制,也通过了编码C标记为D(2),用来选择允许哪个积存器接受送个它的一组数据。四.实验内容:1.基本实验:观察基本指令的微码2 扩展实验:运用扩展指令,输入程序,并运行五综合作业:设计一条新指令,该指令的功能是把用绝对地址表示的内存单元ADDR的内容与一个寄存器的内容相加,结果存到ADDR中,即:ADR ADR + SR 注意:操作码选用:从1A(H) 1F(H)之间选择一个使用;微地址选:从28(H)开始 2F(H) 操作步骤:操作功能微址下址CI30SCC30MRWI20I86I53B口A口SSTSSHSciDC2DC1功能PCARPC+1PC2800(公共地址)1110000010001101000001000100000001011000读取指令(ADR)MEMAR291C(指向ALL语句)0011000000111100100000000000000000011000读内存,输出MEM的内容(ADR)到AR寄存器MEMDR2A300011000000111101100000000000000000000000读内存,输出MEM的内容(ADR)到DR寄存器DR+SRDR2B300011000010000101100010001000001000000000实现加法运算DR-MEM2C00(公共地址)111000001000110100000100010000000101100002222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222ALL语句,返回到内存模拟程序:微程序:首地址:实现:800为首地址六思考题:1.在上面的实验中,你可发现不同指令在执行过程中都会经过相同的微地址,即不同指令的微程序有公用部分。请找出他们,并说明其工作原理地址为00的微地址主要用于给出监控程序的首地址和禁止中断,仅在启动时启动一次地址为01和02的指令用于读取,公用于每条指令的读取指令的操作地址为03的微指令用于通过指令的操作码映射出这条指令特定的操作步骤的首条微指令的地址并读出这条微指令,也公用于每条指令。对于一些指令,都要无条件转向微地址30,我们称之为A组指令,其功能都需要通过一个操作步骤完成。本指令只用到一条微指令,条件满足时则要转移,需要顺序进到下一条,把指令的转移地址微送到程序计数器PC指令中。对于一些指令,需要两个步骤完成,且都无条件转向微地址30,我们称之为B组指令,这些指令第一步传送内存地址或者IO接口地址,第二步完成内存或者IO接口的读写过程。对于一些指令,实现的是2次内存读写,且都无条件转向微地址30,我们称之为D组指令,使用的地址是1F22的四条微指令。 还有一些微指令,地址为30,完成中断请求的功能。2.总结机器指令与微指令的关系(1) 一条机器指令对应一个,这个微程序是由若干条微指令构成的。因此,一条机器指令的功能是若干条微指令组成的序列来实现的。简而言之,一条机器指令所完成的操作划分成若干条微指令来完成,由微指令进行解释和执行。(2)从指令与微指令,程序与微程序,地址与微地址的一一对应关系上看,前者与有关,而后者与控制存储器(它是的一部分。微程序控制器主要由控制存储器、和地址转移逻辑三部分组成。其中,微指令又分为微地址寄存器和微命令寄存器两部分)有关,与此相关也有相对应的硬设备。(3).从一般指令的微程序执行流程图可以看出。每个CPU周期就对于一条微指令。这就告诉我们怎么设计微程序,也将使得我们进一步体验到机器指令很微指令的关系。3.总结指令的一般流程:4.P60 图表:1写出指令格式、指令功能和执行流程及对应的微程序扩展几条指令,确定各步的控制信号。指令操作功能下址CI30SCC30MRWI20I86I53B口A口SSTSSHSciDC2DC1STCC=1300011000010000000100000000000100000000000ADCDR+SR+CFDR300011000010001101100000000000001010000000LDRADR,ADRPCARPC+1PC001110000010001001000001000100000001011000MEMARIC0011000000100100100000000000000000011000MEMDR300011000000101101100000000000000000000000 七总结与体会:作为一名计算机的学习者,我们从大二下开始学习计算机的组成原理这门课程,从而将从最近本的层面了解计算机的内部构造及其最基本的工作原理。而且很多我们对计算机的不足认识,都从这门课程的学习中得到了提升。其中机组课的实验课程更是我们实践和深入理解的重要过程。在机组实验中,我们通过教学机器进行书本内容的实践,对于书中所讲的理论知识进行实地操作。在操作我发现自身对于很多的课本知识并未能掌握,无法运用的实际操作中,对于关键的知识未能理解。通过实验我们一方面加深了计算机内部原理的认识,另一方面我们的动手和学习能力得到了加强,同时通过对于新事物的学习,我们有了更多的认识和见解,对于知识的运用有了一定的经验。很多问题只有我们遇到了并解决了才能真正的掌握一些知识,实际操作和积累经验对于我们日后的学习十分重要。专心-专注-专业