我见过几个有关“双发射”处理器的概念的参考资料(我希望这在句子中甚至是有意义的)。 我找不到任何关于双发射究竟是什么的解释。 Google给我提供了微控制器规格的链接,但这个概念没有在任何地方得到解释。 这里有一个这样的参考示例。 我找错地方了吗?简短的段落说明它是什么将非常有帮助。
我见过几个有关“双发射”处理器的概念的参考资料(我希望这在句子中甚至是有意义的)。 我找不到任何关于双发射究竟是什么的解释。 Google给我提供了微控制器规格的链接,但这个概念没有在任何地方得到解释。 这里有一个这样的参考示例。 我找错地方了吗?简短的段落说明它是什么将非常有帮助。
双发射是指每个时钟周期,处理器可以将两个指令从流水线的一个阶段移动到下一个阶段。具体实现取决于处理器和公司术语:它可以意味着将两个指令从解码队列移动到重新排序队列(英特尔称之为“issue”),也可以意味着将指令(或微操作或其他内容)从重新排序队列移动到执行端口(我的理解是,IBM将其称为“issue”,而英特尔将其称为“dispatch”)。
但广义上来说,这通常意味着您可以在每个周期中维持执行两个指令。
由于您标记了ARM,我认为他们正在使用英特尔的术语。Cortex-A8和Cortex-A9每个周期可以获取两个指令(在Thumb-2中可以获取更多指令),解码两个指令,并“发出”两个指令。在Cortex-A8上,没有乱序执行,尽管我不记得是否仍然有解码队列供您发出指令-如果没有,您将直接从解码指令插入到两个执行流水线中。在Cortex-A9上,有发射队列,因此解码的指令被发出到那里-然后指令以每个周期最多4个的速度分派到执行流水线。