精锐:什么是冯诺依曼的体系结构体系结构?

冯·诺依曼结构_百度百科
声明:百科词条人人可编辑,词条创建和修改均免费,绝不存在官方及代理商付费代编,请勿上当受骗。
冯·诺依曼结构
结构也称,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086的程序指令和数据都是16。
冯·诺依曼结构历史
最早的计算机器仅内含固定用途的程序。现代的某些计算机依然维持这样的设计方式,通常是为了简化或教
冯·诺依曼
育目的。例如一个计算器仅有固定的数学计算程序,它不能拿来当作文书处理软件,更不能拿来玩游戏。若想要改变此机器的程序,你必须更改线路、更改结构甚至重新设计此机器。当然最早的计算机并没有设计成那种可编程化。当时所谓的“重写程序”很可能指的是纸笔设计程序步骤,接着制订工程细节,再施工将机器的电路配线或结构改变。
而储存程序型电脑的概念改变了这一切。借由创造一组指令集结构,并将所谓的运算转化成一串程序指令的执行细节,让此机器更有弹性。接着将指令当成一种特别型态的静态资料,一台储存程序型电脑可轻易改变其程序,并在下改变其运算内容。
冯·诺伊曼结构与储存程序型电脑是互相通用的名词,其用法将于下述。而则是一种将程序资料与普通资料分开储存的设计概念。
储存程序型概念也可让程序执行时自我修改程序的运算内容。本概念的设计动机之一就是可让程序自行增加内容或改变程序指令的内存位置,因为早期的设计都要使用者手动修改。但随着索引与间接位置存取变成硬件结构的必备机制后,本功能就不如以往重要了。而程序自我修改这项特色也被现代程序设计所弃扬,因为它会造成理解与除错的难度,且现代的管线与快取机制会让此功能效率降低。
从整体而言,将指令当成资料的概念使得组合语言、与其他自动编程工具得以实现;可以用这些“自动编程的程序”,以人类较易理解的方式编写程序[1];从局部来看,强调的机器,例如,想要修改画面上的图样,以往是认为若没有客制化硬件就办不到。但之后显示这些功能可以借由“执行中编译”技术而有效达到。
此结构当然有所缺陷,除了下列将述的冯·诺伊曼瓶颈之外,修改程序很可能是非常具伤害性的,无论无意或设计错误。在一个简单的储存程序型电脑上,一个设计不良的程序可能会伤害自己、其他程序甚或是操作系统,导致死机。缓冲区溢位就是一个典型例子。而创造或更改其他程序的能力也导致了恶意软件的出现。利用缓冲区溢位,一个恶意程序可以覆盖呼叫堆栈(Call stack)并覆写程序码,并且修改其他程序档案以造成连锁破坏。内存保护机制及其他形式的存取控制可以保护意外或恶意的程序码更动。
冯·诺依曼结构介绍
说到计算机的发展,就不能不提到美国科学家。从20世纪初,物理学和电子学科学家们就在争论制造可以进行数值计算的机器应该采用什么样的结构。人们被这个人类习惯的计数方法所困扰。所以,那时以研制的呼声更为响亮和有力。20世纪30年代中期,美国科学家冯·诺依曼大胆的提出:抛弃十进制,采用作为的数制基础。同时,他还说预先编制计算程序,然后由计算机来按照人们事前制定的计算顺序来执行数值计算工作。
人们把冯·诺依曼的这个理论称为。从EDVAC到当前最先进的计算机都采用的是。所以冯·诺依曼是当之无愧的数字计算机之父。
人们把利用这种概念和原理设计的电子计算机系统统称为“冯.诺曼型结构”计算机。冯.诺曼结构的处理器使用同一个存储器,经由同一个总线传输。
冯·诺依曼结构内容
冯·诺依曼结构特点
冯.诺依曼结构处理器具有以下几个特点:
1:必须有一个;2:必须有一个控制器;3:必须有一个,用于完成和;4:必须有输入设备和,用于进行人机通信。:另外,程序和数据统一存储并在程序控制下自动工作
冯·诺依曼结构功能
根据体系结构构成的计算机,必须具有如下功能:
把需要的程序和数据送至计算机中。
必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。
能够完成各种算术、和数据传送等数据加工处理的能力。
能够按照要求将处理结果输出给用户。
为了完成上述的功能,计算机必须具备五大基本组成部件,
输入数据和程序的输入设备;
记忆程序和数据的存储器;
完成数据加工处理的运算器;
控制程序执行的控制器;
输出处理结果的。
冯·诺依曼结构瓶颈
将CPU与内存分开并非十全十美,反而会导致所谓的冯·诺伊曼瓶颈(von Neumann bottleneck):在CPU与内存之间的流量(资料传输率)与内存的容量相比起来相当小,在现代电脑中,流量与CPU的工作效率相比之下非常小,在某些情况下(当CPU需要在巨大的资料上执行一些简单指令时),资料流量就成了整体效率非常严重的限制。CPU将会在资料输入或输出内存时闲置。由于CPU速度以及内存容量的成长速率远大于双方之间的流量,因此瓶颈问题越来越严重。而冯·诺伊曼瓶颈是约翰·巴科斯在1977年ACM图灵奖得奖致词时第一次出现,根据巴科斯所言:
“……确实有一个变更储存装置的方法,比借由冯·诺伊曼瓶颈流通大量资料更为先进。瓶颈这词不仅是对于问题本身资料流量的叙述,更重要地,也是个使我们的思考方法局限在‘一次一字符’模式的智能瓶颈。它使我们怯于思考更广泛的概念。因此编程成为一种计划与详述通过冯·诺伊曼瓶颈的字符资料流,且大部分的问题不在于资料的特征,而是如何找出资料。”
在CPU与内存间的快取内存抒解了冯·诺伊曼瓶颈的效能问题。另外,(branch predictor)算法的建立也帮助缓和了此问题。巴科斯在1977年论述的“智能瓶颈”已改变甚多。且巴科斯对于此问题的解决方案并没有造成明显影响。现代的以及面向对象编程已较少执行如早期Fortran一般会“将大量数值从内存搬入搬出的操作”,但平心而论,这些操作的确占用电脑大部分的执行时间。
冯·诺依曼结构主要贡献
的主要贡献就是提出并实现了“”的概念。由于指令和数据都是,指令和的地址又密切相关,因此,当初选择这种结构是自然的。但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。
在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。从的定时关系也可看出冯·诺依曼结构与处理方式的差别。举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯.诺曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
冯·诺依曼结构图
冯·诺依曼结构结构
的体系架构可以分为:冯·结构和
冯·诺依曼结构结构
使用的和微控制器有很多。除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、ARM的ARM7、的也采用了冯·诺依曼结构。
1945年,首先提出了“存储程序”的概念和原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。
冯·诺曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。
冯·诺依曼结构哈佛结构
是一种将程序指令存储和分开的存储器结构。首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
哈佛结构的微处理器通常具有较高的执行效率。其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有的MC68系列、Zilog公司的Z8系列、的AVR系列和ARM公司的ARM9、ARM10和ARM11。
是指程序和数据空间独立的体系结构,目的是为了减轻程序运行时的访存瓶颈。
例如最常见的卷积运算中, 一条指令同时取两个, 在流水线处理时, 同时还有一个取指操作,如果程序和数据通过一条总线访问,取指和取数必会产生冲突,而这对大运算量的循环的执行效率是很不利的。哈佛结构能基本上解决取指和取数的冲突问题。而对另一个操作数的访问,就只能采用Enhanced哈佛结构了,例如像TI那样,数据区再split,并多一组总线。或向AD那样,采用指令cache,指令区可存放一部分数据。
在中,最大量的工作之一是与存储器交换信息,这其中包括作为输入信号的、滤波器系数和程序指令。例如,如果将保存在存储器中的2个数相乘,就需要从存储器中取3个数,即2个要乘的数和1个描述如何去做的程序指令。DSP内部一般采用的是,它在片内至少有4套总线:程序的,程序的,数据的数据总线和数据的地址总线。这种分离的程序总线和数据总线,可允许同时获取(来自)和(来自数据存储器),而互不干扰。这意味着在一个内可以同时准备好指令和操作数。有的DSP芯片内部还包含有其他总线,如DMA总线等,可实现单周期内完成更多的工作。这种多就好像在DSP内部架起了四通八达的高速公路,保障运算单元及时地取到需要的数据,提高运算速度。因此,对DSP来说,是个资源,总线越多,可以完成的功能就越复杂。超级哈佛结构(superHarvard architecture,缩写为SHARC),它在哈佛结构上增加了指令cache()和专用的I/O控制器。
处理器有两个明显的特点:使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存;使用独立的两条总线,分别作为CPU与每个存储器之间的专用通信路径,而这两条总线之间毫无关联。
改进的哈佛结构,其结构特点为:以便实现;具有一条独立的和一条独立的,利用公用地址总线访问两个存储模块(程序存储模块和模块),公用数据总线则被用来完成程序存储模块或数据存储模块与CPU之间的数据传输。
冯·诺依曼结构两者区别
的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。人们把的这个理论称为。从ENIAC到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。
根据冯诺依曼体系结构构成的计算机,必须具有如下功能:把需要的程序和数据送至计算机中;必须具有长期记忆程序、数据、中间结果及最终运算结果的能力;能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力;能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作;能够按照要求将处理结果输出给用户。
是为了高速数据处理而采用的,因为可以同时读取指令和数据(分开存储的)。大大提高了,缺点是结构复杂。通用微机指令和数据是混合存储的,结构上简单,成本低。假设是哈佛结构:你就得在电脑安装两块硬盘,一块装程序,一块装数据,内存装两根,一根储存指令,一根存储数据……
是什么结构要看的。51单片机虽然数据指令存储区是分开的,但总线是的,所以顶多算改进型的。ARM9虽然是哈佛结构,但是之前的版本也还是冯·诺依曼结构。早期的X86能迅速占有市场,一条很重要的原因,正是靠了这种实现简单,成本低的总线结构。处理器虽然上看是诺依曼结构的,但是由于内部CACHE的存在,因此实际上内部来看已经算是改进型哈佛结构的了。至于优缺点,哈佛结构就是复杂,对的连接与处理要求高,十分不适合外围存储器的扩展。所以早期通用CPU难以采用这种结构。而,由于内部集成了所需的存储器,所以采用哈佛结构也未尝不可。处理器,依托CACHE的存在,已经很好的将二者统一起来了。
冯·诺依曼结构争议
冯·诺伊曼结构这个词出自约翰·冯·诺伊曼的论文:First Draft of a Report on the EDVAC , 于日。由于在曼哈顿工程中需要大量的运算,从而使用了当时最先进的两台计算机Mark I和ENIAC,在使用Mark I和ENIAC的过程中,他意识到了存储程序的重要性,从而提出了存储程序逻辑架构。虽然冯·诺伊曼的创见非常新颖,但冯·诺伊曼结构这个词,对冯·诺伊曼的合作伙伴、时人甚至先辈都不公平。
一份寇兰德·宙斯(Konrad Zuse)提出的专利应用就已在1936年点出这类概念。而储存程式型电脑的概念早在冯·诺伊曼知晓ENIAC的存在前就已在宾州大学的摩尔电机学院流传了。此构想的确实创立者永远是个谜。
赫曼·鲁寇夫(Herman Lukoff) 相信是艾克特创建此概念。
毛奇利(Mauchly)与艾克特(Eckert)在1943年于他们建造ENIAC时写下关于储存程式的概念,另外,ENIAC计划管理员布莱德(Grist Brainerd)在1943年12月为ENIAC做的进度回报,就已隐约提及储存程式的概念(虽然也同时否决了在ENIAC实作的计划),他说“为了拥有最简单的实作计划以及不复杂的事务,ENIAC建造时后将不需要任何自动整备”。
当设计ENIAC时,它很清楚说明从读卡机或纸带读取指令是不够快的,因为ENIAC设计用于高速执行运算。因此ENIAC直接以电路管线设计程式,并在需要新程式时重新配接线路。设计师也很清楚他们需要更好的,因此在ENIAC建造期间第一份EDVAC的报告就已撰写完毕,并包含了储存程式的概念,此概念叙述程式指令储存在高速内存(水银延迟内存)中,因此可以在执行时快速存取。
艾伦·图灵在日讲演了一份包含程式储存型电脑(Pilot ACE)完整设计的论文。冯诺依曼体系结构具体是什么样子的(2) - 武林网
>> > 冯诺依曼体系结构具体是什么样子的
冯诺依曼计算机的特点 冯o诺依曼是匈牙利裔美国人,他是一位天才的数学家,智商极高,同时拥有惊人的记忆力,一生之中在生化武器、现代计算机、博弈论、核武器等诸多领域内都做出了不朽的贡献,是现代计算机的奠基人,被后人称为“计算机之父”。 冯o诺依曼计算机的特点主要包括五个方面。冯o诺依曼照片冯o诺依曼计算机的特点主要有:一、计算机有运算器、存储器、控制器、输入设备和输出设备五大部件组成,这五大部件是计算机不可或缺的部分,缺少了哪一个都无常工作。二、指令和数据以同等地位存放于存储器内,并可按地址访问。三、指令和数据均可用二进制表示。四、指令由操作码和地址码组成。操作码表示操作的性质、地址码表示操作数在存储器中的位置。五、指令在存储器中按顺序存放。通常,指令是顺序执行的。在特殊情况下,可根据运算结果或指定的条件来改变运算顺序。六、机器以运算器为中心。输入输出设备和存储器之间的数据传送通过运算器完成。冯o诺依曼计算机的特点决定了计算机的基本形态,可以说是冯o诺依曼创造了计算机,后来的计算机的发展也是按照冯o诺依曼计算机为基础进行的,冯o诺依曼在计算机发展方面做出的贡献是不可磨灭的,因此冯o诺依曼被后人冠以“计算机之父”的名号,这一称号对他来说是当之无愧的。 冯诺依曼趣事 冯o诺依曼是一位犹太人,出生地是匈牙利,但是后来去了美国,并且取得了美国国籍。冯o诺依曼是一位智商超群,拥有着惊人记忆力的天才,这样一位天才有的地方是与大众相同的,通过冯o诺依曼趣事可以看到冯o诺依曼的认真与可爱。冯o诺依曼照片冯o诺依曼趣事一:在研制ENIAC计算机时期,有一天数学家们对一道数学难题百思不得其解,于是一位数学家决定带着台式机回家研究,这位数学家耗费了一个晚上的时间终于用台式机得出了五种特殊答案。第二天一早,数学家们在办公室内讨论这道难题,那位抱着台式机回家的数学家说:“我从昨天晚上一直算到今晨4点半,总算找到那难题的5种特殊解答。它们一个比一个更难咧!”这个时候冯o诺依曼刚刚走进办公室,问:“什么题更难?”于是有人将题目给了他,冯o诺依曼立即陷入了沉思,五分钟后他给出了四个正确的答案。工作了一夜的青年数学家再也忍不住了,说出了最后一种答案,冯o诺依曼没有接茬,一分钟之后,他说:“你的答案是正确的。”然后冯o诺依曼又陷入了深深的思考,许久都不能自拔,有人悄悄问他在想什么,冯o诺依曼不安地说:“我在想,他究竟用的是什么方法,这么快就算出了答案。”众人再也忍不住了,哈哈大笑起来,告诉冯o诺依曼说:“他用台式机整整算了一个晚上。”冯o诺依曼这才释怀大笑起来。冯o诺依曼趣事二:冯o诺依曼虽然是一位天才,但也并不是事事都非常的强,冯o诺依曼的驾驶水平就非常糟糕,经常发生事故。有一次冯o诺依曼又出了交通事故,他在警局里为自己辩解说:“我正在路上正常驾驶,右方窗外的树正在以60英里每小时的速度从我车旁穿过,突然,一棵树站在了我的车前,咚!”
/ / / / / / / / / / / / / / / / / / / /计算机组成
当前计算机主要是基于冯诺依曼体系结构设计的,下面就简单分析一下冯诺依曼体系结构的计算机是如何工作的,首先下面的图就是冯诺依曼体系结构图。
主要由五大部件组成
1.存储器用来存放数据和程序
2.运算器主要运行算数运算和逻辑运算,并将中间结果暂存到运算器中
3.控制器主要用来控制和指挥程序和数据的输入运行,以及处理运算结果
4.输入设备用来将人们熟悉的信息形式转换为机器能够识别的信息形式,常见的有键盘,鼠标等
5.输出设备可以将机器运算结果转换为人们熟悉的信息形式,如打印机输出,显示器输出等
冯诺依曼体系结构的指令和数据均采用二进制码表示;指令和数据以同等地位存放于存储器中,均可按地址寻访;指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数所在存储器中的位置;指令在存储器中按顺序存放,通常指令是按顺序执行的,特定条件下,可以根据运算结果或者设定的条件改变执行顺序;机器以运算器为中心,输入输出设备和存储器的数据传送通过运算器。
然而现在的计算机基本以存储器作为中心,如下图所示
但是由于运算器和控制器在逻辑关系和电路结构上联系十分紧密,通常将它们合起来统称为中央处理器,简称CPU,把输入输出设备简称为I/O设备,这样现代计算机可以认为由三大部分组成:CPU与主存储器可以称为主机,I/O设备称为外部设备,结构图如下1.9
ALU叫做算数逻辑运算单元,用来完成算术逻辑运算。CU(Control Unit)叫做控制单元,用来解释存储器中的指令,并发出各种操作命令来执行指令。ALU和CU是CPU的核心部件。I/O设备也受CU控制,用来完成相应的输入,输出操作。
参考书籍:计算机组成原理(唐朔飞)
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1672次
排名:千里之外
原创:11篇
(1)(3)(2)(3)(2)

我要回帖

更多关于 简述冯诺依曼体系结构 的文章

 

随机推荐