冯诺依曼建筑,这仍然适用

时间:2012-03-19 14:44:56

标签: cpu bus von-neumann

Von Neumann Architecture上阅读维基百科上的文章,它说明了以下内容

  

该术语的含义已经演变为存储程序计算机   其中不能发生指令获取和数据操作   同时因为他们共用一辆公共汽车。这被称为   冯·诺伊曼的瓶颈往往限制了系统的性能。

这里说Von Neumann Architecture术语指的是由于需要相同的总线,指令获取和数据操作不会同时发生。

我的问题是,现代计算机系统仍然如此吗?我们是否仍然只有一条总线来获取指令并进行数据操作(猜测这主要是数据读/写)?

1 个答案:

答案 0 :(得分:4)

几乎所有现代机器都可以同时获取指令和数据。它们通常具有单独的指令和数据缓存。

然而,在某些时候,它们几乎总是将指令和数据放在缓存之外的同一外部存储器中。通常是DRAM。

有人可能会说,现代机器有一个哈佛(单独的指令和数据,与Von Neumann的伟大竞争对手)缓存架构,但是Von Neumann(同一存储器中的指令和数据)内存架构。

我认为维基百科文章中提到的共享总线是虚假的。在计算机体系结构/处理器设计界,Von Neumann现在倾向于提到程序计数器(PC)的概念,或者用英特尔的说法,指令指针(IP),即通过程序的定序器,其中概念上每个处理器都是一次执行一条指令。而不是像数据流机器那样,没有程序计数器的真正概念。顺便说一句,现代无序微处理器,比如我曾经使用过的微处理器,都是内部微数据流机器,但程序员看来是具有单个程序计数器的Von Neumann机器。