【上海大学计算机组成原理实验报告】四、指令系统实验

一、实验目的

  1. 了解指令结构、PC寄存器的功能和指令系统的基本工作原理。

  2. 学习设计指令的方法。

二、实验原理

  1. 根据实验指导书的相关内容,对于部分使用频率很高,且只用几条微指令即可完成的简单操作,可以把这部分简单操作的微指令序列固定下来,存放在一个快速存储器中。之后我们就可以用不同的指令来调用不同的微程序,以达到完成不同指令的功能。

  2. 本实验所用的实验箱的指令系统中,每条指令均由4条微指令组成。当实际需要的微指令数量不足4条时,可用无效微指令FFFFFFH补足,但最后一条有效微指令一定是CBFFFFH微指令,表示本条指令执行完毕,取下一条指令。

  3. 指令系统的工作原理: 

    1. 指令获取:从存储器中获取下一条指令,通过地址总线传递给存储器。

    2. 指令解码:将获取的指令二进制通过指令总线传递给微程序计数器,高6位作为微程序入口地址,低2位分别作为SASB

    3. 微程序执行:根据微程序入口地址访问微程序存储器,将控制信号输出到控制总线,执行当前微指令功能。uPC1,输出下一条微指令,重复执行,直到“取下一条指令”微指令。

    4. 取下一条指令:PC1,开始执行下一条指令。

三、实验内容

实验任务一:分析并验证指令功能

观察机器指令码为66H的各微指令信号,验证该指令的功能。假设A=03HR2=77H77地址单元存放06H数据。

实验任务二:设计指令,完成相应功能

修改机器指令码为E8H的功能,使其完成“输出A+W的结果右移一位的值送OUT输出”操作。

**注意:**两个任务连起来做。

(1) 实验步骤

  1. 注释仪器,打开电源,手不要远离电源开关,随时准备关闭电源,注意各数码管、发光管的稳定性,静待10秒,确信仪器稳定、无焦糊味。

  2. 按Reset键初始化系统,并设置实验箱进入EM模式。设置Adr=00,按下NX,设置DB=66;而后按下NX,设置DB=E8;最后设置Adr=77,按下NX,设置DB=06

  3. 设置实验箱进入uEM模式。设置Adr=E8,按下NX,设置E8=FF DE B8H;而后按下NX,设置E9=CB FF FFH;最后按相同的方式将EAEB设置为FF FF FFH

  4. 设置实验箱进入uPC模式。设置uPC=00PC=00A=03;按NX三次,设置R2=77,按下STEP键,观察实验结果。

  5. 记录实验结果,关闭实验箱电源。

(2) 实验现象

  1. 第一次按下STEP键时,发现uPC显示64PC显示01

  2. 第二次按下STEP键时,发现uPc显示65MAR显示77

  3. 第三次按下STEP键时,发现uPC显示66W显示06

  4. 第四次按下STEP键时,发现uPC显示67A显示07

  5. 第五次按下STEP键时,发现uPC显示E8

  6. 第六次按下STEP键时,发现uPC显示E9OUT显示06

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

(3)实验结论

  1. 由第二次按下STEP键发现MAR显示77,可知指令码为66H的含义是将R2寄存器中的内容读出并写入MAR寄存器。

  2. 通过一系列正确的设计,我们成功地完成了“输出A+W的结果右移一位的值送OUT输出”操作功能的实现。

四、建议

  1. 在分析66H处的指令时,可以将其与例子中的指令进行比较观察在二进制格式下有哪些位不同。

  2. 在编制指令时,要确定好“A+W”运算、“右移一位”和“送OUT”输出分别对应微指令在二进制格式下的哪些位置。

五、体会

通过此次实验,加深了我对计算机体系结构中PC寄存器和指令系统的理解,同时也让我学会了如何设计指令,还让我能将理论知识应用到实际情景中,为进行下一次实验打下了扎实基础。

六、思考题

在微指令结构的计算机中,一条指令从启动到产生功能经过哪些环节?

  1. 指令获取。

  2. 指令解码。

  3. 微指令执行。

  4. uPC更新。

  5. 取下一条指令。

  • 69
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 66
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 66
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HackerKevn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值