在计算机体系结构的背景下,在微程序控制单元的情况下,控制字和微指令有什么区别?
In context of computer architecture, what is the difference between control word and micro-instruction in case of micro programmed control unit?
我对它们的了解越多,它们就越像是每个 other.I 的同义词,我指的是 Morris Mano 的计算机系统体系结构,它说控制字包含控制变量。但这不就是微指令所代表的东西吗?
你是对的。微指令和控制字是彼此的同义词。让我们理解 Mano 的意思——“控制字包含控制变量”
因此,要控制数据路径,您需要控制信号。让我们以数据路径中的 ALU 为例。比方说,ALU 执行 2 个操作——ADD 和 SHIFT。让我们称ALU的控制信号为ALU_K,当ALU_K=0时,ALU的输出为ADD,当ALU_K=1时,输出为SHIFT。所以,现在,我们拥有的控制变量是 ALU_K。
让我们对 SHIFT(Opcode-01) 指令进行编码。我的控制逻辑是将前两位解码为操作码,将第三位解码为 ALU_K。换句话说,我的控制逻辑的第三位进入 ALU 的控制引脚。对于进行SHIFT的数据路径,我们希望ALU进行一次SHIFT操作。因此,我们将 SHIFT 指令的 ControlWord 中的 ALU_K 位编码为 1,操作码将为 01。所以最后,我将在我的控制逻辑中存储 011。这串被称为 'control word'。它们也称为微指令或微码。
我对它们的了解越多,它们就越像是每个 other.I 的同义词,我指的是 Morris Mano 的计算机系统体系结构,它说控制字包含控制变量。但这不就是微指令所代表的东西吗?
你是对的。微指令和控制字是彼此的同义词。让我们理解 Mano 的意思——“控制字包含控制变量”
因此,要控制数据路径,您需要控制信号。让我们以数据路径中的 ALU 为例。比方说,ALU 执行 2 个操作——ADD 和 SHIFT。让我们称ALU的控制信号为ALU_K,当ALU_K=0时,ALU的输出为ADD,当ALU_K=1时,输出为SHIFT。所以,现在,我们拥有的控制变量是 ALU_K。
让我们对 SHIFT(Opcode-01) 指令进行编码。我的控制逻辑是将前两位解码为操作码,将第三位解码为 ALU_K。换句话说,我的控制逻辑的第三位进入 ALU 的控制引脚。对于进行SHIFT的数据路径,我们希望ALU进行一次SHIFT操作。因此,我们将 SHIFT 指令的 ControlWord 中的 ALU_K 位编码为 1,操作码将为 01。所以最后,我将在我的控制逻辑中存储 011。这串被称为 'control word'。它们也称为微指令或微码。