Raspberry Pi是基于哈佛建筑吗?

时间:2017-01-27 09:34:31

标签: raspberry-pi arm cpu-architecture von-neumann harvard-architecture

我的印象是,Raspberry Pi的ARM处理器虽然具有armhf微体系结构,但仍遵循 Von Neumann 体系结构(主要是共享主存储器用于指令和数据)。

然而,我在计算机科学教科书(AQA第2单元的A Level计算机科学,Kevin R Bond 2016,第265页)中遇到了这一行。

  

Raspberry Pi计算机基于哈佛架构

在线搜索后,我找不到任何证明或反驳此声明的可靠消息来源。这是错误的吗?我希望在答案中给出一个来源。

我知道Raspberry Pi SE存在,但鉴于该标签不存在,我觉得在这里发布它更合适

2 个答案:

答案 0 :(得分:0)

它不是特定的pi使用架构,而是它拥有的处理器。

最初的raspberry pi使用ARM 11芯片(后来版本迁移到CORTEX-A芯片),ARM使用ARM9芯片从Von Neumann架构转移到哈佛

https://en.wikipedia.org/wiki/ARM9

此外,这是来自ARM的产品页面

https://www.arm.com/products/processors/classic/arm9/index.php

注意,假设没有提及架构有任何变化,CORTEX-A内核也保持这一点

答案 1 :(得分:0)

即使CPU的内部架构可能像哈佛一样,使用单独的指令和数据缓存和总线,SoC的其余部分仍然只有一个主存储器,指令和数据总线都连接到同一个存储器。来自https://en.wikipedia.org/wiki/ARM9

  

随着这一设计的产生,ARM从冯·诺依曼架构(普林斯顿架构)转变为具有独立指令和数据总线(和缓存)的哈佛架构,显着提高了其潜在的速度。大多数集成这些内核的芯片将它们封装为modified Harvard architecture芯片,将两个地址总线组合在独立CPU缓存和紧密耦合存储器的另一端。

关于修改过的哈佛架构的链接页面:

  

大多数现代计算机实现了修改过的哈佛架构。

     

最常见的修改是使用分隔指令和数据的CPU缓存构建内存层次结构。这统一了除数据和指令地址空间的一小部分之外的所有部分,提供了冯诺依曼模型。大多数程序员从不需要意识到处理器内核实现(修改过的)哈佛架构的事实,尽管它们受益于其速度优势。只有将指令写入数据存储器的程序员才需要了解缓存一致性等问题。

任何现代x86芯片都是如此。

对于Raspbian来说,这并没有任何问题,这只是对Raspberry Pis的正常Debian的特殊重新编译; raspbian的主要区别在于它有一个不同的手臂目标(armv6 + vfp hardfloat)比其他现有的arm debian发行版(目标是armv4t或armv7 + vfp hardfloat)。