网站大量收购独家精品文档,联系QQ:2885784924

中原工学院信息商务学院学生课程设计环节报告专用纸 第 1 页 实验四 .docVIP

中原工学院信息商务学院学生课程设计环节报告专用纸 第 1 页 实验四 .doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中原工学院信息商务学院学生课程设计环节报告专用纸 第 1 页 实验四

实验四 微程序设计实验 一、实验目的: 1.熟悉COP2000计算机组成原理实验仪的集成开发环境 2.掌握微程序设计的方法、步骤 二、实验内容: 建立一个有如下指令的系统: 指令助记符 指令意义描述 SUB R,#II 累加器A减立即数 JMP MM 无条件跳转指令 三、实验步骤: 1.微程序设计的一般方法和步骤如下所示: 设计微指令结构应当追求的目标是: a.有利于缩短微指令字长度; b.有利于减小控制存储器的容量; c.有利于提高微程序的执行速度; d.有利于对微指令的修改; e.有利于微程序设计的灵活性. 2.微命令编码有三种方法,如下所示: (1)直接表示法 操作控制字段中每一位代表一个微命令.这种方法的优点是简单直观,其输出直接用于控制.缺点是微指令字较长,因而使控制存储器容量较大。 (2)编码表示法 编码表示法是把一组相斥性的微命令信号组成一个小组(即一个字段),然后通过小组(字段)译码器对每一个微命令信号进行译码,译码输出作为操作控制信号 (3)混合表示法 这种方法是把直接表示法与字段编码法相混合使用,以便能综合考虑微指令字长、灵活性和执行微程序速度等方面的要求. 3.使用COP2000实验仪进行微程序设计 模型机总体结构 COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:运算器ALU、累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。其中运算器和中断控制电路以及跳转控制电路用CPLD来实现,其它电路都是用离散的数字电路组成。微程序控制部分也可以用组合逻辑控制来代替。 模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入、输出,选择运算器的运算功能,存储器的读写。 4.建立一个有如下指令的系统的微程序设计步骤: 指令助记符 指令意义描述 SUB R,#II 累加器A减立即数 JMP MM 无条件跳转指令 1).打开COP2000组成原理实验软件,选择[文件|新建指令系统/微程序],清除原来的指令/微程序系统,观察软件下方的“指令系统”窗口,所有指令码都“未使用 2).选择第二行,即“机器码1”为0000 01XX行,在下方的“助记符”栏填入数据装载功能的指令助记符“LD”,在“操作数1”栏选择“A”,表示第一个操作数为累加器A。在“操作数2”栏选择“#II”,表示第二个操作数为立即数。按“修改”按钮确认。 3).选择第三行,即“机器码1”为0000 10XX行,在下方的“助记符”栏填入加法功能的指令助记符“ADD”,在“操作码1”栏选择“A”,表示第一操作数为累加器A,在“操作数2”栏选择“#II”,表示第二操作数为立即数。按“修改”按钮确认。 4).选择第四行,即“机器码1”为0000 11XX行,在下方的“助记符”栏填入无条件跳转功能的指令助记符“GOTO”,在“操作码1”栏选择“MM”,表示跳转地址为MM,此指令无第二操作数,无需选择“操作数2”。按“修改”按钮确认。因为硬件设计时,跳转指令的跳转控制需要指令码的第3位和第2位IR3、IR2来决定,无条件跳转的控制要求IR3必需为1,所以无条件跳转的机器码选择在此行,机器码为000011XX。关于跳转控制的硬件设计和实验可参考前面章节。如下图所示: 5).选择第五行,即“机器码1”为0001 00XX行,在下方的“助记符”栏填入输出数据功能的指令助记符“OUTA”,由于此指令隐含指定了将累加器A输出到输出商品寄存器,所以不用选择“操作码1”和“操作数2”,按“修改”按钮确认。 现在我们只是输入了四条指令,如下图所示: 5.根据指令的功能来设计相应的微程序 1).将窗口切换到“uM微程序”窗口,现在此窗口中所有微指令值都是0FFFFFFH,也就是无任何操作,我们需要在此窗口输入每条指令的微程序来实现该指令的功能。 如下图所示: 2).每个程序开始要执行的第一条微指令应是取指操作,因为程序复位后,PC和uPC的值都为0,所以微程序的0地址处就是程序执行的第一条取指的微指令。取指操作要做的工作是从程序存储器EM

您可能关注的文档

文档评论(0)

zhuwo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档