0

这可能是超级基本的,但我没有找到任何关于此的信息;如果在哈佛架构中需要同时访问数据和指令,这是否需要 CPU 有两个不同的 MAR 指向它们各自的地址和两个指向它们各自的数据?还是处理方式不同?

4

1 回答 1

1

是的,如果哈佛 CPU 有一个简单的非流水线总线接口,它实际上有一个物理 MAR 和 MDR(非玩具主流 CPU没有,但一个简单的微控制器可能至少有同等的东西)。

一般来说,是的,如果它是真正的哈佛,那么有两个独立的总线接口。不只是在统一的外部缓存 + 内存(即Modified Harvard)前面拆分缓存。

这是哈佛观点的一部分,允许代码获取和数据加载/存储之间的并行性,避免冯诺依曼瓶颈。以及具有单独的地址空间。(当然,即使是哈佛机器也必须从内存中获取数据,以便为 ALU 提供有用的工作。)

于 2021-01-13T13:40:02.077 回答