了解TEC-2机的结构和基本的指令知识很重要,不理解而只知一味地照抄是学不到知识的。建议先阅读课件,再结合例子进行理解。以下例子只供参考,有些地方可以合并,具体的操作仍需见仁见智。理解并学会使用微指令分析器是解决问题的关键。

总体思路:

设计微程序→将微码存放于内存中→将微码加载到微控制存储器中→输入程序,运行新指令,以检验微程序的正确性

补充知识:

指令格式: 操作码    条件码    目的寄存器(DR)    源寄存器(SR)

       ||

   唯一指定一条指令

例:第一题:     D4                     2                          0

PC:存放内存单元的地址。(随着指令运行时递增)

反汇编得到指令的具体格式。

14号命令:与/CC条件无关,顺序执行,即执行紧跟在本条微指令后面的那条微指令,由μPC提供微地址。

3号命令:条件转移。/CC=1时,顺序执行,否则按当前微指令下地址字段中地址D转移。

D数据来源可分为:

①16个钮子开关,用于手拨方式输入的数据或地址②运算器的16位输出;③外部数据总线传送来的数据;④中断向量寄存器的输出;⑤状态寄存器(C-进/借位、Z-运算结果、V-溢出、S-符号 4个标志位及中断优先级);⑥指令寄存器的低位字节。

第一题:

  将内存单元数据DATA减去用绝对地址ADDR表示的内存单元的内容,结果保存到由DR内容指定的内存单元中

1.指令格式

指令格式:

D4

DR

X

ADDR

DATA

2.指令功能

功能:  DATA- [ADDR] → [DR]

3.设计分析

根据指令的功能和指令格式,先读取地址ADDR单元内容暂时放置于Q寄存器中, 然后PC+1→PC,并将PC的值赋给AR。MEM中存放的数据是DATA。此时只需要实现MEM-Q→Q,并将DR送给AR。只要将Q寄存器内容写入存储器MEM就可以完成指令功能。最后,微程序中必须实现PC+1→PC操作,才能确保PC的正确走向。

4. 微程序 

100:PC→AR,PC+1→PC:  0000   0E00   A0B5   5402

101:MEM→AR:              0000   0E00   10F0   0002

102:MEM→Q:                0000   0E00   00F0   0000

103:PC→AR,PC+1→PC:   0000   0E00   A0B5   5402

104:MEM-Q→Q:              0000   0E01   02E0   0000

105:DR→AR:               0000   0E00   90B0   000A

106:Q→MEM,CC#=0:       0029   0300   1020   0010

5. 加载到微控存程序段

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

>A0800

0800:MOV R1,900        ;微码在内存中的首地址

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

0804:MOV R3,100        ;微码在微控制存储器中的首地址

0806:LDMC               ;加载微码指令,将微码指令加载到微控制存储器中

0807:RET

0808:

>A0800

6.运行程序段

>A0820

0820:MOV R0,0011

0822:MOV [0890],R0

0824:MOV R2,0891

0826:NOP

0827:NOP

0828:NOP

0829:RET

>E0826

然后输入以下内容:

D420 0890 1111

7.运行结果

>G0820

>D0891

0891:1100

第二题:

将绝对地址ADDR单元的内容与[SR]内容相加,结果保存到DR寄存。

1. 指令格式

指令格式:

D4

DR

SR

ADDR

2. 指令功能

功能:  [ADDR] + [SR] → DR

3.设计分析

根据指令的功能和指令格式,读取地址ADDR单元内容暂时放置于Q寄存器中,将SR单元内容赋给AR,MEM中存放着SR的数据。此时只需要实现Q+MEM,并将结果赋给DR就可以完成指令功能。最后,微程序中必须实现PC+1→PC操作,才能确保PC的正确走向。

4.微程序

100:PC→AR,PC+1→PC:  0000   0E00   A0B5   5402

101:MEM→AR:              0000   0E00   10F0   0002

102:MEM→Q:               0000   0E00   00F0   0000

103:SR→AR:               0000   0E00   90C0   0082

104:MEM+Q→Q:            0000   0E01   00E0   0000

105: Q→DR,CC#=0:        0029   0300   B020   0008

(104和105可以合并成MEM+Q→DR,CC#=0)

5.加载到微控存程序段

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

>A0800

0800:MOV R1,900        ;微码在内存中的首地址

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

0804:MOV R3,100        ;微码在微控制存储器中的首地址

0806:LDMC               ;加载微码指令,将微码指令加载到微控制存储器中

0807:RET

0808:

>A0800

6.  运行程序段

>A0820

0820:MOV R0,0011

0822:MOV [0890],R0

0824:MOV R0,0100

0826:MOV [0891], R0

0828:MOV R3, 0891

082A:NOP

082B:NOP

082C:RET

>E082A

然后输入以下内容:

D413 0890

7.运行结果

>G0820

>RR1

0111:-

转载于:https://www.cnblogs.com/chenshiyu/p/4457211.html

TEC-2机微程序设计相关推荐

  1. TEC-2机微程序设计实验

    TEC-2机微程序设计实验 一.实验目的 比较深入透彻地学懂计算机各种指令的执行过程,以及控制器的组成.设计的具体知识.理解动态微程序设计的概念. 二.实验原理 1.TEC-2机的控制器部件的组成 T ...

  2. 《计算机组成原理》实验报告——TEC-2实验系统——微程序控制器实验

    实验名称: TEC-2机微程序控制器实验 实验地点:10-413 一.实验目的 比较深入透彻地学懂计算机各种指令的执行过程,以及控制器的组成.设计的具体知识.理解动态微程序设计的概念. 二.实验原理 ...

  3. liunx 下dhcp中继及服务器配置

    dhcp:动态主机配置协议 使用udp协议 端口为67(服务),68(客户) 作用:动态分配地址等参数 工作模式 1. 手工 manual server-地址池 (ip-mac) 2222----1. ...

  4. 西南科技大学 计算机组成原理2011-2012,2011-2012学年第2学期课程教案-计算机组成原理-陈立伟.doc...

    2011-2012学年第2学期课程教案-计算机组成原理-陈立伟.doc 计算机科学与技术学院 课 程 教 案 学 期 2011~2012学年 第2学期 课程名称 计算机组成原理 授课对象 计算机201 ...

  5. 学期计算机教案,学年第2学期课程教案-计算机组成原理-陈立伟

    <学年第2学期课程教案-计算机组成原理-陈立伟>由会员分享,可在线阅读,更多相关<学年第2学期课程教案-计算机组成原理-陈立伟(27页珍藏版)>请在金锄头文库上搜索. 1.计算 ...

  6. 计算机组成nzvc的含义,计算机组成原理学生用实验指导

    <计算机组成原理学生用实验指导>由会员分享,可在线阅读,更多相关<计算机组成原理学生用实验指导(41页珍藏版)>请在人人文库网上搜索. 1.1.2TEC2机的指令系统与汇编语言 ...

  7. 计算机微程序设计实验报告,模型机综合实验及微程序设计实验报告.docx

    文档介绍: 模型机综合实验及微程序设计实验报告.docx成绩:实验报告课程名称:实践名称:姓名:专业:班级:学号:计算机组成原理模型机综合实验及微程序设计计算机科学与技术计算机科学与技术学院实验教学中 ...

  8. 计算机组成微程序设计,计算机组成原理微程序设计.doc

    文档介绍: 计算机组成原理微程序设计1.已知某机采用微程序控制方式,其存储器容量为512×48(位),微程序在整个控制存储器中实现转移,可控制微程序的条件共4个,微指令采用水平型格式,后继微指令地址采 ...

  9. 中美首份8000字长文解析全球热点脑机接口(重磅干货)

    来源:硅谷密探 摘要:"我们所想象的一切,都会变为现实." 如果说当今什么技术最接近科幻,那么一定是脑机接口. 脑机接口的研究已经实现了意识打字(1分钟之内平均输入39个字母),还 ...

最新文章

  1. 读农民工兄弟学C#文章后的感觉
  2. c语言中手机系统,一种手机课堂C语言编程系统的制作方法
  3. GPU对决TPU,英伟达能否守住领先地位?
  4. 了解1D和3D卷积神经网络|Keras
  5. 著名ERP厂商的SSO单点登录解决方案介绍一
  6. VS2013 解决方案文件结构分析
  7. shell 去掉字符串中的字母
  8. OpenCASCADE:Modeling Algorithms模块标准拓扑对象
  9. 每日一题——leetcode237 删除链表中的结点
  10. linux基础知识——环境变量
  11. TCP-Traceroute 核心代码
  12. android 多线程编程
  13. pxe结合kickstart文件实现全自动化安装
  14. 【图像增强】基于matlab暗通道图像去雾【含Matlab源码 101期】
  15. 六年级上册计算机教材分析,人教版六年级上册数学教材分析
  16. 团标《智慧高速公路建设总体技术要求》发布征求意见稿
  17. [PMP] 什么是从众效应
  18. Mac系统解决matplotlib无法显示中文字体
  19. Android中侧滑菜单的实现
  20. Kafka——创建无消费者组的消费者消费订阅主题

热门文章

  1. 服务器2016系统怎么关防火墙,服务器怎么关闭防火墙
  2. 公网SSH远程Ubuntu:安装cpolar内网穿透映射22端口 2/3
  3. AudioRecord获取分贝值
  4. 时域和频域的简单理解方法
  5. Win 7+Word 2007仿宋和楷体不能正常显示的解决方法
  6. 2021年线下“领航杯” MISC-《sqli》解题WP
  7. 蓝桥杯备赛经验分享---如何拿蓝桥国一?
  8. 虚拟服务器的优缺点有哪些?
  9. 如何使用redis生成流水号
  10. 指定的网络名不再可用的解决方法