Raspberry Pi 是基于哈佛架构吗?
Is the Raspberry Pi based on Harvard Architecture?
我的印象是 Raspberry Pi 的 ARM 处理器虽然具有 armhf 微体系结构,但仍然遵循 冯诺依曼 体系结构(主要是 sharing 用于指令和数据的主存储器)。
但是我在计算机科学教科书(A Level Computer Science for AQA Unit 2, Kevin R Bond 2016, pg265)中看到了这一行
The Raspberry Pi computer is based on the Harvard architecture
在网上搜索后,我找不到任何可靠的消息来源来证明或反驳这一说法。这是错误的吗?我将不胜感激在答案中给出的来源。
(我知道 Raspberry Pi SE 存在,但考虑到该标签不存在,我认为将它 post 放在这里更合适)
使用架构的不是pi,而是它的处理器。
原raspberry pi使用的是ARM 11芯片(后来的版本迁移到CORTEX-A芯片),ARM从冯·诺依曼架构转移到哈佛的ARM9芯片
https://en.wikipedia.org/wiki/ARM9
此外,这是来自 ARM 的产品页面
https://www.arm.com/products/processors/classic/arm9/index.php
注意,假设由于没有提及架构有任何变化,CORTEX-A 核心也保持这一点
即使 CPU 的内部架构可能是 harvard-like,具有独立的指令和数据缓存和总线,SoC 的其余部分仍然只有一个主内存,并且两个指令和数据总线连接到同一内存。来自 https://en.wikipedia.org/wiki/ARM9:
With this design generation, ARM moved from a von Neumann architecture (Princeton architecture) to a Harvard architecture with separate instruction and data buses (and caches), significantly increasing its potential speed. Most silicon chips integrating these cores will package them as modified Harvard architecture chips, combining the two address buses on the other side of separated CPU caches and tightly coupled memories.
来自关于修改哈佛架构的链接页面:
Most modern computers instead implement a modified Harvard architecture.
The most common modification builds a memory hierarchy with a CPU cache separating instructions and data. This unifies all except small portions of the data and instruction address spaces, providing the von Neumann model. Most programmers never need to be aware of the fact that the processor core implements a (modified) Harvard architecture, although they benefit from its speed advantages. Only programmers who write instructions into data memory need to be aware of issues such as cache coherency.
任何现代 x86 芯片也是如此。
这不会对 Raspbian 造成任何问题,这只是普通 Debian for Raspberry Pis 的特殊重新编译; raspbian 的主要区别是它有一个不同的 arm 目标 (armv6+vfp hardfloat) 与其他现有的 arm debian 发行版(目标是 armv4t 或 armv7+vfp hardfloat)。
我的印象是 Raspberry Pi 的 ARM 处理器虽然具有 armhf 微体系结构,但仍然遵循 冯诺依曼 体系结构(主要是 sharing 用于指令和数据的主存储器)。
但是我在计算机科学教科书(A Level Computer Science for AQA Unit 2, Kevin R Bond 2016, pg265)中看到了这一行
The Raspberry Pi computer is based on the Harvard architecture
在网上搜索后,我找不到任何可靠的消息来源来证明或反驳这一说法。这是错误的吗?我将不胜感激在答案中给出的来源。
(我知道 Raspberry Pi SE 存在,但考虑到该标签不存在,我认为将它 post 放在这里更合适)
使用架构的不是pi,而是它的处理器。
原raspberry pi使用的是ARM 11芯片(后来的版本迁移到CORTEX-A芯片),ARM从冯·诺依曼架构转移到哈佛的ARM9芯片
https://en.wikipedia.org/wiki/ARM9
此外,这是来自 ARM 的产品页面
https://www.arm.com/products/processors/classic/arm9/index.php
注意,假设由于没有提及架构有任何变化,CORTEX-A 核心也保持这一点
即使 CPU 的内部架构可能是 harvard-like,具有独立的指令和数据缓存和总线,SoC 的其余部分仍然只有一个主内存,并且两个指令和数据总线连接到同一内存。来自 https://en.wikipedia.org/wiki/ARM9:
With this design generation, ARM moved from a von Neumann architecture (Princeton architecture) to a Harvard architecture with separate instruction and data buses (and caches), significantly increasing its potential speed. Most silicon chips integrating these cores will package them as modified Harvard architecture chips, combining the two address buses on the other side of separated CPU caches and tightly coupled memories.
来自关于修改哈佛架构的链接页面:
Most modern computers instead implement a modified Harvard architecture.
The most common modification builds a memory hierarchy with a CPU cache separating instructions and data. This unifies all except small portions of the data and instruction address spaces, providing the von Neumann model. Most programmers never need to be aware of the fact that the processor core implements a (modified) Harvard architecture, although they benefit from its speed advantages. Only programmers who write instructions into data memory need to be aware of issues such as cache coherency.
任何现代 x86 芯片也是如此。
这不会对 Raspbian 造成任何问题,这只是普通 Debian for Raspberry Pis 的特殊重新编译; raspbian 的主要区别是它有一个不同的 arm 目标 (armv6+vfp hardfloat) 与其他现有的 arm debian 发行版(目标是 armv4t 或 armv7+vfp hardfloat)。