hardware - 冯诺依曼与哈佛建筑

标签 hardware cpu-architecture von-neumann harvard-architecture

为什么在设计个人计算机时,基于冯诺依曼架构的计算机架构优于哈佛架构;而哈佛架构用于设计基于微机的计算机系统和基于 DSP 的计算机系统?

最佳答案

目前用于 PC 的 CPU 设计具有哈佛和冯诺依曼元素(尽管更多是冯诺依曼元素)。

如果您查看 L1 缓存,您会发现在 AMD、ARM 和 Intel 系统中,您有指令 L1 缓存和数据 L1 缓存,它们可以独立和并行访问。那是 哈佛部分 .但是,在 L2、L3 或 DRAM 中,数据和代码是混合的。那是 冯诺依曼零件 .

那么为什么 PC 没有采用纯哈佛架构呢?我的观点是这没有意义。如果您分析主要的大多数应用程序,您会看到 L1 指令缓存未命中率非常小 .这意味着通常代码大小不是问题。所以为代码设计一个完全独立的路径是没有意义的。数据可以增长得非常大,但代码却不能。

在 DSP 中,使用单独的代码和数据路径是有意义的。那是因为 DSP 的工作主要是“流数据”,这意味着对缓存的需求相当小。此外,DSP 代码可以包含增加代码大小的预计算系数。所以在数据大小和代码大小之间有一个平衡,这意味着使用哈佛架构是有意义的。

关于hardware - 冯诺依曼与哈佛建筑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26826248/

相关文章:

linux - 在将服务器安装到数据中心之前如何验证服务器的硬件?

x86-64 - 为什么英特尔宣传的某些 Haswell AVX 延迟比 Sandy Bridge 慢 3 倍?

linux - 为什么 Linux (x86) 的页面大小是 4 KB,这是如何计算的?

c++ - 为什么 ret 指令数大于调用指令数?

c++ - C++是否被视为Von Neumann编程语言?

hardware - 构建 CPU 所需的最少晶体管数量是多少?

java - 如何通过编码关闭/关闭Android平板电脑?

windows - "COM"、 "USB"、 "Serial Port"有什么区别?

cpu - 关于冯·诺依曼建筑图的一些疑问

architecture - 冯·诺依曼架构有何优点?