文档详情

指令扩展设计计算机组成原理课程设计.doc

发布:2017-03-30约6.03千字共13页下载文档
文本预览下载声明
计算机科学学院 课程设计报告 课程 计算机组成原理 题目 的实现(指令扩展) 年级 2009级 专业 计算机科学与技术 学号 学生 多啦小鹏 任课教师 2012年 2月 28日 课程设计题目 的求值(指令扩展) 验收 时间 2012年2月2日 课 题 设 计 方 案 1、课题设计方案 1.1、基础知识和熟悉平台 首先、熟悉平台,了解设计指令的平台操作和各个部分模块功能,如图: 微命令写入到ROM中模块: 测试查看当前微指令地址等各寄存器的值: 扩展指令,学习指令的格式,类型,寻址方式为后面实践动手打下理论基础,教学机器指令格式如图: 操作码 DR SR I/O端口地址/相对偏移量 立即数/直接内存地址/变址偏移量 根据不同的标准,16位机的指令可划分为不同的指令: ①指令长度区分,有单字指令和双字指令,也允许定义和使用三字指令。 ②操作数的个数,有双操作数指令、单操作数指令和无操作数指令。 ③寻址方式区分,寄存器寻址、寄存器间接寻址、立即数寻址、直接寻址、变址寻址、相对寻址等寻址方式。 课 题 设 计 方 案 微指令是由微命令和下地址两个字段组成的,所以要进一步了解微命令。微命令控制信号等各个部件的联系。要知道了各个控制位的功能。了解和学习基础知识,又熟悉了仿真软件的使用,可以进行下一步找出问题,设计指令解决问题。 1.2、问题设计与分析 问题提出实现的求值,即=2+2+2+……+2 实现文字描述:把1放到DR和R11中,n值(即SR中的数值)放到寄存器R14中,R14控制循环次数,进入扩展的指令时要保存R5即PC值到R15寄存器,当指令结束时用于恢复PC值。将R11中的值乘以2,循环一次,结果加上DR中的值放入到DR中。 1.3、指令设计过程 指令常用类型(只写出部分类型) 平台 种类 操作数 长度 指令格式 指令举例 TEC 2000 16位 1 2 1 OP DR,SR OP DR,[SR] OP [DR],SR add R0,R1 ldrr R2,[R3] strr [R4],R5 23 1 1 OP [DR],0000 dec R0 41 2 2 OP DR,ADDR OP DR,DATA OP ADDR,SR ldra R0,1000h mvrd R1,2000h stra 3000h,R2 我们选用指令类型41,两个操作数,OP DR,DATA。将 1.2中的文字说明转换为表格形式,说明数据流向和操作。如下图: 编号 数据即操作 1 DATA 放入到DR中 2 DATA放入到R11中 3 DATA放入到R14 4 DR减去R11结果到R1 5 将DR值加1,即置1 6 R11减去R14结果到R1 7 R11加上1结果到R11 8 将R5值放入到R15中 9 将R14自减1 10 判断是否跳转且恢复R5 11 将R11中的数左移1位 12 将R11加到DR中 课 题 设 计 方 案 1.4、指令详细说明 参数设置:文件名称为:zpzp.asm 设置指令名称,类型,入口地址。 文件(zpzp.asm) 地址 功能 下址 地址 功能 下址 4a push 5e pop 17 4b R11 5f R15 1c 4c push60 pop 4d R1461 R14 4e push62 pop 核心微命令: 地址 功能 下址 50 1D mvrd 51 DR--SR 52 R11--SR 53 R14--SR 54 sub DR-R11 55 inc DR+1 56 sub R11-R14 57 inc R11+1 58 R15--R5 59 dec R14 5a jrnz 且 R5--R15 5b shl R11 5c add R1+R11 01011
显示全部
相似文档