为什么在设计个人计算机时,基于von结构的计算机体系结构优于哈佛体系结构;而哈佛体系结构则用于设计基于微机的计算机系统和基于DSP的计算机系统?
发布于 2014-11-09 08:49:48
目前PC的CPU设计有哈佛和冯·诺依曼两种元素(更多的是冯·诺依曼)。
如果您查看L1缓存,您将看到,在AMD,ARM和英特尔系统中,您有指令L1缓存和数据L1缓存,这些缓存可以独立和并行地访问。这是哈佛大学的。然而,在L2、L3或DRAM中,数据和代码是混合的。这是Von Neumann的部分。
那么,为什么PC不采用纯粹的哈佛架构呢?我的看法是,这是没有意义的。如果您分析了大多数应用程序,您将看到L1指令缓存丢失率非常小。这意味着通常代码大小并不是一个问题。因此,为代码设计完全独立的路径是没有意义的。数据可能增长非常大,但代码实际上不能。
在DSP中,使用单独的代码和数据路径是有意义的。这是因为DSP的工作主要是“流数据”,这意味着缓存的需要相当小。此外,DSP代码可以包含预先计算的系数,以增加代码大小。因此,在数据大小和代码大小之间存在一种平衡,这意味着使用哈佛体系结构是有意义的。
发布于 2014-11-09 08:11:58
Von Neumann体系结构与哈佛体系结构的根本区别在于,在哈佛体系结构中,指令内存与数据内存是不同的,而在Von Neumann中,它们是相同的。这反映了PC机(程序存储和读取与数据相同的介质,通常是磁盘和RAM)和微控制器(程序存储在非易失性内存中,数据存储在易失性内存中)的实际情况。
https://stackoverflow.com/questions/26826248
复制相似问题