什么是冯诺依曼结构?

存储技术

595人已加入

描述

  冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

  说到计算机的发展,就不能不提到美国科学家冯·诺依曼。从20世纪初,物理学和电子学科学家们就在争论制造可以进行数值计算的机器应该采用什么样的结构。人们被十进制这个人类习惯的计数方法所困扰。所以,那时以研制模拟计算机的呼声更为响亮和有力。20世纪30年代中期,美国科学家冯·诺依曼大胆的提出:抛弃十进制,采用二进制作为数字计算机的数制基础。同时,他还说预先编制计算程序,然后由计算机来按照人们事前制定的计算顺序来执行数值计算工作。

  人们把冯·诺依曼的这个理论称为冯·诺依曼体系结构。从EDVAC到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯·诺依曼是当之无愧的数字计算机之父。

  人们把利用这种概念和原理设计的电子计算机系统统称为“冯。诺曼型结构”计算机。冯。诺曼结构的处理器使用同一个存储器,经由同一个总线传输

  存储器

  结构

  使用冯·诺伊曼结构的中央处理器和微控制器有很多。除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、ARM的ARM7、MIPS公司的MIPS处理器也采用了冯·诺依曼结构。

  1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。

  冯·诺曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。

  存储器

  特点冯。诺依曼结构处理器具有以下几个特点:

  1:必须有一个存储器;2:必须有一个控制器;3:必须有一个运算器,用于完成算术运算和逻辑运算;4:必须有输入设备和输出设备,用于进行人机通信。:另外,程序和数据统一存储并在程序控制下自动工作

  功能

  根据冯·诺依曼体系结构构成的计算机,必须具有如下功能:

  把需要的程序和数据送至计算机中。

  必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。

  能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。

  能够按照要求将处理结果输出给用户。

  为了完成上述的功能,计算机必须具备五大基本组成部件,

  包括:

  输入数据和程序的输入设备;

  记忆程序和数据的存储器;

  完成数据加工处理的运算器;

  控制程序执行的控制器;

  输出处理结果的输出设备。

  瓶颈

  将CPU与内存分开并非十全十美,反而会导致所谓的冯·诺伊曼瓶颈(von Neumann bottleneck):在CPU与内存之间的流量(资料传输率)与内存的容量相比起来相当小,在现代电脑中,流量与CPU的工作效率相比之下非常小,在某些情况下(当CPU需要在巨大的资料上执行一些简单指令时),资料流量就成了整体效率非常严重的限制。CPU将会在资料输入或输出内存时闲置。由于CPU速度以及内存容量的成长速率远大于双方之间的流量,因此瓶颈问题越来越严重。而冯·诺伊曼瓶颈是约翰·巴科斯在1977年ACM图灵奖得奖致词时第一次出现,根据巴科斯所言:

  “……确实有一个变更储存装置的方法,比借由冯·诺伊曼瓶颈流通大量资料更为先进。瓶颈这词不仅是对于问题本身资料流量的叙述,更重要地,也是个使我们的思考方法局限在‘一次一字符’模式的智能瓶颈。它使我们怯于思考更广泛的概念。因此编程成为一种计划与详述通过冯·诺伊曼瓶颈的字符资料流,且大部分的问题不在于资料的特征,而是如何找出资料。”

  在CPU与内存间的快取内存抒解了冯·诺伊曼瓶颈的效能问题。另外,分支预测(branch predictor)算法的建立也帮助缓和了此问题。巴科斯在1977年论述的“智能瓶颈”已改变甚多。且巴科斯对于此问题的解决方案并没有造成明显影响。现代的函数式编程以及面向对象编程已较少执行如早期Fortran一般会“将大量数值从内存搬入搬出的操作”,但平心而论,这些操作的确占用电脑大部分的执行时间。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分