gpt4 book ai didi

arm - 寄存器 15 中的程序计数器如何暴露管道?

转载 作者:行者123 更新时间:2023-12-02 20:06:23 25 4
gpt4 key购买 nike

我收到一个分配给我的问题,内容如下:

“ARM 将程序计数器放在寄存器 r15 中,使其对程序员可见。有人撰写有关 ARM 的文章指出,这暴露了 ARM 的管道。他的意思是什么?为什么?”

我们还没有在类里面讨论过管道,所以我不知道那是什么,而且我很难理解在线 Material 。有人可以帮助我回答问题或帮助我理解,以便我可以形成自己的答案吗?

谢谢!

最佳答案

exposed pipeline意味着程序员需要考虑管道,我不同意 r15 值偏移量不是编码常量。

通过使 PC 对程序员可见,是的,早期实现细节的某些片段已被“暴露”为架构上的奇怪现象,需要由 future 的实现来维护。

如果架构中设计的偏移量为零,那么这就不值得评论了 - 对于简单的三级管道来说,就不可能进行优化,而且每个人都不会明智。

没有任何东西从管道中“导出”,而不是以跟踪或调试允许您窥探代码运行时的时序行为的方式 - 此功能只是处理器硬件向程序员呈现的幻觉的一部分(类似于按程序顺序执行的每条指令)。

像这样的新奇技巧的一个问题是,人们喜欢写关于它们的问题,而这些问题很容易措辞不当。他们还忽略了这样一个事实:即使管道是三级的,也只需要一个“特殊情况”就需要门进行偏移计算(即使这些门在典型操作中不消耗功率)。

拥有与 PC 相关的说明是相当常见的。对于offest的计算方式进行实现优化编码也很常见 - 例如 IBM 650

Retrocomputing.SE 是一个有趣的地方,可以了解一些与现代计算机发展相关的知识。

关于arm - 寄存器 15 中的程序计数器如何暴露管道?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54584709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com