zoukankan      html  css  js  c++  java
  • TEC-2机微程序设计

    了解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:-

  • 相关阅读:
    实验三-并发程序 20175201张驰
    20175201 20175215 20175229 实验二 固件程序设计
    20175201 20175215 20175229 实验一 开发环境的熟悉
    #20175201 实验五 网络编程与安全
    云班课选做
    2019-2020-12 20175313 20175328 20175329 实验五 通讯协议设计
    2019-2020-1 20175313 20175328 20175329 实验四 外设驱动程序设计
    2019-2020-1 20175313 20175328 20175329 实验三 并发程序
    20175329&20175313&20175318 2019-2020 《信息安全系统设计基础》实验三
    20175329&20175313&20175318 2019-2020 《信息安全系统设计基础》实验二
  • 原文地址:https://www.cnblogs.com/chenshiyu/p/4457211.html
Copyright © 2011-2022 走看看