当前位置: 第六章 计算机的控制器部件 >> 第二十七讲
讲选: 23/24/25/26/27/28/29/30

(2) 微程序控制器组成

56位的微指令字长,
  微下地址字段16位,
  控制命令字段40位,
7 片 28C64 组成控存。
1 片 28C65,从指令操
  作码产生微地址,
1 片 374 存 8 位下地址,
1 片 273 存 8 位条件码,
1 片377存8位现微地址。
1 片Am2910给出下一条
  微指令地址,
1 片GAL 按判断条件产
  生微指令转移信号/CC;
5 片GAL用作为 5 片 8位
  的 D 触发器的寄存器,
2 片GAL 实现两个4 位的
  2 选 1 芯片功能。
8 或 16位的指令寄存器。

微程序控制器


1. 确定指令功能与格式 2. 划分指令执行步骤 3.分配微指令地址 4. 设计微指令内容
5. 把新微指令写入控存 6. 需要时修改 MAPROM 和 SCC Gal等 7. 调试并且运行

TEC-2000 教学机系统的组成

每条指令的执行步骤

(3)基本指令、扩展指令执行流程图

(4)TEC-2000 教学机微指令格式设计

微指令的下地址字段
分成 3 个子字段,总共使用17位码 (微指令中用16位)。

9 位微下地址字段用于直接给出下一条微指令的地址,常用 8 位, 使用微指令字中最高8位编码 。
最高一位用于扩展功能,单独接线。
4 位的命令码,用于选择Am2910的16个命令, 如前一页的表格内容所示。
4 位的微转移条件给出微指令转移所依据的条件,与教学机具体设计有关。

控制命令字段

给出计算机各功能部件协同运行所需要的控制信号划分成若干字段,分别用于控制各部件
控制运算器部件
  如:运算功能,数据来源,结果处理等
控制总线 主存 入出接口(设备)
  如: 指出是主存读、写还是入出设备读、写
    把什么数据送到有关总线等
控制控制器部件 (下地址字段)
  主要是正确给出下条微指令的地址

为每一条微指令分配微地址

需要为每一条微指令在控存中分配一个合适的地址,这是合理地组织微程序的重要工作;
1. 首先确定微指令中下地址字段的组成;
2. 再按每一条微指令在控存中的位置,来安排下地址字段各部分的编码,
这与控制器的具体线路与方案有关。

微指令控制信号字段编码

每一条微指令各项微操作确定其所要求的控制信号
如: 使 IR,AR 等寄存器接收的信号
  控制 PC 增量和接收的信号
  读写主存,读写外设的信号
  控制运算器操作的信号 等
这要看被控制的具体对象的具体要求

(5) 指令执行流程举例

ADD DR, SR    MVRR DR, SR
IN IO-PORT    CALA ADR

指令执行流程举例

第 1 条微指令第 2 条微指令用于完成读取指令,具体操作功能是: PC→AR,PC+1→PC;PC 是 R5,A口 和 B口 均选5, B口内容+1 送 B口;输出A口的内容送AR寄存器。读主存, 读出内容→IR; 微指令都是顺序执行,故 2910选 14# 命令。
第 2 条微指令按读出的指令的操作码,形成相应微指令的地址,读出该条微指令并将其写入微指令寄存器, 2910选 2# 命令,控制运算器的 I8~I6 选 001 码,保证运算器的各寄存器内容不变化。 无存储器和IO读写,故/MIO REQ /WE 选 100 码。

第 3 条微指令第 4 条微指令 用于完成两个累加器之间的相加传送操作。具体操作是:2 累加器相加,DR+SR→DR,A口和B口 编码来自指令寄存器,故SA 和 SB都给 1 值;下微指令转判中断请求, 故 2910选 3# 命令且 SCC 为 0000, 必转 30。
第 4 条微指令,完成两个累加器之间的数据传送,累加器SR的内容和 0相加,存入DR寄存器中,不保存标志位的值,故SST为000,无存储器和 IO读写。这两条微指令内容有些类似。

第 5、6 两条微指令完成读串行接口,具体操作是:先送 IO 端口地址( 在 IR 的低 8位)到地址寄存器AR,DC1 为 2 选 IR 的低 8位送内部总线,经 ALU ( 送出 D+0 )到 AR (DC2 为 3 是 AR 接收);IN 指令时转14# 微指令(下地址 3 个字段为 14 3 6);
下一微指令完成读串口输入到内部总线,把D+0 送到 ALU并写进 R0( B 口选 0000);转判中断请求, 故 CI 选 3# 且 SCC 为 0000, 必转 30。

后 4 条微指令之间顺序执行,前 3 条的 CI 都是 E,依次完成:1. PCAR,PC+1→PC;(控制命令同读取指令的第1步) ;
2. 读内存 (MRW=001) 送 Q (D+0→Q) (子程序入口);
3. 修改堆栈指针并送AR, SP-1→SP,AR;SP 是 R4,即R4 的内容-1→R4 和 AR ( DC2 为 3 是 AR 接收);
4. 写断点( PC的内容)到堆栈 , 即 A 口指定的寄存器 (R5)的内容经数据总线送到内存并写入;子程序的入口地址 (在 Q 中)(Q的内容+0)送入 PC(B 口指定 R5)。下地址控制完成转向判中断请求的微指令的地址 30 处 。

讲选: 23/24/25/26/27/28/29/30