哈佛结构与冯[1].诺曼结构处理器比较
冯·诺依曼、哈佛、改进型哈佛体系结构解析
冯·诺依曼、哈佛、改进型哈佛体系结构解析在如今的CPU中,由于Catch的存在,这些概念已经被模糊了。
个人认为去区分他们并没有什么意义,仅作为知识点。
哈佛结构设计复杂,但效率高。
冯诺依曼结构则比较简单,但也比较慢。
CPU厂商为了提高处理速度,在CPU内增加了高速缓存。
也基于同样的目的,区分了指令缓存和数据缓存。
在内存里,指令和数据是在一起的。
而在CPU内的缓存中,还是会区分指令缓存和数据缓存,最终执行的时候,指令和数据是从两个不同的地方出来的。
你可以理解为在CPU外部,采用的是冯诺依曼模型,而在CPU内部用的是哈佛结构。
就像ARM9内核的S3C2440就是如上述所说一样,硬要区分的话,更加贴近改进型哈佛结构。
参考文章:冯·诺依曼、哈佛、改进型哈佛体系结构解析1. 冯·诺依曼结构冯·诺依曼结构,又称为普林斯顿体系结构。
主要特点:将程序指令存储器和数据存储器合并在一起。
本质上就是把指令也看作数据。
优点:结构简单、易实现、成本低缺点:在高速运行时,不能达到同时取指令和取数据,从而形成了传输过程的瓶颈。
由于程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。
2.哈佛结构主要特点:将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址(意味着有两个0地址:指令0和数据0)、独立访问,目的是为了减轻程序运行时的访存瓶颈。
哈佛结构的中央处理器首先到程序指令储存器中读取程序指令内容,解码后得到数据地址,再到相应的数据储存器中读取数据,并进行下一步的操作(通常是执行)。
优点:1.程序指令储存和数据储存分开,数据和指令的储存可以同时进行,效率高。
2.一般情况下程序难以修改自身,安全性高。
3.可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
冯诺依曼与哈佛结构计算机的区别
冯诺依曼型计算机与哈佛结构计算机的区别说到计算机的发展,就不能不提到德国科学家冯诺依曼。
从20世纪初,物理学和电子学科学家们就在争论制造可以进行数值计算的机器应该采用什么样的结构。
人们被十进制这个人类习惯的计数方法所困扰。
所以,那时以研制模拟计算机的呼声更为响亮和有力。
20世纪30年代中期,德国科学家冯诺依曼大胆的提出,抛弃十进制,采用二进制作为数字计算机的数制基础。
同时,他还说预先编制计算程序,然后由计算机来按照人们事前制定的计算顺序来执行数值计算工作。
(一)冯·诺依曼结构1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯.诺曼型结构”计算机。
冯.诺曼结构的处理器使用同一个存储器,经由同一个总线传输。
传统计算机采用冯·诺依曼(Von Neuman n)结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器并在一起的存储器结构。
冯·诺依曼结构的计算机其程序和数据公用一个存储空间,程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置;采用单一的地址及数据总线,程序指令和数据的宽度相同。
处理器执行指令时,先从储存器中取出指令解码,再取操作数执行运算,即使单条指令也要耗费几个甚至几十个周期,在高速运算时,在传输通道上会出现瓶颈效应。
如图 1-3 所示,冯·诺依曼结构的计算机由CPU 和存储器构成,程序计算器(PC)是CPU 内部指示指令和数据的存储位置的寄存器。
CPU 通过程序计数器提供的地址信息,对存储器进行寻址,找到所需要的指令或数据,然后对指令进行译码,最后执行指令规定的操作。
冯诺依曼结构与哈佛结构
1、冯·诺依曼结构冯·诺依曼结构又称作普林斯顿体系结构(Princetionarchitecture)。
1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。
冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。
冯·诺依曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。
冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。
由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。
但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。
在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。
从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。
举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺依曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
arm7系列的CPU有很多款,其中部分CPU没有内部cache的,比如arm7TDMI,就是纯粹的冯·诺依曼结构,其他有内部cache且数据和指令的cache分离的cpu则使用了哈弗结构。
2、哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构,如图1所示。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
哈佛结构
普林斯顿结构VS 哈佛结构1. 冯·诺依曼结构冯·诺依曼结构,又称为普林斯顿体系结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。
取指令和取操作数都在同一总线上,通过分时复用的方式进行;缺点是在高速运行时,不能达到同时取指令和取操作数,从而形成了传输过程的瓶颈。
由于程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。
目前使用冯·诺依曼结构的CPU和微控制器有很多。
其中包括英特尔公司的8086及其他CPU,TI的MSP430处理器,ARM公司的ARM7,MIPS公司的MIPS处理器。
2. 哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构,它的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址、独立访问,目的是为了减轻程序运行时的访存瓶颈。
如图,哈佛结构的计算机由CPU、程序存储器和数据存储器组成,程序存储器和数据存储器采用不同的总线,从而提供了较大的存储器带宽,使数据的移动和交换更加方便,尤其提供了较高的数字信号处理性能。
目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11。
3. 总结随着CPU设计的发展,流水线的增加,指令和数据的互斥读取影响CPU指令执行的scale 程度。
哈佛结构中数据存储器与程序代码存储器分开,各自有自己的数据总线与地址总线,取操作数与取指令能同时进行。
但这是需要CPU提供大量的数据线,因而很少使用哈佛结构作为CPU外部构架来使用。
对于CPU内部,通过使用不同的数据和指令cache,可以有效的提高指令执行的效率,因而目前大部分计算机体系都是在CPU内部的使用哈佛结构,在CPU外部使用冯·诺依曼结构。
冯.诺依曼型计算机与哈佛型计算机的比较
冯.诺依曼型计算机与哈佛型计算机一、关于冯.诺依曼型计算机1945年,冯.诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯.诺曼型结构”计算机。
冯诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。
迄今为止所有进入实用的电子计算机都是按冯·诺依曼的提出的结构体系和工作原理设计制造的。
冯·诺依曼型计算机的特点有以下几个:1. 计算机完成任务是由事先编号的程序完成的;2. 计算机的程序被事先输入到存储器中,程序运算的结果,也被存放在存储器中。
3. 计算机能自动连续地完成程序。
4. 程序运行的所需要的信息和结果可以通输入\输出设备完成。
5. 计算机由运算器、控制器、存储器、输入设备、输出设备所组成。
根据冯诺依曼体系结构构成的计算机,必须具有如下功能:1. 把需要的程序和数据送至计算机中。
2. 必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。
3. 能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。
4. 能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作。
5. 能够按照要求将处理结果输出给用户。
为了完成上述的功能,计算机必须具备五大基本组成部件,包括:输人数据和程序的输入设备记忆程序和数据的存储器,完成数据加工处理的运算器,控制程序执行的控制器,输出处理结果的输出设备。
二、关于哈佛型计算机数字信号处理一般需要较大的运算量和较高的运算速度,为了提高数据吞吐量,在数字信号处理器中大多采用哈佛结构。
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度。
哈佛型计算机的特点有以下几个:1. 使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存,以便实现并存处理。
冯.诺曼结构与哈佛结构的区别
哈佛结构与冯·诺伊曼结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
哈佛结构的微处理器通常具有较高的执行效率。
其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。
目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、ATMEL公司的A VR系列和安谋公司的ARM9、ARM10和ARM11。
冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。
程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。
目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。
除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。
哈佛结构和常见的冯诺依曼结构区别在于地址空间和数据空间分开与否。
冯诺依曼结构数据空间和地址空间不分开,哈佛结构数据空间和地址空间是分开的。
一般DSP都是采用改进型哈佛结构,就是分开的数据空间和地址空间都不只是一条,而是有多条,这根据不同的生产厂商的DSP芯片有所不同。
在对外寻址方面从逻辑上来说也是一样,因为外部引脚的原因,一般来说都是通过相应的空间选取来实现的。
本质上是同样的道理。
MCS-51单片机有着嵌入式处理器经典的体系结构,这种体系结构在当前嵌入式处理器的高端ARM系列上仍然在延续,这就是哈佛结构。
哈佛结构和冯·诺依曼结构的区别
哈佛结构和冯·诺依曼结构的区别哈佛结构和冯·诺依曼结构的区别⼀、哈佛结构 (英语:Harvard architecture)是⼀种将程序指令储存和数据储存分开的存储器结构。
中央处理器⾸先到程序指令储存器中读取程序指令内容,解码后得到数据地址,再到相应的数据储存器中读取数据,并进⾏下⼀步的操作(通常是执⾏)。
程序指令储存和数据储存分开,数据和指令的储存可以同时进⾏,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯⽚的程序指令是14位宽度,⽽数据是8位宽度。
哈佛结构的微处理器通常具有较⾼的执⾏效率。
其程序指令和数据指令分开组织和储存的,执⾏时可以预先读取下⼀条指令。
⽬前使⽤哈佛结构的中央处理器和微控制器有很多,除了上⾯提到的Microchip公司的PIC系列芯⽚,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11。
与冯.诺曼结构处理器⽐较,哈佛结构处理器有两个明显的特点: 1、使⽤两个独⽴的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存; 2、使⽤独⽴的两条总线,分别作为CPU与每个存储器之间的专⽤通信路径,⽽这两条总线之间毫⽆关联。
改进的哈佛结构,其结构特点为: 1、使⽤两个独⽴的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存,以便实现并⾏处理; 2、具有⼀条独⽴的地址总线和⼀条独⽴的数据总线,利⽤公⽤地址总线访问两个存储模块(程序存储模块和数据存储模块),公⽤数据总线则被⽤来完成程序存储模块或数据存储模块与CPU之间的数据传输;⼆、冯·诺伊曼结构 (von Neumann architecture),也称普林斯顿结构,是⼀种将程序指令存储器和数据存储器合并在⼀起的电脑设计概念结构。
本词描述的是⼀种实作通⽤图灵机的计算装置,以及⼀种相对于平⾏计算的序列式结构参考模型(referentialmodel)本结构隐约指导了将储存装置与中央处理器分开的概念,因此依本结构设计出的计算机⼜称储存程式型电脑。
冯诺依曼体系结构、哈佛体系结构与改进型哈佛结构之间的区别
1、冯·诺依曼结构冯·诺依曼结构又称作普林斯顿体系结构(Princetionarchitecture)。
1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。
冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。
冯·诺依曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。
冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。
由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。
但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。
在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。
从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。
举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺依曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
arm7系列的CPU有很多款,其中部分CPU没有内部cache的,比如arm7TDMI,就是纯粹的冯·诺依曼结构,其他有内部cache且数据和指令的cache分离的cpu则使用了哈弗结构。
2、哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构,如图1所示。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
冯.诺曼结构与哈佛结构的区别
哈佛结构与冯·诺伊曼结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
哈佛结构的微处理器通常具有较高的执行效率。
其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。
目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、A TMEL公司的A VR系列和安谋公司的ARM9、ARM10和ARM11。
冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。
程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。
目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。
除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。
哈佛结构和常见的冯诺依曼结构区别在于地址空间和数据空间分开与否。
冯诺依曼结构数据空间和地址空间不分开,哈佛结构数据空间和地址空间是分开的。
一般DSP都是采用改进型哈佛结构,就是分开的数据空间和地址空间都不只是一条,而是有多条,这根据不同的生产厂商的DSP芯片有所不同。
在对外寻址方面从逻辑上来说也是一样,因为外部引脚的原因,一般来说都是通过相应的空间选取来实现的。
本质上是同样的道理。
MCS-51单片机有着嵌入式处理器经典的体系结构,这种体系结构在当前嵌入式处理器的高端ARM系列上仍然在延续,这就是哈佛结构。
冯诺曼结构与哈佛结构的区别
哈佛结构与冯·诺伊曼结构哈佛结构就是一种将程序指令存储与数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常就是执行)。
程序指令存储与数据存储分开,可以使指令与数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令就是14位宽度,而数据就是8位宽度。
哈佛结构的微处理器通常具有较高的执行效率。
其程序指令与数据指令分开组织与存储的,执行时可以预先读取下一条指令。
目前使用哈佛结构的中央处理器与微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的A VR系列与安谋公司的ARM9、ARM10与ARM11。
冯·诺伊曼结构,也称普林斯顿结构,就是一种将程序指令存储器与数据存储器合并在一起的存储器结构。
程序指令存储地址与数据存储地址指向同一个存储器的不同物理位置,因此程序指令与数据的宽度相同,如英特尔公司的8086中央处理器的程序指令与数据都就是16位宽。
目前使用冯·诺伊曼结构的中央处理器与微控制器有很多。
除了上面提到的英特尔公司的8086,英特尔公司的其她中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。
哈佛结构与常见的冯诺依曼结构区别在于地址空间与数据空间分开与否。
冯诺依曼结构数据空间与地址空间不分开,哈佛结构数据空间与地址空间就是分开的。
一般DSP都就是采用改进型哈佛结构,就就是分开的数据空间与地址空间都不只就是一条,而就是有多条,这根据不同的生产厂商的DSP芯片有所不同。
在对外寻址方面从逻辑上来说也就是一样,因为外部引脚的原因,一般来说都就是通过相应的空间选取来实现的。
本质上就是同样的道理。
MCS-51单片机有着嵌入式处理器经典的体系结构,这种体系结构在当前嵌入式处理器的高端ARM系列上仍然在延续,这就就是哈佛结构。
冯诺依曼结构和哈佛结构
计算机基本知识计算机体系结构分类两种典型的结构:冯·诺依曼结构哈佛体系结构冯·诺依曼结构冯·诺依曼机:将数据和指令都存储在存储器中的计算机。
计算系统由一个中央处理单元(CPU)和一个存储器组成。
存储器拥有数据和指令,并且可以根据所给的地址对它进行读或写。
因此程序指令和数据的宽度相同;如:Intel 8086、ARM7、MIPS处理器等哈佛体系结构哈佛机:为数据和程序提供了各自独立的存储器。
程序计数器只指向程序存储器而不指向数据存储器,这样做的后果是很难在哈佛机上编写出一个自修改的程序。
独立的程序存储器和数据存储器为数字信号处理提供了较高的性能。
指令和数据可以有不同的数据宽度;具有较高的效率;如摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、ARM10系列等ARM 7使用冯·诺依曼体系结构。
ARM 9使用哈佛体系结构。
ARM公司简介ARM是Advanced RISC Machines的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC (精简指令集)处理器。
1985年第一个ARM 原型在英国剑桥诞生。
公司的特点是只设计芯片,而不生产。
它提供ARM技术知识产权(IP)核,将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供服务。
有ARM7/ARM9等多个版本。
除了一些Unix图形工作站外,大多数ARM核心的处理器都使用在嵌入领域。
ARM,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。
ARM处理器的应用到目前为止,基于ARM技术的微处理器应用约占据了32位嵌入式微处理器75%以上的市场份额。
全球80%的GSM/3G手机、99%的CDMA手机以及绝大多数PDA产品均采用ARM体系的嵌入式处理器。
“掌上计算”相关的所有领域皆为其所主宰。
主要应用:消费类电子,无线、图像应用开放平台、存储、自动化、智能卡、SIM卡等。
冯诺伊曼结构与哈怫结构
冯·诺伊曼结构和哈佛结构冯·诺伊曼结构冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。
程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。
目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。
除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、ARM的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。
1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺曼型结构”计算机。
冯·诺曼结构的处理器使用同一个存储器,经由同一个总线传输。
冯·诺曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。
冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。
由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。
但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。
在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。
从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。
举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
冯诺依曼体系结构、哈佛体系结构与改进型哈佛结构之间的区别
1、冯·诺依曼结构冯·诺依曼结构又称作普林斯顿体系结构(Princetionarchitecture)。
1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。
冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。
冯·诺依曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。
冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。
由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。
但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。
在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。
从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。
举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺依曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
arm7系列的CPU有很多款,其中部分CPU没有内部cache的,比如arm7TDMI,就是纯粹的冯·诺依曼结构,其他有内部cache且数据和指令的cache分离的cpu则使用了哈弗结构。
2、哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构,如图1所示。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
RISC、CISC冯·诺依曼结构和哈佛结构
1、关于RISC与CISC与哈佛结构冯诺依曼结构区别关于这个问题,有人说51地址线复用,就是冯诺依曼结构。
很多入门的书上基本上都说:由运算器、控制器、存储器、输入设备、输出设备组成的系统都叫冯氏结构。
也有的说:“程序存储器的数据线地址线”与“数据存储器的数据线地址线”共用的话,就是冯氏结构,所以51是该结构。
(我认为说得太绝对了)我认为冯氏结构与哈佛结构的区别应该在存储器的空间分别上,哈佛结构的数据区和代码区是分开的,它们即使地址相同,但空间也是不同的,主要表现在数据不能够当作代码来运行。
(比如51---注)地址线复用,就将它认为成冯氏结构,我认为这样不足取,应该是按照空间是否完全重合来辨别。
比如PC机的代空间和数据空间是同一空间,所以是冯氏结构;51由于IO口不够,但代码空间和数据空间是分开的,所以还是哈佛构.(此种观点才是正确的--注)另外,还有的把CISC RISC 和地址是否复用与是哪种结构这3这都混到一起。
我认为这三者都没有必然的关系。
只不过RISC因为精简了指令集,没有了执行复杂功能的指令,为了提高性能,常采用哈佛结构,并且不复用地址线。
(这种说法不具体,有待补充---注)材料二:哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC 16芯片的程序指令是14位宽度,而数据是8位宽度。
目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Micro chip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11,51单片机也属于哈佛结构冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。
冯诺依曼结构和哈佛结构
计算机基本知识计算机体系结构分类两种典型的结构:冯·诺依曼结构哈佛体系结构冯·诺依曼结构冯·诺依曼机:将数据和指令都存储在存储器中的计算机。
计算系统由一个中央处理单元(CPU)和一个存储器组成。
存储器拥有数据和指令,并且可以根据所给的地址对它进行读或写。
因此程序指令和数据的宽度相同;如:Intel 8086、ARM7、MIPS处理器等哈佛体系结构哈佛机:为数据和程序提供了各自独立的存储器。
程序计数器只指向程序存储器而不指向数据存储器,这样做的后果是很难在哈佛机上编写出一个自修改的程序。
独立的程序存储器和数据存储器为数字信号处理提供了较高的性能。
指令和数据可以有不同的数据宽度;具有较高的效率;如摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、ARM10系列等ARM 7使用冯·诺依曼体系结构。
ARM 9使用哈佛体系结构。
ARM公司简介ARM是Advanced RISC Machines的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC (精简指令集)处理器。
1985年第一个ARM 原型在英国剑桥诞生。
公司的特点是只设计芯片,而不生产。
它提供ARM技术知识产权(IP)核,将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供服务。
有ARM7/ARM9等多个版本。
除了一些Unix图形工作站外,大多数ARM核心的处理器都使用在嵌入领域。
ARM,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。
ARM处理器的应用到目前为止,基于ARM技术的微处理器应用约占据了32位嵌入式微处理器75%以上的市场份额。
全球80%的GSM/3G手机、99%的CDMA手机以及绝大多数PDA产品均采用ARM体系的嵌入式处理器。
“掌上计算”相关的所有领域皆为其所主宰。
主要应用:消费类电子,无线、图像应用开放平台、存储、自动化、智能卡、SIM卡等。
为什么个人电脑还沿用冯·诺伊曼结构而不使用哈佛结构?
为什么个人电脑还沿用冯·诺伊曼结构而不使用哈佛结构?【Cascade的回答(60票)】:在现实世界中很少有非常纯粹的概念,特别是在实际的应用里。
教科书里的大多是理想化的模型,便于掌握某个概念的重点和本质,但实际中很难达到这种理想化的状态。
哈佛结构和冯诺依曼结构主要区别在是否区分指令与数据。
在教科书里这是两种截然不同的做法。
实际上在内存里,指令和数据是在一起的。
而在CPU内的缓存中,还是会区分指令缓存和数据缓存,最终执行的时候,指令和数据是从两个不同的地方出来的。
你可以理解为在CPU外部,采用的是冯诺依曼模型,而在CPU内部用的是哈佛结构。
大部分的DSP都没有缓存,因而直接就是哈佛结构。
哈佛结构设计复杂,但效率高。
冯诺依曼结构则比较简单,但也比较慢。
CPU厂商为了提高处理速度,在CPU内增加了高速缓存。
也基于同样的目的,区分了指令缓存和数据缓存。
有时为了解决现实问题,究竟是什么主义真的没那么重要。
因而个人认为争论到底是哪种结构意义不大。
【加菲猫的回答(7票)】:因为 PC 市场已经被微软和 IBM-PC 架构垄断了。
但是,实际上哈佛结构只不过是“程序”和“存储”分离,然而内存就那个样子,好比你就插了一条内存条,怎么实现指令和数据分开“同时”读取呢?cache。
现在 intel 的处理器虽说是“CISC”但是也应用了大量的RISC思想。
当今的处理器速度已经如此高,intel有很长的流水线,如果指令和数据还不分开同时读取这会极大的影响流水线的效率。
所以在流水线设计中有多个cache,而数据和指令一般会同时缓存进Cache,这样在处理器流水线作业时其实也有哈佛结构的影子。
界限我说不好是什么样子,就像RISC 和 CISC 应该没有一道绝对的墙把它们区别开。
参考 intel 处理器体系结构的发展。
【ZhuJingsi的回答(6票)】:实际上,绝大多数现代计算机使用的是所谓的“Modified Harvard Architecture”,指令和数据共享同一个 address space,但缓存是分开的。
哈佛架构与冯。诺依曼架构(包括MIPS)
哈佛架構與馮。
諾依曼架構(包括MIPS)發表於 2009/2/19 11:25:49 Kyosho’s Blog哈佛架構數字信號處理一般需要較大的運算量和較高的運算速度,為了提高數據吞吐量,在數字信號處理器中大多采用哈佛結構,如下圖所示圖哈佛結構與馮.諾曼架構處理器比較,哈佛架構處理器有兩個明顯的特點︰使用兩個獨立的存儲器模塊,分別存儲指令和數據,每個存儲模塊都不允許指令和數據並存;使用獨立的兩條匯流排,分別作為CPU與每個存儲器之間的專用通信路徑,而這兩條匯流排之間毫無關聯。
後來,又提出了改進的哈佛結構,如下圖所示圖改進型哈佛結構其架構特點為︰使用兩個獨立的存儲器模塊,分別存儲指令和數據,每個存儲模塊都不允許指令和數據並存,以便實現並行處理;具有一條獨立的位址匯流排和一條獨立的數據匯流排,利用公用位址匯流排訪問兩個存儲模塊(程式存儲模塊和數據存儲模塊),公用數據匯流排則被用來完成程式存儲模塊或數據存儲模塊與CPU之間的數據傳輸;兩條匯流排由程式存儲器和資訊存儲器分時共用。
在典型情況下,完成一條指令需要3個步驟,即︰取指令、指令譯碼和執行指令。
從指令流的定時關係也可看出馮.諾曼架構與哈佛架構處理模式的差別。
舉一個最簡單的對存儲器進行讀寫操作的指令,如下圖所示,指令1至指令3均為存、取數指令,對馮.諾曼架構處理器,由於取指令和存取數據要從同一個存儲空間存取,經由同一匯流排傳輸,因而它們無法重疊執行,只有一個完成後再進行下一個。
圖馮.諾曼結構處理器指令流的定時關系示意圖如果采用哈佛結構處理以上同樣的3條存取數指令,如下圖所示,由於取指令和存取數據分別經由不同的存儲空間和不同的總線,使得各條指令可以重疊執行,這樣,也就克服了數據流傳輸的瓶頸,提高了運算速度。
哈佛結構強調了總的系統速度以及通訊和處理器配置方面的靈活性。
圖哈佛結構處理器指令流的定時關系示意圖========================================================================馮.諾曼架構1945年,馮.諾曼首先提出了“存儲程序”的概念和二進製原理,後來,人們把利用這種概念和原理設計的電子計算機系統統稱為“馮.諾曼型結構”計算機。
哈弗架构及其应用
哈弗结构
改进型哈弗结构
3、对比
(1)、架构对比
冯诺依曼结构
哈弗结构
冯诺依曼结构的主要贡献是提出并实现了“储存程序”的概念; 哈弗结构是一种将程序指令存储和数据存储分开的存储器结构。
(2)工作原理的对比
在典型情况下,完成一条指令需要3个步骤
冯.诺曼结构处理器指令流的定时关系示意图
分别是取指令、指令译码和执行指令。 对冯.诺伊曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经 由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。如 图所示
哈弗架构处理器的两个明显特点(相对冯诺依曼架构而言) 1、使用两个独立的存储器模块,分别存储指令和数据, 每个存储模块都不允许指令和数据并存。 2、使用独立的两条总线,分别作为CPU与每个存储器之 间的专用通信路径,而这两条总线之间毫无关联。
哈弗架构
2、改进型的哈弗架构
其结构特点为: 使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许 指令和数据并存,以便实现并行处理; 具有一条独立的地址总线和一条独立的数据总线,利用公用地址总线访问两 个存储模块(程序存储模块和数据存储模块),公用数据总线则被用来完成 程序存储模块或数据存储模块与CPU之间的数据传输; 两条总线由程序存储器和数据存储器分时共用。 改进之处在于在数据总线和程序总线之间进行局部的交叉连接。这一改进允 许数据存放在程序存储器中,并被算术运算指令直接使用,增强了芯片的灵 活性。只要调度好两个独立的总线就可使处理能力达到最高,以实现全速运 行。改进的哈佛结构还可使指令存储在高速缓存器中(Cache),省去了从存 储器中读取指令的时间,大大提高了运行速度。
哈弗架构处理器下
同样的3条存取数指令,如下图所示,由于取指令和存取数据分别经由不同的存 储空间和不同的总线,使得各条指令可以重叠执行,这样,也就克服了数据流传输的 瓶颈,提高了运算速度。 哈佛结构强调了总的系统速度以及通讯和处理器配置方面的灵活性。
冯诺依曼结构 哈佛结构
冯·诺依曼结构和哈佛结构2009-6-4 21:12:30 | 分类: 体系结构| 作者: dingjun | 浏览:| 评论: 01、冯·诺依曼结构冯·诺依曼结构又称作普林斯顿体系结构(Princetionarchitecture)。
1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。
冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。
冯·诺依曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。
冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。
由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。
但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。
在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。
从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。
举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺依曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
arm7系列的CPU有很多款,其中部分CPU没有内部cache的,比如arm7TDMI,就是纯粹的冯·诺依曼结构,其他有内部cache且数据和指令的cache分离的cpu则使用了哈弗结构。
2、哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
哈佛结构 Harvard结构
哈佛结构
数字信号处理一般需要较大的运算量和较高的运算速度,为了提高数据吞吐量,在数字信号处理器中大多采用哈佛结构,如下图所示
图哈佛结构
与冯.诺曼结构处理器比较,哈佛结构处理器有两个明显的特点:
∙使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存;
∙使用独立的两条总线,分别作为CPU与每个存储器之间的专用通信路径,而这两条总线之间毫无关联。
后来,又提出了改进的哈佛结构,如下图所示
图改进型哈佛结构
其结构特点为:
∙使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存,以便实现并行处理;
∙具有一条独立的地址总线和一条独立的数据总线,利用公用地址总线访问两个存储模块(程序存储模块和数据存储模块),公用数据总线则被用来完成程序存储模块或数据存储模块与CPU之间的数据传输;
∙两条总线由程序存储器和数据存储器分时共用。
在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。
从指令流的定时关系也可看出冯.诺曼结构与哈佛结构处理方式的差别。
举一个最简单的对存储器进行读写操作的指令,如下图所示,指令1至指令3均为存、取数指令,对冯.诺曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
图冯.诺曼结构处理器指令流的定时关系示意图
如果采用哈佛结构处理以上同样的3条存取数指令,如下图所示,由于取指令和存取数据分别经由不同的存储空间和不同的总线,使得各条指令可以重叠执行,这样,也就克服了数据流传输的瓶颈,提高了运算速度。
哈佛结构强调了总的系统速度以及通讯和处理器配置方面的灵活性。
图哈佛结构处理器指令流的定时关系示意图。