云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 微指令设计

微指令设计

  • 62 次阅读
  • 3 次下载
  • 2025/5/6 13:01:27

R0= F080

(7)设计一条指令,实现的功能是: 当DR=SR时,原PC(IP)+OFFSET→PC;

当DR

设计分析

1) 100:另DR-SR并让各个标志位接受ALU的状态标志;

2)101:PC→AR,将OFFSET的地址送到AR中,然后根据标志位判断,如果零标志位等于1,说明DR=SR,利用下地址字段给出跳转的地址104;

3)102:若零标志位不为1,则由顺寻执行到此处。根据负标志位判断,若为1,则说明DR

4)103:若102和103中的条件判断都不成立,即DR>SR,则用PC+1→PC顺序执行下一条汇编指令; 5)104:由101跳转至此后,用IP+OFFSET(MEM)→PC将ADDR送到PC中完成转移; 6)105:由102跳转至此后,用ADDR(MEM)→PC完成转移。 3.

微程序

100:DR-SR;接受标志: 0000 0E01 9110 0088 101:PC->AR,DR=SR时跳到104: 0041 0370 9030 5002 102:PC->AR, PC+1->PC,DRPC,DR>SR时执行下条指令: 104:IP+OFFSET(MEM)->PC:

(2) 加载到微控存程序段 4.

加载到微控存程序段

说明:微码存放在900H(或某内存单元)开始的内存单元中 >A800↙

0800:MOV R1,900 0804:MOV R3,100 0806:LDMC 0807:RET 0808: 5.

运行程序段 >A820↙ 0820:MOV R7,7 0822:MOV R8,8 0824:MOV R0,0

;微码在内存中的首地址 ;微码在微控存中的首地址 ;加载微码指令

0802:MOV R2,6 ;微指令条数

0029 0300 B030 5400

0029 0300 30D6 5000 0029 0300 30F0 5000

指令格式

D4 DR SR

OFFSET ADDR 指令格式:

105:ADDR(MEM)->PC:

0826:NOP 0827: NOP 0828:NOP 0829: NOP

082A:MOV R0,4444 082C: RET

082D: MOV R0,5555 082F: RET

0830: MOV RO,7777 0832: RET >E826↙

然后输入以下内容: D478 0007 0830 6.

运行结果 1)R7=7,R8=8 >G820↙ 用R命令查看运算结果

R0=7777 (成功跳转至0830处) 2)>E821

输入 0008 (即R7=8,R8=8) >G820↙

用R命令查看运算结果

R0=5555 (成功跳转至IP+OFFSET即082D处) 3)>E821

输入 0009 (即R7=9,R8=8) >G820↙

用R命令查看运算结果

R0=4444 (成功执行下一条指令,即082A处)

(8)设计一条指令,以实现将SR内容与内存单元ADDR的内容相加,结果存到ADDR单元中。 1.指令功能

功能:[ADDR]+SR→[ADDR] 2.指令格式 指令格式: ADDR

3.设计分析

根据实验册Page45后的<<微指令分析及功能描述表根据指令的功能和指令格式,在读取地址ADDR单元内容后暂时放置于Q寄存器中,然后将SR(R8)与Q寄存器内容相加,其结果也暂存放在Q寄存器中,此时,由于地址寄存器AR中存放的恰好是地址ADDR,因此只要将Q寄存器内容写入存储器就可以完成所需的指令功能。 4.微程序

100:PC→AR,PC+1→PC:

0000 0E 00

A0 B5

54 02

D4 0

SR

101:MEM→AR: 102:MEM→Q: 103:Q+SR→Q:

0000 0E 00 0000 0E 00 0000 0E 01

10 F0 00 02 00 F0 00 00 80 80 00 80

104:Q→MEM,CC#=0: 5.加载到微控存程序段

0029 03 00 10 20 00 10

(一)用”A”命令输入加载微码的程序 在命令行提示符状态下输入: >A800↙

0800:MOV R1,900 0802:MOV R2,5 0804:MOV R3,100 0806:LDMC 0807:RET 0808:

(二)用”G”命令运行加载微码的程序 在命令行提示符状态下输入: >G800

微码便装入起始地址为100H的微控存中. 6.输入程序并运行新命令 (一)用”A”命令输入程序 在命令行提示符状态下输入: >A820

0820:MOV R0,0011 0822:MOV R8,0001 0824:MOV [0890],R0 0826:NOP 0827:NOP 0828:RET

(二)用”E”命令输入新指令 在命令行提示符状态下输入: >E826

0826: D400 0890 0891 7.用”G”命令运行程序 在命令行提示符状态下输入 >G820

然后用”D”命令察看运行结果 在命令行提示符状态下输入: >D890 屏幕将显示: 0890 0012

0891单元为0012,即为正确的运算结果.

(9)设计一条符号扩展指令 1.指令功能

;微码在内存中的首地址 ;微指令条数 ;微码在微控存中的首地址 ;加载微码指令

功能: DR 符号扩展→ DR 2.指令格式 指令格式: 3.设计分析

根据指令的功能和指令格式:

(1)对寄存器保存的低位字节的8位有符号补码数进行逻辑左移操作,左移9位,空出的低位补0; (2)对其进行算术右移操作,右移9位,空出的高位用最高位(符号位)填补,这样即可将其扩展为16位D8 DR 0

的同值补码数;

(3)结果仍保存在原寄存器中,完成指令功能; 4.微程序

100:R/C=8: 0002 0400 101:DR→DR逻辑左移9次: 0000 0806 102:R/C=8: 0002 0400 103:DR→DR算术右移9次,CC#=0: 0029 0F20 5.加载到微控存程序段

(一)用”A”命令输入加载微码的程序 在命令行提示符状态下输入: >A800

0800:MOV R1,900 ;微码在内存中的首地址 0802:MOV R2,4 ;微指令条数 0804:MOV R3,100 ;微码在微控存中的首地址 0806:LDMC

;加载微码指令

0807:RET 0808:

(二)用”G”命令运行加载微码的程序 在命令行提示符状态下输入: >G800

微码便装入起始地址为100H的微控存中. 6.输入程序并运行新命令 (一)用”A”命令输入程序 在命令行提示符状态下输入: >A820

0820:MOV R9,00FF 0822:NOP 0823:RET

(二)用”E”命令输入新指令 在命令行提示符状态下输入: >E822

然后输入以下内容: D890

7.察看运行结果 >G820 >R R9=FFFF

8030 0000 F030 0208 8030 0000

D030 0108

搜索更多关于: 微指令设计 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

R0= F080 (7)设计一条指令,实现的功能是: 当DR=SR时,原PC(IP)+OFFSET→PC; 当DR

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com