计算机组成原理课程设计报告(指令设计)

  • 格式:doc
  • 大小:259.50 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机科学学院课程设计报告

课程计算机组成原理

题目用户输入数据的阶加

年级2009级

专业计算机科学与技术

学号学生

任课教师

2012 年月日

课程设计

题目

用户输入数据的阶加验

收时间2012年2月28日

验收

地点

指导

教师

具体分工备注

题总体设计思想概述

在TEC-2000教学计算机仿真软件系统的PC机上,用已有基本指令,运用已经掌握的指令格式、指令操作码编码、寻址方式和指令功能等基本内容,以及教学计算机总体组成和各部件的运行原理,完成扩展新的指令,使新指令能够在教学机上运行。

设计出新扩展指令的微程序段,合理安排到已有基本指令的微程序中。

课题设计目的和原理

实验目的:

(1)进一步熟悉教学计算机指令格式、指令编码、寻址方式和指令功能;

(2)进一步熟悉教学计算机的总体组成和各部件的运行原理,理解指令的执行过程;

(3)通过对指令系统的扩展,了解微程序控制器设计和实现的基本过程;

(4)思考和讨论微程序控制器的特点并与组合逻辑控制器进行比较。

实验原理:

指令由微控制命令组成,可以通过微地址找到。通过更改下址可以把微程序串联起来。通过封装组合把一段微程序写成一条扩展的新微指令。

课题设计方案实验方案设计:

(一)根据题目内容,把题目转化成数学公式为:N+(N-1)+(N-2)+ (1)

这个指令要求的指令之外首先把N的值放入r0寄存器中,结果也在r0中。(二)实现N+(N-1)+(N-2)+···+1此计数公式的汇编程序为:

org 2000h

push r8

push r14

mvrd r0,X (X为用户自定义的数)

mvrd r8,X

mvrr r14,r5

h:

dec r8

add r0,r8

jrnz h

pop r8

pop r14

ret

end

(三)把以上程序封装在设置好的扩展指令中,扩展指令为zxd 00111001 46扩展指令的入口地址为38。

(四)根据扩展指令,修改好的新ROM地址单元,如下示:

(五) 生成新的ROM 文件,并保存。 (六) 微址、下址以及功能说明表: 微址 下址 功能说明

38 39 SP-1→SP,AR 将r8寄存器的值入栈 39 40 SR →MEM

40 41 SP-1→SP,AR 将r14寄存器的值入栈 41 42 SR →MEM 42 43 MVRD DR DATA 43 44 给r0赋值 44 45 给r8赋值

45 46 使r8的值减一,以实现控制循环的次数 46 47 将PC 即r5(程序计数器)的值存入r14

47 51 跳转指令 如果r8的值>0则顺序向下执行,否则跳转至51 48 49 跳转指令 如果r8的值>0则顺序向下执行 49 50 ADD DR,SR 加运算,r0+r8→r0

50 45 还原PC 即r5寄存器的值(即把r14的值给r5) 51 52 POP DR 出栈 还原r8寄存器的值

52 53

53 54 POP DR 出栈 还原r14寄存器的值

54 30

课 题 设 计 方 案

课题测试方案测试方案:

(一)、导入准备好的MAPROM、ROM1~ROM7共8个二进制ROM文件后,装入设计的微程序方案。

(二)、导入如下汇编文件:

org 2000h

mvrd r8,8h

mvrd r14,8h

zxd r0,5h

ret

end

(三)、在仿真软件的菜单栏→选项→参数设置中输入扩展指令的文件名地址:zhang.asm

(四)、点击界面左上方的“交叉汇编”,进行交叉汇编得到:07D0:mvrd r8, 8h

07D2:mvrd r14, 8h

07D4:zxd r0, 5h

07D6:ret

(五)、点击Reset加电启动,准备执行导入的程序

(六)、进行单步执行,每次执行一条微指令,观察当前微地址项和各寄存器中值的变化以及标志位、指令等的情况并记录下来;也可点击“连续执行”直接得到结果。

错误及结果分析实验过程中遇到的错误以及解决方案:

跳转指令修改之后,循环执行完成后不能正确执行下一条指令,程序陷入死循环。解决方案:上一条有效的译码指令执行之后就保存PC的值(即先把PC的值保存在r14寄存器中),在下一条指令执行之前提取PC的值(即把原先保存的值,r14的值再还原给PC)。

实验结果分析:

条件

结果

理论值实测值R0=0005h 000Fh 000Fh

R8=0008h 0008h 0008h

R14=0008h 0008h 0008h 实验结果完全正确,符合预期效果。

课题设计心得

在做实验的时候,首先接触的是这个仿真软件,经过身边同学的演示和讲解,就基本明白了这个仿真平台是如何使用的。

在进行自己的设计的时候,开始十分茫然,不知如后下手,从那下手,通过观察,别的同学做的过程,自己也就渐渐明白该如何做了。在设计自己的实验指令的时候遇到了许许多多的小问题,通过与同学探讨,逐渐就明白了实验设计的所需的真正内容了,因此自己的课程设计就变得很明了,做起来就顺手许多。

通过此次实验,加深了我对各种指令的认识,了解了指令系统的扩展操作,以及微程序控制器设计与实现的基本过程,丰富了我的知识。通过实验,我有加深了对计算机组成原理知识的理解,加强了对这些知识的应用。但是也遇到了很多的问题,在发现问题和解决问题的过程中,我得到了知识的拓展与提高。虽然本次课程设计自己做的东西不算是很复杂,但是这是我努力认真学习后完成的成果,自己收获很多。