微程序控制器设计分析及逻辑结构详解

wzzyhg 114 0

已知某机采用微程序控制方式,控存容量为512×48位。微程序可在整个控存中实现转務,控制库转移的条件共4个,微指令采用水平型格式,后继微指令地址采用断定方式。请问:微指令的三个字段分别应为多少位?

因为容量为512*48位,所以下址字段需用9位,控制微程序转移的条件有4个,所以判别测试字段需4位或(3位译码),因此操作控制字段的位数48-9-4=35位(或 48-9-3=36位)

根据题目的描述,我们分析如下:

  1. 微指令格式

一个微指令的长度为 48 位,微指令采用水平型格式,可以分为三个字段:

• 地址字段(用于确定下一条微指令的地址)
• 判别测试字段(用于选择控制条件)
• 操作控制字段(用于控制具体的操作信号)

  1. 地址字段

控存容量为 512 \times 48 位,其中 512 是控存中的微指令条数。
地址字段需要表示 512 个不同的地址,因此地址字段的位数为:

\text{地址字段位数} = \log_2(512) = 9 \text{位}

  1. 判别测试字段

根据题目描述,控制库转移的条件有 4 个,因此需要 4 个可能的条件输入。
使用判别测试字段来选择这些条件,常见有两种编码方式:

• 直接编码:每个条件对应一个唯一的二进制码字,需要 4 位表示。
• 译码方式:如果使用 3 位,则可以通过 2^3 = 8 个码字来唯一选择 4 个条件。

因此,判别测试字段可能是 3 位 或 4 位。

  1. 操作控制字段

剩下的位数用于操作控制字段,即控制各种具体的操作信号。

操作控制字段的位数可以通过以下公式计算:

\text{操作控制字段位数} = 48 - \text{地址字段位数} - \text{判别测试字段位数}

如果判别测试字段为 4 位:

\text{操作控制字段位数} = 48 - 9 - 4 = 35 \text{位}

如果判别测试字段为 3 位:

\text{操作控制字段位数} = 48 - 9 - 3 = 36 \text{位}

  1. 总结

微指令的三个字段位数可能有以下两种情况:

• 地址字段:9 位
• 判别测试字段:4 位(直接编码)
• 操作控制字段:35 位

• 地址字段:9 位
• 判别测试字段:3 位(译码方式)
• 操作控制字段:36 位

发表评论 取消回复
表情 图片 链接 代码

分享