假设某机共有 76 条指令,平均每一条指令由 11 条微指令组成,其中有一条取指令的微指令是所有指令公共的,该机共有微命令 31 个,微指令的微操作码采用直接控制法。试问: (1) 该机微指令长度为多少? (2) 控制存储器的容量应为多少?
时间: 2023-06-08 17:09:26 浏览: 217
你的第一个问题中,我可以回答:
(1) 该机微指令长度为:
11条微指令 * 31个微操作码 = 341比特
(2) 控制存储器的容量应为:
76条指令 * 11条微指令 * 31个微操作码 = 25856个比特,即3.23千字节。
相关问题
若在实验模型机中增设一条比较指令,则请给出该指令微程序方程图
好的,以下是一种可能的比较指令微程序方程图。
假设该指令为 `COMP`,用于比较寄存器 `A` 和寄存器 `B` 的值,如果 `A` 大于 `B` 则将标志寄存器 `flag` 置为 1,否则置为 0。
其中,寄存器 `A` 和 `B` 的值分别通过 `regA` 和 `regB` 信号输入,标志寄存器 `flag` 的值通过 `flag_in` 信号输入,比较结果通过 `flag_out` 信号输出。
微程序方程图如下:
```
+--------+
| COMP |
+--------+
|
| +---------------------+
+---v---+ | regA |
| ALU | +---------------------+
+---+---+ |
| | A_out
| v
+----------+-----------+ +----+----+
| | | ALU |
+----v----+ +----v----+ +----+----+
| 1 | | 0 | |
+----------+ +----------+ |
| | B_out
| v
+----v----+ +----+----+ +----+----+
| flag_in| | ALU | | flag |
+----+----+ +----+----+ +----+----+
| | |
+----v----+ +-----v-----+ |
| regB | | 0 | |
+---------+ +-----------+ |
| | flag_out
| v
+----v----+ +-----------+ +----+----+
| 0 | | flag_out | | flag |
+----------+ +-----------+ +---------+
```
其中,ALU 模块为计算模块,可以实现加、减、与、或等运算。在本微程序中,ALU 用于计算 `A - B` 的结果,并判断结果的正负性,根据结果的正负性决定将 `flag` 置为 1 还是 0。
该微程序的具体实现可能因计算机结构而异,上述方程图仅供参考。
扩展LC-2200 ISA以便包含一条减法指令。给出该减法指令所需的微状态
扩展LC-2200 ISA以包含一条减法指令需要进行如下几个步骤:
1. 定义操作码
首先,需要定义一个新的操作码,用于表示减法指令。可以将其定义为0b110。
2. 定义寄存器编号
为了执行减法操作,需要指定两个寄存器,一个用于存放被减数,另一个用于存放减数。因此,需要定义两个寄存器编号,分别用于表示这两个寄存器。可以将它们定义为0b00和0b01。
3. 定义微状态
接下来,需要定义减法指令所需的微状态。假设该指令为SUB,其微状态可定义如下:
微状态 | 功能
---|---
FETCH | 从存储器中获取指令
DECODE | 解码指令操作码
FETCH_OP1 | 从寄存器中获取被减数
FETCH_OP2 | 从寄存器中获取减数
SUBTRACT | 执行减法操作
STORE_RESULT | 将结果存储到寄存器中
INCREMENT_PC | 增加程序计数器
4. 定义指令格式
最后,需要定义指令的格式。可以将其定义为一个16位的二进制数,其中前6位表示操作码,接下来的5位表示被减数寄存器编号,再接下来的5位表示减数寄存器编号。
例如,SUB指令的格式可以定义为:
```
+--------+--------+--------+
| 0b110 | R1 | R2 |
+--------+--------+--------+
15..10 9..5 4..0
```
这样,当LC-2200处理到SUB指令时,就会按照上述微状态执行,从而实现减法操作。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)