为什么在设计个人计算机时,基于冯·诺依曼体系结构的计算机体系结构比哈佛体系结构更受青睐;而哈佛架构用于设计基于微机的计算机系统和基于DSP的计算机系统?
当前 PC 的 CPU 设计同时具有哈佛和冯·诺依曼元素(更多冯·诺依曼).
如果您查看 L1 缓存,您会发现在 AMD、ARM 和 Intel 系统中具有指令 L1 缓存和数据 L1 缓存,可以独立且并行地访问它们。这就是哈佛部分。然而,在L2、L3或DRAM中,数据和代码是混合的。这就是冯诺依曼部分.
那么为什么 PC 不采用纯粹的哈佛架构呢?我的意见是没有意义。如果您分析主要的大多数应用程序,您会发现L1指令Cache未命中率很小。这意味着通常代码大小不是问题。因此,为代码设计完全独立的路径是没有意义的。数据可以变得非常大,但代码却不能。
在 DSP 中,使用单独的代码和数据路径是有意义的。这是因为 DSP 的工作主要是“流数据”,这意味着对缓存的需求相当小。此外,DSP 代码还可以包含预先计算的系数,从而增加代码大小。因此,数据大小和代码大小之间存在平衡,这意味着使用哈佛架构是有意义的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)