已知某CPU的微指令字长为32位,采用下址字段法;其中测试字段的测试条件有5个,微操作控制信号共有70个,构成5个互斥类的微命令组,各组包含微命令的数量分别是:7个,8个,8个,16个,31个,若微程序控制器编码采用混合表示法,其中测试字段采用直接表示法,操作控制字段采用编码表示法,那么操作控制字段有多少位,测试判别字段有多少位,下址字段有多少位?
时间: 2023-06-27 10:08:25 浏览: 326
根据题意,我们可以列出以下表格:
| 互斥类 | 包含微命令的数量 |
| --- | --- |
| 1 | 7 |
| 2 | 8 |
| 3 | 8 |
| 4 | 16 |
| 5 | 31 |
由于微指令字长为32位,其中测试字段采用直接表示法,因此测试判别字段有5位。设操作控制字段有$x$位,则每个微命令组所需的地址位数分别为:
| 互斥类 | 包含微命令的数量 | 所需地址位数 |
| --- | --- | --- |
| 1 | 7 | $5+x$ |
| 2 | 8 | $5+x$ |
| 3 | 8 | $5+x$ |
| 4 | 16 | $6+x$ |
| 5 | 31 | $7+x$ |
又因为采用的是下址字段法,即每条微程序的起始地址都存放在前一条微程序的微指令中,因此下址字段的长度为前一条微程序的地址长度,即:
$$
\begin{aligned}
地址长度 &= \max\{5+x,5+x,5+x,6+x,7+x\} \\
&= \max\{5+x,6+x,7+x\} \\
&= 7+x
\end{aligned}
$$
又因为微指令字长为32位,因此操作控制字段和测试判别字段的长度之和为:
$$
x + 5 + (7+x) = 32
$$
解得$x=20$,代入上式可得测试判别字段长度为5位,下址字段长度为$7+x=27$位,操作控制字段长度为$x=20$位。
阅读全文