【发布时间】:2017-03-21 12:00:20
【问题描述】:
我知道什么是计算机体系结构和设计中的微编码指令,但对这两个术语感到困惑。浏览了几篇文章,但无法弄清楚。
他们中的一些人说:
水平微码:在这种类型的代码中,微码包含控制信号,没有任何中介。
垂直微码:在垂直微码的情况下,每个动作都以密度编码。
这些术语超出了我的理解范围,希望能提供更简单的解释。
【问题讨论】:
标签: assembly cpu-architecture processor instructions
我知道什么是计算机体系结构和设计中的微编码指令,但对这两个术语感到困惑。浏览了几篇文章,但无法弄清楚。
他们中的一些人说:
水平微码:在这种类型的代码中,微码包含控制信号,没有任何中介。
垂直微码:在垂直微码的情况下,每个动作都以密度编码。
这些术语超出了我的理解范围,希望能提供更简单的解释。
【问题讨论】:
标签: assembly cpu-architecture processor instructions
嗯,Wikipedia 给了一个很好的介绍。
为简单起见,假设我们在 CPU 数据路径中只有两个 MUXs,例如 A 和 B。
并且每个 MUX 由 4 位控制。
水平微编码指令将包含 MUX A 和 B 的选择值:
4-bit 4-bit
______ _______
| A | B |
¯¯¯¯¯¯ ¯¯¯¯¯¯¯
| |
| |
___V_ ___V_
|MUX A| |MUX B|
¯¯¯¯¯ ¯¯¯¯¯
指令中的位直接馈入两个 MUX 的选择线
垂直微编码指令将使用 DEMUX,即“元 DEMUX”,用于选择要驱动的 MUX。
1
b
i
t 4-bit
_ _______
|M| SEL |
¯ ¯¯¯¯¯¯¯
| | 4-bit DEMUX input
| _V_ _______
'->| D | -- 4-bit output 0 --> | MUX A |
| M |' ¯¯¯¯¯¯¯
| U |. _______
| X | -- 4-bit output 1 --> | MUX B |
¯¯¯ ¯¯¯¯¯¯¯
所以在指令信号位和被驱动元件之间有一个中间组合电路。
您已经可以看到垂直微码的指令更短,但传播时间更长。
【讨论】: